Alianza Device API

Convenience operations related to devices

OpenAPI Specification

alianza-device-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Alianza Public Device API
  version: '2'
  description: "Welcome to the Alianza Public API documentation, based on the OpenAPI 3.0 specification.\n\n_If you need the Swagger 2.0/OAS 2.0 version of the Alianza Public API, click [here](https://api.alianza.com/v2/apidocs/)._\n\nAuthentication for most API endpoints requires the use of an <a href=\"data.html#xauthtoken\" hidden>X-AUTH-TOKEN</a> X-AUTH-TOKEN header. Please reach out to your account manager for login credentials.\nTo obtain an X-AUTH-TOKEN, use the POST /v2/authorize endpoint under the <a href=\"#/~operation/Authorize/\">Authorize</a> group, which will return an authToken value. \nClick the Authorize button below and provide the returned token. \n\n<div hidden>\nSome useful links:\n- [Brief introduction to Alianza components](data.html) such as Partitions, Accounts and Users\n</div>"
servers:
- url: https://api.d2.alianza.com
  description: Development
- url: https://api.q2.alianza.com
  description: QA
- url: https://api.b2.alianza.com
  description: Beta
- url: https://api.alianza.com
  description: Production
security:
- X-Auth-Token: []
tags:
- name: Device
  description: Convenience operations related to devices
paths:
  /v2/ces/deviceGraph/{macaddress}:
    get:
      tags:
      - Device
      summary: Device Graph
      description: Use to search for a deviceGraph, which is defined as information about a specific physical phone interface, plus information about all of the phone numbers which ring that device.
      operationId: deviceGraph
      parameters:
      - name: limited
        in: query
        description: Whether the phone information is limited.<br/>If false, this returns a <a href="#/~schema/DeviceGraphUnlimited">DeviceGraphUnlimited</a> which contains extensive information about the telephone number and account.<br/>If true this returns a <a href="#/~schema/DeviceGraphLimited">DeviceGraphLimited</a> which only lists the phone numbers.
        schema:
          type: boolean
          default: false
      - name: macaddress
        in: path
        description: The mac address of the phone interface
        required: true
        schema:
          type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/DeviceGraphLimited'
                - $ref: '#/components/schemas/DeviceGraphUnlimited'
        '401':
          description: Expired Auth Token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiException'
        '404':
          description: Device not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiException'
components:
  schemas:
    E911AddressX:
      type: object
      properties:
        id:
          type: string
        firstName:
          type: string
        middleInitial:
          type: string
        lastName:
          type: string
        businessName:
          type: string
        streetNumber:
          type: string
        streetNumberSuffix:
          type: string
        preDirectional:
          type: string
          enum:
          - ''
          - N
          - NE
          - E
          - SE
          - S
          - SW
          - W
          - NW
        streetName:
          type: string
        streetSuffix:
          type: string
        postDirectional:
          type: string
          enum:
          - ''
          - N
          - NE
          - E
          - SE
          - S
          - SW
          - W
          - NW
        city:
          type: string
        state:
          type: string
        country:
          type: string
        postalCode:
          type: string
        secondaryLocationDescription:
          type: string
          enum:
          - ''
          - APARTMENT
          - BUILDING
          - BASEMENT
          - DEPARTMENT
          - FLOOR
          - FRONT
          - HANGER
          - KEY
          - LOBBY
          - LOT
          - LOWER
          - OFFICE
          - PENTHOUSE
          - PIER
          - REAR
          - ROOM
          - SIDE
          - SLIP
          - SPACE
          - SUITE
          - STOP
          - TRAILER
          - UNIT
          - UPPER
        unit:
          type: string
        customerType:
          type: string
          enum:
          - BUSINESS
          - RESIDENTIAL
        latitude:
          type: string
          description: -90 through 90, 4-6 decimals
        longitude:
          type: string
          description: -180 through 180, 4-6 decimals
        language:
          type: string
          description: Optional, see /v2/ref/language for supported languages
    DeviceGraph:
      type: object
      properties:
        deviceTypeId:
          type: string
        accountId:
          type: string
        partitionId:
          type: string
        macAddress:
          type: string
        deviceName:
          type: string
        emergencyNumber:
          type: string
        faxEnabled:
          type: boolean
        lineNumber:
          type: integer
        userId:
          type: string
        sipUsername:
          type: string
        linetype:
          type: string
    DeviceGraphLimited:
      allOf:
      - $ref: '#/components/schemas/DeviceGraph'
      - type: object
        required:
        - telephoneNumbers
        properties:
          telephoneNumbers:
            type: array
            items:
              type: string
    DeviceGraphUnlimited:
      allOf:
      - $ref: '#/components/schemas/DeviceGraph'
      - type: object
        required:
        - tnas
        properties:
          tnas:
            type: array
            items:
              $ref: '#/components/schemas/TelephoneNumberAccountV2X'
    PublicApiException:
      type: object
      properties:
        status:
          type: integer
        messages:
          type: array
          items:
            type: string
        data:
          type: object
          additionalProperties: true
          example:
            key: value
            key2: value2
    TelephoneNumberAccountV2X:
      type: object
      properties:
        phoneNumber:
          type: string
        referenceType:
          type: string
          description: What kind of destination gets calls from this number.
          enum:
          - SIP_TRUNK
          - END_USER
          - IVR
          - LINE_APPEARANCE
          - LINE_HUNTGROUP
          - TELEPHONE
          - VFAX
          - BUSINESS_LINE
          - BUSINESS_LINE_HUNT_GROUP
          - CALL_GROUP
          - CALL_QUEUE
          - AUTO_ATTENDANT
          - SPECIALTY_LINE
          - CONTACT_CENTER
        referenceId:
          type: string
          description: The id of the destination which gets calls from this number.  You can think of this as a variable refkey; what it points to depends on the referenceType.
        functionType:
          type: string
          enum:
          - ELS
          - TollFree
          - TemporaryNumber
          - SPTN
        canAcceptSMS:
          type: boolean
        operationalStatus:
          type: string
          enum:
          - ACTIVE
          - STAGED
        portId:
          type: string
        servicePackageType:
          type: string
          enum:
          - Usage
          - PrimaryLocalFlatRate
          - PrimaryLocalAndDomesticLDFlatRate
          - SecondaryLocalFlatRate
          - SecondaryLocalAndDomesticLDFlatRate
        accountId:
          type: string
        partitionId:
          type: string
        customerServiceRecord:
          $ref: '#/components/schemas/CustomerServiceRecordX'
        carrierStatus:
          type: string
          enum:
          - ACTIVE
          - ACTIVATION_ON_HOLD
          - ACTIVATION_PENDING
          - PORT_PENDING
          - CANCEL_PORT
          - CANCEL_PORT_EXPIDITED
          - DELETE_PENDING
          - DELETED
          - CANCEL_PORT_COMPLETE
          - PORT_REJECTED
          - INVENTORY
          - INVENTORY_CLAIMED
          - COOLDOWN
          - RECOVERED
        orderVersion:
          type: string
        e911Address:
          $ref: '#/components/schemas/E911AddressX'
        temporaryNumber:
          type: string
        directoryListing:
          $ref: '#/components/schemas/DirectoryListingX'
        assignAsCallerId:
          type: boolean
        byotnCarrierId:
          type: string
        ringType:
          type: string
          description: Default ringtype for this phone
          enum:
          - StandardRing
          - Ring1
          - Ring2
          - Ring3
          - Ring4
          - Ring5
          - Ring6
          - Ring7
        carrierId:
          type: string
        tollFree:
          type: boolean
        id:
          type: string
    AddressX:
      type: object
      properties:
        id:
          type: string
        firstName:
          type: string
          minLength: 1
          maxLength: 256
        middleInitial:
          type: string
          maxLength: 256
        lastName:
          type: string
          maxLength: 256
        businessName:
          type: string
          maxLength: 256
        streetNumber:
          type: string
        streetNumberSuffix:
          type: string
        preDirectional:
          type: string
          enum:
          - ''
          - N
          - NE
          - E
          - SE
          - S
          - SW
          - W
          - NW
        streetName:
          type: string
          maxLength: 256
        streetSuffix:
          type: string
        postDirectional:
          type: string
          enum:
          - ''
          - N
          - NE
          - E
          - SE
          - S
          - SW
          - W
          - NW
        city:
          type: string
          maxLength: 256
        state:
          type: string
          description: A two-letter state abbreviation
        country:
          type: string
          description: Alianza supports accounts in USA and CAN
        postalCode:
          type: string
        secondaryLocationDescription:
          type: string
          enum:
          - ''
          - APARTMENT
          - BUILDING
          - BASEMENT
          - DEPARTMENT
          - FLOOR
          - FRONT
          - HANGER
          - KEY
          - LOBBY
          - LOT
          - LOWER
          - OFFICE
          - PENTHOUSE
          - PIER
          - REAR
          - ROOM
          - SIDE
          - SLIP
          - SPACE
          - SUITE
          - STOP
          - TRAILER
          - UNIT
          - UPPER
        unit:
          type: string
          maxLength: 10
    CustomerServiceRecordX:
      type: object
      properties:
        id:
          type: string
        firstName:
          type: string
          minLength: 1
          maxLength: 256
        middleInitial:
          type: string
          maxLength: 256
        lastName:
          type: string
          maxLength: 256
        businessName:
          type: string
          maxLength: 256
        streetNumber:
          type: string
        streetNumberSuffix:
          type: string
        preDirectional:
          type: string
          enum:
          - ''
          - N
          - NE
          - E
          - SE
          - S
          - SW
          - W
          - NW
        streetName:
          type: string
          maxLength: 256
        streetSuffix:
          type: string
        postDirectional:
          type: string
          enum:
          - ''
          - N
          - NE
          - E
          - SE
          - S
          - SW
          - W
          - NW
        city:
          type: string
          maxLength: 256
        state:
          type: string
          description: A two-letter state abbreviation
        country:
          type: string
          description: Alianza supports accounts in the USA and Canada.
        postalCode:
          type: string
        secondaryLocationDescription:
          type: string
          enum:
          - ''
          - APARTMENT
          - BUILDING
          - BASEMENT
          - DEPARTMENT
          - FLOOR
          - FRONT
          - HANGER
          - KEY
          - LOBBY
          - LOT
          - LOWER
          - OFFICE
          - PENTHOUSE
          - PIER
          - REAR
          - ROOM
          - SIDE
          - SLIP
          - SPACE
          - SUITE
          - STOP
          - TRAILER
          - UNIT
          - UPPER
        unit:
          type: string
          maxLength: 10
        customerType:
          type: string
          enum:
          - BUSINESS
          - RESIDENTIAL
        firstNameSecondary:
          type: string
        blockCustomerName:
          type: boolean
        customerName:
          type: string
    DirectoryListingX:
      type: object
      properties:
        listed:
          type: boolean
        type:
          type: string
          description: Indicates how a telephone number should be listed.  <span hidden>For more information on the directory listing process, please refer <a href="directoryListing.html#overview">here</a></span>
          enum:
          - ERROR
          - LIST_PUBLISH
          - LIST_NOT_PUBLISH
          - NOT_LIST_NOT_PUBLISH
          - PORTED
          - COMPLEX
        address:
          $ref: '#/components/schemas/AddressX'
  securitySchemes:
    X-Auth-Token:
      type: apiKey
      in: header
      name: X-AUTH-TOKEN