Juniper Networks Organizations API

Organization-level settings, licenses, and inventory management.

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

juniper-networks-organizations-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Juniper Networks Juniper Apstra Intent-Based Networking Alarms Organizations API
  description: RESTful API for Juniper Apstra, an intent-based networking platform for automating data center network design, deployment, and operations. Apstra abstracts network infrastructure into design blueprints with logical models, rack types, templates, and connectivity. The platform continuously validates that the network state matches the intended configuration and raises anomalies when deviations occur. The API provides full access to design resources, blueprints, device management, telemetry, and IBA (Intent-Based Analytics) probes. Authentication uses token-based sessions obtained via the login endpoint.
  version: '4.2'
  contact:
    name: Juniper Networks Support
    url: https://www.juniper.net/documentation/product/us/en/juniper-apstra/
  license:
    name: Proprietary
    url: https://www.juniper.net/us/en/legal-notices.html
servers:
- url: https://{apstra_server}/api
  description: Apstra server API endpoint.
  variables:
    apstra_server:
      description: Hostname or IP address of the Apstra server.
      default: apstra.example.com
security:
- authToken: []
tags:
- name: Organizations
  description: Organization-level settings, licenses, and inventory management.
paths:
  /orgs:
    get:
      operationId: listOrgs
      summary: Juniper Networks List organizations
      description: Returns all organizations the authenticated user has access to. Organizations are the top-level container for sites, devices, and configuration.
      tags:
      - Organizations
      responses:
        '200':
          description: Organizations returned.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Organization'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /orgs/{org_id}:
    get:
      operationId: getOrg
      summary: Juniper Networks Get organization
      description: Returns the details of a specific organization.
      tags:
      - Organizations
      parameters:
      - $ref: '#/components/parameters/OrgId'
      responses:
        '200':
          description: Organization returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Organization'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updateOrg
      summary: Juniper Networks Update organization
      description: Updates the settings of an organization.
      tags:
      - Organizations
      parameters:
      - $ref: '#/components/parameters/OrgId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Organization'
      responses:
        '200':
          description: Organization updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Organization'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
components:
  responses:
    Forbidden:
      description: Insufficient permissions for the requested operation.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: Resource not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    BadRequest:
      description: Invalid request parameters.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Authentication required or token invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  schemas:
    Error:
      type: object
      properties:
        detail:
          type: string
          description: Human-readable error description.
    Organization:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Organization unique identifier.
        name:
          type: string
          description: Organization name.
        orggroup_ids:
          type: array
          items:
            type: string
            format: uuid
          description: Organization group membership IDs.
        session_expiry:
          type: integer
          description: Session timeout in minutes.
        msp_id:
          type: string
          format: uuid
          description: Managed service provider ID if applicable.
        created_time:
          type: number
          description: Creation timestamp in epoch seconds.
        modified_time:
          type: number
          description: Last modification timestamp in epoch seconds.
  parameters:
    OrgId:
      name: org_id
      in: path
      required: true
      description: Organization unique identifier.
      schema:
        type: string
        format: uuid
  securitySchemes:
    authToken:
      type: apiKey
      in: header
      name: AuthToken
      description: Authentication token obtained from POST /api/aaa/login. Include in the AuthToken header for all authenticated API requests.