Nfon Customer Sites API

The Customer Sites API from Nfon — 3 operation(s) for customer sites.

Operations 4

GET /tenants/{participantExternalIdentifier}/sites #
GET /tenants/{participantExternalIdentifier}/sites/{siteId} #
GET /tenants/{participantExternalIdentifier}/sites/{siteId}/site-options #
PUT /tenants/{participantExternalIdentifier}/sites/{siteId}/site-options #

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/nfon-customer-sites-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

nfon-customer-sites-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: APIs for managing PBX configuration, tenants, operators, licenses, and related resources
  title: PBX Configuration Customer Sites API
  version: 2026.07.20
servers:
- url: /configuration/v1
tags:
- name: Customer Sites
paths:
  /tenants/{participantExternalIdentifier}/sites:
    get:
      parameters:
      - schema:
          type: string
        required: true
        in: path
        name: participantExternalIdentifier
      tags:
      - Customer Sites
      operationId: get_158
      security:
      - oauth2:
        - tenant.manager
      - oauth2:
        - tenant.system-integrator
      - oauth2:
        - tenant.operator
      - oauth2:
        - tenant.admin
      responses:
        '200':
          content:
            application/vnd.collection.next+json:
              schema:
                type: object
          description: Success
        '403':
          description: Insufficient permissions
  /tenants/{participantExternalIdentifier}/sites/{siteId}:
    get:
      parameters:
      - schema:
          type: string
        required: true
        in: path
        name: siteId
      - schema:
          type: string
        required: true
        in: path
        name: participantExternalIdentifier
      tags:
      - Customer Sites
      operationId: get_159
      security:
      - oauth2:
        - tenant.manager
      - oauth2:
        - tenant.system-integrator
      - oauth2:
        - tenant.operator
      - oauth2:
        - tenant.admin
      responses:
        '200':
          content:
            application/vnd.collection.next+json:
              schema:
                $ref: '#/components/schemas/NfonApiResponse'
              example:
                links:
                - href: /api/customers/K0001/sites/a1B2c3D4
                  rel: siteA
                - href: /api/customers/K0001/sites/e5F6g7H8
                  rel: siteB
                - href: /api/customers/K0001/sites/a1B2c3D4/options
                  rel: siteOptions
                data:
                - value: Munich Office
                  name: name
                - value: a1B2c3D4e5F6
                  name: salesforceId
                - value: Machtlfinger Str. 7
                  name: street
                - value: '81379'
                  name: zip
                - value: Munich
                  name: city
                - value: DE
                  name: country
                - value: 089
                  name: azc
                - value: '89'
                  name: ndc
                - value: 2024-01-15 10:30
                  name: obsoleteSince
                href: /api/customers/example-id/sites/example-id
          description: Success
        '403':
          description: Insufficient permissions
        '404':
          description: Not found
  /tenants/{participantExternalIdentifier}/sites/{siteId}/site-options:
    get:
      parameters:
      - schema:
          type: string
        required: true
        in: path
        name: participantExternalIdentifier
      - schema:
          type: string
        required: true
        in: path
        name: siteId
      tags:
      - Customer Sites
      operationId: get_160
      security:
      - oauth2:
        - tenant.manager
      - oauth2:
        - tenant.system-integrator
      - oauth2:
        - tenant.operator
      - oauth2:
        - tenant.admin
      responses:
        '200':
          content:
            application/vnd.collection.next+json:
              schema:
                $ref: '#/components/schemas/NfonApiResponse'
              example:
                links: {}
                data:
                - value: '0'
                  name: dialPrefix
                - value: DE
                  name: language
                - value: 'false'
                  name: publicSpace
                - value: true
                  name: canReinvite
                - value: false
                  name: nat
                - value: UDP
                  name: sipTransport
                - value: false
                  name: vlanTagging
                - value: 100
                  name: voiceVlan
                - value: 200
                  name: dataVlan
                - value: AUTO
                  name: portSpeed
                - value: pool.ntp.org
                  name: ntpServer
                - value: false
                  name: autoHotDesking
                - value: syslog.example.com
                  name: monitoringServer
                - value: STANDARD
                  name: monitoringLevel
                - value: '2025-12-31'
                  name: monitoringUntil
                - value: G711
                  name: codecProfile
                - value: false
                  name: uacstaActive
                - value: csta.example.com
                  name: uacstaServer
                - value: 7001
                  name: uacstaPort
                - value: TCP
                  name: uacstaProtocol
                - value: 'false'
                  name: ldapActive
                - value: ldap.example.com
                  name: ldapServer
                - value: '389'
                  name: ldapPort
                - value: cn=admin,dc=example,dc=com
                  name: ldapUsername
                href: /api/customers/example-id/sites/example-id/site-options
          description: Success
        '403':
          description: Insufficient permissions
        '404':
          description: Not found
    put:
      requestBody:
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/SiteOptionsPUTRequest'
      parameters:
      - schema:
          type: string
        required: true
        in: path
        name: participantExternalIdentifier
      - schema:
          type: string
        required: true
        in: path
        name: siteId
      tags:
      - Customer Sites
      operationId: put_48
      security:
      - oauth2:
        - tenant.manager
      - oauth2:
        - tenant.system-integrator
      - oauth2:
        - tenant.operator
      - oauth2:
        - tenant.admin
      responses:
        '404':
          description: Not found
        '204':
          description: Updated
        '400':
          description: Validation error
        '403':
          description: Insufficient permissions
components:
  schemas:
    SiteOptionsPUTRequest:
      properties:
        links:
          $ref: '#/components/schemas/SiteOptionsPUTLinks'
        data:
          $ref: '#/components/schemas/SiteOptionsPUTData'
        items:
          items:
            type: object
          type: array
        itemCount:
          format: int32
          type: integer
      type: object
    Enum:
      properties:
        notNull:
          type: boolean
        notPresent:
          type: boolean
        present:
          type: boolean
        presentNotNull:
          type: boolean
        presentNull:
          type: boolean
        value:
          type: object
      type: object
      example: 'OFF'
    SiteOptionsPUTLinks:
      properties:
        mediaGateway:
          $ref: '#/components/schemas/String'
        fmcNumberSet:
          $ref: '#/components/schemas/String'
        timezone:
          $ref: '#/components/schemas/String'
      type: object
    Links:
      description: Related resource links
      type: object
    SiteOptionsPUTData:
      properties:
        ldapUsername:
          $ref: '#/components/schemas/String'
        dialPrefix:
          $ref: '#/components/schemas/String'
        language:
          $ref: '#/components/schemas/Enum'
        publicSpace:
          $ref: '#/components/schemas/Boolean'
        canReinvite:
          $ref: '#/components/schemas/Boolean'
        nat:
          $ref: '#/components/schemas/Boolean'
        ldapPassword:
          $ref: '#/components/schemas/String'
        uacstaPassword:
          $ref: '#/components/schemas/String'
        dataVlan:
          $ref: '#/components/schemas/Integer'
        portSpeed:
          $ref: '#/components/schemas/String'
        ntpServer:
          $ref: '#/components/schemas/String'
        autoHotDesking:
          $ref: '#/components/schemas/Boolean'
        monitoringServer:
          $ref: '#/components/schemas/String'
        monitoringLevel:
          $ref: '#/components/schemas/String'
        codecProfile:
          $ref: '#/components/schemas/String'
        uacstaActive:
          $ref: '#/components/schemas/Boolean'
        uacstaServer:
          $ref: '#/components/schemas/String'
        voiceVlan:
          $ref: '#/components/schemas/Integer'
        uacstaPort:
          $ref: '#/components/schemas/Integer'
        sipTransport:
          $ref: '#/components/schemas/Enum'
        ldapActive:
          $ref: '#/components/schemas/Boolean'
        ldapServer:
          $ref: '#/components/schemas/String'
        vlanTagging:
          $ref: '#/components/schemas/Boolean'
        ldapPort:
          $ref: '#/components/schemas/Integer'
        uacstaProtocol:
          $ref: '#/components/schemas/Enum'
      type: object
    Integer:
      properties:
        notNull:
          type: boolean
        notPresent:
          type: boolean
        present:
          type: boolean
        presentNotNull:
          type: boolean
        presentNull:
          type: boolean
        value:
          format: int32
          type: integer
      example: 1000
      type: object
      description: Subscribers soft limit
    NfonApiResponse:
      properties:
        links:
          $ref: '#/components/schemas/Links'
        data:
          description: Resource data (name/value pairs or structured object)
          type: object
        href:
          example: /api/sip-servers/100
          type: string
          description: Self-link to this resource
      type: object
      description: Standard API response envelope for a single resource
    String:
      properties:
        notNull:
          type: boolean
        notPresent:
          type: boolean
        present:
          type: boolean
        presentNotNull:
          type: boolean
        presentNull:
          type: boolean
        value:
          type: string
      type: object
      description: Link to the last page
    Boolean:
      properties:
        notNull:
          type: boolean
        notPresent:
          type: boolean
        present:
          type: boolean
        presentNotNull:
          type: boolean
        presentNull:
          type: boolean
        value:
          type: boolean
      type: object
      example: false
  securitySchemes:
    jwt:
      scheme: bearer
      bearerFormat: JWT
      type: http