Juniper Networks Configuration API

Device configuration operations

Operations 7

POST /api/get-config Juniper Networks Get device configuration #
POST /api/edit-config Juniper Networks Edit device configuration #
POST /rpc/commit-configuration Juniper Networks Commit configuration #
POST /rpc/rollback-configuration Juniper Networks Rollback configuration #
GET /device-management/devices/{device_id}/configurations/raw Juniper Networks Get device configuration #
GET /config-file-management/config-files Juniper Networks List configuration files #
POST /config-file-management/apply-configlet Juniper Networks Apply configlet to devices #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/juniper-configuration-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

juniper-configuration-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Juniper Configuration API
  license:
    name: Proprietary
    url: https://www.juniper.net/us/en/legal-notices.html
  version: '1.0'
  description: 'Operations tagged Configuration across 2 of this provider''s published API definitions: juniper-junos-rest-api-openapi.yml, juniper-junos-space-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://{device_ip}:3443
  description: Junos Device REST API (HTTPS)
  variables:
    device_ip:
      default: 192.168.1.1
      description: IP address of the Junos device
- url: http://{device_ip}:3000
  description: Junos Device REST API (HTTP)
  variables:
    device_ip:
      default: 192.168.1.1
      description: IP address of the Junos device
- url: https://{space_server}/api/space
  description: Junos Space Server
  variables:
    space_server:
      default: space.example.com
      description: Hostname or IP of the Junos Space server
security:
- basicAuth: []
tags:
- name: Configuration
  description: Device configuration operations
paths:
  /api/get-config:
    post:
      operationId: getConfiguration
      summary: Juniper Networks Get device configuration
      description: Retrieves the device configuration. Supports retrieving specific configuration hierarchies or the entire configuration.
      tags:
      - Configuration
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                format:
                  type: string
                  enum:
                  - text
                  - set
                  - json
                  - xml
                  description: Configuration output format
                filter:
                  type: string
                  description: XPath filter for specific configuration sections
      responses:
        '200':
          description: Device configuration
          content:
            application/json:
              schema:
                type: object
                properties:
                  configuration:
                    type: object
                    description: Configuration data
            application/xml:
              schema:
                type: string
    servers:
    - url: https://{device_ip}:3443
      description: Junos Device REST API (HTTPS)
      variables:
        device_ip:
          default: 192.168.1.1
          description: IP address of the Junos device
    - url: http://{device_ip}:3000
      description: Junos Device REST API (HTTP)
      variables:
        device_ip:
          default: 192.168.1.1
          description: IP address of the Junos device
  /api/edit-config:
    post:
      operationId: editConfiguration
      summary: Juniper Networks Edit device configuration
      description: Modifies the candidate configuration on the device. Changes must be committed separately using the commit-configuration endpoint.
      tags:
      - Configuration
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                config-format:
                  type: string
                  enum:
                  - text
                  - set
                  - json
                  - xml
                config-data:
                  type: string
                  description: Configuration data to apply
                operation:
                  type: string
                  enum:
                  - merge
                  - replace
                  - delete
                  - update
      responses:
        '200':
          description: Configuration edit successful
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
        '400':
          description: Invalid configuration
    servers:
    - url: https://{device_ip}:3443
      description: Junos Device REST API (HTTPS)
      variables:
        device_ip:
          default: 192.168.1.1
          description: IP address of the Junos device
    - url: http://{device_ip}:3000
      description: Junos Device REST API (HTTP)
      variables:
        device_ip:
          default: 192.168.1.1
          description: IP address of the Junos device
  /rpc/commit-configuration:
    post:
      operationId: commitConfiguration
      summary: Juniper Networks Commit configuration
      description: Commits the candidate configuration to the active configuration. Supports confirmed commits and commit comments.
      tags:
      - Configuration
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                confirmed:
                  type: boolean
                  description: Request a confirmed commit
                confirm-timeout:
                  type: integer
                  description: Confirmed commit rollback timeout in minutes
                comment:
                  type: string
                  description: Commit comment
      responses:
        '200':
          description: Configuration committed successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  commit-results:
                    type: object
        '400':
          description: Commit failed (syntax or semantic errors)
    servers:
    - url: https://{device_ip}:3443
      description: Junos Device REST API (HTTPS)
      variables:
        device_ip:
          default: 192.168.1.1
          description: IP address of the Junos device
    - url: http://{device_ip}:3000
      description: Junos Device REST API (HTTP)
      variables:
        device_ip:
          default: 192.168.1.1
          description: IP address of the Junos device
  /rpc/rollback-configuration:
    post:
      operationId: rollbackConfiguration
      summary: Juniper Networks Rollback configuration
      description: Rolls back the configuration to a previous version.
      tags:
      - Configuration
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                rollback:
                  type: integer
                  minimum: 0
                  maximum: 49
                  description: Rollback number (0 = current active, 1 = previous)
      responses:
        '200':
          description: Configuration rolled back
    servers:
    - url: https://{device_ip}:3443
      description: Junos Device REST API (HTTPS)
      variables:
        device_ip:
          default: 192.168.1.1
          description: IP address of the Junos device
    - url: http://{device_ip}:3000
      description: Junos Device REST API (HTTP)
      variables:
        device_ip:
          default: 192.168.1.1
          description: IP address of the Junos device
  /device-management/devices/{device_id}/configurations/raw:
    get:
      operationId: getDeviceConfiguration
      summary: Juniper Networks Get device configuration
      description: Returns the current running configuration of a managed device.
      tags:
      - Configuration
      parameters:
      - $ref: '#/components/parameters/DeviceId'
      responses:
        '200':
          description: Device configuration
          content:
            application/vnd.net.juniper.space.device-management.device-configuration+json:
              schema:
                type: object
                properties:
                  configuration:
                    type: string
                    description: Raw device configuration text
    servers:
    - url: https://{space_server}/api/space
      description: Junos Space Server
      variables:
        space_server:
          default: space.example.com
          description: Hostname or IP of the Junos Space server
  /config-file-management/config-files:
    get:
      operationId: listConfigFiles
      summary: Juniper Networks List configuration files
      description: Returns all stored configuration file versions.
      tags:
      - Configuration
      parameters:
      - $ref: '#/components/parameters/PageStart'
      - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: List of config files
          content:
            application/json:
              schema:
                type: object
                properties:
                  configFiles:
                    type: object
                    properties:
                      configFile:
                        type: array
                        items:
                          $ref: '#/components/schemas/ConfigFile'
    servers:
    - url: https://{space_server}/api/space
      description: Junos Space Server
      variables:
        space_server:
          default: space.example.com
          description: Hostname or IP of the Junos Space server
  /config-file-management/apply-configlet:
    post:
      operationId: applyConfiglet
      summary: Juniper Networks Apply configlet to devices
      description: Applies a configuration template (configlet) to one or more devices.
      tags:
      - Configuration
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                applyConfigletRequest:
                  type: object
                  properties:
                    configletId:
                      type: integer
                    deviceIds:
                      type: array
                      items:
                        type: integer
      responses:
        '202':
          description: Configlet application job initiated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Job'
    servers:
    - url: https://{space_server}/api/space
      description: Junos Space Server
      variables:
        space_server:
          default: space.example.com
          description: Hostname or IP of the Junos Space server
components:
  parameters:
    PageStart:
      name: paging.start
      in: query
      description: Starting index for pagination
      schema:
        type: integer
        default: 0
    PageSize:
      name: paging.limit
      in: query
      description: Number of results per page
      schema:
        type: integer
        default: 25
    DeviceId:
      name: device_id
      in: path
      required: true
      description: Device unique identifier
      schema:
        type: integer
  schemas:
    ConfigFile:
      type: object
      properties:
        configFileId:
          type: integer
        deviceId:
          type: integer
        fileName:
          type: string
        configVersion:
          type: integer
        createdDate:
          type: string
          format: date-time
    Job:
      type: object
      properties:
        jobId:
          type: integer
        name:
          type: string
        state:
          type: string
          enum:
          - INPROGRESS
          - SUCCESS
          - FAILURE
          - CANCELLED
        percentComplete:
          type: number
        createdTime:
          type: string
          format: date-time
        completedTime:
          type: string
          format: date-time
        summary:
          type: string
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic authentication with Junos device credentials
x-refined-from:
- juniper-junos-rest-api-openapi.yml
- juniper-junos-space-openapi.yml