KPN

KPN SD-LAN / SD-WAN Network View API

The SD-LAN SD-WAN Network View API is a modern REST API based on the OpenAPI specification. The Network View API gives users read rights to retrieve information from the `Network View API` resources. - **Note**: By default you have read only access but based on your requirements and contract you can be granted `Manager` access to this API which is more than read only. To request manager access, please contact us at api_developer@kpn.com.

OpenAPI Specification

kpn-sd-lan-sd-wan-network-view-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: 1.54.0
  title: KPN SD-LAN SD-WAN Network View API
  description: >-
    The SD-LAN SD-WAN Network View API is a modern REST API based on the OpenAPI specification.
        
    The Network View API gives users read rights to retrieve information from the `Network View API` resources. 
        
    - **Note**: By default you have read only access but based on your requirements and contract you can be granted `Manager` access to this API which is more than read only. To request manager access, please contact us at api_developer@kpn.com.
    
   
    ---

    ## [Source view](https://app.swaggerhub.com/apis/kpn/kpn-sd_lan_sd_wan_network_view_api/)<br/>
    [Documentation view](https://app.swaggerhub.com/apis-docs/kpn/kpn-sd_lan_sd_wan_network_view_api/)

    ---

    ## [KPN Developer](https://developer.kpn.com/)<br/>
    [Getting Started](https://developer.kpn.com/getting-started)


servers:
  - url: https://api-prd.kpn.com/kpn/meraki
paths:
  /organizations/{organizationId}/networks:
    get:
      summary: List networks in an organization
      description: Retrieve the list of networks for a given organization.
      operationId: getOrganizationNetworks
      parameters:
        - name: organizationId
          in: path
          required: true
          schema:
            type: string
          description: The ID of the organization.
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                    name:
                      type: string
              example:
                - id: N_12345
                  name: Test Network
  /organizations/{organizationId}/devices:
    get:
      summary: List devices in an organization
      description: Retrieve the list of devices for a given organization.
      operationId: getOrganizationDevices
      parameters:
        - name: organizationId
          in: path
          required: true
          schema:
            type: string
          description: The ID of the organization.
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    serial:
                      type: string
                    model:
                      type: string
                    name:
                      type: string
              example:
                - serial: Q234-ABCD-5678
                  model: MX67
                  name: Main Office MX
  /networks/{networkId}/clients:
    get:
      summary: List clients in a network
      description: Retrieve the list of clients for a given network.
      operationId: getNetworkClients
      parameters:
        - name: networkId
          in: path
          required: true
          schema:
            type: string
          description: The ID of the network.
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                    mac:
                      type: string
                    description:
                      type: string
              example:
                - id: C12345
                  mac: '00:11:22:33:44:55'
                  description: Test Client
  /getOrganizations: {}
  /getOrganizationNetworks: {}
  /getOrganizationDevices: {}
  /getNetworkClients: {}
  /devices/{serial}/appliance/dhcp/subnets:
    get:
      description: Return the DHCP subnet information for an appliance
      operationId: getDeviceApplianceDhcpSubnets
      parameters:
        - name: serial
          in: path
          description: Serial
          schema:
            type: string
          required: true
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
              example:
                - subnet: 192.168.1.0/24
                  vlanId: 100
                  usedCount: 2
                  freeCount: 251
      summary: Return the DHCP subnet information for an appliance
      tags:
        - appliance.monitor
  /devices/{serial}/appliance/performance:
    get:
      description: Return the performance score for a single MX. Only primary MX devices supported. If no data is available, a 204 error code is returned.
      operationId: getDeviceAppliancePerformance
      parameters:
        - name: serial
          in: path
          description: Serial
          schema:
            type: string
          required: true
        - name: t0
          in: query
          description: The beginning of the timespan for the data. The maximum lookback period is 30 days from today.
          schema:
            type: string
        - name: t1
          in: query
          description: The end of the timespan for the data. t1 can be a maximum of 14 days after t0.
          schema:
            type: string
        - name: timespan
          in: query
          description: The timespan for which the information will be fetched. If specifying timespan, do not specify parameters t0 and t1. The value must be in seconds and be greater than or equal to 30 minutes and be less than or equal to 14 days. The default is 30 minutes.
          schema:
            type: number
            format: float
            minimum: 1800
            maximum: 1209600
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
              example:
                perfScore: 10
      summary: Return the performance score for a single MX
      tags:
        - appliance.monitor
  /devices/{serial}/appliance/prefixes/delegated:
    get:
      description: Return current delegated IPv6 prefixes on an appliance.
      operationId: getDeviceAppliancePrefixesDelegated
      parameters:
        - name: serial
          in: path
          description: Serial
          schema:
            type: string
          required: true
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
              example:
                - origin:
                    interface: wan1
                  prefix: 2001:db8:3c4d:15::/64
                  counts:
                    assigned: 2
                    available: 253
                  method: auto
                  description: My ISP provider
                  isPreferred: true
                  expiresAt: '2018-05-12T00:00:00Z'
      summary: Return current delegated IPv6 prefixes on an appliance.
      tags:
        - appliance.monitor
  /devices/{serial}/appliance/prefixes/delegated/vlanAssignments:
    get:
      description: Return prefixes assigned to all IPv6 enabled VLANs on an appliance.
      operationId: getDeviceAppliancePrefixesDelegatedVlanAssignments
      parameters:
        - name: serial
          in: path
          description: Serial
          schema:
            type: string
          required: true
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
              example:
                - vlan:
                    id: 100
                    name: My VLAN
                  origin:
                    interface: wan1
                    prefix: 2001:db8:3c4d:15::/64
                  status: Active
                  ipv6:
                    prefix: 2001:db8:3c4d:15::/64
                    address: 2001:db8:3c4d:15::1
                    linkLocal:
                      address: 2001:db8:3c4d:15::1
                    solicitedNodeMulticast:
                      address: 2001:db8:3c4d:15::1
      summary: Return prefixes assigned to all IPv6 enabled VLANs on an appliance.
      tags:
        - appliance.monitor
  /devices/{serial}/appliance/radio/settings:
    get:
      description: Return the radio settings of an appliance
      operationId: getDeviceApplianceRadioSettings
      parameters:
        - name: serial
          in: path
          description: Serial
          schema:
            type: string
          required: true
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  serial:
                    type: string
                    description: The device serial
                  rfProfileId:
                    type: string
                    description: RF Profile ID
                  twoFourGhzSettings:
                    type: object
                    properties:
                      channel:
                        type: integer
                        enum:
                          - 1
                          - 2
                          - 3
                          - 4
                          - 5
                          - 6
                          - 7
                          - 8
                          - 9
                          - 10
                          - 11
                          - 12
                          - 13
                          - 14
                        description: Manual channel for 2.4 GHz
                      targetPower:
                        type: integer
                        description: Manual target power for 2.4 GHz
                    description: Manual radio settings for 2.4 GHz
                  fiveGhzSettings:
                    type: object
                    properties:
                      channel:
                        type: integer
                        enum:
                          - 36
                          - 40
                          - 44
                          - 48
                          - 52
                          - 56
                          - 60
                          - 64
                          - 100
                          - 104
                          - 108
                          - 112
                          - 116
                          - 120
                          - 124
                          - 128
                          - 132
                          - 136
                          - 140
                          - 144
                          - 149
                          - 153
                          - 157
                          - 161
                          - 165
                          - 169
                          - 173
                          - 177
                        description: Manual channel for 5 GHz
                      channelWidth:
                        type: integer
                        enum:
                          - 0
                          - 20
                          - 40
                          - 80
                          - 160
                        description: Manual channel width for 5 GHz
                      targetPower:
                        type: integer
                        description: Manual target power for 5 GHz
                    description: Manual radio settings for 5 GHz
              example:
                serial: Q234-ABCD-5678
                rfProfileId: '1234'
                twoFourGhzSettings:
                  channel: 11
                  targetPower: 21
                fiveGhzSettings:
                  channel: 149
                  channelWidth: 20
                  targetPower: 15
      summary: Return the radio settings of an appliance
      tags:
        - appliance.configure
    put:
      description: Update the radio settings of an appliance
      operationId: updateDeviceApplianceRadioSettings
      parameters:
        - name: serial
          in: path
          description: Serial
          schema:
            type: string
          required: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                rfProfileId:
                  type: string
                  description: The ID of an RF profile to assign to the device. If the value of this parameter is null, the appropriate basic RF profile (indoor or outdoor) will be assigned to the device. Assigning an RF profile will clear ALL manually configured overrides on the device (channel width, channel, power).
                twoFourGhzSettings:
                  type: object
                  properties:
                    channel:
                      type: integer
                      enum:
                        - 1
                        - 2
                        - 3
                        - 4
                        - 5
                        - 6
                        - 7
                        - 8
                        - 9
                        - 10
                        - 11
                        - 12
                        - 13
                        - 14
                      description: Sets a manual channel for 2.4 GHz. Can be '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13' or '14' or null for using auto channel.
                    targetPower:
                      type: integer
                      description: Set a manual target power for 2.4 GHz (dBm). Enter null for using auto power range.
                  description: Manual radio settings for 2.4 GHz.
                fiveGhzSettings:
                  type: object
                  properties:
                    channel:
                      type: integer
                      enum:
                        - 36
                        - 40
                        - 44
                        - 48
                        - 52
                        - 56
                        - 60
                        - 64
                        - 100
                        - 104
                        - 108
                        - 112
                        - 116
                        - 120
                        - 124
                        - 128
                        - 132
                        - 136
                        - 140
                        - 144
                        - 149
                        - 153
                        - 157
                        - 161
                        - 165
                        - 169
                        - 173
                        - 177
                      description: Sets a manual channel for 5 GHz. Can be '36', '40', '44', '48', '52', '56', '60', '64', '100', '104', '108', '112', '116', '120', '124', '128', '132', '136', '140', '144', '149', '153', '157', '161', '165', '169', '173' or '177' or null for using auto channel.
                    channelWidth:
                      type: integer
                      enum:
                        - 0
                        - 20
                        - 40
                        - 80
                        - 160
                      description: Sets a manual channel width for 5 GHz. Can be '0', '20', '40', '80' or '160' or null for using auto channel width.
                    targetPower:
                      type: integer
                      description: Set a manual target power for 5 GHz (dBm). Enter null for using auto power range.
                  description: Manual radio settings for 5 GHz.
              example:
                rfProfileId: '1234'
                twoFourGhzSettings:
                  channel: 11
                  targetPower: 21
                fiveGhzSettings:
                  channel: 149
                  channelWidth: 20
                  targetPower: 15
        required: false
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  serial:
                    type: string
                    description: The device serial
                  rfProfileId:
                    type: string
                    description: RF Profile ID
                  twoFourGhzSettings:
                    type: object
                    properties:
                      channel:
                        type: integer
                        enum:
                          - 1
                          - 2
                          - 3
                          - 4
                          - 5
                          - 6
                          - 7
                          - 8
                          - 9
                          - 10
                          - 11
                          - 12
                          - 13
                          - 14
                        description: Manual channel for 2.4 GHz
                      targetPower:
                        type: integer
                        description: Manual target power for 2.4 GHz
                    description: Manual radio settings for 2.4 GHz
                  fiveGhzSettings:
                    type: object
                    properties:
                      channel:
                        type: integer
                        enum:
                          - 36
                          - 40
                          - 44
                          - 48
                          - 52
                          - 56
                          - 60
                          - 64
                          - 100
                          - 104
                          - 108
                          - 112
                          - 116
                          - 120
                          - 124
                          - 128
                          - 132
                          - 136
                          - 140
                          - 144
                          - 149
                          - 153
                          - 157
                          - 161
                          - 165
                          - 169
                          - 173
                          - 177
                        description: Manual channel for 5 GHz
                      channelWidth:
                        type: integer
                        enum:
                          - 0
                          - 20
                          - 40
                          - 80
                          - 160
                        description: Manual channel width for 5 GHz
                      targetPower:
                        type: integer
                        description: Manual target power for 5 GHz
                    description: Manual radio settings for 5 GHz
              example:
                serial: Q234-ABCD-5678
                rfProfileId: '1234'
                twoFourGhzSettings:
                  channel: 11
                  targetPower: 21
                fiveGhzSettings:
                  channel: 149
                  channelWidth: 20
                  targetPower: 15
      summary: Update the radio settings of an appliance
      tags:
        - appliance.configure
  /devices/{serial}/appliance/uplinks/settings:
    get:
      description: Return the uplink settings for an MX appliance
      operationId: getDeviceApplianceUplinksSettings
      parameters:
        - name: serial
          in: path
          description: Serial
          schema:
            type: string
          required: true
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  interfaces:
                    type: object
                    properties:
                      wan1:
                        type: object
                        properties:
                          enabled:
                            type: boolean
                            description: Enable or disable the interface.
                          vlanTagging:
                            type: object
                            properties:
                              enabled:
                                type: boolean
                                description: Whether VLAN tagging is enabled.
                              vlanId:
                                type: integer
                                description: The ID of the VLAN to use for VLAN tagging.
                            description: VLAN tagging settings.
                          svis:
                            type: object
                            properties:
                              ipv4:
                                type: object
                                properties:
                                  assignmentMode:
                                    type: string
                                    enum:
                                      - dynamic
                                      - static
                                    description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
                                  address:
                                    type: string
                                    description: IP address and subnet mask when in static mode.
                                  gateway:
                                    type: string
                                    description: Gateway IP address when in static mode.
                                  nameservers:
                                    type: object
                                    properties:
                                      addresses:
                                        type: array
                                        items:
                                          type: string
                                        description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
                                    description: The nameserver settings for this SVI.
                                description: IPv4 settings for static/dynamic mode.
                              ipv6:
                                type: object
                                properties:
                                  assignmentMode:
                                    type: string
                                    enum:
                                      - dynamic
                                      - static
                                    description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
                                  address:
                                    type: string
                                    description: Static address that will override the one(s) received by SLAAC.
                                  gateway:
                                    type: string
                                    description: Static gateway that will override the one received by autoconf.
                                  nameservers:
                                    type: object
                                    properties:
                                      addresses:
                                        type: array
                                        items:
                                          type: string
                                        description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
                                    description: The nameserver settings for this SVI.
                                description: IPv6 settings for static/dynamic mode.
                            description: SVI settings by protocol.
                          pppoe:
                            type: object
                            properties:
                              enabled:
                                type: boolean
                                description: Whether PPPoE is enabled.
                              authentication:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                    description: Whether PPPoE authentication is enabled.
                                  username:
                                    type: string
                                    description: Username for PPPoE authentication.
                                description: Settings for PPPoE Authentication.
                            description: Configuration options for PPPoE.
                        description: WAN 1 settings.
                      wan2:
                        type: object
                        properties:
                          enabled:
                            type: boolean
                            description: Enable or disable the interface.
                          vlanTagging:
                            type: object
                            properties:
                              enabled:
                                type: boolean
                                description: Whether VLAN tagging is enabled.
                              vlanId:
                                type: integer
                                description: The ID of the VLAN to use for VLAN tagging.
                            description: VLAN tagging settings.
                          svis:
                            type: object
                            properties:
                              ipv4:
                                type: object
                                properties:
                                  assignmentMode:
                                    type: string
                                    enum:
                                      - dynamic
                                      - static
                                    description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
                                  address:
                                    type: string
                                    description: IP address and subnet mask when in static mode.
                                  gateway:
                                    type: string
                                    description: Gateway IP address when in static mode.
                                  nameservers:
                                    type: object
                                    properties:
                                      addresses:
                                        type: array
                                        items:
                                          type: string
                                        description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
                                    description: The nameserver settings for this SVI.
                                description: IPv4 settings for static/dynamic mode.
                              ipv6:
                                type: object
                                properties:
                                  assignmentMode:
                                    type: string
                                    enum:
                                      - dynamic
                                      - static
                                    description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
                                  address:
                                    type: string
                                    description: Static address that will override the one(s) received by SLAAC.
                                  gateway:
                                    type: string
                                    description: Static gateway that will override the one received by autoconf.
                                  nameservers:
                                    type: object
                                    properties:
                                      addresses:
                                        type: array
                                        items:
                                          type: string
                                        description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
                                    description: The nameserver settings for this SVI.
                                description: IPv6 settings for static/dynamic mode.
                            description: SVI settings by protocol.
                          pppoe:
                            type: object
                            properties:
                              enabled:
                                type: boolean
                                description: Whether PPPoE is enabled.
                              authentication:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                    description: Whether PPPoE authentication is enabled.
                                  username:
                                    type: string
                                    description: Username for PPPoE authentication.
                                description: Settings for PPPoE Authentication.
                            description: Configuration options for PPPoE.
                        description: WAN 2 settings.
                    description: Interface settings.
              example:
                interfaces:
                  wan1:
                    enabled: true
                    vlanTagging:
                      enabled: true
                      vlanId: 1
                    svis:
                      ipv4:
                        assignmentMode: static
                        address: 9.10.11.10/16
                        gateway: 13.14.15.16
                        nameservers:
                          addresses:
                            - 1.2.3.4
                      ipv6:
                        assignmentMode: static
                        address: 1:2:3::4
                        gateway: 1:2:3::5
                        nameservers:
                          addresses:
                            - 1001:4860:4860::8888
                            - 1001:4860:4860::8844
                    pppoe:
                      enabled: true
                      authentication:
                        enabled: true
                        username: username
                  wan2:
                    enabled: true
                    vlanTagging:
                      enabled: true
                      vlanId: 1
                    svis:
                      ipv4:
                        assignmentMode: static
                        address: 9.10.11.10/16
                        gateway: 13.14.15.16
                        nameservers:
                          addresses:
                            - 1.2.3.4
                      ipv6:
                        assignmentMode: static
                        address: 1:2:3::4
                        gateway: 1:2:3::5
                        nameservers:
                          addresses:
                            - 1001:4860:4860::8888
                            - 1001:4860:4860::8844
                    pppoe:
                      enabled: true
                      authentication:
                        enabled: true
                        username: username
      summary: Return the uplink settings for an MX appliance
      tags:
        - appliance.configure
    put:
      descr

# --- truncated at 32 KB (1824 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/kpn/refs/heads/main/openapi/kpn-sd-lan-sd-wan-network-view-openapi.yml