components:
  examples:
    BulkRateCenterGetCoverage404Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BulkRateCenterCoverageTaskResponse>
          <ResponseStatus>
            <Description>The resource does not exist</Description>
          </ResponseStatus>
        </BulkRateCenterCoverageTaskResponse>
    BulkRateCenterGetResponseExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BulkRateCenterCoverageTaskResponse>
          <BulkRateCenterCoverageTaskPayload>
            <StartTime>2021-06-08 06:45:13.0</StartTime>
            <EndTime>2021-06-08 06:45:13.0</EndTime>
            <Status>PARTIAL</Status>
            <TaskId>b05de7e6-0cab-4c83-81bb-9379cba8efd0</TaskId>
            <TotalRateCenterCoverageCount>2</TotalRateCenterCoverageCount>
            <SuccessRateCenterCoverageCount>1</SuccessRateCenterCoverageCount>
            <FailedRateCenterCoverageCount>1</FailedRateCenterCoverageCount>
            <SuccessRateCenterCoverageList>
              <RateCenterCoverage>
                <Id>99</Id>
                <VendorId>49</VendorId>
                <Abbreviation>AHOSKIE</Abbreviation>
                <Region>NC</Region>
                <TierId>1</TierId>
                <SupportsLnp>false</SupportsLnp>
                <SupportsNewTns>true</SupportsNewTns>
                <Lrn>+12529690000</Lrn>
                <Lata>951</Lata>
              </RateCenterCoverage>
            </SuccessRateCenterCoverageList>
            <ErrorList>
              <Error>
                <Code>3909</Code>
                <Description>The specified vendor ID is not valid: 55</Description>
                <RateCenterCoverage>
                  <Id>100</Id>
                  <VendorId>55</VendorId>
                  <Abbreviation>FARMVILLE</Abbreviation>
                  <Region>NC</Region>
                  <TierId>1</TierId>
                  <SupportsLnp>false</SupportsLnp>
                  <SupportsNewTns>true</SupportsNewTns>
                  <Lrn>+12529690000</Lrn>
                  <Lata>951</Lata>
                </RateCenterCoverage>
              </Error>
            </ErrorList>
          </BulkRateCenterCoverageTaskPayload>
        </BulkRateCenterCoverageTaskResponse>
    BulkRateCenterPostCoverage400Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BulkRateCenterCoverageResponse>
          <Error>
            <Description>Payload cannot contain duplicate RateCenterCoverage.</Description>
            <ErrorCode>3928</ErrorCode>
          </Error>
        </BulkRateCenterCoverageResponse>
    BulkRateCenterPostCoverage409Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BulkRateCenterCoverageResponse>
          <ResponseStatus>
            <Description>Another bulk task is currently in processing. Task id = 4d06566e-9c99-44b7-8d9b-20e2e20dea15</Description>
          </ResponseStatus>
        </BulkRateCenterCoverageResponse>
    BulkRateCenterPostResponseExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BulkRateCenterCoverageResponse>
          <BulkRateCenterCoveragePayload>
            <Status>PROCESSING</Status>
            <TaskId>b05de7e6-0cab-4c83-81bb-9379cba8efd0</TaskId>
            <RateCenterCoverageList>
              <RateCenterCoverage>
                <VendorId>49</VendorId>
                <Abbreviation>AHOSKIE</Abbreviation>
                <Region>NC</Region>
                <TierId>1</TierId>
                <SupportsLnp>false</SupportsLnp>
                <SupportsNewTns>true</SupportsNewTns>
                <Lrn>+12529690000</Lrn>
                <Lata>951</Lata>
              </RateCenterCoverage>
              <RateCenterCoverage>
                <VendorId>49</VendorId>
                <Abbreviation>FARMVILLE</Abbreviation>
                <Region>NC</Region>
                <TierId>1</TierId>
                <SupportsLnp>false</SupportsLnp>
                <SupportsNewTns>true</SupportsNewTns>
                <Lrn>+12529690000</Lrn>
                <Lata>951</Lata>
              </RateCenterCoverage>
            </RateCenterCoverageList>
          </BulkRateCenterCoveragePayload>
        </BulkRateCenterCoverageResponse>
    BulkRateCenterPutCoverage400Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BulkRateCenterCoverageTaskResponse>
          <ResponseStatus>
            <Description>Validation Error</Description>
          </ResponseStatus>
        </BulkRateCenterCoverageTaskResponse>
    BulkRateCenterPutCoverage404Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BulkRateCenterCoverageTaskResponse>
          <ResponseStatus>
             <Description>The resource does not exist</Description>
          </ResponseStatus>
         </BulkRateCenterCoverageTaskResponse>
    BulkTnVendorAssignmentPayload:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BulkTnVendorAssignmentPayload>
            <TnVendorAssignments>
                <TnVendorAssignment>
                    <Tn>+19195551111</Tn>
                    <Vendor>49</Vendor>
                </TnVendorAssignment>
                <TnVendorAssignment>
                    <Tn>+19195552222</Tn>
                    <Vendor>49</Vendor>
                </TnVendorAssignment>
                <TnVendorAssignment>
                    <Tn>+19195553333</Tn>
                    <Vendor>69</Vendor>
                </TnVendorAssignment>
            </TnVendorAssignments>
        </BulkTnVendorAssignmentPayload>
    BulkTnVendorAssignmentPutRequest:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BulkTnVendorAssignmentPayload>
            <TaskId>8e4c0d41-3477-427c-bf2e-e06382d80f62</TaskId>
            <Status>PARTIAL</Status>
        </BulkTnVendorAssignmentPayload>
    BulkTnVendorAssignmentResourceErrorResponse:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BulkTnVendorAssignmentTaskResponse>
            <ResponseStatus>
                <Description>The resource does not exist</Description>
            </ResponseStatus>
        </BulkTnVendorAssignmentTaskResponse>
    BulkTnVendorAssignmentStatusErrorResponse:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BulkTnVendorAssignmentTaskResponse>
            <ResponseStatus>
                <Description>Validation Error</Description>
            </ResponseStatus>
        </BulkTnVendorAssignmentTaskResponse>
    BulkTnVendorAssignmentTaskErrorResponse:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BulkTnVendorAssignmentTaskResponse>
           <ResponseStatus>
             <ErrorCode>18000</ErrorCode>
             <Description>The vendor id is invalid.</Description>
           </ResponseStatus>
         </BulkTnVendorAssignmentTaskResponse>
    BulkTnVendorAssignmentTaskResponseForGet:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BulkTnVendorAssignmentTaskResponse>
            <BulkTnVendorAssignmentPayload>
                <StartTime>2022-09-08 06:45:13.0</StartTime>
                <EndTime>2022-09-08 06:46:21.0</EndTime>
                <Status>PARTIAL</Status>
                <TaskId>8e4c0d41-3477-427c-bf2e-e06382d80f62</TaskId>
                <TotalTnVendorCount>3</TotalTnVendorCount>
                <SuccessTnVendorCount>2</SuccessTnVendorCount>
                <FailedTnVendorCount>1</FailedTnVendorCount>
                <TnVendorErrors>
                    <TnVendorError>
                        <Code>XXXX</Code>
                        <Description>Telephone Number not found</Description>
                        <TnVendorAssignment>
                            <Tn>+19195553333</Tn>
                            <Vendor>69</Vendor>
                        </TnVendorAssignment>
                    </TnVendorError>
                </TnVendorErrors>
                <SuccessTnVendorAssignments>
                    <TnVendorAssignment>
                        <Tn>+19195551111</Tn>
                        <Vendor>49</Vendor>
                    </TnVendorAssignment>
                    <TnVendorAssignment>
                        <Tn>+19195552222</Tn>
                        <Vendor>49</Vendor>
                    </TnVendorAssignment>
                </SuccessTnVendorAssignments>
            </BulkTnVendorAssignmentPayload>
        </BulkTnVendorAssignmentTaskResponse>
    BulkTnVendorAssignmentTaskResponseForPost:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BulkTnVendorAssignmentTaskResponse>
           <BulkTnVendorAssignmentPayload>
              <Status>PROCESSING</Status>
              <TaskId>8e4c0d41-3477-427c-bf2e-e06382d80f62</TaskId>
              <TnVendorAssignments>
                 <TnVendorAssignment>
                    <Tn>+19195551111</Tn>
                    <Vendor>49</Vendor>
                 </TnVendorAssignment>
                 <TnVendorAssignment>
                    <Tn>+19195552222</Tn>
                    <Vendor>49</Vendor>
                 </TnVendorAssignment>
                 <TnVendorAssignment>
                    <Tn>+19195553333</Tn>
                    <Vendor>69</Vendor>
                 </TnVendorAssignment>
              </TnVendorAssignments>
           </BulkTnVendorAssignmentPayload>
        </BulkTnVendorAssignmentTaskResponse>
    ImportTnOrdersResponseExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <ImportTnOrder>
            <OrderCreateDate>2018-01-09T02:58:04.615Z</OrderCreateDate>
            <AccountId>9900012</AccountId>
            <CreatedByUser>sjm</CreatedByUser>
            <OrderId>bf1305b8-8998-1111-2222-51ba3ce52d4e</OrderId>
            <LastModifiedDate>2018-01-09T02:58:05.298Z</LastModifiedDate>
            <SiteId>65487</SiteId>
            <SipPeerId>885544</SipPeerId>
            <Subscriber>
                <Name>First</Name>
                <ServiceAddress>
                    <HouseNumber>11235</HouseNumber>
                    <StreetName>Back</StreetName>
                    <City>Denver</City>
                    <StateCode>CO</StateCode>
                    <Zip>27541</Zip>
                    <County>Canyon</County>
                </ServiceAddress>
            </Subscriber>
            <LoaAuthorizingPerson>The Authguy</LoaAuthorizingPerson>
            <LoaType>CARRIER</LoaType>
            <TelephoneNumbers>
                <TelephoneNumber>+12106078250</TelephoneNumber>
                <TelephoneNumber>+12109678273</TelephoneNumber>
                <TelephoneNumber>+12109678331</TelephoneNumber>
                <TelephoneNumber>+12109678337</TelephoneNumber>
                <TelephoneNumber>+12266401468</TelephoneNumber>
                <TelephoneNumber>+12266401469</TelephoneNumber>
            </TelephoneNumbers>
            <ProcessingStatus>PROCESSING</ProcessingStatus>
            <Warnings>
                <Warning>
                    <Code>19101</Code>
                    <Description>An error has occurred while updating the Messaging Network routing for this TN</Description>
                    <TelephoneNumber>+12109678337</TelephoneNumber>
                </Warning>
            </Warnings>
            <Errors>
                <Error>
                    <Code>7518</Code>
                    <Description>Telephone Number Not Active</Description>
                    <TelephoneNumbers>
                        <TelephoneNumber>+12266401469</TelephoneNumber>
                    </TelephoneNumbers>
                </Error>
            <Errors>
            <PendingTelephoneNumbers>
                <TelephoneNumber>+12109678331</TelephoneNumber>
            </PendingTelephoneNumbers>
            <FailedTelephoneNumbers>
                <TelephoneNumber>+12109678337</TelephoneNumber>
            </FailedTelephoneNumbers>
            <SuccessTelephoneNumbers>
                <TelephoneNumber>+12106078250</TelephoneNumber>
                <TelephoneNumber>+12109678273</TelephoneNumber>
                <TelephoneNumber>+12266401468</TelephoneNumber>
            </SuccessTelephoneNumbers>
        </ImportTnOrder>
    ImportVoiceTnOrders:
      description: List all import voice tn orders response
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <ImportVoiceTnOrders>
          <TotalCount>2</TotalCount>
          <ImportVoiceTnOrderSummary>
            <ImportVoiceTnOrderSummary>
              <accountId>14</accountId>
              <CountOfTNs>1</CountOfTNs>
              <CustomerOrderId>CustomerOrderId</CustomerOrderId>
              <userId>systemUser</userId>
              <lastModifiedDate>2019-01-24T11:08:09.770Z</lastModifiedDate>
              <OrderDate>2019-01-24T11:08:09.770Z</OrderDate>
              <OrderType>import_tn_orders</OrderType>
              <OrderStatus>COMPLETE</OrderStatus>
              <OrderId>211a103c-5f9c-4117-8833-c574bdc390fd</OrderId>
            </ImportVoiceTnOrderSummary>
          </ImportVoiceTnOrderSummary>
          <ImportVoiceTnOrderSummary>
            <ImportVoiceTnOrderSummary>
              <accountId>14</accountId>
              <CountOfTNs>2</CountOfTNs>
              <CustomerOrderId>CustomerOrderId</CustomerOrderId>
              <userId>systemUser</userId>
              <lastModifiedDate>2019-01-24T10:43:16.934Z</lastModifiedDate>
              <OrderDate>2019-01-24T10:43:16.934Z</OrderDate>
              <OrderType>import_tn_orders</OrderType>
              <OrderStatus>PARTIAL</OrderStatus>
              <OrderId>8dc32f09-2329-4c73-b702-526f46b02712</OrderId>
            </ImportVoiceTnOrderSummary>
          </ImportVoiceTnOrderSummary>
        </ImportVoiceTnOrders>
    RateCenterCoverageResponseExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <RateCenterCoverageResponse>
          <RateCenterCoverage>
            <Id>123</Id>
            <VendorId>49</VendorId>
            <Abbreviation>FARMVILLE</Abbreviation>
            <Region>NC</Region>
            <TierId>1</TierId>
            <SupportsLnp>false</SupportsLnp>
            <SupportsNewTns>true</SupportsNewTns>
            <Lrn>+12529690000</Lrn>
            <Lata>951</Lata>
          </RateCenterCoverage>
        </RateCenterCoverageResponse>
    RateCenterFindCoverage404Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <RateCenterCoverageResponse>
          <Error>
            <Description>Rate center coverage with id 999 was not found.</Description>
            <ErrorCode>3940</ErrorCode>
          </Error>
        </RateCenterCoverageResponse>
    RateCenterGetCoverage400Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <RateCenterCoveragesResponse>
            <Error>
              <Description>You must provide at least one parameter in order to search.</Description>
              <ErrorCode>3924</ErrorCode>
            </Error>
          </RateCenterCoveragesResponse>
    RateCenterPostCoverage400Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <RateCenterCoverageResponse>
          <Error>
            <Description>Offnet coverage must not have an LRN.</Description>
            <ErrorCode>3913</ErrorCode>
          </Error>
        </RateCenterCoverageResponse>
    RateCenterPostCoverage409Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <RateCenterCoverageResponse>
          <Error>
            <Description>Coverage already exists for FARMVILLE.NC with vendor ID 49</Description>
            <ErrorCode>3923</ErrorCode>
          </Error>
        </RateCenterCoverageResponse>
    RegionsFindCoverage404Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <RateCenterCoverageResponse>
            <Error>
              <Description>Rate center FARMVILLE.NC was not found.</Description>
              <ErrorCode>3917</ErrorCode>
            </Error>
          </RateCenterCoverageResponse>
    RegionsFindCoverageWithVendor404Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <RateCenterCoverageResponse>
            <Error>
              <Description>Rate center coverage FARMVILLE.NC with vendor ID 49 was not found.</Description>
              <ErrorCode>3918</ErrorCode>
            </Error>
          </RateCenterCoverageResponse>
    RegionsUpdateRateCenterCoverage400Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <RateCenterCoverageResponse>
          <Error>
            <Description>The specified rate center / region combination is not valid: FARMVILLE.NC</Description>
            <ErrorCode>3908</ErrorCode>
          </Error>
        </RateCenterCoverageResponse>
    RemoveImportedVoiceTnOrders:
      description: List all remove imported voice tn orders response
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <RemoveImportedVoiceTnOrders>
            <TotalCount>4</TotalCount>
            <RemoveImportedVoiceTnOrderSummary>
                <accountId>12346163</accountId>
                <CountOfTNs>2</CountOfTNs>
                <CustomerOrderId>getRemoveImportedTn3uCf6</CustomerOrderId>
                <userId>systemUser</userId>
                <lastModifiedDate>2023-03-30T21:51:58.901Z</lastModifiedDate>
                <OrderDate>2023-03-30T21:51:58.850Z</OrderDate>
                <OrderType>remove_imported_voice_tn_orders</OrderType>
                <OrderStatus>COMPLETE</OrderStatus>
                <OrderId>e694bd1c-3ee3-4f39-9b7e-279a75d2843d</OrderId>
            </RemoveImportedVoiceTnOrderSummary>
            <RemoveImportedVoiceTnOrderSummary>
                <accountId>12346163</accountId>
                <CountOfTNs>1</CountOfTNs>
                <CustomerOrderId>getRemoveImportedTnmBwpt</CustomerOrderId>
                <userId>systemUser</userId>
                <lastModifiedDate>2023-03-30T21:51:09.921Z</lastModifiedDate>
                <OrderDate>2023-03-30T21:51:09.870Z</OrderDate>
                <OrderType>remove_imported_voice_tn_orders</OrderType>
                <OrderStatus>COMPLETE</OrderStatus>
                <OrderId>492b8ef2-a7e4-4390-943e-87525d8b068d</OrderId>
            </RemoveImportedVoiceTnOrderSummary>
            <RemoveImportedVoiceTnOrderSummary>
                <accountId>12346163</accountId>
                <CountOfTNs>1</CountOfTNs>
                <CustomerOrderId>undefinedOrderId</CustomerOrderId>
                <userId>systemUser</userId>
                <lastModifiedDate>2023-03-30T21:50:50.874Z</lastModifiedDate>
                <OrderDate>2023-03-30T21:50:50.861Z</OrderDate>
                <OrderType>remove_imported_voice_tn_orders</OrderType>
                <OrderStatus>FAILED</OrderStatus>
                <OrderId>f5f8c253-a786-4f35-bac1-0bd93524b137</OrderId>
            </RemoveImportedVoiceTnOrderSummary>
            <RemoveImportedVoiceTnOrderSummary>
                <accountId>12346163</accountId>
                <CountOfTNs>1</CountOfTNs>
                <CustomerOrderId>undefinedOrderId</CustomerOrderId>
                <userId>systemUser</userId>
                <lastModifiedDate>2023-03-30T21:50:50.659Z</lastModifiedDate>
                <OrderDate>2023-03-30T21:50:50.613Z</OrderDate>
                <OrderType>remove_imported_voice_tn_orders</OrderType>
                <OrderStatus>COMPLETE</OrderStatus>
                <OrderId>f28266b0-6fbb-497d-ac27-7db138386f4f</OrderId>
            </RemoveImportedVoiceTnOrderSummary>
        </RemoveImportedVoiceTnOrders>
    badRequestErrorExample:
      summary: An example of a generic Bad Request Error
      value:
        data: null
        errors:
          - code: 205617
            description: There was an issue with your request.
            type: bad-request
        links: []
    badRequestErrorExampleForCoverage:
      summary: An example of a generic Bad Request Error
      value:
        data: null
        errors:
          - code: 205617
            description: There was an issue with your request.
            id: optional-error-id
            type: bad-request
        links: []
    checkPortabilityBadRequestResponseExample:
      summary: Bad Request
      value:
        data: null
        errors:
          - code: 1010
            description: >-
              Too many phone numbers have been provided in the portability
              request
            type: too-many-phone-numbers-provided
        links: []
    checkPortabilityForbiddenResponseExample:
      summary: Forbidden
      value:
        data: null
        errors:
          - code: 1030
            description: User does not have permission to perform this action
            type: forbidden
        links: []
    checkPortabilityInternalServerErrorResponseExample:
      summary: Internal Server Error
      value:
        data: null
        errors:
          - code: 1050
            description: An unexpected error occurred on the server
            type: internal-server-error
        links: []
    checkPortabilityNotFoundErrorResponseExample:
      summary: Not Found
      value:
        data: null
        errors:
          - code: 1000
            description: Resource cannot be found
            type: resource-not-found
        links: []
    checkPortabilityRequestExample:
      summary: List of phone numbers to check portability
      value:
        phoneNumbers:
          - '+44203789761'
          - '+44203657891'
          - '+44161789761'
          - '+35319876890'
          - '+32278909878'
          - '+32800789972'
          - '+32800789907'
          - '+19198729048'
          - '+18887892789'
          - '+49800890997'
    checkPortabilityResponseSuccessfulExample:
      summary: Successful portability check response.
      value:
        data:
          nonPortablePhoneNumbers:
            - countryCodeA3: USA
              phoneNumber: '+17049195555'
              phoneNumberType: GEOGRAPHIC
              reasons:
                - Not inservice on an account
            - phoneNumber: '+99800789980'
              reasons:
                - Invalid country code
            - countryCodeA3: GBR
              phoneNumber: '+44161229761'
              phoneNumberType: GEOGRAPHIC
              reasons:
                - No coverage
                - Your account is not configured for porting in this country
            - countryCodeA3: GBR
              phoneNumber: '+44203657891'
              phoneNumberType: GEOGRAPHIC
              reasons:
                - No coverage
                - Your account is not configured for porting in this country
            - countryCodeA3: USA
              phoneNumber: '+18335551234'
              phoneNumberType: TOLL_FREE
              reasons:
                - Non-portable toll-free number status
          portablePhoneNumbers:
            - complianceRequirements:
                - name: Proof of ID
                - name: Proof of Address
              countryCodeA3: GBR
              earliestEstimate: '2024-12-19T00:00:00Z'
              phoneNumberType: GEOGRAPHIC
              phoneNumbers:
                - '+44203789761'
              portType: MANUAL
              portingDocuments:
                - name: LOA
                - name: INVOICE
            - countryCodeA3: USA
              earliestEstimate: '2024-12-19T11:30:00Z'
              losingCarrier:
                name: Bandwidth
                spid: 979E
              phoneNumberType: GEOGRAPHIC
              phoneNumbers:
                - '+12016352700'
              portType: INTERNAL
              rateCenter:
                lata: '224'
                name: RUTHERFORD
                state: NJ
                tier: '0'
                vendor: Bandwidth
            - countryCodeA3: USA
              earliestEstimate: '2024-12-19T11:30:00Z'
              phoneNumberType: TOLL_FREE
              phoneNumbers:
                - '+18887892789'
              portType: MANUAL_TOLLFREE
              portingDocuments:
                - name: LOA
              respOrg:
                exception: true
                id: ABC01
        errors: []
        links:
          - href: >-
              https://api.bandwidth.com/api/v2/accounts/6555555/porting/portability/phoneNumbers
            method: POST
            rel: self
    checkPortabilityTooManyRequestsResponseExample:
      summary: Too Many Requests
      value:
        data: null
        errors:
          - code: 1040
            description: Rate limit exceeded, please try again later
            type: too-many-requests
        links: []
    checkPortabilityUnauthorizedResponseExample:
      summary: Unauthorized
      value:
        data: null
        errors:
          - code: 1020
            description: User is not authorized to perform this action
            type: unauthorized
        links: []
    coverageSuccessExample:
      value:
        data:
          - countryCoverages:
              - countryCodeA3: USA
                phoneNumberType: GEOGRAPHIC
                regions:
                  - areaCode: '201'
                    availablePhoneNumberQuantity: 100
                    city: HACKENSACK
                    regionName: NJ
        errors: []
        links:
          - href: >-
              https://api.bandwidth.com/api/v2/coverage/countries?countryCodeA3=USA
            method: GET
            rel: self
    createRealm201ResponseExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <RealmResponse>
           <Realm>
              <Id>22</Id>
              <Realm>realm123.abc123.auth.bandwidth.com</Realm>
              <Description>This is realm #123</Description>
              <Default>true</Default>
              <SipCredentialCount>0</SipCredentialCount>
              <Status>CREATE_PENDING</Status>
              <TrunkInfo>
                 <TrunkId>66b4d27e68cc01462d6f0e6f</TrunkId>
                 <CapabilityPipeId>33d864f7-37e9-46c3-aeb1-40702719ff5c</CapabilityPipeId>
              </TrunkInfo>
           </Realm>
        </RealmResponse>
    createRealmRequestExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <Realm>
           <Realm>realm123</Realm>
           <Description>This is realm #123</Description>
           <Default>true</Default>
           <TrunkInfo>
              <TrunkId>66b4d27e68cc01462d6f0e6f</TrunkId>
              <CapabilityPipeId>33d864f7-37e9-46c3-aeb1-40702719ff5c</CapabilityPipeId>
           </TrunkInfo>
        </Realm>
    forbiddenErrorExample:
      summary: An example of a generic Unauthorized Error
      value:
        data: null
        errors:
          - code: 109107
            description: User does not have permissions to access this resource.
            type: resource-permissions
        links: []
    forbiddenErrorExampleForCoverage:
      summary: An example of a generic Unauthorized Error
      value:
        data: null
        errors:
          - code: 109107
            description: User does not have permissions to access this resource.
            id: optional-error-id
            type: resource-permissions
        links: []
    getEdgeManagementSettingsResponseExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <EdgeManagementSettings>
          <SbcSettings>
            <TrunkGroupId>Trunkgroupidfortheaccounttraffic</TrunkGroupId>
            <NodeGroupName>East Coast 01</NodeGroupName>
          </SbcSettings>
          <ProductSpecificAccessRestrictions>
            <AccessRestriction>
              <RestrictedProduct>Termination</RestrictedProduct>
              <RestrictedAccessTypes>
                <RestrictedAccessType>ExampleType</RestrictedAccessType>
              </RestrictedAccessTypes>
            </AccessRestriction>
          </ProductSpecificAccessRestrictions>
        </EdgeManagementSettings>
    importVoiceTnOrdersRequest:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <ImportVoiceTnOrder>
          <ProcessingStatus>APPROVED</ProcessingStatus>
        </ImportVoiceTnOrder>
    importVoiceTnOrdersResponseBadRequestError:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <ImportVoiceTnOrdersResponse>
          <ResponseStatus>
            <ErrorCode>19028</ErrorCode>
            <Description>Voice Order processing status is invalid.</Description>
          </ResponseStatus>
        </ImportVoiceTnOrdersResponse>
    importVoiceTnOrdersResponseForbiddenError:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <ImportVoiceTnOrdersResponse>
          <ResponseStatus>
            <ErrorCode>19029</ErrorCode>
            <Description>User does not have admin access.</Description>
          </ResponseStatus>
        </ImportVoiceTnOrdersResponse>
    internalServerErrorExample:
      summary: An example of a generic Internal Server Error
      value:
        data: null
        errors:
          - code: 32030
            description: >-
              Unexpected internal server error. Contact Bandwidth Customer
              Support if this problem persists.
            type: internal-server-error
        links: []
    internalServerErrorExampleForCoverage:
      summary: An example of a generic Internal Server Error
      value:
        data: null
        errors:
          - code: 32030
            description: >-
              Unexpected internal server error. Contact Bandwidth Customer
              Support if this problem persists.
            id: optional-error-id
            type: internal-server-error
        links: []
    listDnsRecordsResponseExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <RealmResponse>
          <Realm>
            <Realm>realm123.abc123.auth.bandwidth.com</Realm>
            <DNSRecords>
              <DNSRecord>
                <Type>A</Type>
                <Name>realm123.abc123.auth.bandwidth.com.</Name>
                <Data>1.2.3.4</Data>
                <TTL>300</TTL>
              </DNSRecord>
              <DNSRecord>
                <Type>SRV</Type>
                <Name>realm123.abc123.auth.bandwidth.com.</Name>
                <Data>5 50 5000 test.auth.bandwidth.com</Data>
                <TTL>300</TTL>
              </DNSRecord>
            </DNSRecords>
          </Realm>
        </RealmResponse>
    listRealmsResponseExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <RealmsResponse>
           <Realms>
              <Realm>
                 <Id>22</Id>
                 <Realm>myrealm123.abc123.auth.bandwidth.com</Realm>
                 <Default>true</Default>
                 <Description>Test Realm 123</Description>
                 <SipCredentialCount>3</SipCredentialCount>
                 <Status>ACTIVE</Status>
                 <TrunkInfo>
                    <TrunkId>66b4d27e68cc01462d6f0e6f</TrunkId>
                    <CapabilityPipeId>33d864f7-37e9-46c3-aeb1-40702719ff5c</CapabilityPipeId>
                 </TrunkInfo>
              </Realm>
              <Realm>
                 <Id>31</Id>
                 <Realm>myrealm234.abc123.auth.bandwidth.com</Realm>
                 <Default>false</Default>
                 <Description>Test Realm 234</Description>
                 <SipCredentialCount>6</SipCredentialCount>
                 <Status>ACTIVE</Status>
                 <TrunkInfo>
                    <TrunkId>66b4d27e68cc01462d6f0e6f</TrunkId>
                    <CapabilityPipeId>33d864f7-37e9-46c3-aeb1-40702719ff5c</CapabilityPipeId>
                 </TrunkInfo>
              </Realm>
              <Realm>
                 <Id>194</Id>
                 <Realm>somethingnew.a0b397.test.auth.bandwidth.com</Realm>
                 <Default>false</Default>
                 <Description/>
                 <SipCredentialCount>0</SipCredentialCount>
                 <Status>ACTIVE</Status>
                 <TrunkInfo>
                    <TrunkId>66b4d27e68cc01462d6f0e6f</TrunkId>
                    <CapabilityPipeId>33d864f7-37e9-46c3-aeb1-40702719ff5c</CapabilityPipeId>
                 </TrunkInfo>
              </Realm>
           </Realms>
        </RealmsResponse>
    notAllowedErrorExample:
      summary: An example of a generic Not Allowed Error
      value:
        data: null
        errors:
          - code: 205621
            description: The HTTP method used is not supported by this resource.
            meta:
              method: TRACE
            type: http-method-not-supported
        links: []
    notAllowedErrorExampleForCoverage:
      summary: An example of a generic Not Allowed Error
      value:
        data: null
        errors:
          - code: 205621
            description: The HTTP method used is not supported by this resource.
            id: optional-error-id
            meta:
              method: TRACE
            type: http-method-not-supported
        links: []
    notFoundErrorExample:
      summary: An example of a generic Not Found Error
      value:
        data: null
        errors:
          - code: 50420
            description: The resource specified cannot be found.
            type: resource-not-found
        links: []
    notFoundErrorExampleForCoverage:
      summary: An example of a generic Not Found Error
      value:
        data: null
        errors:
          - code: 50420
            description: The resource specified cannot be found.
            id: optional-error-id
            type: resource-not-found
        links: []
    npacInformationResponseExample:
      value:
        data:
          portingInformation:
            - altSpid: X999
              carrierName: Bandwidth
              lata: '224'
              lrn: '9191112222'
              rateCenter: RALEIGH
              rateCenterState: RALEIGH.NC
              rcAvailableOffNet: false
              rcAvailableOnNet: true
              rcSupportNewTns: true
              spid: 979E
              state: NC
              telephoneNumber: '+19194445555'
              tier: '1'
            - altSpid: X999
              carrierName: Bandwidth
              lata: '224'
              lrn: '9191112222'
              rateCenter: RALEIGH
              rateCenterState: RALEIGH.NC
              rcAvailableOffNet: false
              rcAvailableOnNet: true
              rcSupportNewTns: true
              spid: 979E
              state: NC
              telephoneNumber: '+19194445556'
              tier: '1'
            - altSpid: X999
              carrierName: Bandwidth
              lata: '224'
              lrn: '9191112222'
              rateCenter: RALEIGH
              rateCenterState: RALEIGH.NC
              rcAvailableOffNet: false
              rcAvailableOnNet: true
              rcSupportNewTns: true
              spid: 979E
              state: NC
              telephoneNumber: '+19194445557'
              tier: '1'
        links:
          href: /admin/porting/npac
          method: POST
          rel: self
    portOutPasscodeSupportResponseExample:
      summary: Account has the Lumen Special BusOrg
      value:
        portoutPasscodeSupport: true
    portOutValidationErrorResponseExample:
      value:
        errors:
          - code: 75xx
            description: Customer API error description
    portOutValidationFailedResponseXmlExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <PortOutValidationResponse>
          <Portable>false</Portable>
          <PON>some_pon</PON>
          <Errors>
            <Error>
              <Code>75xx</Code>
              <Description>Customer api error description</Description>
            </Error>
            <Error>
              <Code>75xx</Code>
              <Description>Customer api error description</Description>
            </Error>
          </Errors>
          <AcceptableValues>
            <Pin>2222</Pin>
            <AccountNumber>555</AccountNumber>
            <ZipCode>02154</ZipCode>
            <TelephoneNumbers>
              <TelephoneNumber>+12223331000</TelephoneNumber>
            </TelephoneNumbers>
          </AcceptableValues>
        </PortOutValidationResponse>
    portOutValidationPassedResponseJsonExample:
      value:
        data:
          pon: some_pon
          portable: true
        errors: []
    portOutValidationPassedResponseXmlExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <PortOutValidationResponse>
          <Portable>true</Portable>
          <PON>some_pon</PON>
        </PortOutValidationResponse>
    portOutValidationRequestJsonExample:
      summary: An example of a Port-out Validation Request.
      value:
        newCarrierName: New Carrier X
        orderId: 62e51954-0271-41c3-880d-df8e89b3f28d
        pon: some_pon
        telephoneNumbers:
          - '+31205321661'
          - '+31205321664'
    portOutValidationRequestXmlExample:
      summary: An example of a Port-out Validation Request.
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <PortOutValidationRequest>
          <PON>some_pon</PON>
          <Pin>1111</Pin>
          <AccountNumber>777</AccountNumber>
          <ZipCode>62025</ZipCode>
          <SubscriberName>Subscriber Name</SubscriberName>
          <TelephoneNumbers>
            <TelephoneNumber>+12223331000</TelephoneNumber>
            <TelephoneNumber>+12223331001</TelephoneNumber>
          </TelephoneNumbers>
        </PortOutValidationRequest>
    realmDnsNotFoundResponseExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <RealmResponse>
           <ResponseStatus>
              <ErrorCode>33001</ErrorCode>
              <Description>Realm 'realm123' was not found</Description>
           </ResponseStatus>
        </RealmResponse>
    realmDnsServiceUnavailableResponseExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <RealmResponse>
           <ResponseStatus>
              <Description>Service is Unavailable</Description>
           </ResponseStatus>
        </RealmResponse>
    tollFreeRoutingTemplateBadGatewayErrorResponseExample:
      summary: Example of a 502 Internal Server Error due to unexpected server issues
      value:
        data: null
        errors:
          - code: '123456'
            description: >-
              Unexpected downstream server error. Contact Bandwidth Customer
              Support if this problem persists.
            meta: null
        links: []
    tollFreeRoutingTemplateBadRequestErrorResponseExample:
      summary: Example of a 400 Error Response due to invalid query parameters
      value:
        data: null
        errors:
          - code: '12341'
            description: >-
              Request includes more than the maximum of 5000 toll free phone
              numbers.
            meta: null
            source:
              field: values
          - code: '12342'
            description: Only one queryCriteria may be specified.
            meta: null
            source:
              field: parameter
          - code: '12343'
            description: queryCriteria.parameter must be phoneNumber.
            meta: null
            source:
              field: parameter
          - code: '12344'
            description: queryCriteria.operator must be IN.
            meta: null
            source:
              field: operator
          - code: '12345'
            description: Phone number not in e.164 format.
            meta:
              phoneNumbers:
                - '8334444444'
                - '8772002002'
            source:
              field: phoneNumbers
          - code: '12346'
            description: Phone number is not a valid toll free phone number.
            meta:
              phoneNumbers:
                - '+18112396502'
                - '+18997720023'
                - '+19194693211'
            source:
              field: phoneNumbers
          - code: '12347'
            description: Phone number is not a North American toll free number.
            meta:
              phoneNumbers:
                - '+4463239998267'
                - '+33879882367'
                - '+4917239772478'
            source:
              field: phoneNumbers
          - code: '12348'
            description: Phone number not in account.
            meta:
              phoneNumbers:
                - '+18004329876'
                - '+18338798823'
            source:
              field: phoneNumbers
        links: []
    tollFreeRoutingTemplateForbiddenErrorResponseExample:
      summary: Example of a 403 Forbidden Error due to insufficient permissions
      value:
        data: null
        errors:
          - code: '123456'
            description: User does not have permissions to access this resource.
            meta:
              message: Account not configured for toll free.
        links: []
    tollFreeRoutingTemplateGatewayTimeoutErrorResponseExample:
      summary: Example of a 504 Gateway Timeout Error due to downstream server timeout
      value:
        data: null
        errors:
          - code: '123456'
            description: >-
              Downstream server timeout. Contact Bandwidth Customer Support if
              this problem persists.
            meta: null
        links: []
    tollFreeRoutingTemplateMethodNotAllowedErrorResponseExample:
      summary: Example of a 405 Method Not Allowed Error due to unsupported HTTP method
      value:
        data: null
        errors:
          - code: '123456'
            description: The HTTP method used is not supported by this resource.
            meta: null
            source:
              method: GET
        links: []
    tollFreeRoutingTemplateRequestPayload:
      summary: Request payload to retrieve routing template for TFN's
      value:
        queryCriteria:
          - operator: IN
            parameter: phoneNumbers
            values:
              - '+18004329876'
              - '+18004329877'
              - '+18004329878'
    tollFreeRoutingTemplateSuccessResponseExample:
      summary: Example of a 200 Success Response with phone number template mappings
      value:
        data:
          phoneNumberTemplateMappings:
            - phoneNumber: '+18004329876'
              reasonForNoTemplate: null
              templateName: ATemplate
            - phoneNumber: '+18004329877'
              reasonForNoTemplate: null
              templateName: AnotherTemplate
            - phoneNumber: '+18004329878'
              reasonForNoTemplate: Template not assigned.
              templateName: null
        errors: []
        links: []
    tollFreeRoutingTemplateTooManyRequestsErrorResponseExample:
      summary: Example of a 429 Too Many Requests Error due to rate limiting
      value:
        data: null
        errors:
          - code: '123456'
            description: >-
              Rate limit exceeded. Wait for the time specified in the
              'Retry-After' header before sending another request.
            meta: null
        links: []
    tollFreeRoutingTemplateUnauthorizedErrorResponseExample:
      summary: >-
        Example of a 401 Unauthorized Error due to invalid or missing
        credentials
      value:
        data: null
        errors:
          - code: '123456'
            description: Invalid or missing credentials.
            meta: null
        links: []
    tooManyRequestsErrorExample:
      summary: An example of a generic Too Many Requests Error
      value:
        data: null
        errors:
          - code: 32002
            description: >-
              Rate limit exceeded. Wait for the time specified in the
              "Retry-After" header before sending another request.
            type: rate-limiting
        links: []
    tooManyRequestsErrorExampleForCoverage:
      summary: An example of a generic Too Many Requests Error
      value:
        data: null
        errors:
          - code: 32002
            description: >-
              Rate limit exceeded. Wait for the time specified in the
              "Retry-After" header before sending another request.
            id: optional-error-id
            type: rate-limiting
        links: []
    unauthorizedErrorExample:
      summary: An example of a generic Unauthorized Error
      value:
        data: null
        errors:
          - code: 206401
            description: Invalid or missing credentials.
            type: authentication-credentials
        links: []
    unauthorizedErrorExampleForCoverage:
      summary: An example of a generic Unauthorized Error
      value:
        data: null
        errors:
          - code: 206401
            description: Invalid or missing credentials.
            id: optional-error-id
            type: authentication-credentials
        links: []
  parameters:
    AccountIDQueryParam:
      description: >
        This is the account that the searched-for order will be contributing
        to.  Specifying this parameter will restrict the search to imported
        voice orders within the specified account.
      example: 5000125
      in: query
      name: accountID
      schema:
        type: integer
    AccountIdPathParam:
      description: User's account ID.
      example: '1234567'
      in: path
      name: accountId
      required: true
      schema:
        type: string
    BulkCoverageMatrixTaskId:
      description: Task id for a bulk coverage matrix update.
      in: path
      name: taskId
      required: true
      schema:
        type: string
    BypassRateCenterRegionValidation:
      description: >-
        Whether to bypass the validation that a rate center exists when updating
        the coverage matrix.
      in: query
      name: bypassRateCenterRegionValidation
      required: false
      schema:
        type: boolean
    CreatedDateFromQueryParam:
      description: >-
        Checks the order's creation date against this value. Orders that have a
        creation date after this date will be included. Format is yyyy-MM-dd
      example: '2013-10-22'
      in: query
      name: createdDateFrom
      schema:
        format: date
        type: string
    CreatedDateToQueryParam:
      description: >-
        Checks the order's creation date against this value. Orders that have a
        creation date before this date will be included. Format is yyyy-MM-dd
      example: '2013-10-25'
      in: query
      name: createdDateTo
      schema:
        format: date
        type: string
    CustomerOrderIdQueryParam:
      description: >
        Filter orders by a customer-assigned reference ID. Because
        `customerOrderId` is not unique — Bandwidth applies no uniqueness
        constraint — this query may return multiple orders if the same value was
        used across multiple orders. Each result will have a distinct
        Bandwidth-assigned `orderId`. To retrieve a single specific order, use
        its `orderId` instead.
      example: ABCCorp12345
      in: query
      name: customerOrderId
      schema:
        type: string
    DocumentIdPathParam:
      description: ID of the uploaded document
      example: bf1305b8-8998-1111-2222-51ba3ce52d4e
      in: path
      name: documentId
      required: true
      schema:
        type: string
    DomainNamePathParam:
      description: Domain name
      example: dashboard
      in: path
      name: domainName
      required: true
      schema:
        type: string
    GatewayIdIdPathParam:
      in: path
      name: gatewayId
      required: true
      schema:
        format: int64
        type: integer
    KeyPathParam:
      description: Validation key
      example: someSecretValue
      in: path
      name: key
      required: true
      schema:
        type: string
    LosingCarrierIdPathParam:
      description: ID of the losing carrier
      example: cce315ec-6fcc-4ac9-b640-b17693403314
      in: path
      name: losingCarrierId
      required: true
      schema:
        type: string
    ModifiedDateFromQueryParam:
      description: >-
        For Date-based searches, the starting date of a date range (inclusive)
        that will be used to find Import Tn Orders that were modified within the
        date range. It is in the form yyyy-MM-dd.
      example: '2013-10-22'
      in: query
      name: modifiedDateFrom
      schema:
        format: date
        type: string
    ModifiedDateToQueryParam:
      description: >-
        For Date-based searches, the ending date of a date range (inclusive)
        that will be used to find Import Tn Orders that were modified within the
        date range. It is in the form yyyy-MM-dd.
      example: '2013-10-25'
      in: query
      name: modifiedDateTo
      schema:
        format: date
        type: string
    OrderIdPathParam:
      description: ID of order to retrieve
      example: bf1305b8-8998-1111-2222-51ba3ce52d4e
      in: path
      name: orderId
      required: true
      schema:
        type: string
    PermissionIdPathParam:
      description: Permission Id
      example: testPermission
      in: path
      name: permissionId
      required: true
      schema:
        type: string
    RCAbbreviationInPath:
      description: A rate center's abbreviation
      example: ALABASTER
      in: path
      name: abbreviation
      required: true
      schema:
        type: string
    RCAbbreviationOptional:
      description: A rate center's abbreviation
      example: ALABASTER
      in: query
      name: abbreviation
      required: false
      schema:
        type: string
    RCCoverageMatrixId:
      description: A rate center's coverage matrix id
      in: path
      name: id
      required: true
      schema:
        type: number
    RCLataOptional:
      description: Rate center LATA
      example: 951
      in: query
      name: lata
      required: false
      schema:
        type: number
    RCRegionInPath:
      description: A rate center's state
      example: AL
      in: path
      name: region
      required: true
      schema:
        type: string
    RCRegionOptional:
      description: A rate center's state
      example: AL
      in: query
      name: region
      required: false
      schema:
        type: string
    RCVendorInPath:
      description: A rate center's vendor ID
      example: 49
      in: path
      name: vendor
      required: true
      schema:
        type: number
    RCVendorOptional:
      description: Vendor id
      example: 49
      in: query
      name: vendor
      required: false
      schema:
        type: number
    RoleIdPathParam:
      description: Role Id
      example: testRole
      in: path
      name: roleId
      required: true
      schema:
        type: string
    SipPeerIdPathParam:
      description: SipPeer ID, also known as Location
      in: path
      name: sipPeerId
      required: true
      schema:
        format: int32
        type: integer
    SiteIdPathParam:
      description: Site ID, also known as Sub-Account
      example: '407'
      in: path
      name: siteId
      required: true
      schema:
        type: string
    StatusQueryParam:
      description: The status of the order being searched for.
      in: query
      name: status
      required: false
      schema:
        items:
          enum:
            - PROCESSING
            - COMPLETE
            - PARTIAL
            - FAILED
          type: string
        type: array
    TaskIdPathParam:
      description: Bulk tn vendor task's ID
      example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
      in: path
      name: taskId
      required: true
      schema:
        type: string
    TnQueryParam:
      description: A Telephone Number (TN) that is referenced in the order
      example: '+19199918388'
      in: query
      name: tn
      schema:
        type: string
    UserIdPathParam:
      description: User Id
      example: testUser
      in: path
      name: userId
      required: true
      schema:
        type: string
    accountId:
      description: Your Bandwidth Account ID.
      example: '9900000'
      in: path
      name: accountId
      required: true
      schema:
        type: string
    areaCodeQueryParam:
      description: >-
        The 1 to 6 digit area code associated with the phone number. The system
        defaults to return all area codes when the query parameter is not
        passed. The countryCodeA3 is a required parameter with areaCode.
      in: query
      name: areaCode
      required: false
      schema:
        example: '435'
        type: string
    billingJobConfigParam:
      description: The billing task name.
      example: MRC_BILLING_TASK
      in: path
      name: taskName
      required: true
      schema:
        type: string
    cityQueryParam:
      description: >-
        The name of the city. The system defaults to return all cities when the
        query parameter is not passed. The countryCodeA3 is a required parameter
        with city. Some phone number types like TOLL_FREE may not have any
        associated cities.
      in: query
      name: city
      required: false
      schema:
        example: Raleigh
        type: string
    countryCodeA3NotRequiredQueryParam:
      description: >-
        Country code in ISO 3166-1 alpha-3 format (e.g. 'GBR' for United
        Kingdom, 'USA' for United States of America, 'BEL' for Belgium, etc.).
      in: query
      name: countryCodeA3
      required: false
      schema:
        example: USA
        type: string
    countryCodeA3QueryParam:
      description: Country code of the address in ISO 3166-1 alpha-3 format.
      in: query
      name: countryCodeA3
      required: false
      schema:
        example: GBR
        type: string
    countryCodeA3QueryParamRequired:
      description: Country code of the address in ISO 3166-1 alpha-3 format.
      in: query
      name: countryCodeA3
      required: true
      schema:
        example: GBR
        type: string
    cpContactEmailParam:
      description: >-
        Sorting and filtering parameters for the contact’s email
        (`contact.email`).
      explode: true
      in: query
      name: contact.email
      required: false
      schema:
        $ref: '#/components/schemas/cpStringFilterParam'
      style: deepObject
    cpContactNameParam:
      description: >-
        Sorting and filtering parameters for the contact’s name
        (`contact.name`).
      explode: true
      in: query
      name: contact.name
      required: false
      schema:
        $ref: '#/components/schemas/cpStringFilterParam'
      style: deepObject
    cpContactPhoneNumberParam:
      description: >-
        Sorting and filtering parameters for the contact’s phone number
        (`contact.phoneNumber`).
      explode: true
      in: query
      name: contact.phoneNumber
      required: false
      schema:
        $ref: '#/components/schemas/cpStringFilterParam'
      style: deepObject
    cpCreatedDateParam:
      description: |
        Sorting and filtering parameters for the created date (`createdDate`).
      explode: true
      in: query
      name: createdDate
      required: false
      schema:
        $ref: '#/components/schemas/cpDateTimeFilterParam'
      style: deepObject
    cpFilterOperatorParam:
      description: >
        By default all filter query parameters are applied to a search. If you
        wish to match any of the filters rather than all of them, this parameter
        can be submitted with a value of ANY.
      example: ANY
      in: query
      name: filterOperator
      required: false
      schema:
        default: ALL
        enum:
          - ALL
          - ANY
        type: string
    cpLimitQueryParam:
      description: >-
        The total number of records to return in this request (from 1 to 500
        records).
      example: '75'
      in: query
      name: limit
      required: false
      schema:
        default: '50'
        maximum: 500
        type: string
    cpModifiedDateParam:
      description: |
        Sorting and filtering parameters for the modified date (`modifiedDate`).
      explode: true
      in: query
      name: modifiedDate
      required: false
      schema:
        $ref: '#/components/schemas/cpDateTimeFilterParam'
      style: deepObject
    cpNameParam:
      description: Sorting and filtering parameters for `name`
      explode: true
      in: query
      name: name
      required: false
      schema:
        $ref: '#/components/schemas/cpStringFilterParam'
      style: deepObject
    cpOffsetQueryParam:
      description: >-
        The offset from the first index (record 0) that would be returned by the
        criteria for this request.
      example: '4'
      in: query
      name: offset
      schema:
        default: '0'
        type: string
    cpProfileIdPathParam:
      description: Customer profile ID
      example: 2YekXSSvsbyC7cHWnbV2Qv
      in: path
      name: profileId
      required: true
      schema:
        type: string
    cpTotalCampaignsParam:
      description: |
        Sorting parameter for the total campaigns (`totalCampaigns`).
      explode: true
      in: query
      name: totalCampaigns
      required: false
      schema:
        $ref: '#/components/schemas/cpTotalCampaignsSortParam'
      style: deepObject
    cpVersionPathParam:
      description: Version number
      example: '3'
      in: path
      name: version
      required: true
      schema:
        type: string
    cpWebsiteParam:
      description: Sorting and filtering parameters for `website`.
      explode: true
      in: query
      name: website
      required: false
      schema:
        $ref: '#/components/schemas/cpStringFilterParam'
      style: deepObject
    customReferenceQueryParam_eq_startsWith:
      description: Customer reference. It cannot be combined with any other query filter.
      examples:
        eq:
          value:
            eq: home_office
        startsWith:
          value:
            startsWith: home
      explode: true
      in: query
      name: customReference
      required: false
      schema:
        $ref: '#/components/schemas/queryParamStringEqStartsWith'
      style: deepObject
    documentIdPathParam:
      description: Document Id.
      in: path
      name: documentId
      required: true
      schema:
        example: ArAnD0m1d
        type: string
    endDateQueryParam:
      description: >-
        The ending date of a search in yy-mm-dd format. startdate and enddate
        <strong>must</strong> be used as a pair.
      in: query
      name: endDate
      required: false
      schema:
        example: 23-10-31
        type: string
    holidayDateLteGteQueryParam:
      description: >-
        List of all holidays between January 1, 2025 and December 25, 2025
        (inclusive)
      examples:
        gte:
          value:
            gte: '2025-01-01'
        lte:
          value:
            lte: '2025-12-25'
      explode: true
      in: query
      name: holidayDate
      required: false
      schema:
        $ref: '#/components/schemas/queryParamStringLteGte'
      style: deepObject
    includeAvailableQuantity:
      description: >-
        A flag to enable the quantity of available phone numbers to be listed in
        the response.
      in: query
      name: includeAvailableQuantity
      required: false
      schema:
        example: true
        type: boolean
    leadTimeIdPathParam:
      description: Lead time ID.
      example: 123e4567-e89b-12d3-a456-426614174000
      in: path
      name: leadTimeId
      required: true
      schema:
        type: string
    operatorCountryCodeA3QueryParam:
      description: Country code of the address in ISO 3166-1 alpha-3 format.
      in: query
      name: countryCodeA3
      required: false
      schema:
        properties:
          eq:
            example: FRA
            type: string
        type: object
    operatorId:
      description: Your Bandwidth Operator ID.
      example: 99006700
      in: path
      name: operatorId
      required: true
      schema:
        type: integer
    operatorSizeQueryParam:
      description: The quantity of results displayed for each page.
      example: 10
      in: query
      name: size
      required: false
      schema:
        default: 10
        type: integer
    orderIdQueryParam:
      description: Unique identifier for a port-in order within our platform.
      example: 8694ac9e-3faa-483f-a1e3-f0c403eccd5d
      in: query
      name: orderId
      required: false
      schema:
        type: string
    pageQueryParam:
      description: >-
        An ID of the first element in a page.  This value will indicate the
        first value, not the page number, of the initial entry in the page being
        requested. The initial page is tagged with the ID `1` as a convention.
      in: query
      name: page
      required: false
      schema:
        default: 1
        example: 1
        type: integer
    phoneNumberTypeQueryParam:
      description: >-
        The type of phone number. The system defaults to return phone numbers of
        all types when the query parameter is not passed. The countryCodeA3 is a
        required parameter with phone number type.
      in: query
      name: phoneNumberType
      required: false
      schema:
        enum:
          - GEOGRAPHIC
          - NATIONAL
          - MOBILE
          - TOLL_FREE
          - SHARED_COST
        example: GEOGRAPHIC
        type: string
    phoneNumberTypeQueryParamRequired:
      description: >-
        The type of phone number. The system defaults to return phone numbers of
        all types when the query parameter is not passed. The countryCodeA3 is a
        required parameter with phone number type.
      in: query
      name: phoneNumberType
      required: true
      schema:
        enum:
          - GEOGRAPHIC
          - NATIONAL
          - MOBILE
          - TOLL_FREE
          - SHARED_COST
        example: GEOGRAPHIC
        type: string
    ponQueryParam:
      description: >
        <p><b class="required">*</b> The port order number.  Note that pon
        cannot be combined

        with any of the date-based query parameters (date, startdate, or
        enddate).</p>
      example: '`979E019287CDF6A1` or `4c129d8e-57fc-4ccb-a37d-7f21aca8b32d`'
      in: query
      name: pon
      required: false
      schema:
        type: string
    portinOrderIdPathParam:
      description: ID of a port-in order to retrieve or modify
      example: bf1305b8-8998-1111-2222-51ba3ce52d4e
      in: path
      name: portinOrderId
      required: true
      schema:
        type: string
    regionName:
      description: The state or province name
      in: query
      name: regionName
      required: false
      schema:
        example: NJ
        type: string
    sizeQueryParam:
      description: The number of elements to retrieve
      in: query
      name: size
      required: false
      schema:
        example: 30
        type: integer
    startDateQueryParam:
      description: >-
        The starting date of a search in yy-mm-dd format. startdate and enddate
        <strong>must</strong> be used as a pair.
      in: query
      name: startDate
      required: false
      schema:
        example: 22-10-31
        type: string
  requestBodies:
    addHostedVoiceDocumentRequest:
      content:
        multipart/form-data:
          encoding:
            file:
              contentType: >-
                application/pdf, image/jpeg, image/jpg, image/png,
                application/msword,
                application/vnd.openxmlformats-officedocument.wordprocessingml.document
              explode: true
              style: deepObject
            metadata:
              contentType: application/json
          schema:
            properties:
              file:
                example: >-
                  H4sICPsdulsCAHJlYWRtZS50eHQAC0/NSc7PTVUoyVdISixONTPRSy8tKlUEAPCdUNYXAAAA
                format: binary
                type: string
              metadata:
                $ref: '#/components/schemas/hostedVoiceDocumentData'
            type: object
      description: Add a document with any metadata
    addPortingDocumentRequest:
      content:
        multipart/form-data:
          encoding:
            file:
              contentType: >-
                application/pdf, image/jpeg, image/jpg, image/png,
                application/msword,
                application/vnd.openxmlformats-officedocument.wordprocessingml.document
              explode: true
              style: deepObject
            metadata:
              contentType: application/json
          schema:
            properties:
              documentContent:
                format: binary
                type: string
              metadata:
                $ref: '#/components/schemas/portingDocumentData'
            type: object
      description: Add a document with any metadata
    checkPortabilityRequest:
      content:
        application/json:
          examples:
            checkPortabilityRequestExample:
              $ref: '#/components/examples/checkPortabilityRequestExample'
          schema:
            $ref: '#/components/schemas/checkPortabilityRequestBody'
      description: Request body supplied to the check portability endpoint.
      required: true
    createLeadTimeRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/leadTimeSchema'
      description: Request Body for creating international porting lead time endpoint.
    customerProfileRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/customerProfile'
      description: A customer profile
    importVoiceTnOrdersPatchRequest:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/importVoiceTnOrdersRequest'
          schema:
            $ref: '#/components/schemas/importVoiceTnOrdersPatchRequest'
    npacInformationRequest:
      content:
        application/json:
          examples:
            example:
              value:
                telephoneNumbers:
                  - '+19194445555'
                  - '+19194445556'
                  - '+19194445557'
          schema:
            $ref: '#/components/schemas/npacInformationRequest'
    operatorPatchRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/operatorPatchRequestPayload'
      required: true
    operatorRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/operatorRequestPayload'
      required: true
    portOutValidationRequest:
      content:
        application/json:
          examples:
            example:
              $ref: '#/components/examples/portOutValidationRequestJsonExample'
          schema:
            $ref: '#/components/schemas/portOutValidationRequestJson'
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/portOutValidationRequestXmlExample'
          schema:
            $ref: '#/components/schemas/portOutValidationRequest'
    putDocumentStatusUpdate:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/updateDocumentStatusUpdateRequestSchema'
      description: Update Document Status
    tollFreeRoutingTemplateRequest:
      content:
        application/json:
          examples:
            example:
              $ref: '#/components/examples/tollFreeRoutingTemplateRequestPayload'
          schema:
            $ref: '#/components/schemas/tollFreeRoutingTemplateRequest'
    updateAdminDocument:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/updateAdminDocumentRequestSchema'
      description: Update Admin Documents
    updateDocumentAdminRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/documentAdminRequest'
      description: Update document.
    updateHostedVoiceDocumentRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/hostedVoiceDocumentData'
      description: Update document.
    updateLeadTimeRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/leadTimeSchema'
      description: Request Body for updating international porting lead time endpoint.
    updateLosingCarrier:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/losingCarrierRequestSchema'
      description: Add or update losing carrier.
    updateReferenceDocument:
      content:
        multipart/form-data:
          encoding:
            file:
              contentType: >-
                application/pdf, image/jpeg, image/jpg, image/png,
                application/msword,
                application/vnd.openxmlformats-officedocument.wordprocessingml.document
              explode: true
              style: deepObject
            metadata:
              contentType: application/json
          schema:
            properties:
              documentContent:
                format: binary
                type: string
              metadata:
                $ref: '#/components/schemas/referenceDocumentRequestSchema'
            type: object
      description: Request body to update reference document
      required: true
    updateSubscriber:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/updateSubscriberRequestSchema'
      description: Update Subscriber
  responses:
    ImportTnOrdersResponse:
      content:
        application/xml:
          examples:
            ImportTnOrdersResponseExample:
              $ref: '#/components/examples/ImportTnOrdersResponseExample'
          schema:
            $ref: '#/components/schemas/importTnOrdersResponse'
      description: >-
        The information has been successfully retrieved and displayed in the
        payload.
    ImportVoiceTnOrdersResponse:
      content:
        application/xml:
          examples:
            listAllImportVoiceTnOrders:
              $ref: '#/components/examples/ImportVoiceTnOrders'
      description: >
        The descriptive payload for the importTnOrders query provides
        information about the orders found by the query, including the data
        associated with the order, the state of the order, and a list of the
        successfully imported Telephone Numbers, and descriptions of any
        encountered errors.
    availableNumbersGetResponse:
      content:
        application/json:
          examples:
            Consecutive Blocks:
              value:
                metadata:
                  - availableEndingRange: '+4424312799'
                    availableQuantity: 10
                    availableStartingRange: '+4424312790'
                    phoneNumberType: GEOGRAPHIC
                    phoneNumbers:
                      - '+4424312790'
                      - '+4424312791'
                      - '+4424312792'
                      - '+4424312793'
                      - '+4424312794'
                      - '+4424312795'
                      - '+4424312796'
                      - '+4424312797'
                      - '+4424312798'
                      - '+4424312799'
                  - availableEndingRange: '+4424312821'
                    availableQuantity: 10
                    availableStartingRange: '+4424312812'
                    phoneNumberType: GEOGRAPHIC
                    phoneNumbers:
                      - '+4424312812'
                      - '+4424312813'
                      - '+4424312814'
                      - '+4424312815'
                      - '+4424312816'
                      - '+4424312817'
                      - '+4424312818'
                      - '+4424312819'
                      - '+4424312820'
                      - '+4424312821'
                  - availableEndingRange: '+4424315889'
                    availableQuantity: 5
                    availableStartingRange: '+4424315885'
                    phoneNumberType: GEOGRAPHIC
                    phoneNumbers:
                      - '+4424315885'
                      - '+4424315886'
                      - '+4424315887'
                      - '+4424315888'
                      - '+4424315889'
            NANP TN Detail:
              value:
                resultCount: 2
                telephoneNumberDetails:
                  - city: CARY-RESEARCH TRIANGLE PARK
                    countryCodeA3: USA
                    fullNumber: '+19193716651'
                    lata: 426
                    phoneNumberType: GEOGRAPHIC
                    rateCenter: CARY-RTP
                    state: NC
                    tier: 0
                    vendorId: 49
                    vendorName: Bandwidth CLEC
                  - city: CARY-RESEARCH TRIANGLE PARK
                    countryCodeA3: USA
                    fullNumber: '+19193716675'
                    lata: 426
                    phoneNumberType: GEOGRAPHIC
                    rateCenter: CARY-RTP
                    state: NC
                    tier: 0
                    vendorId: 49
                    vendorName: Bandwidth CLEC
            No Consecutive Blocks Found:
              value:
                metadata:
                  - availableQuantity: 0
            Other TN Detail:
              value:
                resultCount: 2
                telephoneNumberDetails:
                  - areaCode: 20
                    city: AMSTERDAM
                    countryCodeA3: NLD
                    fullNumber: '+131208908115'
                    phoneNumberType: GEOGRAPHIC
                    tier: 0
                  - areaCode: 20
                    city: AMSTERDAM
                    countryCodeA3: NLD
                    fullNumber: '+131208908116'
                    phoneNumberType: NATIONAL
                    tier: 0
            TN Detail Disabled:
              value:
                phoneNumbers:
                  - '+17722029845'
                  - '+17722029845'
                resultCount: 2
          schema:
            $ref: '#/components/schemas/searchResultJson'
        application/xml:
          examples:
            NANP TN Detail:
              value: |-
                <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                <SearchResult>
                    <ResultCount>2</ResultCount>
                    <TelephoneNumberDetailList>
                        <TelephoneNumberDetail>
                            <CountryCodeA3>USA</CountryCodeA3>
                            <PhoneNumberType>GEOGRAPHIC</PhoneNumberType>
                            <City>CARY-RESEARCH TRIANGLE PARK</City>
                            <LATA>426</LATA>
                            <RateCenter>CARY-RTP</RateCenter>
                            <State>NC</State>
                            <FullNumber>+19193716651</FullNumber>
                            <Tier>0</Tier>
                            <VendorId>49</VendorId>
                            <VendorName>Bandwidth CLEC</VendorName>
                        </TelephoneNumberDetail>
                        <TelephoneNumberDetail>
                            <CountryCodeA3>USA</CountryCodeA3>
                            <PhoneNumberType>GEOGRAPHIC</PhoneNumberType>
                            <City>CARY-RESEARCH TRIANGLE PARK</City>
                            <LATA>426</LATA>
                            <RateCenter>CARY-RTP</RateCenter>
                            <State>NC</State>
                            <FullNumber>+19193716675</FullNumber>
                            <Tier>0</Tier>
                            <VendorId>49</VendorId>
                            <VendorName>Bandwidth CLEC</VendorName>
                        </TelephoneNumberDetail>
                    </TelephoneNumberDetailList>
                </SearchResult>
            Other TN Detail:
              value: |-
                <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                <SearchResult>
                    <ResultCount>2</ResultCount>
                    <TelephoneNumberDetailList>
                        <TelephoneNumberDetail>
                            <CountryCodeA3>NLD</CountryCodeA3>
                            <PhoneNumberType>GEOGRAPHIC</PhoneNumberType>
                            <City>AMSTERDAM</City>
                            <AreaCode>20</AreaCode>
                            <Tier>0</Tier>
                            <FullNumber>+31208908115</FullNumber>
                        </TelephoneNumberDetail>
                        <TelephoneNumberDetail>
                            <CountryCodeA3>NLD</CountryCodeA3>
                            <PhoneNumberType>NATIONAL</PhoneNumberType>
                            <City>AMSTERDAM</City>
                            <AreaCode>20</AreaCode>
                            <Tier>0</Tier>
                            <FullNumber>+31208908116</FullNumber>
                        </TelephoneNumberDetail>
                    </TelephoneNumberDetailList>
                </SearchResult>
            TN Detail Disabled:
              value: |-
                <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                <SearchResult>
                  <ResultCount>2</ResultCount>
                  <TelephoneNumberList>
                    <TelephoneNumber>+14354776112</TelephoneNumber>
                    <TelephoneNumber>+14357095160</TelephoneNumber>
                  </TelephoneNumberList>
                </SearchResult>
          schema:
            $ref: '#/components/schemas/searchResult'
      description: Created
    badRequestError:
      content:
        application/json:
          examples:
            badRequestErrorExample:
              $ref: '#/components/examples/badRequestErrorExample'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Bad Request
    badRequestErrorForCoverage:
      content:
        application/json:
          examples:
            badRequestErrorExample:
              $ref: '#/components/examples/badRequestErrorExampleForCoverage'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Bad Request.
    bulkRateCenterGetResponse404Error:
      content:
        application/xml:
          examples:
            successfulPostBulkCoverageMatrix:
              $ref: '#/components/examples/BulkRateCenterGetCoverage404Error'
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: Unsuccessful response because the bulk task details could not be found.
    bulkRateCenterPostResponse400Error:
      content:
        application/xml:
          examples:
            successfulPostBulkCoverageMatrix:
              $ref: '#/components/examples/BulkRateCenterPostCoverage400Error'
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: Unsuccessful response due to a valiation error.
    bulkRateCenterPostResponse409Error:
      content:
        application/xml:
          examples:
            successfulPostBulkCoverageMatrix:
              $ref: '#/components/examples/BulkRateCenterPostCoverage409Error'
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: >-
        Unsuccessful response due to a Resource Conflict Exception. The previous
        task hasn't finished yet.
    bulkRateCenterPutResponse400Error:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/BulkRateCenterPutCoverage400Error'
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: Unsuccessful response due to a validation error.
    bulkRateCenterPutResponse404Error:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/BulkRateCenterPutCoverage404Error'
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: Unsuccessful response because the bulk task details could not be found.
    bulkRateCenterSuccessfulGetResponse:
      content:
        application/xml:
          examples:
            successfulPostBulkCoverageMatrix:
              $ref: '#/components/examples/BulkRateCenterGetResponseExample'
          schema:
            $ref: '#/components/schemas/bulkRateCenterTaskPayload'
      description: >-
        Successful response which retrieves information about bulk upsert task
        with specified ID.
    bulkRateCenterSuccessfulPostResponse:
      content:
        application/xml:
          examples:
            successfulPostBulkCoverageMatrix:
              $ref: '#/components/examples/BulkRateCenterPostResponseExample'
          schema:
            $ref: '#/components/schemas/bulkRateCenterPayload'
      description: >-
        Successful response which starts the bulk upsert for provided rate
        centers.
    checkPortabilityBadRequestErrorResponse:
      content:
        application/json:
          examples:
            example:
              $ref: '#/components/examples/checkPortabilityBadRequestResponseExample'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Bad Request
    checkPortabilityForbiddenErrorResponse:
      content:
        application/json:
          examples:
            example:
              $ref: '#/components/examples/checkPortabilityForbiddenResponseExample'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Forbidden
    checkPortabilityInternalServerErrorResponse:
      content:
        application/json:
          examples:
            example:
              $ref: >-
                #/components/examples/checkPortabilityInternalServerErrorResponseExample
          schema:
            $ref: '#/components/schemas/genericError'
      description: Internal Server Error
    checkPortabilityNotFoundErrorResponse:
      content:
        application/json:
          examples:
            checkPortabilityNotFoundErrorResponseExample:
              $ref: >-
                #/components/examples/checkPortabilityNotFoundErrorResponseExample
          schema:
            $ref: '#/components/schemas/genericError'
      description: Not Found
    checkPortabilityResponse:
      content:
        application/json:
          examples:
            example:
              $ref: '#/components/examples/checkPortabilityResponseSuccessfulExample'
          schema:
            $ref: '#/components/schemas/checkPortabilityResponseBody'
      description: OK
    checkPortabilityTooManyRequestsErrorResponse:
      content:
        application/json:
          examples:
            example:
              $ref: >-
                #/components/examples/checkPortabilityTooManyRequestsResponseExample
          schema:
            $ref: '#/components/schemas/genericError'
      description: Too Many Requests
    checkPortabilityUnauthorizedErrorResponse:
      content:
        application/json:
          examples:
            example:
              $ref: >-
                #/components/examples/checkPortabilityUnauthorizedResponseExample
          schema:
            $ref: '#/components/schemas/genericError'
      description: Unauthorized
    countryCoverageResponse:
      content:
        application/json:
          examples:
            coverageSuccessResponse:
              $ref: '#/components/examples/coverageSuccessExample'
          schema:
            $ref: '#/components/schemas/countryCoverageResponseSuccess'
      description: Get list of country coverage
    createHostedVoiceDocumentSuccess:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/createUpdateHostedVoiceDocumentResponse'
      description: Created
    createLeadTimeResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/leadTimeInternalResponseSchema'
      description: Created
    createPortingDocumentSuccess:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/createUpdatePortingDocumentResponse'
      description: Created
    createRealm201Response:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/createRealm201ResponseExample'
          schema:
            $ref: '#/components/schemas/realmResponse'
      description: OK - the Realm was successfully created
    customerProfileErrorResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/customerProfileErrorResponse'
      description: Error
    customerProfileHistoryListResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/customerProfileHistoryListResponse'
      description: OK
    customerProfileHistoryResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/customerProfileHistoryResponse'
      description: OK
    customerProfileResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/customerProfileResponse'
      description: Created
    customerProfilesResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/customerProfilesResponse'
      description: OK
    deleteHostedVoiceDocumentSuccess:
      description: >-
        The 200 OK indicates a successful deletion of import voice tn order
        documents.
    deleteTnReservation200Response:
      description: Reservation has been successfully deleted (empty response body).
    deleteTnReservation400Response:
      content:
        application/json:
          example:
            description: Reservation 05cc7fad-b51c-4057-b1e2-86760274fda2 not found.
            errorCode: 5043
          schema:
            $ref: '#/components/schemas/responseStatusJson'
        application/xml:
          example: |-
            <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
            <ReservationResponse>
                <ResponseStatus>
                    <ErrorCode>5043</ErrorCode>
                    <Description>Reservation 05cc7fad-b51c-4057-b1e2-86760274fda2 not found.</Description>
                </ResponseStatus>
            </ReservationResponse>
          schema:
            $ref: '#/components/schemas/reservationErrorResponse'
      description: Reservation ID not found.
    downloadDocumentSuccess:
      content:
        application/octet-stream:
          schema:
            format: binary
            type: string
      description: OK
    forbiddenError:
      content:
        application/json:
          examples:
            forbiddenErrorExample:
              $ref: '#/components/examples/forbiddenErrorExample'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Forbidden
    forbiddenErrorForCoverage:
      content:
        application/json:
          examples:
            forbiddenErrorExample:
              $ref: '#/components/examples/forbiddenErrorExampleForCoverage'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Forbidden.
    getAdminDocumentSuccess:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/adminDocumentResponse'
      description: OK
    getEdgeManagementSettingsResponse:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/getEdgeManagementSettingsResponseExample'
          schema:
            $ref: '#/components/schemas/edgeManagementSettingsResponse'
      description: OK - the Edge Management settings have been successfully retrieved
    getHostedVoiceDocumentSuccess:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/getHostedVoiceDocumentResponse'
      description: OK
    getOperatorsResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/getOperatorResponse'
      description: OK
    getPortingDocumentSuccess:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/getPortingDocumentResponse'
      description: OK
    getStatisticsResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/portinStatistics'
      description: OK
    getSubscriberResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/getSubscriberResponseSchema'
      description: OK
    importVoiceTnOrdersPatchBadRequestError:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/importVoiceTnOrdersResponseBadRequestError'
          schema:
            $ref: '#/components/schemas/importVoiceTnOrderError'
      description: Bad Request
    importVoiceTnOrdersPatchForbiddenError:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/importVoiceTnOrdersResponseForbiddenError'
          schema:
            $ref: '#/components/schemas/importVoiceTnOrderError'
      description: Forbidden
    internalServerError:
      content:
        application/json:
          examples:
            internalServerErrorExample:
              $ref: '#/components/examples/internalServerErrorExample'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Internal Server Error
    internalServerErrorForCoverage:
      content:
        application/json:
          examples:
            internalServerErrorExample:
              $ref: '#/components/examples/internalServerErrorExampleForCoverage'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Internal Server Error.
    leadTimeResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/leadTimeInternalResponseSchema'
      description: OK
    leadTimesBadRequestErrorResponse:
      content:
        application/json:
          examples:
            badRequestErrorExample:
              $ref: '#/components/examples/badRequestErrorExample'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Bad Request
    leadTimesForbiddenErrorResponse:
      content:
        application/json:
          examples:
            forbiddenErrorExample:
              $ref: '#/components/examples/forbiddenErrorExample'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Forbidden
    leadTimesInternalServerErrorResponse:
      content:
        application/json:
          examples:
            internalServerErrorExample:
              $ref: '#/components/examples/internalServerErrorExample'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Internal Server Error
    leadTimesMethodNotAllowedErrorResponse:
      content:
        application/json:
          examples:
            notAllowedErrorExample:
              $ref: '#/components/examples/notAllowedErrorExample'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Method Not Allowed
    leadTimesNoContentResponse:
      description: No Content
    leadTimesNotFoundErrorResponse:
      content:
        application/json:
          examples:
            notFoundErrorExample:
              $ref: '#/components/examples/notFoundErrorExample'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Not Found
    leadTimesUnauthorizedErrorResponse:
      content:
        application/json:
          examples:
            unauthorizedErrorExample:
              $ref: '#/components/examples/unauthorizedErrorExample'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Unauthorized
    listAdminDocumentsSuccess:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/listAdminDocumentsResponse'
      description: OK
    listDnsRecordsResponse:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/listDnsRecordsResponseExample'
          schema:
            $ref: '#/components/schemas/RealmDnsResponse'
      description: >-
        OK - the realm DNS retrieval request will return a list of DNS records
        for the realm
    listHostedVoiceDocumentsSuccess:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/listHostedVoiceDocumentsResponse'
      description: OK
    listLeadTimesInternalResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/listLeadTimesInternalResponseSchema'
      description: OK
    listLeadTimesResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/listLeadTimesResponseSchema'
      description: OK
    listOfInternalLosingCarriersResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/portingInternalLosingCarriersResponseSchema'
      description: A list of available carriers that can port out a phone number
    listOfInternalReferenceDocumentsResponse:
      content:
        application/json:
          schema:
            $ref: >-
              #/components/schemas/portingInternalReferenceDocumentsResponseSchema
      description: A list of required documents needed to port a set of numbers
    listOfLosingCarriersResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/portingLosingCarriersResponseSchema'
      description: A list of available carriers that can port out a phone number
    listOfReferenceDocumentsResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/portingReferenceDocumentsResponseSchema'
      description: A list of required documents needed to port a set of numbers
    listPortingDocumentsSuccess:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/listPortingDocumentsResponse'
      description: OK
    listRealmsResponse:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/listRealmsResponseExample'
          schema:
            $ref: '#/components/schemas/realmsResponse'
      description: >-
        OK - the Realms retrieval request will return a list of the Realms that
        are created on this account
    losingCarrierResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/losingCarrierResponseSchema'
      description: A losing carrier that can port out a phone number
    methodNotSupportedError:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/methodNotSupportError'
      description: OK
    notAllowedError:
      content:
        application/json:
          examples:
            notAllowedErrorExample:
              $ref: '#/components/examples/notAllowedErrorExample'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Method Not Allowed
    notAllowedErrorForCoverage:
      content:
        application/json:
          examples:
            notAllowedErrorExample:
              $ref: '#/components/examples/notAllowedErrorExampleForCoverage'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Method Not Allowed.
    notFoundError:
      content:
        application/json:
          examples:
            notFoundErrorExample:
              $ref: '#/components/examples/notFoundErrorExample'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Not Found
    notFoundErrorForCoverage:
      content:
        application/json:
          examples:
            notFoundErrorExample:
              $ref: '#/components/examples/notFoundErrorExampleForCoverage'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Not Found.
    npacInformationResponse:
      content:
        application/json:
          examples:
            npacInformationResponseExample:
              $ref: '#/components/examples/npacInformationResponseExample'
          schema:
            $ref: '#/components/schemas/npacInformationResponse'
      description: |
        Contains NPAC information for a given telephone number.
    operatorBadRequestError:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/createBadRequestError'
      description: Bad Request
    operatorForbiddenError:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/operatorForbiddenRequestError'
      description: Forbidden
    operatorInvalidMediaTypeError:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/operatorInvalidMediaTypeRequestError'
      description: Unsupported Media Type
    operatorNotFoundError:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/operatorNotFoundRequestError'
      description: Not Found
    operatorSuccessfulResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/operatorResponse'
      description: Created.
    operatorTooManyRequestsError:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/operatorTooManyRequestError'
      description: Too Many Requests
    operatorUnauthorizedError:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/operatorUnauthorizedRequestError'
      description: Unauthorized Error
    operatorsInternalServerError:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/operatorInternalRequestError'
      description: Internal Server Error
    portOutPasscodeSupportResponse:
      content:
        application/json:
          examples:
            example:
              $ref: '#/components/examples/portOutPasscodeSupportResponseExample'
          schema:
            $ref: '#/components/schemas/portOutPasscodeSupportResponse'
      description: OK
    portOutValidation200Response:
      content:
        application/json:
          examples:
            Validation Passed:
              $ref: '#/components/examples/portOutValidationPassedResponseJsonExample'
          schema:
            $ref: '#/components/schemas/portOutValidationResponseJson'
        application/xml:
          examples:
            Validation Failed:
              $ref: '#/components/examples/portOutValidationFailedResponseXmlExample'
            Validation Passed:
              $ref: '#/components/examples/portOutValidationPassedResponseXmlExample'
          schema:
            $ref: '#/components/schemas/portOutValidationResponse'
      description: >
        <h3>NANP Port-outs</h3>

        <h5>Validation Passed</h3>

        For NANP port-outs, if the port-out is considered valid the returned
        payload contains an indication that the numbers in the request are
        portable &lt;Portable&gt;true&lt;/Portable&gt; (<b>required</b>), and
        may contain the PON depending on the carrier.<p>&nbsp;</p>


        <h5>Validation Failed</h5>

        <p>In the case where the number should not be ported, a response payload
        is returned that may indicate the values that would allow a port-out
        request to be validated.<br/>

        <ul>

        <li>The &lt;Portable&gt; value <b>must</b> indicate "false"</li>

        <li>A recognizable error code value <b>must</b> be returned,
        unrecognized error codes will be ignored and not treated as error
        codes.  The list of acceptable error codes is provided <a
        href="/docs/numbers/porting/port-outs/port-out-notifications">here</a>.</li>

        <li>The response payload should contain at least one of the optional
        fields that could be used to validate the port-out request.</li>

        <li>If the returned field/fields was/were not provided in the original
        request then that indicates that the field was missing from the request
        and should be provided</li>

        <li>If the returned field/fields was/were different than provided then
        that indicates an error in the requesting information</li>

        <li>The list of Telephone Numbers should contain the telephone numbers
        considered valid.</li>

        <li>For the port-out to be considered valid all telephone numbers in the
        request should be returned - If one telephone number is invalid then the
        request fails.</li>

        </ul><br/>
          Failure to return a valid response will be considered an <b>approval of the port-out</b> request.<br/>
        Failure to return any response will be considered an <b>approval of the
        port-out</b> request.<br/></p>

        <h3>Non-NANP Port-outs</h3>

        <p>For non-NANP port-outs, a 200 response indicates that the port-out
        request is valid. The order will be moved to an exception state and an
        order note will be added to the order that reflects this.</p><br/>
    portOutValidation400Response:
      content:
        application/json:
          examples:
            example:
              $ref: '#/components/examples/portOutValidationErrorResponseExample'
      description: >
        <h3>NANP Port-outs</h3>

        <p>For NANP port-outs, numbers <b>will be ported out</b> if a 4xx series
        response is received by Bandwidth</p>

        <h3>Non-NANP Port-outs</h3>

        <p>For non-NANP port-outs, a 4xx response indicates that the port-out
        request is invalid. The order will be moved to an exception state and an
        order note will be added to the order that reflects this.</p><br/>
    portOutValidation500Response:
      content:
        application/json:
          examples:
            example:
              $ref: '#/components/examples/portOutValidationErrorResponseExample'
      description: >
        <h3>NANP Port-outs</h3>

        <p>An error in the customer's server - indicating that the request
        cannot be serviced by the customer.

        For NANP port-outs, numbers <b>will be ported out</b> if a 5xx series
        response is received by Bandwidth</p>

        <h3>Non-NANP Port-outs</h3>

        <p>For non-NANP port-outs, a 5xx response indicates that the port-out
        request is invalid. The order will be moved to an exception state and an
        order note will be added to the order that reflects this.</p><br/>
    rateCenter401Error:
      content:
        application/json:
          examples:
            example:
              value:
                description: Client is providing incorrect or invalid credentials.
                type: unauthorized
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: Client is providing incorrect or invalid credentials.
    rateCenter403Error:
      content:
        application/json:
          examples:
            example:
              value:
                description: Client does not have access rights to the content.
                type: forbidden
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: Client does not have access rights to the content.
    rateCenter429Error:
      content:
        application/json:
          examples:
            example:
              value:
                description: Too many requests.
                type: too many requests
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: Too many requests.
    rateCenter500Error:
      content:
        application/json:
          examples:
            example:
              value:
                description: The server has encountered an internal error.
                type: internal server error
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: The server has encountered an internal error.
    rateCenterFindCoverageResponse404Error:
      content:
        application/xml:
          examples:
            unsuccessful404ErrorFindCoverageResponseExample:
              $ref: '#/components/examples/RateCenterFindCoverage404Error'
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: >-
        Unsuccessful response because the rate center coverage entry could not
        be found.
    rateCenterGetCoverageResponse:
      content:
        application/xml:
          examples:
            successfulGetCoverageResponseExample:
              $ref: '#/components/examples/RateCenterCoverageResponseExample'
          schema:
            $ref: '#/components/schemas/rateCenterCoverageList'
      description: Successful response with a rate center's coverage.
    rateCenterGetCoverageResponse400Error:
      content:
        application/xml:
          examples:
            unsuccessful400ErrorGetCoverageResponseExample:
              $ref: '#/components/examples/RateCenterGetCoverage400Error'
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: >-
        Unsucessful response of a rate center's coverage due to a validation
        error. No search parameters were provided.
    rateCenterPostCoverageResponse:
      content:
        application/xml:
          examples:
            successfulPostCoverageResponseExample:
              $ref: '#/components/examples/RateCenterCoverageResponseExample'
          schema:
            $ref: '#/components/schemas/coverageMatrixEntry'
      description: Successful response with the generating matrix entry.
    rateCenterPostCoverageResponse400Error:
      content:
        application/xml:
          examples:
            unsuccessful400ErrorPostCoverageResponseExample:
              $ref: '#/components/examples/RateCenterPostCoverage400Error'
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: Unsuccessful response due to a validation error.
    rateCenterPostCoverageResponse409Error:
      content:
        application/xml:
          examples:
            unsuccessful409ErrorPostCoverageResponseExample:
              $ref: '#/components/examples/RateCenterPostCoverage409Error'
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: >-
        Unsuccessful response due to a validation error. This rate center
        already exists.
    rateCenterPutCoverageResponse:
      content:
        application/xml:
          examples:
            successfulPutCoverageResponseExample:
              $ref: '#/components/examples/RateCenterCoverageResponseExample'
          schema:
            $ref: '#/components/schemas/coverageMatrixEntry'
      description: Successful response for the update of a coverage matrix entry.
    realmDnsNotFoundResponse:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/realmDnsNotFoundResponseExample'
      description: Not Found - the Realm was not found on the account
    realmDnsServiceUnavailableResponse:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/realmDnsServiceUnavailableResponseExample'
      description: Service Unavailable
    referenceDocumentResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/referenceDocumentResponseSchema'
      description: A reference document needed to port a set of numbers
    regionsFindCoverageResponse404Error:
      content:
        application/xml:
          examples:
            unsuccessfulUpdateRateCenterCoverage:
              $ref: '#/components/examples/RegionsFindCoverage404Error'
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: >-
        Unsuccessful response due to an invalid rate center region and
        abbreviation combination.
    regionsFindCoverageWithVendorResponse404Error:
      content:
        application/xml:
          examples:
            unsuccessfulUpdateRateCenterCoverage:
              $ref: '#/components/examples/RegionsFindCoverageWithVendor404Error'
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: >-
        Unsuccessful response due to an invalid rate center region,
        abbreviation, and vendor combination.
    regionsRateCenterCoverageSuccessfulResponseExample:
      content:
        application/xml:
          examples:
            successfulRateCenterCoverageExample:
              $ref: '#/components/examples/RateCenterCoverageResponseExample'
          schema:
            $ref: '#/components/schemas/coverageMatrixEntry'
      description: Successful response that returns the selected rate center coverage.
    regionsUpdateRateCenterCoverageResponse400Error:
      content:
        application/xml:
          examples:
            unsuccessfulUpdateRateCenterCoverage:
              $ref: '#/components/examples/RegionsUpdateRateCenterCoverage400Error'
          schema:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
      description: Unsuccessful update of rate center coverage due to a validation error.
    removeImportedVoiceTnOrdersResponse:
      content:
        application/xml:
          examples:
            listAllRemoveImportedVoiceTnOrders:
              $ref: '#/components/examples/RemoveImportedVoiceTnOrders'
      description: >
        The descriptive payload for the removeImportedVoiceTnOrders query
        provides information about the orders found by the query, including the
        data associated with the order, the state of the order, and a list of
        the successfully removed Hosted Voice Telephone Numbers, and
        descriptions of any encountered errors.
    reserveTn201Response:
      description: >-
        The TN has been successfully reserved, with the link to the reservation
        in the Location Header (empty response body).
      headers:
        Location:
          description: 'The reservation id is: "8da0f39c-043c-4806-9f0f-497b2d197bc5".'
          schema:
            example: >-
              https://api.bandwidth.com/api/accounts/{accountId}/TnReservation/8da0f39c-043c-4806-9f0f-497b2d197bc5.
            type: string
    statusHistoryResponseSuccess:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/statusHistoryResponse'
      description: OK
    tollFreeRoutingTemplateBadGatewayErrorResponse:
      content:
        application/json:
          examples:
            example:
              $ref: >-
                #/components/examples/tollFreeRoutingTemplateBadGatewayErrorResponseExample
          schema:
            $ref: '#/components/schemas/tollFreeRoutingTemplateErrorResponse'
      description: >-
        Routing Request for TFN failed with 502 response and error as in
        description. The 502 (Bad Gateway) status code indicates that the
        server, while acting as a gateway or proxy, received an invalid response
        from an inbound server it accessed while attempting to fulfill the
        request.
    tollFreeRoutingTemplateBadRequestErrorResponse:
      content:
        application/json:
          examples:
            example:
              $ref: >-
                #/components/examples/tollFreeRoutingTemplateBadRequestErrorResponseExample
          schema:
            $ref: '#/components/schemas/tollFreeRoutingTemplateErrorResponse'
      description: >-
        Routing Request for TFN failed with 400 error and error as in
        description.
    tollFreeRoutingTemplateForbiddenErrorResponse:
      content:
        application/json:
          examples:
            example:
              $ref: >-
                #/components/examples/tollFreeRoutingTemplateForbiddenErrorResponseExample
          schema:
            $ref: '#/components/schemas/tollFreeRoutingTemplateErrorResponse'
      description: >-
        Routing Request for TFN failed with 403 response and error as in
        description. The 403 (Forbidden) status code indicates that the server
        understood the request but refuses to fulfill it.
    tollFreeRoutingTemplateGatewayTimeoutErrorResponse:
      content:
        application/json:
          examples:
            example:
              $ref: >-
                #/components/examples/tollFreeRoutingTemplateGatewayTimeoutErrorResponseExample
          schema:
            $ref: '#/components/schemas/tollFreeRoutingTemplateErrorResponse'
      description: >-
        Routing Request for TFN failed with 504 response and error as in
        description. The 504 (Gateway Timeout) status code indicates that the
        server, while acting as a gateway or proxy, did not receive a timely
        response from an upstream server it needed to access in order to
        complete the request.
    tollFreeRoutingTemplateMethodNotAllowedErrorResponse:
      content:
        application/json:
          examples:
            example:
              $ref: >-
                #/components/examples/tollFreeRoutingTemplateMethodNotAllowedErrorResponseExample
          schema:
            $ref: '#/components/schemas/tollFreeRoutingTemplateErrorResponse'
      description: >-
        Routing Request for TFN failed with 405 response and error as in
        description. The 405 (Method Not Allowed) status code indicates that the
        method received in the request-line is known by the origin server but
        not supported by the target resource.
    tollFreeRoutingTemplateSuccessResponse:
      content:
        application/json:
          examples:
            example:
              $ref: >-
                #/components/examples/tollFreeRoutingTemplateSuccessResponseExample
          schema:
            $ref: '#/components/schemas/tollFreeRoutingTemplateSuccessResponse'
      description: Routing Request for TFN successfully retrieved and displayed.
    tollFreeRoutingTemplateTooManyRequestsErrorResponse:
      content:
        application/json:
          examples:
            example:
              $ref: >-
                #/components/examples/tollFreeRoutingTemplateTooManyRequestsErrorResponseExample
          schema:
            $ref: '#/components/schemas/tollFreeRoutingTemplateErrorResponse'
      description: >-
        Routing Request for TFN failed with 429 response and error as in
        description. The 429 status code indicates that the user has sent too
        many requests in a given amount of time ("rate limiting").
    tollFreeRoutingTemplateUnauthorizedErrorResponse:
      content:
        application/json:
          examples:
            example:
              $ref: >-
                #/components/examples/tollFreeRoutingTemplateUnauthorizedErrorResponseExample
          schema:
            $ref: '#/components/schemas/tollFreeRoutingTemplateErrorResponse'
      description: >-
        Routing Request for TFN failed with 401 response and error as in
        description. The 401 (Unauthorized) status code indicates that the
        request has not been applied because it lacks valid authentication
        credentials for the target resource.
    tooManyRequestsError:
      content:
        application/json:
          examples:
            tooManyRequestsErrorExample:
              $ref: '#/components/examples/tooManyRequestsErrorExample'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Too Many Requests
    tooManyRequestsErrorForCoverage:
      content:
        application/json:
          examples:
            tooManyRequestsErrorExample:
              $ref: '#/components/examples/tooManyRequestsErrorExampleForCoverage'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Too Many Requests.
    unauthorizedError:
      content:
        application/json:
          examples:
            unauthorizedErrorExample:
              $ref: '#/components/examples/unauthorizedErrorExample'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Unauthorized
    unauthorizedErrorForCoverage:
      content:
        application/json:
          examples:
            unauthorizedErrorExample:
              $ref: '#/components/examples/unauthorizedErrorExampleForCoverage'
          schema:
            $ref: '#/components/schemas/genericError'
      description: Unauthorized.
    updateHostedMessagingDocumentSuccess:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/createUpdateHostedMessagingDocumentResponse'
      description: OK
    updateHostedVoiceDocumentSuccess:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/createUpdateHostedVoiceDocumentResponse'
      description: OK
    updatePortingDocumentSuccess:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/createUpdatePortingDocumentResponse'
      description: OK
    updateSubscriberResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/updateSubscriberResponseSchema'
      description: Created
  schemas:
    DNSRecord:
      properties:
        Data:
          description: >-
            Record data (IP address for A records; priority, weight, port, and
            target for SRV records).
          type: string
        Name:
          description: Fully qualified domain name of the DNS record.
          type: string
        TTL:
          type: integer
        Type:
          description: DNS record type.
          enum:
            - A
            - SRV
          type: string
      type: object
    HolidayResponse:
      properties:
        HolidaysResponse:
          properties:
            Holiday:
              properties:
                CountryCodeA3:
                  description: Country code in ISO 3166-1 alpha-3 format.
                  type: string
                Description:
                  description: The description of the holiday.
                  type: string
                HolidayDate:
                  description: The date of the holiday.
                  format: date
                  type: string
                Id:
                  description: The unique id of the holiday.
                  type: integer
              type: object
          type: object
      type: object
    HolidayResponseJson:
      properties:
        HolidaysResponse:
          properties:
            data:
              properties:
                CountryCodeA3:
                  description: Country code in ISO 3166-1 alpha-3 format.
                  type: string
                Description:
                  description: The description of the holiday.
                  type: string
                HolidayDate:
                  description: The date of the holiday.
                  format: date
                  type: string
                Id:
                  description: The unique id of the holiday.
                  type: integer
              type: object
            errors:
              items:
                properties:
                  code:
                    description: The error code.
                    type: string
                  description:
                    description: The error message.
                    type: string
                type: object
              type: array
            links:
              properties:
                href:
                  description: The URL to the holiday
                  type: string
                rel:
                  description: The relationship of the link.
                  type: string
                self:
                  description: The URL to the holiday
                  type: string
              type: object
          type: object
      type: object
    HolidaysRequest:
      properties:
        Holidays:
          items:
            properties:
              CountryCodeA3:
                description: Country code in ISO 3166-1 alpha-3 format.
                type: string
              Description:
                description: The description of the holiday.
                type: string
              HolidayDate:
                description: The date of the holiday formatted as YYYY-MM-DD.
                format: date
                type: string
            type: object
          type: array
      type: object
    HolidaysRequestForPut:
      properties:
        Holidays:
          items:
            properties:
              CountryCodeA3:
                description: Country code in ISO 3166-1 alpha-3 format.
                type: string
              Description:
                description: The description of the holiday.
                type: string
              HolidayDate:
                description: The date of the holiday.
                format: date
                type: string
              Id:
                description: The unique id of the holiday.
                type: integer
            type: object
          type: array
      type: object
    HolidaysRequestJson:
      properties:
        Holidays:
          items:
            properties:
              countryCodeA3:
                description: Country code in ISO 3166-1 alpha-3 format.
                type: string
              description:
                description: The description of the holiday.
                type: string
              holidayDate:
                description: The date of the holiday formatted as YYYY-MM-DD.
                format: date
                type: string
            type: object
          type: array
      type: object
    HolidaysResponse:
      properties:
        HolidaysResponse:
          properties:
            Holidays:
              items:
                properties:
                  CountryCodeA3:
                    description: Country code in ISO 3166-1 alpha-3 format.
                    type: string
                  Description:
                    description: The description of the holiday.
                    type: string
                  HolidayDate:
                    description: The date of the holiday.
                    format: date
                    type: string
                  Id:
                    description: The unique id of the holiday.
                    type: integer
                type: object
              type: array
          type: object
      type: object
    HolidaysResponseForDelete:
      properties:
        HolidaysResponse:
          properties:
            Holiday:
              properties:
                HolidayDate:
                  description: The date of the holiday.
                  format: date
                  type: string
                Id:
                  description: The unique id of the holiday.
                  type: integer
              type: object
          type: object
      type: object
    HolidaysResponseForDeleteForJson:
      properties:
        holidaysResponse:
          properties:
            data:
              properties:
                HolidayDate:
                  description: The date of the holiday.
                  format: date
                  type: string
                Id:
                  description: The unique id of the holiday.
                  type: integer
              type: object
            errors:
              items:
                properties:
                  code:
                    description: The error code.
                    type: string
                  description:
                    description: The error message.
                    type: string
                type: object
              type: array
            links:
              properties:
                href:
                  description: The URL to the holiday
                  type: string
                rel:
                  description: The relationship of the link.
                  type: string
                self:
                  description: The URL to the holiday
                  type: string
              type: object
          type: object
      type: object
    HolidaysResponseForJson:
      properties:
        HolidaysResponse:
          properties:
            data:
              items:
                properties:
                  CountryCodeA3:
                    description: Country code in ISO 3166-1 alpha-3 format.
                    type: string
                  Description:
                    description: The description of the holiday.
                    type: string
                  HolidayDate:
                    description: The date of the holiday.
                    format: date
                    type: string
                  Id:
                    description: The unique id of the holiday.
                    type: integer
                type: object
              type: array
            errors:
              items:
                properties:
                  code:
                    description: The error code.
                    type: string
                  description:
                    description: The error message.
                    type: string
                type: object
              type: array
            links:
              properties:
                href:
                  description: The URL to the holiday
                  type: string
                rel:
                  description: The relationship of the link.
                  type: string
                self:
                  description: The URL to the holiday
                  type: string
              type: object
          type: object
      type: object
    NANPATNDetail:
      description: Returned when `enableTnDetail=True` for NANP numbers
      properties:
        LATA:
          example: 426
          type: number
          xml:
            name: LATA
        city:
          $ref: '#/components/schemas/city'
        countryCodeA3:
          $ref: '#/components/schemas/countryCodeA3'
        fullNumber:
          example: '+17722029845'
          type: string
          xml:
            name: FullNumber
        phoneNumberType:
          $ref: '#/components/schemas/phoneNumberType'
        rateCenter:
          example: SEBASTIAN
          type: string
          xml:
            name: RateCenter
        state:
          example: FL
          type: string
          xml:
            name: State
        tier:
          example: 0
          type: number
          xml:
            name: Tier
        vendorId:
          example: 49
          type: number
          xml:
            name: VendorId
        vendorName:
          example: Bandwidth CLEC
          type: string
          xml:
            name: VendorName
      title: NANP TN Detail
      type: object
    RealmDns:
      properties:
        DNSRecords:
          description: List of DNS records for the realm.
          items:
            $ref: '#/components/schemas/DNSRecord'
          type: array
        Realm:
          description: The realm hostname.
          type: string
      type: object
    RealmDnsResponse:
      description: Response wrapper for DNS records on a realm.
      properties:
        Realm:
          $ref: '#/components/schemas/RealmDns'
      type: object
    TNDetailDisabled:
      properties:
        resultCount:
          example: 1
          type: integer
          xml:
            name: ResultCount
        telephoneNumberList:
          items:
            example: '+17722029845'
            type: string
            xml:
              name: TelephoneNumber
          type: array
          xml:
            name: TelephoneNumberList
            wrapped: true
      title: TN Detail Disabled
      type: object
    TNDetailEnabled:
      properties:
        resultCount:
          example: 1
          type: integer
          xml:
            name: ResultCount
        telephoneNumberDetailList:
          items:
            oneOf:
              - $ref: '#/components/schemas/NANPATNDetail'
              - $ref: '#/components/schemas/otherTNDetail'
          type: array
          xml:
            name: TelephoneNumberDetailList
            wrapped: true
      title: TN Detail Enabled
      type: object
    accessRestriction:
      properties:
        RestrictedAccessTypes:
          items:
            properties:
              RestrictedAccessType:
                type: string
            type: object
          type: array
        RestrictedProduct:
          type: string
      type: object
    accountHttpFeature:
      properties:
        DefaultProxyPeerId:
          type: integer
      type: object
    accountHttpFeatureResponse:
      properties:
        AccountHttpFeature:
          $ref: '#/components/schemas/accountHttpFeature'
      type: object
    accountMessagingRoutesResponse:
      properties:
        MessagingRoutes:
          items:
            $ref: '#/components/schemas/messagingRoute'
          type: array
      type: object
    accountMmsFeatureResponse:
      properties:
        AccountHttpFeature:
          $ref: '#/components/schemas/mmsFeature'
      type: object
    accountMmsFeatureSettingsResponse:
      properties:
        mmsSettings:
          $ref: '#/components/schemas/accountMmsSettings'
      type: object
    accountMmsSettings:
      properties:
        DefaultProvider:
          type: string
        GenDlr:
          type: boolean
        GenReadReply:
          type: boolean
        MM4Enabled:
          type: boolean
        TollFreeMMSAllowed:
          type: boolean
      type: object
    accountProductResponse:
      properties:
        product:
          oneOf:
            - $ref: '#/components/schemas/productWithCountrySettings'
            - $ref: '#/components/schemas/product'
      type: object
    accountProductsResponse:
      properties:
        products:
          items:
            $ref: '#/components/schemas/productWithCountrySettings'
          type: array
          xml:
            name: Products
            wrapped: true
      type: object
      xml:
        name: AccountProductsResponse
    accountSipCredentials:
      properties:
        SipCredentials:
          items:
            $ref: '#/components/schemas/sipCredential'
          type: array
      type: object
    accountSipCredentialsRequest:
      properties:
        SipCredentials:
          items:
            $ref: '#/components/schemas/sipCredentialCreateRequest'
          type: array
      type: object
    accountSmsFeature:
      properties:
        MmsSettings:
          $ref: '#/components/schemas/accountSmsFeatureSettings'
        SmppSettings:
          $ref: '#/components/schemas/smppSettings'
      type: object
    accountSmsFeatureResponse:
      properties:
        AccountHttpFeature:
          $ref: '#/components/schemas/accountSmsFeature'
      type: object
    accountSmsFeatureSettings:
      properties:
        DefaultProvider:
          type: integer
        SmppEnabled:
          type: boolean
        Zone1:
          type: boolean
        Zone2:
          type: boolean
        Zone3:
          type: boolean
        Zone4:
          type: boolean
        Zone5:
          type: boolean
      type: object
    addedAssociations:
      description: Associations list
      properties:
        EepToEngAssociations:
          $ref: '#/components/schemas/eepToEngAssociations'
        ErrorList:
          items:
            properties:
              Description:
                type: string
          type: array
      type: object
    addedEmergencyNotificationGroup:
      description: Indicates that the order is to add an emergency notification group.
      properties:
        AddedEmergencyNotificationRecipients:
          description: >-
            Indicates that emergency notification recipients are being added to
            the emergency notification group.
          properties:
            EmergencyNotificationRecipient:
              $ref: '#/components/schemas/emergencyNotificationRecipientWithId'
          type: object
        Description:
          $ref: '#/components/schemas/notificationRecipientDescription'
      type: object
    addedEmergencyNotificationGroupWithId:
      description: Indicates that the order is to add an emergency notification group.
      properties:
        AddedEmergencyNotificationRecipients:
          description: >-
            Indicates that emergency notification recipients are being added to
            the emergency notification group.
          properties:
            EmergencyNotificationRecipient:
              $ref: '#/components/schemas/emergencyNotificationRecipientWithId'
          type: object
        Description:
          $ref: '#/components/schemas/notificationRecipientDescription'
        Identifier:
          $ref: '#/components/schemas/emergencyGroupIdentifier'
      type: object
    additionalDetails:
      properties:
        comment:
          description: Comment
          example: Updating regulations
          type: string
          xml:
            name: Comment
      type: object
      xml:
        name: AdditionalDetails
    address:
      properties:
        AddressLine2:
          description: >-
            AddressLine2 is used to specify Unit, Suite, Floor, etc. in the
            Service Address. AddressLine2 is optional when not needed to fully
            specify the ServiceAddress.
          type: string
        AddressType:
          $ref: '#/components/schemas/addressType'
        City:
          description: City is mandatory in cases where the ServiceAddress is mandatory.
          type: string
        Country:
          description: >-
            Country is the country of the ServiceAddress. This value will be
            derived from the StateCode, so it should generally be omitted.
          type: string
        County:
          description: The county where the subscriber or business is located.
          type: string
        HouseNumber:
          description: >-
            The HouseNumber is the street address number of the ServiceAddress.
            HouseNumber is mandatory for port-in orders in which the
            ServiceAddress is mandatory.
          type: string
        HousePrefix:
          description: >-
            The HousePrefix is the non-numeric address number prefix of the
            ServiceAddress. This element is optional when not needed to fully
            specify the ServiceAddress.
          type: string
        HouseSuffix:
          description: >-
            The HouseSuffix is the non-numeric address number suffix of the
            ServiceAddress. This element is optional when not needed to fully
            specify the ServiceAddress.
          type: string
        Latitude:
          type: string
        Longitude:
          type: string
        PlusFour:
          description: >-
            PlusFour is the 4 digits that are sometimes suffixed to the Zip
            Code.
          type: string
        PostDirectional:
          description: >-
            The PostDirectional is the street name post directional of the
            ServiceAddress. This element is optional when not needed to fully
            specify the ServiceAddress.
          type: string
        PreDirectional:
          description: >-
            The PreDirectional is the non-numeric street name prefix of the
            ServiceAddress. This element is optional when not needed to fully
            specify the ServiceAddress.
          type: string
        ResetAddressFields:
          type: boolean
        StateCode:
          description: >-
            StateCode is the 2-letter abbreviation of the state of the
            ServiceAddress. StateCode is mandatory in cases where the
            ServiceAddress is mandatory.
          type: string
        StreetName:
          description: >-
            The StreetName is mandatory in cases where the ServiceAddress is
            mandatory.
          type: string
        StreetSuffix:
          description: >-
            The StreetSuffix is the street suffix of the ServiceAddress. This
            element is optional when not needed to fully specify the
            ServiceAddress.
          type: string
        Zip:
          description: >-
            Zip is the Zip Code of the ServiceAddress. Zip is mandatory in cases
            where the ServiceAddress is mandatory.
          type: string
      type: object
    addressId:
      description: Address Id
      example: daa9dd0f-de97-4103-8530-b31bf4be8fc0
      title: Address Id
      type: string
    addressJson:
      properties:
        addressLine2:
          description: >-
            AddressLine2 is used to specify Unit, Suite, Floor, etc. in the
            Service Address. AddressLine2 is optional when not needed to fully
            specify the ServiceAddress.
          type: string
        addressType:
          $ref: '#/components/schemas/addressTypeJson'
        city:
          description: City is mandatory in cases where the ServiceAddress is mandatory.
          type: string
        country:
          description: >-
            Country is the country of the ServiceAddress. This value will be
            derived from the StateCode, so it should generally be omitted.
          type: string
        county:
          description: The county where the subscriber or business is located.
          type: string
        houseNumber:
          description: >-
            The HouseNumber is the street address number of the ServiceAddress.
            HouseNumber is mandatory for port-in orders in which the
            ServiceAddress is mandatory.
          type: string
        housePrefix:
          description: >-
            The HousePrefix is the non-numeric address number prefix of the
            ServiceAddress. This element is optional when not needed to fully
            specify the ServiceAddress.
          type: string
        houseSuffix:
          description: >-
            The HouseSuffix is the non-numeric address number suffix of the
            ServiceAddress. This element is optional when not needed to fully
            specify the ServiceAddress.
          type: string
        latitude:
          type: string
        longitude:
          type: string
        plusFour:
          description: >-
            PlusFour is the 4 digits that are sometimes suffixed to the Zip
            Code.
          type: string
        postDirectional:
          description: >-
            The PostDirectional is the street name post directional of the
            ServiceAddress. This element is optional when not needed to fully
            specify the ServiceAddress.
          type: string
        preDirectional:
          description: >-
            The PreDirectional is the non-numeric street name prefix of the
            ServiceAddress. This element is optional when not needed to fully
            specify the ServiceAddress.
          type: string
        resetAddressFields:
          type: boolean
        stateCode:
          description: >-
            StateCode is the 2-letter abbreviation of the state of the
            ServiceAddress. StateCode is mandatory in cases where the
            ServiceAddress is mandatory.
          type: string
        streetName:
          description: >-
            The StreetName is mandatory in cases where the ServiceAddress is
            mandatory.
          type: string
        streetSuffix:
          description: >-
            The StreetSuffix is the street suffix of the ServiceAddress. This
            element is optional when not needed to fully specify the
            ServiceAddress.
          type: string
        zip:
          description: >-
            Zip is the Zip Code of the ServiceAddress. Zip is mandatory in cases
            where the ServiceAddress is mandatory.
          type: string
      type: object
    addressType:
      enum:
        - SERVICE
        - BILLING
        - DLDA
        - E911
      type: string
    addressTypeJson:
      enum:
        - SERVICE
        - BILLING
        - DLDA
        - E911
      type: string
    addresses:
      properties:
        Address:
          items:
            $ref: '#/components/schemas/e911Address'
      type: object
    addressesResponse:
      properties:
        Addresses:
          $ref: '#/components/schemas/addresses'
        Links:
          $ref: '#/components/schemas/links'
        TotalCount:
          format: int32
          type: integer
      type: object
    addressesResponseNotFound:
      properties:
        AddressesResponse:
          $ref: '#/components/schemas/responseStatus'
      type: object
    addressesResponseWrapper:
      properties:
        AddressesResponse:
          $ref: '#/components/schemas/addressesResponse'
      type: object
    adminDataErrorResponse:
      properties:
        AdminDataResponse:
          properties:
            ResponseStatus:
              $ref: '#/components/schemas/responseStatus'
          type: object
      type: object
    adminDataErrorResponseJson:
      properties:
        responseStatus:
          $ref: '#/components/schemas/responseStatusJson'
      type: object
    adminDocumentData:
      properties:
        contentType:
          $ref: '#/components/schemas/documentContentType'
        createdDateTime:
          $ref: '#/components/schemas/createdDateTime'
        id:
          $ref: '#/components/schemas/documentId'
        type:
          $ref: '#/components/schemas/adminDocumentType'
        updatedDateTime:
          $ref: '#/components/schemas/updatedDateTime'
      title: Admin Document Data Basic
      type: object
    adminDocumentResponse:
      properties:
        data:
          $ref: '#/components/schemas/adminDocumentData'
        errors:
          $ref: '#/components/schemas/errors'
        links:
          $ref: '#/components/schemas/getLinks'
      title: Admin Document Response
      type: object
    adminDocumentType:
      example: NPOR
      title: Admin Document Type
      type: string
    alternateEndUserIdentifier:
      properties:
        CallbackNumber:
          type: string
        CallerName:
          type: string
        E911:
          $ref: '#/components/schemas/e911'
        EmergencyNotificationGroup:
          $ref: '#/components/schemas/emergencyNotificationGroup'
        Identifier:
          type: string
        LocationId:
          type: string
        PIDFLOEnabled:
          type: boolean
        PreferredLanguage:
          enum:
            - en
            - fr
            - Incorrect value
          type: string
      type: object
    alternateEndUserIdentifierResponse:
      properties:
        AlternateEndUserIdentifier:
          $ref: '#/components/schemas/alternateEndUserIdentifier'
      type: object
    alternateEndUserIdentifierResponseNotFound:
      properties:
        AlternateEndUserIdentifierResponse:
          $ref: '#/components/schemas/responseStatus'
      type: object
    alternateEndUserIdentifierWrapper:
      properties:
        AlternateEndUserIdentifiersResponse:
          $ref: '#/components/schemas/alternateEndUserIdentifierResponse'
      type: object
    alternateEndUserIdentifiers:
      properties:
        AlternateEndUserIdentifier:
          items:
            $ref: '#/components/schemas/alternateEndUserIdentifier'
          type: array
      type: object
    alternateEndUserIdentifiersResponse:
      properties:
        AlternateEndUserIdentifiers:
          $ref: '#/components/schemas/alternateEndUserIdentifiers'
        Links:
          $ref: '#/components/schemas/links'
        TotalCount:
          format: int32
          type: integer
          xml:
            name: TotalCount
      type: object
    alternateEndUserIdentifiersResponseNotFound:
      properties:
        AlternateEndUserIdentifiersResponse:
          $ref: '#/components/schemas/responseStatus'
      type: object
    alternateEndUserIdentifiersResponseWrapper:
      properties:
        AlternateEndUserIdentifiersResponse:
          $ref: '#/components/schemas/alternateEndUserIdentifiersResponse'
      type: object
    applicationsSettings:
      properties:
        HttpMessagingV2AppId:
          type: string
      type: object
    applicationsSettingsResponse:
      properties:
        ApplicationsSettings:
          $ref: '#/components/schemas/applicationsSettings'
      type: object
    areaCode:
      description: The 1 to 6 digit area code associated with the phone number.
      example: '435'
      title: Area Code
      type: string
      xml:
        name: AreaCode
    automatedNANPTollFreeLnpOrderRequest:
      description: >-
        Indicates that the port-in contains toll-free numbers and that Toll-Free
        Automation is enabled. The numbers will be automatically validated and
        submitted to our toll-free porting vendor, then the port will be
        processed manually by Bandwidth’s Local Number Portability team.
      properties:
        LnpOrder:
          allOf:
            - $ref: '#/components/schemas/lnpOrderBasic'
            - $ref: '#/components/schemas/lnpOrderAutomatedTollFreeFields'
            - properties:
                RequestedFocDate:
                  description: >-
                    Format: ISO8601 encoding such as “2013-05-10T15:14:22Z”, or
                    "2019-10-31T17:15:00+04:00".<br/><br/>For all ports, if
                    `RequestedFocDate` is specified, the date portion must
                    be:<br/> - in the future<br/> - after the losing carrier's
                    minimum number of days to port-out<br/> - not on a weekend
                    or U.S. holiday<br/><br/>If `RequestedFocDate` is not
                    specified, the next available FOC date meeting the criteria
                    above will be used. If the Time portion of the
                    `RequestedFocDate` is omitted the port-in order will be
                    activated at the default activation time of 11:30 AM ET. If
                    an activation time other than 11:30 AM ET is desired, that
                    activation time should be included in the
                    `RequestedFocDate`.
                  type: string
              type: object
      title: Automated NANP Toll-Free LNP Order Request
      type: object
    automatedNANPTollFreeLnpOrderRequestJson:
      description: >-
        Indicates that the port-in contains toll-free numbers and that Toll-Free
        Automation is enabled. The numbers will be automatically validated and
        submitted to our toll-free porting vendor, then the port will be
        processed manually by Bandwidth’s Local Number Portability team.
      properties:
        lnpOrder:
          allOf:
            - $ref: '#/components/schemas/lnpOrderBasicJson'
            - $ref: '#/components/schemas/lnpOrderAutomatedTollFreeFieldsJson'
            - properties:
                requestedFocDate:
                  description: >-
                    Format: ISO8601 encoding such as “2013-05-10T15:14:22Z”, or
                    "2019-10-31T17:15:00+04:00".<br/><br/>For all ports, if
                    `RequestedFocDate` is specified, the date portion must
                    be:<br/> - in the future<br/> - after the losing carrier's
                    minimum number of days to port-out<br/> - not on a weekend
                    or U.S. holiday<br/><br/>If `RequestedFocDate` is not
                    specified, the next available FOC date meeting the criteria
                    above will be used. If the Time portion of the
                    `RequestedFocDate` is omitted the port-in order will be
                    activated at the default activation time of 11:30 AM ET. If
                    an activation time other than 11:30 AM ET is desired, that
                    activation time should be included in the
                    `RequestedFocDate`.
                  type: string
              type: object
      title: Automated NANP Toll-Free LNP Order Request
      type: object
    availablePhoneNumberQuantity:
      description: The quantity of available phone numbers to be listed in the response.
      example: 100
      title: AvailablePhoneNumberQuantity
      type: integer
    bandwidthRespOrgId:
      properties:
        BandwidthRespOrgId:
          properties:
            Description:
              type: string
            RespOrgId:
              type: string
          type: object
    bandwidthRespOrgIdList:
      items:
        $ref: '#/components/schemas/bandwidthRespOrgId'
      type: array
    bandwidthRespOrgIdResponse:
      properties:
        AdminDataResponse:
          $ref: '#/components/schemas/bandwidthRespOrgId'
      type: object
    bandwidthRespOrgIdsResponse:
      properties:
        AdminDataResponse:
          properties:
            BandwidthRespOrgIdList:
              $ref: '#/components/schemas/bandwidthRespOrgIdList'
          type: object
      type: object
    basicAuthenticationCredentials:
      properties:
        Password:
          description: >-
            The password will be stored encrypted and never returned via the
            API.
          type: string
        Username:
          maxLength: 100
          type: string
      type: object
    billingJobConfiguration:
      properties:
        BillingTaskName:
          example: MRC Task
          type: string
        DependentTask:
          example: MRC Dep Task
          type: string
        ExpectedDuration:
          example: 2
          type: integer
        ExpectedStartDuration:
          example: 5
          type: integer
        IsActive:
          example: true
          type: boolean
        ScheduledStartCron:
          example: 1 1 3 1 0
          type: string
      type: object
    billingJobConfigurations:
      items:
        $ref: '#/components/schemas/billingJobConfiguration'
      type: array
    billingReport:
      properties:
        BillingReportId:
          type: string
        BillingReportKind:
          $ref: '#/components/schemas/billingReportKind'
        CreatedDate:
          type: string
        DateRange:
          $ref: '#/components/schemas/dateRange'
        Description:
          type: string
        ReportStatus:
          type: string
        UserId:
          type: string
      type: object
    billingReportArchiveRetrievalErrorResponse:
      properties:
        BillingReportArchiveRetrievalResponse:
          $ref: '#/components/schemas/responseStatus'
      type: object
    billingReportArchiveRetrievalResponse:
      properties:
        BillingReportArchiveRetrievalResponse:
          properties:
            Description:
              type: string
            ReportStatus:
              type: string
          type: object
      type: object
    billingReportCreationErrorResponse:
      properties:
        BillingReportCreationResponse:
          $ref: '#/components/schemas/responseStatus'
      type: object
    billingReportCreationResponse:
      properties:
        BillingReportCreationResponse:
          properties:
            Description:
              type: string
            ReportStatus:
              type: string
      type: object
    billingReportKind:
      enum:
        - BDR
        - MDR
        - INVOICE
        - STMTBDR
        - DIDSNAP
        - DIDSNAP_MSG
        - RECORDINGBDR
        - RECORDINGSTMTBDR
        - TRANSCRIPTIONBDR
        - TRANSCRIPTIONSTMTBDR
        - CNAMBDR
        - CNAMSTMTBDR
        - CONFBDR
        - CONFSTMTBDR
        - TFPEERINGSTMTBDR
        - TNLOOKUPBDR
        - TNLOOKUPSTMTBDR
        - MSG_CAMPAIGN_REGISTRY_BDR
        - MSG_CAMPAIGN_CARRIER_ACTIVATION_BDR
        - AMDBDR
        - AMDSTMTBDR
        - SIPURIBDR
        - SIPURISTMTBDR
      type: string
    billingReportRetrievalErrorResponse:
      properties:
        BillingReportRetrievalResponse:
          $ref: '#/components/schemas/responseStatus'
      type: object
    billingReportRetrievalResponse:
      properties:
        BillingReportRetrievalResponse:
          properties:
            Description:
              type: string
            ReportStatus:
              type: string
          type: object
      type: object
    billingReportsRetrievalResponse:
      properties:
        BillingReportsRetrievalResponse:
          properties:
            BillingReportList:
              items:
                $ref: '#/components/schemas/billingReport'
              type: array
          type: object
      type: object
    blockedAccountId:
      properties:
        BlockedAccountId:
          properties:
            AccountId:
              type: string
          type: object
      type: object
    blockedAccountIdResponse:
      properties:
        AdminDataResponse:
          $ref: '#/components/schemas/blockedAccountId'
      type: object
    breakOutCountries:
      items:
        $ref: '#/components/schemas/country'
      type: array
    breakOutCountriesResponse:
      properties:
        AdminDataResponse:
          properties:
            BreakOutCountries:
              $ref: '#/components/schemas/breakOutCountries'
          type: object
      type: object
    breakOutCountryResponse:
      properties:
        AdminDataResponse:
          $ref: '#/components/schemas/country'
      type: object
    bulkRateCenterPayload:
      description: >-
        Payload returned when a new bulk coverage matrix task is created,
        containing basic task information and rate center coverage data.
      properties:
        coverageList:
          $ref: '#/components/schemas/rateCenterCoverageList'
        status:
          description: The current status of the bulk coverage matrix update task.
          enum:
            - PROCESSING
            - PARTIAL
            - COMPLETE
            - FAILED
          type: string
        taskId:
          description: The bulk coverage matrix update task id.
          example: b05de7e6-0cab-4c83-81bb-9379cba8efd0
          type: string
      type: object
    bulkRateCenterTaskPayload:
      description: >-
        Full bulk coverage matrix task information with complete task details
        and statuses of individual rate center coverages.
      properties:
        endTime:
          description: Timestamp of bulk rate center task completion.
          example: '2021-06-08 06:46:13.0'
          format: date-time
          type: string
        errorList:
          $ref: '#/components/schemas/rateCenterCoverageErrorList'
        failedRateCenterCoverageCount:
          description: >-
            The number of unsuccessfully created/updated rate center coverages
            during the task.
          example: 1
          maximum: 5000
          minimum: 0
          type: number
        startTime:
          description: Timestamp of bulk rate center task creation.
          example: '2021-06-08 06:45:13.0'
          format: date-time
          type: string
        status:
          description: The current status of the bulk coverage matrix update task.
          enum:
            - PROCESSING
            - PARTIAL
            - COMPLETE
            - FAILED
          type: string
        successList:
          $ref: '#/components/schemas/rateCenterCoverageList'
        successfulRateCenterCoverageCount:
          description: >-
            The number of successfully created/updated rate center coverages
            during the task.
          example: 3
          maximum: 5000
          minimum: 0
          type: number
        taskId:
          description: The bulk coverage matrix update task id.
          example: b05de7e6-0cab-4c83-81bb-9379cba8efd0
          type: string
        totalRateCenterCoverageCount:
          description: The total number of rate center coverages included for the task.
          example: 4
          maximum: 5000
          minimum: 1
          type: number
      type: object
    bwspidSystemValue:
      properties:
        Alias:
          type: string
        Id:
          type: integer
        RouteType:
          enum:
            - ON_NET
            - OFF_NET_US
            - EXTERNAL_CUSTOMER_OWNED
            - OFF_NET_CA
            - EXTERNAL_THIRD_PARTY
            - EXTERNAL_CANADIAN
            - TOLL_FREE
            - EXTERNAL_TOLL_FREE
          type: string
        Spid:
          type: integer
        Type:
          enum:
            - NPAC
            - NNID
          type: string
      required:
        - Type
        - RouteType
        - Spid
        - Alias
      type: object
    bwspidSystemValueResponse:
      properties:
        AdminDataResponse:
          properties:
            BwspidSystemValue:
              $ref: '#/components/schemas/bwspidSystemValue'
          type: object
      type: object
    bwspidSystemValues:
      items:
        properties:
          BwspidSystemValue:
            $ref: '#/components/schemas/bwspidSystemValue'
        type: object
      type: array
    bwspidSystemValuesResponse:
      properties:
        AdminDataResponse:
          properties:
            BwspidSystemValues:
              $ref: '#/components/schemas/bwspidSystemValues'
          type: object
      type: object
    callAdmissionControlSettings:
      properties:
        CPS:
          type: integer
        ConcurrentCalls:
          type: integer
        OutboundCallsDequeuedPerSecond:
          type: integer
      type: object
    callBackSubscriptionByEventTypeRequest:
      properties:
        CallbackSubscription:
          $ref: '#/components/schemas/callbackSubscription'
        EventType:
          enum:
            - MESSAGING_LOST
          type: string
      required:
        - EventType
      title: Callback subscription by event type
      type: object
    callBackSubscriptionByOrderTypeRequest:
      properties:
        CallbackSubscription:
          $ref: '#/components/schemas/callbackSubscription'
        OrderId:
          $ref: '#/components/schemas/subscriptionOrderId'
        OrderType:
          $ref: '#/components/schemas/subscriptionOrderType'
      title: Callback subscription by order type
      type: object
    callback:
      description: Callback url
      example: http://somehost.com/new-callback
      type: string
    callbackCredentials:
      description: >-
        Recommended these credentials will be used to when authenticating with
        the notification receiving server
      properties:
        BasicAuthentication:
          $ref: '#/components/schemas/basicAuthenticationCredentials'
      type: object
    callbackSubscription:
      properties:
        CallbackCredentials:
          $ref: '#/components/schemas/callbackCredentials'
        Expiry:
          description: >-
            The number of seconds after which to expire this subscription. Can
            be omitted from the request payload and defaults to 86400 seconds (1
            day). Typical values for your convenience are: 86400 - 1 day, 604800
            - 1 week, 2592000 - 1 month, 31536000 - 1 year, 315360000 - 10
            years.
          format: int64
          type: integer
        NumberFormat:
          default: E164
          description: >-
            Specifies whether numbers should be formatted in e164 format, or use
            legacy formatting. If Legacy is chosen, numbers with country code
            '+1' will be formatted as 10-digit and all other numbers will use
            e164 formatting. Can be omitted and defaults to E164.
          enum:
            - LEGACY
            - E164
          type: string
        Status:
          type: string
        URL:
          description: >-
            The URL that notifications should get POSTed to, HTTPS is highly
            recommended.  If using HTTPS, the certificate needs to be valid -
            not: expired, self-signed or using an Unauthorized CA.
          format: uri
          type: string
      type: object
    callerNameE911:
      description: >-
        CallerName that will be linked to TNs. This field is required in the
        case of a new address assignment
      maxLength: 50
      title: CallerName
      type: string
    checkPortabilityNonPortableNumber:
      description: A non-portable phone number and the reason why it isn't portable
      properties:
        countryCodeA3:
          $ref: '#/components/schemas/countryCodeA3String'
        phoneNumber:
          $ref: '#/components/schemas/phoneNumber'
        phoneNumberType:
          $ref: '#/components/schemas/phoneNumberType'
        reasons:
          items:
            $ref: '#/components/schemas/nonPortableReason'
          type: array
      type: object
    checkPortabilityPortableNumberGroup:
      description: >-
        A group of portable phone numbers, losing carrier, rate center, resp
        org, and other porting related information
      properties:
        complianceRequirements:
          items:
            $ref: '#/components/schemas/complianceRequirement'
          type: array
        countryCodeA3:
          $ref: '#/components/schemas/countryCodeA3'
        earliestEstimate:
          $ref: '#/components/schemas/earliestEstimate'
        losingCarrier:
          $ref: '#/components/schemas/losingCarrier'
        phoneNumberType:
          $ref: '#/components/schemas/phoneNumberType'
        phoneNumbers:
          items:
            $ref: '#/components/schemas/phoneNumber'
          type: array
        portType:
          $ref: '#/components/schemas/portTypeEnum'
        portingDocuments:
          items:
            $ref: '#/components/schemas/portingDocument'
          type: array
        rateCenter:
          $ref: '#/components/schemas/rateCenter'
        respOrg:
          $ref: '#/components/schemas/respOrg'
      type: object
    checkPortabilityRequestBody:
      properties:
        phoneNumbers:
          items:
            $ref: '#/components/schemas/phoneNumber'
          type: array
      type: object
    checkPortabilityResponseBody:
      description: A response containing a list of phone number portability results.
      nullable: true
      properties:
        data:
          $ref: '#/components/schemas/checkPortabilityResponseDetail'
        errors:
          items:
            $ref: '#/components/schemas/error'
          nullable: true
          type: array
        links:
          items:
            $ref: '#/components/schemas/link'
          nullable: true
          type: array
      required:
        - links
        - data
        - errors
      type: object
    checkPortabilityResponseDetail:
      description: >-
        Results of the portability check, broken down into portable and
        non-portable phone numbers
      properties:
        nonPortablePhoneNumbers:
          description: Non-portable phone numbers and reasons why they aren't portable
          items:
            $ref: '#/components/schemas/checkPortabilityNonPortableNumber'
          type: array
        portablePhoneNumbers:
          description: >-
            Groups of portable phone numbers and other porting related
            information, grouped by country, phone number type, port type, rate
            center, resp org, and losing carrier, if applicable.
          items:
            $ref: '#/components/schemas/checkPortabilityPortableNumberGroup'
          type: array
      type: object
    city:
      description: The city of the address.
      example: Berlin, Stadt
      title: City
      type: string
    cityWithCount:
      properties:
        City:
          type: string
        Count:
          type: integer
      type: object
    cityWithCountJson:
      properties:
        city:
          type: string
        count:
          type: integer
      type: object
    complianceRequirement:
      description: End user documentation needed for porting
      properties:
        name:
          description: Name of the required end-user document
          example: Proof of ID
          type: string
      type: object
    consecutiveBlockMetadata:
      properties:
        availableEndingRange:
          description: Last number in the available consecutive range (E.164)
          type: string
        availableQuantity:
          description: Count of numbers in this range
          type: integer
        availableStartingRange:
          description: First number in the available consecutive range (E.164)
          type: string
        phoneNumberType:
          description: Phone number type for this range
          example: GEOGRAPHIC
          type: string
        phoneNumbers:
          description: List of all numbers in the consecutive range
          example:
            - '+4424315790'
            - '+4424315791'
            - '+4424315792'
          items:
            type: string
          type: array
      type: object
    consecutiveBlocksSearchResultJson:
      additionalProperties: false
      description: Result wrapper for consecutive number search responses
      properties:
        metadata:
          description: Consecutive blocks of available numbers
          items:
            $ref: '#/components/schemas/consecutiveBlockMetadata'
          type: array
      required:
        - metadata
      type: object
    conventionalAddressDeletionE911Order:
      properties:
        E911Order:
          properties:
            CustomerOrderId:
              $ref: '#/components/schemas/customerOrderIdE911'
            DeleteTNSpecificE911Address:
              $ref: '#/components/schemas/deleteTNSpecificE911Address'
            TelephoneNumbers:
              description: >-
                A list of telephone numbers you need unlink from the street
                address
              items:
                properties:
                  TelephoneNumber:
                    type: string
                required:
                  - TelephoneNumber
              title: TelephoneNumber
              type: array
          required:
            - TelephoneNumbers
            - DeleteTNSpecificE911Address
          type: object
      title: CONVENTIONAL E911. TN/Address-deletion order
      type: object
    conventionalAddressProvisioningE911Order:
      properties:
        E911Order:
          properties:
            Address:
              properties:
                AddressLine2:
                  type: string
                AddressType:
                  type: string
                City:
                  type: string
                Country:
                  type: string
                County:
                  type: string
                HouseNumber:
                  type: string
                HouseSuffix:
                  type: string
                Latitude:
                  type: string
                Longitude:
                  type: string
                PlusFour:
                  type: string
                PostDirectional:
                  type: string
                PreDirectional:
                  type: string
                StateCode:
                  type: string
                StreetName:
                  type: string
                StreetSuffix:
                  type: string
                Zip:
                  type: string
              type: object
            CallerName:
              $ref: '#/components/schemas/callerNameE911'
            TelephoneNumbers:
              description: A list of telephone numbers you need link to the street address
              items:
                properties:
                  TelephoneNumber:
                    type: string
                required:
                  - TelephoneNumber
                title: TelephoneNumber
              type: array
          required:
            - Address
            - TelephoneNumbers
          type: object
      title: CONVENTIONAL E911. TN/Address-provisioning order
      type: object
    country:
      properties:
        Country:
          properties:
            Alpha3Code:
              type: string
            AuthRequired:
              type: boolean
            BillingEnabled:
              type: boolean
            CountryCode:
              type: integer
            Name:
              type: string
            PrefixDigits:
              items:
                properties:
                  Digits:
                    type: integer
                type: object
              type: array
          type: object
    countryCodeA3:
      description: Country code of the address in ISO 3166-1 alpha-3 format.
      example: USA
      title: Country Code
      type: string
      xml:
        name: CountryCodeA3
    countryCodeA3String:
      description: Country code in ISO 3166-1 alpha-3 format
      example: FRA
      type: string
    countryCoverage:
      properties:
        countryCodeA3:
          $ref: '#/components/schemas/countryCodeA3'
        phoneNumberType:
          $ref: '#/components/schemas/phoneNumberType'
        regions:
          items:
            $ref: '#/components/schemas/region'
          type: array
          xml:
            name: Regions
            wrapped: true
      type: object
    countryCoverageResponseSuccess:
      properties:
        data:
          $ref: '#/components/schemas/countryCoverages'
        errors:
          items:
            $ref: '#/components/schemas/error'
          nullable: true
          type: array
        links:
          example:
            - href: >-
                https://api.bandwidth.com/api/v2/coverage/countries?countryCodeA3=USA
              method: GET
              rel: self
          items:
            $ref: '#/components/schemas/link'
          type: array
      required:
        - links
        - data
        - errors
      title: Country Coverage Response
      type: object
    countryCoverages:
      items:
        $ref: '#/components/schemas/countryCoverage'
      type: array
    countrySetting:
      properties:
        additionalDetails:
          $ref: '#/components/schemas/additionalDetails'
        countryCodeA3:
          $ref: '#/components/schemas/countryCodeA3'
        features:
          description: List of features configured for the specified countryCodeA3
          items:
            properties:
              featureName:
                description: Feature Name
                example: Ordering
                type: string
                xml:
                  name: FeatureName
              isDisabled:
                description: Feature Status
                example: true
                type: boolean
                xml:
                  name: IsDisabled
            type: object
            xml:
              name: Feature
          type: array
          xml:
            name: Features
            wrapped: true
        notifiedOperator:
          $ref: '#/components/schemas/notifiedOperator'
        phoneNumberType:
          $ref: '#/components/schemas/phoneNumberType'
      type: object
      xml:
        name: CountrySetting
    countrySettings:
      items:
        $ref: '#/components/schemas/countrySetting'
      type: array
      xml:
        name: CountrySettings
        wrapped: true
    coverageMatrixEntry:
      properties:
        Abbreviation:
          description: A rate center's abbreviation.
          example: FARMVILLE
          type: string
        Id:
          description: A rate center coverage matrix id.
          example: 123
          type: number
        Lata:
          description: A rate center's LATA.
          example: 951
          type: number
        Lrn:
          description: A rate center's LRN.
          example: '+12529690000'
          type: string
        Region:
          description: A rate center's state.
          example: NC
          type: string
        SupportsLnp:
          description: Whether a rate center supports LNP.
          example: true
          type: boolean
        SupportsNewTns:
          description: Whether a rate center supports new TNs.
          example: true
          type: boolean
        TierId:
          description: A rate center's tier ID.
          example: 1
          maximum: 6
          minimum: 0
          type: number
        VendorId:
          description: A rate center's vendor ID.
          example: 49
          type: number
      type: object
    cpDateTimeFilterParam:
      description: Scheme for date & time query parameter
      example:
        gt: '2024-01-24T23:59:59Z'
        lt: '2024-01-24T00:00:00Z'
        sort: DESC
      properties:
        gt:
          format: date-time
          type: string
        lt:
          format: date-time
          type: string
        sort:
          $ref: '#/components/schemas/sort'
      title: DateTime Query Parameter
    cpStringFilterParam:
      description: Scheme for string query parameter
      example:
        contains: Dave
        sort: DESC
      properties:
        contains:
          type: string
        sort:
          $ref: '#/components/schemas/sort'
      title: String Query Parameter
    cpTotalCampaignsSortParam:
      description: Scheme for total number of campaigns sorting query parameter
      example:
        sort: DESC
      properties:
        sort:
          $ref: '#/components/schemas/sort'
      title: Total Campaigns Query Parameter
    createBadRequestError:
      properties:
        errors:
          items:
            properties:
              code:
                description: Error code
                example: '205617'
                type: string
              description:
                description: Error description.
                example: There was an issue with your request
                type: string
              id:
                description: Error id.
                example: optional-error-id
                type: string
              type:
                description: Error type.
                example: bad-request
                type: string
            type: object
          type: array
      title: createBadRequestError
      type: object
    createUpdateHostedMessagingDocumentResponse:
      properties:
        data:
          $ref: '#/components/schemas/hostedMessagingDocumentResponseData'
        errors:
          $ref: '#/components/schemas/errors'
        links:
          $ref: '#/components/schemas/createUpdateLinks'
      title: Document Response
      type: object
    createUpdateHostedVoiceDocumentResponse:
      properties:
        data:
          $ref: '#/components/schemas/hostedMessagingDocumentResponseData'
        errors:
          $ref: '#/components/schemas/errors'
        links:
          $ref: '#/components/schemas/createUpdateLinks'
      title: Document Response
      type: object
    createUpdateLinks:
      example:
        - href: /self-resource/{id}
          method: GET
          rel: self
        - href: /accounts/{accountId}/self-resource/{id}
          method: PUT
          rel: update
      items:
        $ref: '#/components/schemas/link'
      title: Links
      type: array
    createUpdatePortingDocumentResponse:
      properties:
        data:
          $ref: '#/components/schemas/portingDocumentResponseData'
        errors:
          $ref: '#/components/schemas/errors'
        links:
          $ref: '#/components/schemas/createUpdateLinks'
      title: Document Response
      type: object
    createdBy:
      description: Name or identifier of the user who created the resource
      example: Created user
      type: string
    createdDateTime:
      description: The date and time this object was created in ISO 8601 format
      example: '2024-03-11T04:09:25.399Z'
      type: string
    customReference:
      description: >
        A custom reference name.

        It can be used for your own reference to the item to easily identify one
        of your customers, requirements package, enduser etc.
      example: home_office
      maxLength: 100
      minLength: 1
      type: string
    customerOrderId:
      description: >-
        An optional customer-defined reference ID for this order. Not unique —
        Bandwidth applies no uniqueness constraint, so multiple orders may share
        the same value. Each order receives its own unique Bandwidth-assigned
        `orderId`. Only alphanumeric values, dashes, and spaces are allowed. Max
        length is 255 characters.
      maxLength: 255
      type: string
    customerOrderIdE911:
      description: >-
        Optional customer-defined reference ID for this order. Only alphanumeric
        values, dashes and spaces are allowed. Max length is 255 characters. Not
        unique — Bandwidth applies no uniqueness constraint, so multiple orders
        may share the same value. Each order receives its own unique
        Bandwidth-assigned `orderId`.
      maxLength: 255
      title: CustomerOrderId
      type: string
    customerProfile:
      description: A customer profile
      properties:
        accountId:
          example: '1234567'
          readOnly: true
          type: string
        addressId:
          $ref: '#/components/schemas/addressId'
        contact:
          $ref: '#/components/schemas/customerProfileContact'
        createdDate:
          example: '2023-12-31T23:59:59.999Z'
          format: date-time
          readOnly: true
          type: string
        id:
          example: 2YekXSSvsbyC7cHWnbV2Qv
          readOnly: true
          type: string
        modifiedDate:
          example: '2023-12-31T23:59:59.999Z'
          format: date-time
          readOnly: true
          type: string
        name:
          example: Acme, Inc.
          type: string
        softDeleted:
          description: >
            Has this profile been soft deleted? Deleted profiles do not appear
            in paginated APIs and external systems should not allow them to be
            associated to other assets.
          example: true
          type: boolean
        totalCampaigns:
          description: >-
            The total number of campaigns of all types associated with this
            profile
          example: 5
          readOnly: true
          type: integer
        version:
          example: 3
          readOnly: true
          type: integer
        website:
          example: https://acme.com/
          type: string
      required:
        - name
      type: object
    customerProfileContact:
      description: A customer profile contact
      properties:
        email:
          example: powers@acme.com
          type: string
        name:
          example: Tim Powers
          type: string
        phoneNumber:
          example: '+18885554545'
          type: string
      required:
        - name
    customerProfileErrorResponse:
      description: >-
        An error in a standard response. While the data property will be present
        in this response, it will always be `null`.
      properties:
        data:
          description: This property will always be empty for a successful response.
          nullable: true
          type: object
        errors:
          items:
            $ref: '#/components/schemas/customerProfileErrorResponseEntry'
          readOnly: true
          type: array
        links:
          items:
            $ref: '#/components/schemas/customerProfileLink'
          readOnly: true
          type: array
    customerProfileErrorResponseEntry:
      description: |
        One error resulting from a submitted request.
      properties:
        description:
          example: name cannot be null
          readOnly: true
          type: string
        source:
          description: >
            Keys in this map will be "pointer" for problems in JSON request
            bodies, or "parameter" if there is a problem in a query parameter.
          example:
            pointer: name
          readOnly: true
          type: object
        type:
          example: bad request
          readOnly: true
          type: string
    customerProfileHistoryEntry:
      description: A historical customer profile version with additional metadata.
      properties:
        data:
          $ref: '#/components/schemas/customerProfileHistoryEntryData'
        metadata:
          $ref: '#/components/schemas/customerProfileHistoryEntryMetadata'
      required:
        - metadata
        - data
    customerProfileHistoryEntryData:
      description: The content of a historical version of a customer profile.
      properties:
        accountId:
          example: '1234567'
          readOnly: true
          type: string
        addressId:
          $ref: '#/components/schemas/addressId'
        contact:
          $ref: '#/components/schemas/customerProfileContact'
        id:
          example: 2YekXSSvsbyC7cHWnbV2Qv
          readOnly: true
          type: string
        name:
          example: Acme, Inc.
          type: string
        website:
          example: https://acme.com/
          type: string
      required:
        - name
    customerProfileHistoryEntryMetadata:
      description: Metadata about a historical version of a customer profile.
      properties:
        createdDate:
          example: '2023-12-31T23:59:59.999Z'
          format: date-time
          readOnly: true
          type: string
        operation:
          enum:
            - CREATED
            - UPDATED
            - DELETED
          example: CREATED
          readOnly: true
          type: string
        userName:
          example: tpowers
          readOnly: true
          type: string
        version:
          example: 3
          readOnly: true
          type: integer
      required:
        - operation
        - userName
        - createdDate
        - version
    customerProfileHistoryListResponse:
      description: A list of customer profile history entries
      properties:
        data:
          items:
            $ref: '#/components/schemas/customerProfileHistoryEntry'
          readOnly: true
          type: array
        errors:
          description: The errors array will always be empty for this response.
          nullable: true
          type: array
        links:
          items:
            $ref: '#/components/schemas/customerProfileLink'
          readOnly: true
          type: array
        page:
          $ref: '#/components/schemas/customerProfilePage'
    customerProfileHistoryResponse:
      description: A customer profile history entry
      properties:
        data:
          $ref: '#/components/schemas/customerProfileHistoryEntry'
        errors:
          description: The errors array will always be empty for this response.
          nullable: true
          type: array
        links:
          items:
            $ref: '#/components/schemas/customerProfileLink'
          readOnly: true
          type: array
    customerProfileLink:
      description: Link to a resource
      properties:
        href:
          example: /api/v2/customerProfiles/2YekXSSvsbyC7cHWnbV2Qv
          readOnly: true
          type: string
        method:
          example: GET
          readOnly: true
          type: string
        rel:
          example: self
          readOnly: true
          type: string
    customerProfilePage:
      description: Information about the current page
      properties:
        pageNumber:
          readOnly: true
          type: number
        pageSize:
          readOnly: true
          type: number
        totalElements:
          readOnly: true
          type: number
        totalPages:
          readOnly: true
          type: number
    customerProfileResponse:
      description: The response to creation of a profile
      properties:
        data:
          $ref: '#/components/schemas/customerProfile'
        errors:
          description: The errors array will always be empty for successful responses.
          nullable: true
          type: array
        links:
          items:
            $ref: '#/components/schemas/customerProfileLink'
          readOnly: true
          type: array
    customerProfilesResponse:
      description: A list of customer profiles
      properties:
        data:
          items:
            $ref: '#/components/schemas/customerProfile'
          type: array
        errors:
          description: The errors array will always be empty for successful responses.
          nullable: true
          type: array
        links:
          items:
            $ref: '#/components/schemas/customerProfileLink'
          readOnly: true
          type: array
        page:
          $ref: '#/components/schemas/customerProfilePage'
    customerSipHeaderPayload:
      properties:
        CustomerSipHeader:
          properties:
            SipHeader:
              type: string
            Vendor:
              type: boolean
          type: object
      type: object
    customerSipHeaderWithId:
      properties:
        Id:
          type: string
        SipHeader:
          type: string
        Vendor:
          type: boolean
      type: object
    dateRange:
      properties:
        EndDate:
          type: string
        StartDate:
          type: string
      type: object
    deleteTNSpecificE911Address:
      description: DeleteTNSpecificE911Address is required and must be set to `true`.
      type: string
    deniedTollFreeNumber:
      properties:
        SomosErrorCode:
          type: string
        SomosErrorDescription:
          type: string
        TollFreeNumber:
          type: string
      type: object
    disconnectOrderTypeJson:
      properties:
        disconnectMode:
          default: NORMAL
          description: The severity of disconnect order.
          enum:
            - NORMAL
            - PURGE
          type: string
        phoneNumbers:
          description: A list of telephone numbers to disconnect.
          items:
            description: Telephone Number in E.164 format.
            type: string
          type: array
        protected:
          default: UNCHANGED
          description: Change protected status of telephones during disconnection.
          enum:
            - 'TRUE'
            - 'FALSE'
            - UNCHANGED
          type: string
      required:
        - phoneNumbers
      type: object
    disconnectPhoneNumberOrderErrorResponseJson:
      properties:
        errors:
          items:
            $ref: '#/components/schemas/errorJson'
          type: array
        order:
          properties:
            disconnectOrderType:
              $ref: '#/components/schemas/disconnectOrderTypeJson'
            orderCreateDate:
              example: '2019-11-19T14:06:57.254Z'
              format: date-time
              type: string
          type: object
      type: object
    disconnectPhoneNumberOrderFetchResponseJson:
      properties:
        customerOrderId:
          description: >-
            The customer-defined reference ID for this order, if one was
            provided at creation. Not unique — Bandwidth applies no uniqueness
            constraint, so multiple orders may share the same value. Each order
            has a distinct Bandwidth-assigned `orderId`.
          type: string
        disconnectOrderType:
          $ref: '#/components/schemas/disconnectOrderTypeJson'
        disconnectedPhoneNumbers:
          items:
            $ref: '#/components/schemas/phoneNumberJson'
          type: array
        id:
          type: string
        orderCreateDate:
          type: string
        orderStatus:
          type: string
      type: object
    disconnectPhoneNumberOrderJson:
      properties:
        customerOrderId:
          description: >-
            Optional customer-defined reference ID for this order. Only
            alphanumeric values, dashes and spaces are allowed. Not unique —
            Bandwidth applies no uniqueness constraint, so multiple orders may
            share the same value. Each order receives its own unique
            Bandwidth-assigned `orderId`.
          maxLength: 255
          type: string
        disconnectOrderType:
          $ref: '#/components/schemas/disconnectOrderTypeJson'
      type: object
    disconnectPhoneNumberOrderResponseJson:
      properties:
        createdByUser:
          type: string
        customerOrderId:
          description: >-
            The customer-defined reference ID for this order, if one was
            provided at creation. Not unique — Bandwidth applies no uniqueness
            constraint, so multiple orders may share the same value. Each order
            has a distinct Bandwidth-assigned `orderId`.
          type: string
        disconnectOrderType:
          $ref: '#/components/schemas/disconnectOrderTypeJson'
        id:
          type: string
        orderCreateDate:
          type: string
        orderStatus:
          type: string
      type: object
    disconnectTelephoneNumberOrder:
      properties:
        DisconnectTelephoneNumberOrder:
          properties:
            CustomerOrderId:
              description: >-
                Optional customer-defined reference ID for this order. Only
                alphanumeric values, dashes and spaces are allowed. Max length
                is 255 characters. Not unique — Bandwidth applies no uniqueness
                constraint, so multiple orders may share the same value. Each
                order receives its own unique Bandwidth-assigned `orderId`.
              maxLength: 255
              type: string
            DisconnectTelephoneNumberOrderType:
              $ref: '#/components/schemas/disconnectTelephoneNumberOrderType'
          type: object
      type: object
    disconnectTelephoneNumberOrderErrorResponse:
      properties:
        DisconnectTelephoneNumberOrderResponse:
          properties:
            ErrorList:
              items:
                properties:
                  Error:
                    properties:
                      Code:
                        type: integer
                      Description:
                        type: string
                    type: object
              type: array
            orderRequest:
              properties:
                DisconnectTelephoneNumberOrderType:
                  $ref: '#/components/schemas/disconnectTelephoneNumberOrderType'
                OrderCreateDate:
                  example: '2019-11-19T14:06:57.254Z'
                  format: date-time
                  type: string
              type: object
          type: object
      type: object
    disconnectTelephoneNumberOrderFetchResponse:
      properties:
        DisconnectTelephoneNumberOrderResponse:
          properties:
            DisconnectedTelephoneNumberList:
              items:
                properties:
                  TelephoneNumber:
                    $ref: '#/components/schemas/telephoneNumber'
              type: array
            OrderStatus:
              type: string
            orderRequest:
              $ref: '#/components/schemas/orderRequest'
          type: object
      type: object
    disconnectTelephoneNumberOrderResponse:
      properties:
        DisconnectTelephoneNumberOrderResponse:
          properties:
            orderRequest:
              $ref: '#/components/schemas/orderRequest'
          type: object
      type: object
    disconnectTelephoneNumberOrderType:
      properties:
        DisconnectMode:
          default: NORMAL
          description: The severity of disconnect order.
          enum:
            - NORMAL
            - PURGE
          type: string
        Protected:
          default: UNCHANGED
          description: Change protected status of telephones during disconnection.
          enum:
            - 'TRUE'
            - 'FALSE'
            - UNCHANGED
          type: string
        TelephoneNumberList:
          description: A list of telephone numbers to disconnect.
          items:
            $ref: '#/components/schemas/telephoneNumber'
          type: array
      required:
        - TelephoneNumberList
      type: object
    documentAdminRequest:
      properties:
        status:
          $ref: '#/components/schemas/documentStatusDefault'
      title: Document Admin Request
      type: object
    documentContentType:
      description: Document Content Type
      example: application/pdf
      type: string
    documentDescription:
      description: Description about the document
      example: Letter of Authorization
      type: string
    documentId:
      description: Unique identifier of the document
      example: daa9dd0f-de97-4103-8530-b31bf4be8fc0
      format: uuid
      type: string
    documentStatus:
      description: >-
        Document Statuses. Values - DRAFT, SUBMITTED, PROCESSING, VERIFIED,
        VERIFICATION_FAILED
      example: SUBMITTED
      type: string
    documentStatusDefault:
      description: Document Statuses. Values - PENDING_VALIDATION, VALID, INVALID
      example: VALID
      type: string
    documentType:
      description: Unique name representing the type of document
      example: LOA
      type: string
    e911:
      properties:
        Address:
          $ref: '#/components/schemas/address'
        CallerName:
          type: string
        EmergencyNotificationGroup:
          $ref: '#/components/schemas/emergencyNotificationGroup'
      type: object
    e911Address:
      properties:
        AddressLine2:
          type: string
        AddressType:
          type: string
        City:
          type: string
        Country:
          type: string
        County:
          type: string
        HouseNumber:
          type: string
        HousePrefix:
          type: string
        HouseSuffix:
          type: string
        Latitude:
          type: string
        Longitude:
          type: string
        PlusFour:
          type: string
        PostDirectional:
          type: string
        PreDirectional:
          type: string
        StateCode:
          type: string
        StreetName:
          type: string
        StreetSuffix:
          type: string
        Zip:
          type: string
      type: object
    e911AlternateEndUserIdentifier:
      properties:
        CallbackNumber:
          type: string
        CallerName:
          type: string
        Identifier:
          type: string
        LocationId:
          type: string
        PIDFLOEnabled:
          type: boolean
        PreferredLanguage:
          enum:
            - en
            - fr
            - Incorrect value
          type: string
      type: object
    e911OrderFetchResponse:
      properties:
        E911Order:
          properties:
            AccountId:
              type: integer
            AdditionalAddress:
              $ref: '#/components/schemas/address'
            Address:
              $ref: '#/components/schemas/e911Address'
            AlternateEndUserIdentifiers:
              items:
                $ref: '#/components/schemas/alternateEndUserIdentifier'
              type: array
            CallerName:
              type: string
            CreatedByUser:
              type: string
            CustomerId:
              type: string
            ErrorList:
              items:
                $ref: '#/components/schemas/error'
              type: array
            LastModifiedDate:
              type: string
            OrderCreateDate:
              type: string
            OrderId:
              type: string
            OrderType:
              type: string
            ProcessingStatus:
              type: string
            TelephoneNumbers:
              items:
                $ref: '#/components/schemas/telephoneNumber'
              type: array
          type: object
      type: object
    e911OrderPayload:
      properties:
        AdditionalAddresses:
          items:
            $ref: '#/components/schemas/e911Address'
          type: array
        Address:
          $ref: '#/components/schemas/e911Address'
        AlternateEndUserIdentifiers:
          items:
            $ref: '#/components/schemas/e911AlternateEndUserIdentifier'
          type: array
        CallerName:
          type: string
        CustomerOrderId:
          description: >-
            The customer-defined reference ID for this order, if one was
            provided at creation. Not unique — Bandwidth applies no uniqueness
            constraint, so multiple orders may share the same value. Each order
            has a distinct Bandwidth-assigned `orderId`.
          type: string
        LocationId:
          type: string
        PeerId:
          type: integer
        SiteId:
          type: integer
        TelephoneNumbers:
          items:
            $ref: '#/components/schemas/telephoneNumber'
          type: array
      type: object
    e911OrderResponse:
      properties:
        E911OrderResponse:
          properties:
            E911Order:
              $ref: '#/components/schemas/e911OrderPayload'
          type: object
      type: object
    e911Orders:
      properties:
        E911Orders:
          properties:
            E911OrderSummary:
              items:
                properties:
                  CountOfTNs:
                    type: integer
                  OrderDate:
                    type: string
                  OrderId:
                    type: string
                  OrderStatus:
                    type: string
                  OrderType:
                    type: string
                  accountId:
                    type: integer
                  lastModifiedDate:
                    type: string
                  userId:
                    type: string
              type: array
            TotalCount:
              type: integer
          type: object
      type: object
    e911Settings:
      properties:
        EVSCredentials:
          $ref: '#/components/schemas/eVSCredentials'
        Hosts:
          $ref: '#/components/schemas/hosts'
      type: object
    e911SettingsResponse:
      properties:
        E911Settings:
          $ref: '#/components/schemas/e911Settings'
      type: object
    eVSCredential:
      properties:
        EVSAccountId:
          type: integer
        RouteType:
          type: string
      type: object
    eVSCredentials:
      properties:
        EVSCredentials:
          items:
            $ref: '#/components/schemas/eVSCredential'
          type: array
      type: object
    earliestEstimate:
      description: The estimated date when a port can be completed complete
      example: '2025-01-13T16:30:00Z'
      format: string
    edgeManagementSettings:
      properties:
        HttpVoice:
          $ref: '#/components/schemas/httpVoice'
        ProductSpecificAccessRestrictions:
          items:
            $ref: '#/components/schemas/accessRestriction'
          type: array
        SbcSettings:
          $ref: '#/components/schemas/sbcSettings'
        TollFreePeeringPartner:
          $ref: '#/components/schemas/tollFreePeeringPartner'
        WebRtc:
          $ref: '#/components/schemas/webRtc'
      type: object
    edgeManagementSettingsResponse:
      properties:
        EdgeManagementSettings:
          $ref: '#/components/schemas/edgeManagementSettings'
      type: object
    eepAeuiIds:
      description: >-
        A container of emergency endpoints that are of type AEUI. This element
        may be omitted if none of the emergency endpoints to be associated or
        dissociated are Alternate End User Identities.
      properties:
        Identifier:
          description: >-
            A unique identifier for the AEUI representing an emergency endpoint
            in the ListOfEepAeuiIds. The list may consist of a single AEUI ID if
            desired.
          maxLength: 200
          type: string
      type: object
    eepTns:
      description: >-
        A container of emergency endpoints that are of type TN. This element may
        be omitted if none of the emergency endpoints to be associated or
        dissociated are telephone numbers.
      properties:
        TelephoneNumber:
          description: >-
            A 10-digit telephone number representing an emergency endpoint in
            the ListOfEepTns. The list may consist of a single TN if desired.
          maxLength: 10
          type: string
      type: object
    eepToEngAssociations:
      properties:
        EepAeuiIds:
          properties:
            Identifier:
              items:
                $ref: '#/components/schemas/identifier'
              type: array
          type: object
        EepTns:
          properties:
            TelephoneNumber:
              items:
                $ref: '#/components/schemas/telephoneNumber'
              type: array
          type: object
        Endpoints:
          properties:
            Identifier:
              items:
                $ref: '#/components/schemas/identifier'
              type: array
          type: object
      type: object
    emailSubscription:
      properties:
        DigestRequested:
          enum:
            - NONE
            - DAILY
          type: string
        Email:
          type: string
      required:
        - DigestRequested
      type: object
    emailSubscriptionByEventTypeRequest:
      properties:
        EmailSubscription:
          $ref: '#/components/schemas/emailSubscription'
        EventType:
          enum:
            - MESSAGING_LOST
          type: string
      required:
        - EventType
      title: Email subscription by event type
      type: object
    emailSubscriptionByOrderTypeRequest:
      properties:
        EmailSubscription:
          $ref: '#/components/schemas/emailSubscription'
        OrderId:
          $ref: '#/components/schemas/subscriptionOrderId'
        OrderType:
          $ref: '#/components/schemas/subscriptionOrderType'
      required:
        - OrderType
      title: Email subscription by order type
      type: object
    emergencyGroupIdentifier:
      description: >-
        The mandatory identifier that uniquely identifies the emergency
        notification group to which emergency endpoints are being associated.
        This value is assigned by the system when the emergency notification
        group is created.
      maxLength: 255
      type: string
    emergencyNotificationEndpointAssociations:
      description: Emergency Notification Endpoint associations
      properties:
        AddedAssociations:
          $ref: '#/components/schemas/addedAssociations'
        EmergencyNotificationGroup:
          $ref: '#/components/schemas/emergencyNotificationGroupWithIdOnly'
      type: object
    emergencyNotificationEndpointOrder:
      description: Emergency Notification Endpoint order
      properties:
        CreatedBy:
          $ref: '#/components/schemas/createdBy'
        CustomerOrderId:
          $ref: '#/components/schemas/customerOrderId'
        EmergencyNotificationEndpointAssociations:
          $ref: '#/components/schemas/emergencyNotificationEndpointAssociations'
        OrderCreatedDate:
          $ref: '#/components/schemas/orderCreatedDate'
        OrderId:
          $ref: '#/components/schemas/orderId'
        ProcessingStatus:
          $ref: '#/components/schemas/processingStatus'
      type: object
    emergencyNotificationEndpointOrderForAddAssociation:
      properties:
        AddedAssociations:
          description: >-
            Included when emergency endpoint to emergency notification group
            associations are to be created. Only AddedAssociations or Deleted
            Associations may be included in a given order.
          properties:
            EepToEngAssociations:
              description: >-
                Mandatory container for the list of TNs and AEUI identifiers to
                be associated or dissociated with the emergency notification
                group
              properties:
                EepAeuiIds:
                  $ref: '#/components/schemas/eepAeuiIds'
                EepTns:
                  $ref: '#/components/schemas/eepTns'
              type: object
          type: object
        CustomerOrderId:
          $ref: '#/components/schemas/customerOrderId'
        EmergencyNotificationGroup:
          description: Emergency notification group.
          properties:
            Identifier:
              $ref: '#/components/schemas/emergencyGroupIdentifier'
          type: object
      required:
        - EmergencyNotificationGroup
        - AddedAssociations
      title: >-
        Creating an order to adding emergency endpoint associations from an
        emergency notification group 
      type: object
    emergencyNotificationEndpointOrderForRemoveAssociation:
      properties:
        CustomerOrderId:
          description: >-
            An optional customer-defined reference ID for this order. Not unique
            — Bandwidth applies no uniqueness constraint, so multiple orders may
            share the same value. Each order receives its own unique
            Bandwidth-assigned `orderId`. Only alphanumeric values, dashes, and
            spaces are allowed. Max length is 255 characters.
          maxLength: 255
          type: string
        DeletedAssociations:
          description: >-
            Included when emergency endpoint to emergency notification group
            associations are to be removed. Only AddedAssociations or Deleted
            Associations may be included in a given order.
          properties:
            EepToEngAssociations:
              description: >-
                Mandatory container for the list of TNs and AEUI identifiers to
                be associated or dissociated with the emergency notification
                group
              properties:
                EepAeuiIds:
                  $ref: '#/components/schemas/eepAeuiIds'
                EepTns:
                  $ref: '#/components/schemas/eepTns'
              type: object
          type: object
        EmergencyNotificationGroup:
          description: Emergency notification group.
          properties:
            Identifier:
              $ref: '#/components/schemas/emergencyGroupIdentifier'
          type: object
      required:
        - EmergencyNotificationGroup
        - AddedAssociations
      title: >-
        Creating an order to removing emergency endpoint associations from an
        emergency notification group 
      type: object
    emergencyNotificationEndpointOrderResponse:
      description: Emergency Notification Endpoint Order Response
      properties:
        EmergencyNotificationEndpointOrder:
          $ref: '#/components/schemas/emergencyNotificationEndpointOrder'
      type: object
    emergencyNotificationEndpointOrdersResponse:
      properties:
        EmergencyNotificationEndpointOrders:
          description: Emergency Notification Endpoint Order list
          properties:
            EmergencyNotificationEndpointOrder:
              $ref: '#/components/schemas/emergencyNotificationEndpointOrder'
          type: object
        Links:
          $ref: '#/components/schemas/links'
      title: Emergency Notification Endpoint Order Response
      type: object
    emergencyNotificationGroup:
      properties:
        CreatedDate:
          type: string
        Description:
          type: string
        EepToEngAssociations:
          $ref: '#/components/schemas/eepToEngAssociations'
        EmergencyNotificationRecipients:
          $ref: '#/components/schemas/emergencyNotificationRecipients'
        EndpointCount:
          format: int32
          type: integer
        Identifier:
          type: string
        ModifiedBy:
          type: string
        ModifiedDate:
          type: string
      type: object
    emergencyNotificationGroupOrder:
      description: Emergency Notification Group order.
      properties:
        AddedEmergencyNotificationGroup:
          $ref: '#/components/schemas/addedEmergencyNotificationGroupWithId'
        CreatedBy:
          $ref: '#/components/schemas/createdBy'
        CustomerOrderId:
          $ref: '#/components/schemas/customerOrderId'
        OrderCreatedDate:
          $ref: '#/components/schemas/orderCreatedDate'
        OrderId:
          $ref: '#/components/schemas/orderId'
        ProcessingStatus:
          $ref: '#/components/schemas/processingStatus'
      type: object
    emergencyNotificationGroupOrderForAddGroup:
      properties:
        AddedEmergencyNotificationGroup:
          $ref: '#/components/schemas/addedEmergencyNotificationGroup'
        CustomerOrderId:
          $ref: '#/components/schemas/customerOrderId'
      required:
        - AddedEmergencyNotificationGroup
        - AddedEmergencyNotificationRecipients
        - EmergencyNotificationRecipient
        - Identifier
      title: Creating a new emergency notification group
      type: object
    emergencyNotificationGroupOrderForDeleteGroup:
      properties:
        CustomerOrderId:
          $ref: '#/components/schemas/customerOrderId'
        DeletedEmergencyNotificationGroup:
          description: >-
            Indicates that the order is to delete an emergency notification
            group.
          properties:
            Identifier:
              $ref: '#/components/schemas/recipientIdentifier'
          type: object
      required:
        - DeletedEmergencyNotificationGroup
        - Identifier
      title: Deleting an emergency notification group
      type: object
    emergencyNotificationGroupOrderForUpdateGroup:
      properties:
        ModifiedEmergencyNotificationGroup:
          description: >-
            Indicates that the order is to modify an emergency notification
            group.
          properties:
            Description:
              description: >-
                A mandatory 200 character description of the Emergency
                Notification Group. The contents of this field are freeform, but
                ideally should describe the set of endpoints that are being
                grouped together for the purpose of having the same emergency
                notification recipients. E.g. Occupants of building 5 main
                campus.
              maxLength: 200
              type: string
            Identifier:
              $ref: '#/components/schemas/recipientIdentifier'
          type: object
      required:
        - ModifiedEmergencyNotificationGroup
        - Identifier
      title: Updating an emergency notification group
      type: object
    emergencyNotificationGroupOrderForUpdateGroupByAddingRecipient:
      properties:
        ModifiedEmergencyNotificationGroup:
          description: >-
            Indicates that the order is to modify an emergency notification
            group.
          properties:
            AddedEmergencyNotificationRecipients:
              description: >-
                Indicates that emergency notification recipients are being added
                to the emergency notification group.
              properties:
                EmergencyNotificationRecipient:
                  $ref: '#/components/schemas/emergencyNotificationRecipientWithId'
              type: object
            Identifier:
              $ref: '#/components/schemas/recipientIdentifier'
          type: object
      required:
        - ModifiedEmergencyNotificationGroup
        - AddedEmergencyNotificationRecipients
        - EmergencyNotificationRecipient
        - Identifier
      title: >-
        Updating an emergency notification group by adding emergency
        notification recipients
      type: object
    emergencyNotificationGroupOrderForUpdateGroupByRemovingRecipient:
      properties:
        ModifiedEmergencyNotificationGroup:
          description: >-
            Indicates that the order is to modify an emergency notification
            group.
          properties:
            DeletedEmergencyNotificationRecipients:
              description: >-
                Indicates that emergency notification recipients are being
                removed from the emergency notification group.
              properties:
                EmergencyNotificationRecipient:
                  $ref: '#/components/schemas/emergencyNotificationRecipientWithId'
              type: object
            Identifier:
              $ref: '#/components/schemas/recipientIdentifier'
          type: object
      required:
        - ModifiedEmergencyNotificationGroup
        - DeletedEmergencyNotificationRecipients
        - EmergencyNotificationRecipient
        - Identifier
      title: >-
        Updating an emergency notification group by removing emergency
        notification recipients
      type: object
    emergencyNotificationGroupOrderResponse:
      properties:
        EmergencyNotificationGroupOrder:
          $ref: '#/components/schemas/emergencyNotificationGroupOrder'
      title: Emergency Notification Group Order Response
      type: object
    emergencyNotificationGroupOrdersResponse:
      properties:
        EmergencyNotificationGroupOrders:
          description: List of Emergency Notification Group orders.
          properties:
            EmergencyNotificationGroupOrder:
              $ref: '#/components/schemas/emergencyNotificationGroupOrder'
          type: object
        Links:
          $ref: '#/components/schemas/links'
      title: Emergency Notification Group Orders Response
      type: object
    emergencyNotificationGroupResponse:
      properties:
        EmergencyNotificationGroup:
          $ref: '#/components/schemas/emergencyNotificationGroup'
      title: Emergency Notification Group Response
      type: object
    emergencyNotificationGroupWithIdOnly:
      description: Emergency notification group.
      properties:
        Identifier:
          $ref: '#/components/schemas/emergencyGroupIdentifier'
      type: object
    emergencyNotificationGroupsResponse:
      properties:
        EmergencyNotificationGroups:
          description: Emergency notification group.
          properties:
            EmergencyNotificationGroup:
              $ref: '#/components/schemas/emergencyNotificationGroup'
          type: object
        Links:
          $ref: '#/components/schemas/links'
      title: Emergency Notification Groups Response
      type: object
    emergencyNotificationRecipient:
      properties:
        Callback:
          $ref: '#/components/schemas/callback'
        CreatedDate:
          type: string
        Description:
          type: string
        EmailAddress:
          type: string
        GroupCount:
          type: string
        Identifier:
          type: string
        LastModifiedDate:
          type: string
        Sms:
          properties:
            TelephoneNumber:
              items:
                $ref: '#/components/schemas/telephoneNumber'
              type: array
          type: object
        Tts:
          properties:
            TelephoneNumber:
              items:
                $ref: '#/components/schemas/telephoneNumber'
              type: array
          type: object
        Type:
          type: string
        UpdatedBy:
          type: string
      type: object
    emergencyNotificationRecipientCallback:
      properties:
        Callback:
          $ref: '#/components/schemas/recipientCallback'
        Description:
          $ref: '#/components/schemas/notificationRecipientDescription'
        Type:
          enum:
            - CALLBACK
          type: string
      required:
        - Type
        - Callback
      title: Emergency notification recipient for Callback type
      type: object
    emergencyNotificationRecipientEmail:
      properties:
        Description:
          $ref: '#/components/schemas/notificationRecipientDescription'
        EmailAddress:
          $ref: '#/components/schemas/recipientEmailAddress'
        Type:
          enum:
            - EMAIL
          type: string
      required:
        - Type
        - EmailSubscription
      title: Emergency notification recipient for Email type
      type: object
    emergencyNotificationRecipientResponseWithCallback:
      properties:
        EmergencyNotificationRecipient:
          $ref: '#/components/schemas/emergencyNotificationRecipientWithCallback'
      title: Emergency Notification Recipient Response with Callback
      type: object
    emergencyNotificationRecipientResponseWithEmail:
      properties:
        EmergencyNotificationRecipient:
          $ref: '#/components/schemas/emergencyNotificationRecipientWithEmail'
      title: Emergency Notification Recipient Response With Email
      type: object
    emergencyNotificationRecipientResponseWithSms:
      properties:
        EmergencyNotificationRecipient:
          $ref: '#/components/schemas/emergencyNotificationRecipientWithSms'
      title: Emergency Notification Recipient Response with SMS
      type: object
    emergencyNotificationRecipientResponseWithTts:
      properties:
        EmergencyNotificationRecipient:
          $ref: '#/components/schemas/emergencyNotificationRecipientWithTts'
      title: Emergency Notification Recipient Response with TTS
      type: object
    emergencyNotificationRecipientSms:
      properties:
        Description:
          $ref: '#/components/schemas/notificationRecipientDescription'
        SMS:
          $ref: '#/components/schemas/recipientSms'
        Type:
          enum:
            - SMS
          type: string
      required:
        - Type
        - SMS
      title: Emergency notification recipient for SMS type
      type: object
    emergencyNotificationRecipientTts:
      properties:
        Description:
          $ref: '#/components/schemas/notificationRecipientDescription'
        TTS:
          $ref: '#/components/schemas/recipientTTS'
        Type:
          enum:
            - TTS
          type: string
      required:
        - Type
        - TTS
      title: Emergency notification recipient for TTS type
      type: object
    emergencyNotificationRecipientWithCallback:
      description: Emergency Notification Recipient with callback
      properties:
        Callback:
          $ref: '#/components/schemas/recipientCallback'
        CreatedDate:
          $ref: '#/components/schemas/recipientCreatedDate'
        Description:
          $ref: '#/components/schemas/notificationRecipientDescription'
        Identifier:
          $ref: '#/components/schemas/recipientIdentifier'
        LastModifiedDate:
          $ref: '#/components/schemas/recipientLastModifiedDate'
        Type:
          enum:
            - CALLBACK
          type: string
      type: object
    emergencyNotificationRecipientWithEmail:
      description: Emergency Notification Recipient with email
      properties:
        CreatedDate:
          $ref: '#/components/schemas/recipientCreatedDate'
        Description:
          $ref: '#/components/schemas/notificationRecipientDescription'
        EmailAddress:
          $ref: '#/components/schemas/recipientEmailAddress'
        Identifier:
          $ref: '#/components/schemas/recipientIdentifier'
        LastModifiedDate:
          $ref: '#/components/schemas/recipientLastModifiedDate'
        Type:
          enum:
            - EMAIL
          type: string
      type: object
    emergencyNotificationRecipientWithId:
      description: An emergency notification recipient.
      properties:
        Identifier:
          description: >-
            The identifier that uniquely identifies an emergency notification
            recipient. This identifier was assigned when the emergency
            notification recipient was created. A given emergency notification
            recipient may be associated with only one emergency notification
            group.
          maxLength: 255
          type: string
      type: object
    emergencyNotificationRecipientWithSms:
      description: Emergency Notification Recipient with sms.
      properties:
        CreatedDate:
          $ref: '#/components/schemas/recipientCreatedDate'
        Description:
          $ref: '#/components/schemas/notificationRecipientDescription'
        Identifier:
          $ref: '#/components/schemas/recipientIdentifier'
        Sms:
          $ref: '#/components/schemas/recipientSms'
        lastModifiedDate:
          $ref: '#/components/schemas/recipientLastModifiedDate'
        type:
          enum:
            - SMS
          type: string
      type: object
    emergencyNotificationRecipientWithTts:
      description: Emergency Notification Recipient with tts.
      properties:
        CreatedDate:
          $ref: '#/components/schemas/recipientCreatedDate'
        Description:
          $ref: '#/components/schemas/notificationRecipientDescription'
        Identifier:
          $ref: '#/components/schemas/recipientIdentifier'
        LastModifiedDate:
          $ref: '#/components/schemas/recipientLastModifiedDate'
        TTS:
          $ref: '#/components/schemas/recipientTTS'
        Type:
          enum:
            - TTS
          type: string
      type: object
    emergencyNotificationRecipients:
      properties:
        EmergencyNotificationRecipient:
          items:
            $ref: '#/components/schemas/emergencyNotificationRecipient'
          type: array
      type: object
    emergencyNotificationRecipientsResponseWithCallback:
      properties:
        EmergencyNotificationRecipients:
          description: List of Emergency Notification Recipients.
          properties:
            EmergencyNotificationRecipient:
              $ref: '#/components/schemas/emergencyNotificationRecipientWithCallback'
          type: object
        Links:
          $ref: '#/components/schemas/links'
      title: Emergency Notification Recipients Response with Callback
      type: object
    emergencyNotificationRecipientsResponseWithEmail:
      properties:
        EmergencyNotificationRecipients:
          description: List of Emergency Notification Recipients.
          properties:
            EmergencyNotificationRecipient:
              $ref: '#/components/schemas/emergencyNotificationRecipientWithEmail'
          type: object
        Links:
          $ref: '#/components/schemas/links'
      title: Emergency Notification Recipients Response With Email
      type: object
    emergencyNotificationRecipientsResponseWithSms:
      properties:
        EmergencyNotificationRecipients:
          description: List of Emergency Notification Recipients.
          properties:
            EmergencyNotificationRecipient:
              $ref: '#/components/schemas/emergencyNotificationRecipientWithSms'
          type: object
        Links:
          $ref: '#/components/schemas/links'
      title: Emergency Notification Recipients Response with SMS
      type: object
    emergencyNotificationRecipientsResponseWithTts:
      properties:
        EmergencyNotificationRecipients:
          description: List of Emergency Notification Recipients.
          properties:
            EmergencyNotificationRecipient:
              $ref: '#/components/schemas/emergencyNotificationRecipientWithTts'
          type: object
        Links:
          $ref: '#/components/schemas/links'
      title: Emergency Notification Recipients Response with TTS
      type: object
    error:
      properties:
        code:
          $ref: '#/components/schemas/errorCode'
        description:
          $ref: '#/components/schemas/errorDescription'
        id:
          description: A unique identifier for this particular instance of this problem
          example: optional-error-id
          type: string
        meta:
          description: >-
            A meta object containing application-specific information or
            non-standard metadata about the error
          type: object
        source:
          $ref: '#/components/schemas/errorSource'
        type:
          $ref: '#/components/schemas/errorType'
      required:
        - code
        - description
      title: Error
      type: object
    errorCode:
      description: >-
        An application-specific error code for services with extensive error
        scenarios to supplement `description`
      example: 51130
      format: int32
      minimum: 4
      type: integer
    errorCodeJson:
      description: >-
        An application-specific error code for services with extensive error
        scenarios to supplement `description`
      example: 51130
      format: int32
      minimum: 4
      type: integer
    errorDescription:
      description: >-
        A human-readable explanation that SHOULD be specific to this occurrence
        of the problem
      example: There was an issue with a field in your request body
      type: string
    errorDescriptionJson:
      description: >-
        A human-readable explanation that SHOULD be specific to this occurrence
        of the problem
      example: There was an issue with a field in your request body
      type: string
    errorJson:
      properties:
        code:
          $ref: '#/components/schemas/errorCodeJson'
        description:
          $ref: '#/components/schemas/errorDescriptionJson'
        id:
          description: A unique identifier for this particular instance of this problem
          example: optional-error-id
          type: string
        meta:
          description: >-
            A meta object containing application-specific information or
            non-standard metadata about the error
          type: object
        source:
          $ref: '#/components/schemas/errorSourceJson'
        type:
          $ref: '#/components/schemas/errorTypeJson'
      required:
        - code
        - description
      title: Error
      type: object
    errorSource:
      properties:
        field:
          description: A string indicating which request body field caused the error
          example: someField
          type: string
        header:
          description: A string indicating which header field caused the error
          example: someHeader
          type: string
        parameter:
          description: A string indicating which URI query parameter caused the error
          example: someParameter
          type: string
        reference:
          description: >-
            A string that references a resource ID or path to the resource (or
            non-existent resource) causing the error
          example: /some/reference
          type: string
      title: Error Source
      type: object
    errorSourceJson:
      properties:
        field:
          description: A string indicating which request body field caused the error
          example: someField
          type: string
        header:
          description: A string indicating which header field caused the error
          example: someHeader
          type: string
        parameter:
          description: A string indicating which URI query parameter caused the error
          example: someParameter
          type: string
        reference:
          description: >-
            A string that references a resource ID or path to the resource (or
            non-existent resource) causing the error
          example: /some/reference
          type: string
      title: Error Source
      type: object
    errorType:
      description: >-
        A short, human-readable summary of the problem that SHOULD NOT change
        from occurrence to occurrence of the problem
      example: REQUEST_ERROR
      type: string
    errorTypeJson:
      description: >-
        A short, human-readable summary of the problem that SHOULD NOT change
        from occurrence to occurrence of the problem
      example: REQUEST_ERROR
      type: string
    errors:
      example: []
      items:
        $ref: '#/components/schemas/error'
      nullable: true
      title: Errors
      type: array
    fields:
      additionalProperties:
        anyOf:
          - type: string
      description: >-
        Field is a key value pair of attribute name and value. All Date or
        Number type values should be provided as a 'string'. Format for the Date
        type is YYYY-MM-DD.
      example:
        firstName: First Name
        issueDate: '2020-11-23'
        validity: '120'
      title: Fields
      type: object
    fileData:
      properties:
        FileMetaData:
          $ref: '#/components/schemas/fileMetaData'
        FileName:
          type: string
      type: object
    fileDataJson:
      properties:
        fileMetaData:
          $ref: '#/components/schemas/fileMetaDataJson'
        fileName:
          type: string
      type: object
    fileListResponse:
      properties:
        fileListResponse:
          properties:
            fileCount:
              description: Total count of files in response.
              type: integer
            fileData:
              $ref: '#/components/schemas/fileData'
              description: Optional metadata associated with the file that was uploaded.
            resultCode:
              description: Result code of fetching the list of files from AWS.
              type: integer
            resultMessage:
              description: Results of the attempt to fetch the list of files.
              type: string
          type: object
      type: object
    fileListResponseJson:
      properties:
        fileCount:
          description: Total count of files in response.
          type: integer
        fileData:
          description: Optional metadata associated with the file that was uploaded.
          items:
            $ref: '#/components/schemas/fileDataJson'
          type: array
        resultCode:
          description: Result code of fetching the list of files from AWS.
          type: integer
        resultMessage:
          description: Results of the attempt to fetch the list of files.
          type: string
      type: object
    fileMetaData:
      properties:
        DocumentName:
          description: Name of particular document.
          type: string
        DocumentType:
          description: Enum of possible file type.
          enum:
            - LOA
            - INVOICE
            - CSR
            - OTHER
          type: string
      type: object
    fileMetaDataJson:
      properties:
        documentName:
          description: Name of particular document.
          type: string
        documentType:
          description: Enum of possible file type.
          enum:
            - LOA
            - INVOICE
            - CSR
            - OTHER
          type: string
      type: object
    fileMetaDataRequest:
      properties:
        $ref: '#/components/schemas/fileMetaData'
      type: object
    fileUploadResponse:
      properties:
        FileUploadResponse:
          properties:
            fileName:
              description: >-
                The (optional) name that was associated with the file when it
                was uploaded.
              type: integer
            resultCode:
              description: Result code of fetching the list of files from AWS.
              type: integer
            resultMessage:
              description: Results of the attempt to fetch the list of files.
              type: string
          type: object
      type: object
    fileUploadResponseForJson:
      properties:
        fileName:
          description: >-
            The (optional) name that was associated with the file when it was
            uploaded.
          type: string
        resultCode:
          description: Result code of fetching the list of files from AWS.
          type: integer
        resultMessage:
          description: Results of the attempt to fetch the list of files.
          type: string
      type: object
    genericError:
      properties:
        data:
          nullable: true
          type: object
        errors:
          items:
            $ref: '#/components/schemas/error'
          type: array
        links:
          items:
            $ref: '#/components/schemas/link'
          type: array
      required:
        - data
        - errors
        - links
      title: Generic Error
      type: object
    geocodeRequestAddress:
      properties:
        RequestAddress:
          properties:
            AddressLine1:
              type: string
            AddressLine2:
              type: string
            AddressType:
              type: string
            City:
              type: string
            Country:
              type: string
            County:
              type: string
            HouseNumber:
              type: string
            HousePrefix:
              type: string
            HouseSuffix:
              type: string
            PlusFour:
              type: string
            PostDirectional:
              type: string
            PreDirectional:
              type: string
            ResetAddressFields:
              type: boolean
            StateCode:
              type: string
            StreetName:
              type: string
            StreetSuffix:
              type: string
            Zip:
              type: string
          required:
            - AddressLine1
            - City
            - StateCode
          type: object
      type: object
    geocodeRequestConflictResponse:
      properties:
        GeocodeRequestResponse:
          properties:
            ErrorMessage:
              type: string
            GeocodeAddress:
              $ref: '#/components/schemas/address'
            RequestAddress:
              $ref: '#/components/schemas/address'
          type: object
      type: object
    geocodeRequestErrorResponse:
      properties:
        GeocodeRequestResponse:
          $ref: '#/components/schemas/responseStatus'
      type: object
    geocodeRequestResponse:
      properties:
        GeocodeRequestResponse:
          properties:
            GeocodeAddress:
              $ref: '#/components/schemas/address'
            RequestAddress:
              $ref: '#/components/schemas/address'
          type: object
      type: object
    getHostedVoiceDocumentResponse:
      properties:
        data:
          $ref: '#/components/schemas/hostedVoiceDocumentResponseData'
        errors:
          $ref: '#/components/schemas/errors'
        links:
          $ref: '#/components/schemas/getLinks'
      title: Document Response
      type: object
    getLinks:
      example:
        - href: /self-resource/{id}
          method: GET
          rel: self
        - href: /accounts/{accountId}/self-resource/rel-resource/{id}
          method: GET
          rel: get-rel-resource
      items:
        $ref: '#/components/schemas/link'
      title: Links
      type: array
    getOperatorResponse:
      properties:
        data:
          items:
            $ref: '#/components/schemas/operatorResponsePayload'
          type: array
        errors:
          example: []
          items:
            $ref: '#/components/schemas/error'
          type: array
        links:
          $ref: '#/components/schemas/links'
      title: getOperatorResponse
      type: object
    getPortingDocumentResponse:
      properties:
        data:
          $ref: '#/components/schemas/portingDocumentResponseData'
        errors:
          $ref: '#/components/schemas/errors'
        links:
          $ref: '#/components/schemas/getLinks'
      title: Document Response
      type: object
    getSubscriberResponseSchema:
      properties:
        addressId:
          $ref: '#/components/schemas/addressId'
        companyName:
          type: string
        firstName:
          maxLength: 50
          type: string
        lastName:
          maxLength: 50
          type: string
        portinId:
          example: daa9dd0f-de97-4103-8530-b31bf4be8fc0
          type: string
        subscriberType:
          $ref: '#/components/schemas/subscriberType'
        vatNumber:
          maxLength: 36
          type: string
      title: Get Subscriber Details
      type: object
    holidaysDataErrorResponse:
      properties:
        HolidaysResponse:
          $ref: '#/components/schemas/responseStatus'
      type: object
    holidaysDataErrorResponseForJson:
      properties:
        HolidaysResponse:
          properties:
            code:
              description: The error code
              type: string
            description:
              description: The error message
              type: string
          type: object
      type: object
    host:
      properties:
        HostName:
          type: string
        Port:
          type: string
      type: object
    hostedMessagingDocumentResponseData:
      allOf:
        - $ref: '#/components/schemas/hostedVoiceDocumentData'
      properties:
        createdDateTime:
          $ref: '#/components/schemas/createdDateTime'
        documentId:
          $ref: '#/components/schemas/documentId'
        status:
          $ref: '#/components/schemas/documentStatusDefault'
        updatedDateTime:
          $ref: '#/components/schemas/updatedDateTime'
    hostedTNLnpOrderRequest:
      properties:
        lnpOrder:
          properties:
            customerOrderId:
              description: >-
                Optional customer-defined reference ID for this order. Only
                alphanumeric values, dashes and spaces are allowed. Not unique —
                Bandwidth applies no uniqueness constraint, so multiple orders
                may share the same value. Each order receives its own unique
                Bandwidth-assigned `orderId`.
              example: myOrder
              maxLength: 255
              type: string
              xml:
                name: CustomerOrderId
            listOfPhoneNumbers:
              description: >
                `ListOfPhoneNumbers` is an array of `PhoneNumber`. At least one
                `PhoneNumber` must be provided.
              items:
                properties:
                  phoneNumber:
                    description: >
                      One or more phone numbers is required.


                      Use a `PhoneNumber` tag for each phone number in the
                      `ListOfPhoneNumbers` list.
                    example: '+33109753127'
                    format: E164 phone number with no dots or dashes
                    type: string
                    xml:
                      name: PhoneNumber
                type: object
              type: array
              xml:
                name: ListOfPhoneNumbers
            losingCarrierName:
              description: |
                `LosingCarrierName` specifies the name of the losing carrier.
              example: British Telecom
              maxLength: 100
              type: string
              xml:
                name: LosingCarrierName
            operatorCode:
              $ref: '#/components/schemas/operatorCode'
            peerId:
              description: >
                'PeerId' specifies the numeric identifier of the SIP-peer
                (Location) that the telephone numbers will be ported into. You
                can find the identifier for a SIP-peer (location) by using GET
                /accounts/id/sites/id/sippeers, or by clicking on 'Accounts' on
                the upper right of the [Bandwidth
                App](https://api.bandwidth.com), then clicking on 'Locations' on
                the navigation bar. The SIP-peer (location) identifiers are
                listed next to each location name. If PeerId is omitted, the
                SIP-peer (location) designated as the 'default location' for
                that site (sub-account) will be used.
              example: '123456'
              type: string
              xml:
                name: PeerId
            requestedFocDate:
              description: >
                The date format should be ISO 8601, such as
                "2019-10-31".<br/><br/>

                For global ports, if `RequestedFocDate` is specified, the time
                portions will be ignored, and the date portion must be:

                - in the future

                - not on a weekend.
              example: '2024-10-31'
              format: date
              type: string
              xml:
                name: RequestedFocDate
            siteId:
              description: >
                `SiteId` specifies the identifier of the site (sub-account) that
                the telephone numbers will be ported into.


                You can find the identifier for a site (sub-account) by using
                `GET /accounts/id/sites`, or by clicking on 'Manage sub-account'
                for the desired sub-account on the main page of the Bandwidth
                App.
              example: 5
              format: int32
              type: integer
              xml:
                name: SiteId
            subscriber:
              example:
                addressId: 550e8400-e29b-41d4-a716-446655440000
                firstName: John
                lastName: Doe
                middleInitial: A
                subscriberType: RESIDENTIAL
              oneOf:
                - $ref: '#/components/schemas/manualGlobalSubscriberResidential'
                - $ref: '#/components/schemas/manualGlobalSubscriberBusiness'
          required:
            - listOfPhoneNumbers
            - siteId
            - losingCarrierName
            - subscriber
            - operatorCode
          type: object
          xml:
            name: LnpOrder
      title: Global LNP Order Request For Hosted Numbers
      type: object
    hostedTNLnpOrderRequestJson:
      properties:
        lnpOrder:
          properties:
            customerOrderId:
              description: >-
                Optional customer-defined reference ID for this order. Only
                alphanumeric values, dashes and spaces are allowed. Not unique —
                Bandwidth applies no uniqueness constraint, so multiple orders
                may share the same value. Each order receives its own unique
                Bandwidth-assigned `orderId`.
              example: myOrder
              maxLength: 255
              type: string
            locationId:
              description: >
                'LocationId' specifies the numeric identifier of the SIP-peer
                (Location) that the telephone numbers will be ported into. You
                can find the identifier for a SIP-peer (location) by using GET
                /accounts/id/sites/id/sippeers, or by clicking on 'Accounts' on
                the upper right of the [Bandwidth
                App](https://api.bandwidth.com), then clicking on 'Locations' on
                the navigation bar. The SIP-peer (location) identifiers are
                listed next to each location name. If LocationId is omitted, the
                SIP-peer (location) designated as the 'default location' for
                that site (sub-account) will be used.
              example: '123456'
              type: string
            losingCarrierName:
              description: |
                `LosingCarrierName` specifies the name of the losing carrier.
              example: British Telecom
              maxLength: 100
              type: string
            operatorCode:
              $ref: '#/components/schemas/operatorCodeJson'
            phoneNumbers:
              $ref: '#/components/schemas/phoneNumbersJson'
            requestedFocDate:
              description: >
                The date format should be ISO 8601, such as
                "2019-10-31".<br/><br/>

                For global ports, if `RequestedFocDate` is specified, the time
                portions will be ignored, and the date portion must be:

                - in the future

                - not on a weekend.
              example: '2024-10-31'
              format: date
              type: string
            subAccountId:
              description: >
                `SubAccountId` specifies the identifier of the site
                (sub-account) that the telephone numbers will be ported into.


                You can find the identifier for a site (sub-account) by using
                `GET /accounts/id/sites`, or by clicking on 'Manage sub-account'
                for the desired sub-account on the main page of the Bandwidth
                App.
              example: 5
              format: int32
              type: integer
            subscriber:
              example:
                addressId: 550e8400-e29b-41d4-a716-446655440000
                firstName: John
                lastName: Doe
                middleInitial: A
                subscriberType: RESIDENTIAL
              oneOf:
                - $ref: '#/components/schemas/manualGlobalSubscriberResidentialJson'
                - $ref: '#/components/schemas/manualGlobalSubscriberBusinessJson'
          required:
            - phoneNumbers
            - subAccountId
            - losingCarrierName
            - subscriber
            - operatorCode
          type: object
      title: Global LNP Order Request For Hosted Numbers
      type: object
    hostedVoiceDocumentData:
      properties:
        customReference:
          $ref: '#/components/schemas/customReference'
        description:
          $ref: '#/components/schemas/documentDescription'
        fields:
          $ref: '#/components/schemas/fields'
        type:
          $ref: '#/components/schemas/documentType'
      required:
        - type
    hostedVoiceDocumentResponseData:
      allOf:
        - $ref: '#/components/schemas/hostedVoiceDocumentData'
      properties:
        createdDateTime:
          $ref: '#/components/schemas/createdDateTime'
        documentId:
          $ref: '#/components/schemas/documentId'
        status:
          $ref: '#/components/schemas/documentStatus'
        updatedDateTime:
          $ref: '#/components/schemas/updatedDateTime'
    hostedVoiceMissingRequirement:
      properties:
        Description:
          description: Additional data describing the nature of the missing requirement
          type: string
        Requirement:
          description: The requirement that is missing for hosted voice order.
          enum:
            - HOSTED_VOICE_DOCUMENTS
          type: string
      type: object
    hosts:
      properties:
        Hosts:
          items:
            $ref: '#/components/schemas/host'
          type: array
      type: object
    httpVoice:
      properties:
        CallAdmissionControlSettings:
          $ref: '#/components/schemas/callAdmissionControlSettings'
        Enabled:
          type: boolean
      type: object
    identifier:
      type: string
    importAvailableNumberOrder:
      properties:
        id:
          example: '12355567'
          type: string
        importAvailableNumberOrderType:
          $ref: '#/components/schemas/importAvailableNumberOrderType'
        siteId:
          example: 1
          type: integer
      required:
        - importAvailableNumberOrderType
      type: object
    importAvailableNumberOrderType:
      properties:
        AccountProfile:
          deprecated: true
          example: UnallocatedNonTF
          type: string
        ElementProfile:
          deprecated: true
          example: UnallocatedNonTF
          type: string
        GatewayProfile:
          deprecated: true
          example: UnallocatedNonTF
          type: string
        PhoneNumberInventoryGroupId:
          example: 20254
          type: integer
        TelephoneNumberList:
          properties:
            TelephoneNumber:
              items:
                example: '+14158714244'
                type: string
              type: array
          type: object
        VendorName:
          example: Level 3
          type: string
      required:
        - TelephoneNumberList
        - VendorName
      type: object
    importTnCheckerErrorResponse:
      properties:
        ImportTnCheckerResponse:
          properties:
            Errors:
              items:
                properties:
                  Code:
                    type: integer
                  Description:
                    type: string
                title: Error
              type: array
          type: object
      type: object
    importTnCheckerPayload:
      properties:
        ImportTnCheckerPayload:
          properties:
            SipPeerId:
              format: int32
              type: integer
            SiteId:
              format: int32
              type: integer
            TelephoneNumbers:
              items:
                $ref: '#/components/schemas/telephoneNumber'
              type: array
          type: object
      type: object
    importTnCheckerResponse:
      properties:
        ImportTnCheckerResponse:
          properties:
            ImportTnCheckerPayload:
              properties:
                ImportTnErrors:
                  items:
                    $ref: '#/components/schemas/importTnError'
                  type: array
                TelephoneNumbers:
                  items:
                    $ref: '#/components/schemas/telephoneNumber'
                  type: array
              type: object
          type: object
      type: object
    importTnError:
      properties:
        Code:
          type: integer
        Description:
          type: string
        TelephoneNumbers:
          items:
            $ref: '#/components/schemas/telephoneNumber'
          type: array
      type: object
    importTnOrder:
      properties:
        AccountId:
          type: string
        CreatedByUser:
          type: string
        CustomerOrderId:
          description: >-
            The customer-defined reference ID for this order, if one was
            provided at creation. Not unique — Bandwidth applies no uniqueness
            constraint, so multiple orders may share the same value. Each order
            has a distinct Bandwidth-assigned `orderId`.
          type: string
        Errors:
          items:
            $ref: '#/components/schemas/error'
          type: array
        FailedTelephoneNumbers:
          description: >-
            List of telephone numbers that failed processing, with reasons
            detailed in the Warning section.
          items:
            $ref: '#/components/schemas/telephoneNumber'
          type: array
        LastModifiedDate:
          type: string
        LoaAuthorizingPerson:
          type: string
        LoaType:
          enum:
            - CARRIER
            - SUBSCRIBER
          type: string
        OrderCreateDate:
          type: string
        PendingTelephoneNumbers:
          description: List of telephone numbers that are pending processing.
          items:
            $ref: '#/components/schemas/telephoneNumber'
          type: array
        ProcessingStatus:
          description: >-
            Status of the Import Tn Order request.


            RECEIVED - Order has been received without errors and will be
            processed through further validation.


            PROCESSING - The order has passed initial validation and is now
            being processed.Order will remain in processing status if any of the
            requested telphone numbers remain pending processing.


            COMPLETE - This implies that this order has been successfully
            processed and hosted messaging has been enabled on all requested
            telephone numbers.


            PARTIAL - This implies that this order has been successfully
            processed and hosted messaging was enabled on all except few of the
            numbers, reasons for same can be found in  Warning section.


            FAILED - This implies that this order has been failed. None of the
            telphone numbers requested were enabled for hosted messaging,
            reasons for same can be found in Errors and Warning section.
          enum:
            - RECEIVED
            - PROCESSING
            - COMPLETE
            - PARTIAL
            - FAILED
          type: string
        SipPeerId:
          type: string
        SiteId:
          type: string
        Subscriber:
          $ref: '#/components/schemas/importTnSubscriber'
        SuccessTelephoneNumbers:
          description: List of telephone numbers successfully processed.
          items:
            $ref: '#/components/schemas/telephoneNumber'
          type: array
        TelephoneNumbers:
          items:
            $ref: '#/components/schemas/telephoneNumber'
          type: array
        Warnings:
          items:
            $ref: '#/components/schemas/warning'
          type: array
      type: object
    importTnOrdersResponse:
      properties:
        ImportTnOrdersResponse:
          properties:
            ImportTnOrder:
              $ref: '#/components/schemas/importTnOrder'
          type: object
      type: object
    importTnSubscriber:
      properties:
        Name:
          type: string
        ServiceAddress:
          $ref: '#/components/schemas/address'
      type: object
    importVoiceTnOrder:
      properties:
        AccountId:
          type: string
        CreatedByUser:
          type: string
        CustomerOrderId:
          description: >-
            The customer-defined reference ID for this order, if one was
            provided at creation. Not unique — Bandwidth applies no uniqueness
            constraint, so multiple orders may share the same value. Each order
            has a distinct Bandwidth-assigned `orderId`.
          type: string
        Errors:
          items:
            $ref: '#/components/schemas/error'
          type: array
        LastModifiedDate:
          type: string
        MissingRequirements:
          description: >-
            List of Missing Requirements, needed to be fulfilled by the user
            before this voice order can be submitted.
          items:
            $ref: '#/components/schemas/hostedVoiceMissingRequirement'
          type: array
        OperatorId:
          type: integer
        OrderCreateDate:
          type: string
        ProcessingStatus:
          enum:
            - RECEIVED
            - PROCESSING
            - COMPLETE
            - PARTIAL
            - FAILED
            - MISSING_REQUIREMENTS
          type: string
        SipPeerId:
          type: string
        SiteId:
          type: string
        TelephoneNumberRanges:
          items:
            $ref: '#/components/schemas/telephoneNumberRange'
          type: array
        TelephoneNumbers:
          items:
            $ref: '#/components/schemas/telephoneNumber'
          type: array
        VoiceConfigurationPackageId:
          type: string
      type: object
    importVoiceTnOrderError:
      properties:
        ImportVoiceTnOrderResponse:
          $ref: '#/components/schemas/responseStatus'
      type: object
    importVoiceTnOrderRequest:
      properties:
        ImportVoiceTnOrder:
          properties:
            CustomerOrderId:
              description: >-
                Optional customer-defined reference ID for this order. Only
                alphanumeric values, dashes and spaces are allowed. Not unique —
                Bandwidth applies no uniqueness constraint, so multiple orders
                may share the same value. Each order receives its own unique
                Bandwidth-assigned `orderId`.
              type: string
            OperatorId:
              description: An operator id to link the request with the operator info.
              type: integer
            SipPeerId:
              description: >-
                A sippeer id of provided site to which telephone number will be
                moved
              type: integer
            SiteId:
              description: A site id to which telephone number will be moved
              type: integer
            TelephoneNumbers:
              description: List of telephone numbers to be moved
              items:
                properties:
                  TelephoneNumber:
                    description: Ten digit phone number with no dots or dashes
                    type: integer
                type: object
              minItems: 1
              type: array
            TelephoneNumbersRanges:
              description: Ranges of telephone numbers to be moved
              items:
                properties:
                  TelephoneNumbersRange:
                    description: Range of telephone numbers
                    properties:
                      From:
                        description: >-
                          First phone number of the range. Ten digit with no
                          dots or dashes
                        type: integer
                      To:
                        description: >-
                          Last phone number of the range. Ten digit with no dots
                          or dashes
                        type: integer
                type: object
              minItems: 1
              type: array
            VoiceConfigurationPackageId:
              description: The voice config's id to accept vcp in request.
              type: string
          required:
            - SiteId
          type: object
      title: ImportVoiceTnOrder
    importVoiceTnOrderResponse:
      properties:
        ImportVoiceTnOrderResponse:
          properties:
            ImportVoiceTnOrder:
              $ref: '#/components/schemas/importVoiceTnOrder'
          type: object
      type: object
    importVoiceTnOrderSummary:
      properties:
        AccountId:
          type: string
        CountsOfTNs:
          type: integer
        CustomerOrderId:
          description: >-
            The customer-defined reference ID for this order, if one was
            provided at creation. Not unique — Bandwidth applies no uniqueness
            constraint, so multiple orders may share the same value. Each order
            has a distinct Bandwidth-assigned `orderId`.
          type: string
        LastModifiedDate:
          type: string
        OrderDate:
          type: string
        OrderType:
          enum:
            - import_voice_tn_orders
          type: string
        ProcessingStatus:
          enum:
            - RECEIVED
            - PROCESSING
            - COMPLETE
            - PARTIAL
            - FAILED
          type: string
        UserId:
          type: string
      type: object
    importVoiceTnOrdersPatchRequest:
      properties:
        ImportVoiceTnOrder:
          properties:
            ProcessingStatus:
              enum:
                - APPROVED
                - MISSING_REQUIREMENTS
                - SUBMITTED
              type: string
          required:
            - ProcessingStatus
          type: object
      title: UpdateImportVoiceTnOrder
    importVoiceTnOrdersResponseList:
      properties:
        ImportVoiceTnOrders:
          properties:
            ImportVoiceTnOrderSummary:
              $ref: '#/components/schemas/importVoiceTnOrderSummary'
            TotalCount:
              type: integer
          type: object
      type: object
    internalNANPLnpOrderRequest:
      properties:
        LnpOrder:
          allOf:
            - $ref: '#/components/schemas/lnpOrderBasic'
            - $ref: '#/components/schemas/lnpOrderAdditionalFields'
            - properties:
                NewBillingTelephoneNumber:
                  description: >-
                    This field is used to specify a new billing telephone number
                    on the losing carrier account.<br/><br/>Cannot be the same
                    as `BillingTelephoneNumber` or be present in the list of
                    ported numbers.
                  type: string
                PartialPort:
                  description: >-
                    The `PartialPort` must be set to `true` if the intent is to
                    **NOT** port all of the telephone numbers associated with
                    the `BillingTelephoneNumber`.<br/><br/>If PartialPort is
                    omitted or false, and the `ListOfPhoneNumbers` does not
                    include all of the telephone numbers associated with the
                    `BillingTelephoneNumber`, the port-in will be
                    rejected.<br/><br/>PartialPort is applicable only to on-net
                    port-types.
                  type: string
                TnAttributes:
                  description: >-
                    The `TnAttributes` field specifies line attributes that will
                    apply to the ported in telephone numbers. If present,
                    `TnAttributes` may have a value of `PROTECTED`.
                  items:
                    $ref: '#/components/schemas/tnAttribute'
                  type: array
              type: object
      title: Internal NANP LNP Order Request
      type: object
    internalNANPLnpOrderRequestJson:
      properties:
        lnpOrder:
          allOf:
            - $ref: '#/components/schemas/lnpOrderBasicJson'
            - $ref: '#/components/schemas/lnpOrderAdditionalFieldsJson'
            - properties:
                newBillingTelephoneNumber:
                  description: >-
                    This field is used to specify a new billing telephone number
                    on the losing carrier account.<br/><br/>Cannot be the same
                    as `BillingTelephoneNumber` or be present in the list of
                    ported numbers.
                  type: string
                partialPort:
                  description: >-
                    The `PartialPort` must be set to `true` if the intent is to
                    **NOT** port all of the telephone numbers associated with
                    the `BillingTelephoneNumber`.<br/><br/>If PartialPort is
                    omitted or false, and the `phoneNumbers` does not include
                    all of the telephone numbers associated with the
                    `BillingTelephoneNumber`, the port-in will be
                    rejected.<br/><br/>PartialPort is applicable only to on-net
                    port-types.
                  type: string
                phoneNumberAttributes:
                  description: >-
                    The `phoneNumberAttributes` field specifies line attributes
                    that will apply to the ported in telephone numbers. If
                    present, `phoneNumberAttributes` may have a value of
                    `PROTECTED`.
                  items:
                    $ref: '#/components/schemas/phoneNumberAttributeJson'
                  type: array
              type: object
      title: Internal NANP LNP Order Request
      type: object
    irisStatus:
      properties:
        Code:
          format: int32
          type: integer
        Description:
          type: string
      type: object
    leadTime:
      description: >-
        The estimated number of days needed to elapse before an order can move
        to FOC.
      example: 3
      type: integer
    leadTimeInternalResponseSchema:
      properties:
        data:
          $ref: '#/components/schemas/leadTimeInternalSchema'
        errors:
          $ref: '#/components/schemas/errors'
        links:
          example:
            - href: >-
                /api/v2/internal/porting/leadTimes/123e4567-e89b-12d3-a456-426614174000
              method: GET
              rel: self
          items:
            $ref: '#/components/schemas/link'
          title: Links
          type: array
      title: Leadtime response schema
      type: object
    leadTimeInternalSchema:
      properties:
        countryCodeA3:
          $ref: '#/components/schemas/legacyCountryCodeA3String'
        createdDateTime:
          $ref: '#/components/schemas/createdDateTime'
        id:
          description: The unique identifier for the lead time.
          example: 123e4567-e89b-12d3-a456-426614174000
          title: Lead Time ID
          type: string
        leadTime:
          $ref: '#/components/schemas/leadTime'
        phoneNumberType:
          $ref: '#/components/schemas/phoneNumberTypeString'
        updatedDateTime:
          $ref: '#/components/schemas/updatedDateTime'
      required:
        - countryCodeA3
        - phoneNumberType
        - leadTime
      type: object
    leadTimeSchema:
      properties:
        countryCodeA3:
          $ref: '#/components/schemas/legacyCountryCodeA3String'
        leadTime:
          $ref: '#/components/schemas/leadTime'
        phoneNumberType:
          $ref: '#/components/schemas/phoneNumberTypeString'
      required:
        - countryCodeA3
        - phoneNumberType
        - leadTime
      type: object
    legacyCountryCodeA3String:
      description: Country code in ISO 3166-1 alpha-3 format
      example: GBR
      type: string
    legacyTerminationSettings:
      properties:
        BillingType:
          enum:
            - DNIS
            - LRN
          type: string
        ConcurrentBidirectionalCalls:
          type: integer
        ConcurrentOutboundCalls:
          type: integer
        CpsQueue:
          type: integer
        CustomerTrafficAllowed:
          enum:
            - ALL
            - LITE
            - DOMESTIC
            - NONE
          type: string
        DiscountPercentage:
          type: integer
        GuaranteedTermination:
          type: boolean
        RateType:
          enum:
            - FLAT
            - FULL_CR
            - NPANXX
            - BILL_NUM_LCR
          type: string
      type: object
    link:
      description: The URI link details to self or a related resource with the relation
      properties:
        href:
          description: URI of the link
          example: /resource/uri
          type: string
        method:
          description: HTTP method to be used
          example: GET
          type: string
        rel:
          description: Specifies the relationship between this link and the resource
          example: self
          type: string
      required:
        - href
        - rel
        - method
      title: Link
      type: object
    links:
      items:
        oneOf:
          - $ref: '#/components/schemas/selfLink'
      title: Links
      type: array
    linksJson:
      properties:
        first:
          description: The first (or only) page of results matching the query.
          type: string
        last:
          description: >-
            If more results exist than specified by 'size', this link return the
            last page of result.
          type: string
        next:
          description: >-
            If more results exist than specified by 'size', this link returns
            the next page of 'size' results.
          type: string
        previous:
          description: >-
            If the results are more than one page, this link returns the
            previous page of 'size' results.
          type: string
      type: object
    listAdminDocumentsData:
      properties:
        adminDocuments:
          items:
            properties:
              contentType:
                $ref: '#/components/schemas/documentContentType'
              createdDateTime:
                $ref: '#/components/schemas/createdDateTime'
              id:
                $ref: '#/components/schemas/documentId'
              type:
                $ref: '#/components/schemas/adminDocumentType'
              updatedDateTime:
                $ref: '#/components/schemas/updatedDateTime'
            type: object
          type: array
      title: Admin Documents Data Basic
      type: object
    listAdminDocumentsResponse:
      properties:
        data:
          $ref: '#/components/schemas/listAdminDocumentsData'
        errors:
          $ref: '#/components/schemas/errors'
        links:
          $ref: '#/components/schemas/getLinks'
      title: Admin Documents Response
      type: object
    listHostedVoiceDocumentsResponse:
      properties:
        data:
          items:
            $ref: '#/components/schemas/hostedVoiceDocumentResponseData'
          title: Data
          type: array
        errors:
          $ref: '#/components/schemas/errors'
        links:
          $ref: '#/components/schemas/listLinks'
      title: List Documents Response
      type: object
    listLeadTimesInternalResponseSchema:
      properties:
        data:
          nullable: true
          properties:
            leadTimes:
              items:
                $ref: '#/components/schemas/leadTimeInternalSchema'
              type: array
            totalCount:
              description: The total count of objects returned in the response.
              example: 1
              type: integer
          type: object
        errors:
          $ref: '#/components/schemas/errors'
        links:
          example:
            - href: /api/v2/internal/porting/leadTimes
              method: GET
              rel: self
          items:
            $ref: '#/components/schemas/link'
          title: Links
          type: array
      title: List of lead times response
      type: object
    listLeadTimesResponseSchema:
      properties:
        data:
          nullable: true
          properties:
            leadTimes:
              items:
                $ref: '#/components/schemas/leadTimeSchema'
              type: array
            totalCount:
              description: The total count of objects returned in the response.
              example: 1
              type: integer
          type: object
        errors:
          $ref: '#/components/schemas/errors'
        links:
          example:
            - href: /api/v2/porting/leadTimes
              method: GET
              rel: self
          items:
            $ref: '#/components/schemas/link'
          title: Links
          type: array
      title: List of lead times response
      type: object
    listLinks:
      example:
        - href: /self-resource
          method: GET
          rel: self
        - href: /accounts/{accountId}/{resource}?beforeCursor={cursorId}
          method: GET
          rel: prev-resources
        - href: /accounts/{accountId}/{resource}?afterCursor={cursorId}
          method: GET
          rel: next-resources
      items:
        $ref: '#/components/schemas/link'
      title: Links
      type: array
    listLinksOnlyWithAfterCursor:
      example:
        - href: /self-resource
          method: GET
          rel: self
        - href: /accounts/{accountId}/{resource}?afterCursor={cursorId}
          method: GET
          rel: next-resources
      items:
        $ref: '#/components/schemas/link'
      title: Links
      type: array
    listPortingDocumentsResponse:
      properties:
        data:
          items:
            $ref: '#/components/schemas/portingDocumentResponseData'
          title: Data
          type: array
        errors:
          $ref: '#/components/schemas/errors'
        links:
          $ref: '#/components/schemas/listLinks'
      title: List Documents Response
      type: object
    lnpCheckerTnList:
      properties:
        TN:
          items:
            type: string
            xml:
              name: TN
          type: array
      type: object
    lnpError:
      properties:
        Code:
          format: int32
          type: integer
        Description:
          type: string
        TelephoneNumbers:
          items:
            type: string
            xml:
              name: Tn
          type: array
      title: Error
      type: object
    lnpErrorJson:
      properties:
        code:
          description: Numeric designation of corresponding error.
          type: integer
        description:
          description: Detailed explanation about error.
          type: string
        phoneNumbers:
          items:
            $ref: '#/components/schemas/phoneNumberJson'
          type: array
      type: object
    lnpOrderAdditionalFields:
      properties:
        AlternateSpid:
          description: >-
            Even though the telephone numbers are being ported into Bandwidth’s
            SPID, some of Bandwidth’s wholesale customers have an alternate SPID
            that is used to identify the telephone number with that customer.
          type: string
        BillingTelephoneNumber:
          description: >-
            The `BillingTelephoneNumber` is the primary telephone number
            associated with the invoice that the subscriber gets from the losing
            carrier. For wireline port-in, the BillingTelephoneNumber is
            typically the telephone number being ported in.
          type: string
        RequestedFocDate:
          description: >-
            Format: ISO8601 encoding such as “2013-05-10T15:14:22Z”, or
            "2019-10-31T17:15:00+04:00".<br/><br/>For all ports, if
            `RequestedFocDate` is specified, the date portion must be:<br/> - in
            the future<br/> - after the losing carrier's minimum number of days
            to port-out<br/> - not on a weekend or U.S. holiday<br/><br/>If
            `RequestedFocDate` is not specified, the next available FOC date
            meeting the criteria above will be used. If the Time portion of the
            `RequestedFocDate` is omitted the port-in order will be activated at
            the default activation time of 11:30 AM ET. If an activation time
            other than 11:30 AM ET is desired, that activation time should be
            included in the `RequestedFocDate`.
          type: string
        Subscriber:
          oneOf:
            - $ref: '#/components/schemas/subscriberBusiness'
            - $ref: '#/components/schemas/subscriberResidential'
        Triggered:
          description: >-
            The `Triggered` field must be set to `true` if you want an
            activation time other than the 11:30 AM ET default. The desired
            activation time can then be specified in the time portion of the
            `RequestedFocDate`. This field will be ignored if set for port-ins
            with the `MANUAL_TOLLFREE`, `MANUAL_ON_NET`, or `MANUALOFFNET` port
            types, as all manual port-ins are activated at 11:30 AM ET.
          type: boolean
        WirelessInfo:
          description: Most common for telephone numbers that were formerly wireless.
          properties:
            AccountNumber:
              description: >-
                The `AccountNumber` is sometimes required to authorize the
                port-out from the losing carrier. This is most common for
                telephone numbers that were formerly wireless.
              type: string
            PinNumber:
              description: >-
                The `PinNumber` is sometimes required to authorize the port-out
                from the losing carrier. This is most common for telephone
                numbers that were formerly wireless.
              type: string
          title: WirelessInfo
          type: object
        losingResellerName:
          description: >-
            Name of the company serving the telephone numbers prior to the port.
            Some Canada ports may be rejected unless this information is
            supplied.
          example: ResellerName
          maxLength: 60
          pattern: '[A-z0-9 -]+'
          type: string
          xml:
            name: LosingResellerName
      required:
        - BillingTelephoneNumber
        - Subscriber
      type: object
    lnpOrderAdditionalFieldsJson:
      properties:
        alternateSpid:
          description: >-
            Even though the telephone numbers are being ported into Bandwidth’s
            SPID, some of Bandwidth’s wholesale customers have an alternate SPID
            that is used to identify the telephone number with that customer.
          type: string
        billingTelephoneNumber:
          description: >-
            The `BillingTelephoneNumber` is the primary telephone number
            associated with the invoice that the subscriber gets from the losing
            carrier. For wireline port-in, the BillingTelephoneNumber is
            typically the telephone number being ported in.
          type: string
        losingResellerName:
          description: >-
            Name of the company serving the telephone numbers prior to the port.
            Some Canada ports may be rejected unless this information is
            supplied.
          example: ResellerName
          maxLength: 60
          pattern: '[A-z0-9 -]+'
          type: string
        requestedFocDate:
          description: >-
            Format: ISO8601 encoding such as “2013-05-10T15:14:22Z”.
            <br/><br/>For all ports, if `RequestedFocDate` is specified, the
            date portion must be:<br/> - in the future<br/> - after the losing
            carrier's minimum number of days to port-out<br/> - not on a weekend
            or U.S. holiday<br/><br/>If `RequestedFocDate` is not specified, the
            next available FOC date meeting the criteria above will be used.
          format: date-time
          type: string
        subscriber:
          oneOf:
            - $ref: '#/components/schemas/subscriberBusinessJson'
            - $ref: '#/components/schemas/subscriberResidentialJson'
        triggered:
          description: >-
            The `Triggered` field must be set to `true` if you want an
            activation time other than the 11:30 AM ET default. The desired
            activation time can then be specified in the time portion of the
            `RequestedFocDate`. This field will be ignored if set for port-ins
            with the `MANUAL_TOLLFREE`, `MANUAL_ON_NET`, or `MANUALOFFNET` port
            types, as all manual port-ins are activated at 11:30 AM ET.
          type: boolean
        wirelessInfo:
          description: Most common for telephone numbers that were formerly wireless.
          properties:
            accountNumber:
              description: >-
                The `AccountNumber` is sometimes required to authorize the
                port-out from the losing carrier. This is most common for
                telephone numbers that were formerly wireless.
              type: string
            pinNumber:
              description: >-
                The `PinNumber` is sometimes required to authorize the port-out
                from the losing carrier. This is most common for telephone
                numbers that were formerly wireless.
              type: string
          title: WirelessInfo
          type: object
      required:
        - billingTelephoneNumber
        - subscriber
      type: object
    lnpOrderAdditionalModifiableFields:
      properties:
        AlternateSpid:
          description: >-
            Can only be modified in DRAFT state. Can only be modified if it is
            not configured at the system level.
          type: string
        BillingTelephoneNumber:
          type: string
        Subscriber:
          $ref: '#/components/schemas/portinSubscriberSupp'
        TnAttributes:
          description: Can be SUPPed prior to completion of the port-in request.
          items:
            $ref: '#/components/schemas/tnAttribute'
          type: array
        Triggered:
          description: May be included in the PUT payload as is, but cannot be changed.
          type: boolean
        losingResellerName:
          description: >-
            Name of the company serving the telephone numbers prior to the port.
            Some Canada ports may be rejected unless this information is
            supplied.
          example: ResellerName
          maxLength: 60
          pattern: '[A-z0-9 -]+'
          type: string
          xml:
            name: LosingResellerName
      type: object
    lnpOrderAdditionalModifiableFieldsJson:
      properties:
        alternateSpid:
          description: >-
            Can only be modified in DRAFT state. Can only be modified if it is
            not configured at the system level.
          type: string
        billingTelephoneNumber:
          type: string
        losingResellerName:
          description: >-
            Name of the company serving the telephone numbers prior to the port.
            Some Canada ports may be rejected unless this information is
            supplied.
          example: ResellerName
          maxLength: 60
          pattern: '[A-z0-9 -]+'
          type: string
        phoneNumberAttributes:
          description: Can be SUPPed prior to completion of the port-in request.
          items:
            $ref: '#/components/schemas/phoneNumberAttributeJson'
          type: array
        subscriber:
          $ref: '#/components/schemas/portInSubscriberSuppJson'
        triggered:
          description: May be included in the PUT payload as is, but cannot be changed.
          type: boolean
      type: object
    lnpOrderAutomatedTollFreeFields:
      properties:
        TargetRespOrgId:
          description: >-
            This is the RespOrg ID that you want the toll free numbers ported
            to. Normally it will specify a Bandwidth RespOrg ID like JYT01, but
            it could be something else for RespOrg Exception customers. This
            field is mandatory for non-draft toll free port-in orders.
          maxLength: 5
          minLength: 5
          type: string
      required:
        - TargetRespOrgId
      type: object
    lnpOrderAutomatedTollFreeFieldsJson:
      properties:
        targetRespOrgId:
          description: >-
            This is the RespOrg ID that you want the toll free numbers ported
            to. Normally it will specify a Bandwidth RespOrg ID like JYT01, but
            it could be something else for RespOrg Exception customers. This
            field is mandatory for non-draft toll free port-in orders.
          maxLength: 5
          minLength: 5
          type: string
      required:
        - targetRespOrgId
      type: object
    lnpOrderBasic:
      properties:
        CustomerOrderId:
          description: >-
            Optional customer-defined reference ID for this order. Only
            alphanumeric values, dashes and spaces are allowed. Not unique —
            Bandwidth applies no uniqueness constraint, so multiple orders may
            share the same value. Each order receives its own unique
            Bandwidth-assigned `orderId`.
          maxLength: 255
          type: string
        ListOfPhoneNumbers:
          description: >-
            `ListOfPhoneNumbers` is an array of `PhoneNumber`. At least one
            `PhoneNumber` must be provided.
          items:
            properties:
              PhoneNumber:
                description: >-
                  One or more phone numbers is required. <br/>Use a
                  `<PhoneNumber>` tag for each phone number in the
                  `<ListOfPhoneNumbers>` list.
                format: Ten digit phone number with no dots or dashes
                type: string
            type: object
          type: array
        LoaAuthorizingPerson:
          description: >-
            This is the first and last names of the person that has authorized
            the port.
          maxLength: 15
          type: string
        PeerId:
          description: >-
            `PeerId` specifies the numeric identifier of the SIP-peer (Location)
            that the telephone numbers will be ported into.<br/><br/>You can
            find the identifier for a SIP-peer (location) by using `GET
            /accounts/id/sites/id/sippeers`, or by clicking on 'Accounts' on the
            upper right of the [Bandwidth App](Https://api.bandwidth.com), then
            clicking 'Locations' on the navigation bar. The SIP-peer (location)
            identifiers are listed next to each location name. If `PeerId` is
            omitted, the SIP-peer (location) designated as the 'default
            location' for that site (sub-account) will be used.
          type: string
        ProcessingStatus:
          description: >-
            Including `ProcessingStatus` with a value of DRAFT allows you to
            create a port-in request, but not process the request. This is
            useful if you wish to add items to the order over a period of time
            and submit once you have the order setup the way you want. Note,
            however, that draft orders that have not been updated in a couple of
            days are automatically deleted. Removal of stagnant draft orders is
            performed so that telephone numbers are not tied up in these orders,
            preventing them from being included in other orders.<br/><br/>Very
            little validation is performed while an order is in draft state.
            Omitting `ProcessingStatus` causes the port-in to be validated and,
            if correct, processed right away. The full validation is performed
            on the order when you change the ProcessingStatus to 'SUBMITTED' by
            performing a PUT request on the order. <br><br><p>All toll free
            telephone numbers provided will be validated (even in draft state)
            to ensure

            that they are portable, and to allow you to separate telephone
            numbers into separate port-ins

            based on the RespOrg that they are being ported from.</p>
          enum:
            - DRAFT
          type: string
        RequestedFocDate:
          description: >-
            Format: ISO8601 encoding such as “2013-05-10T15:14:22Z”, or
            "2019-10-31T17:15:00+04:00".<br/><br/>For all ports, if
            `RequestedFocDate` is specified, the date portion must be:<br/> - in
            the future<br/> - after the losing carrier's minimum number of days
            to port-out<br/> - not on a weekend or U.S. holiday<br/><br/>If
            `RequestedFocDate` is not specified, the next available FOC date
            meeting the criteria above will be used. If the Time portion of the
            `RequestedFocDate` is omitted the port-in order will be activated at
            the default activation time of 11:30 AM ET. If an activation time
            other than 11:30 AM ET is desired, that activation time should be
            included in the `RequestedFocDate`.
          type: string
        SiteId:
          description: >-
            `SiteId` specifies the identifier of the site (sub-account) that the
            telephone numbers will be ported into.<br/><br/>You can find the
            identifier for a site (sub-account) by using `GET
            /accounts/id/sites`, or by clicking on 'Manage sub-account' for the
            desired sub-account on the main page of the Bandwidth App.
          format: int32
          type: integer
      required:
        - SiteId
        - ListOfPhoneNumbers
        - LoaAuthorizingPerson
      type: object
    lnpOrderBasicJson:
      properties:
        customerOrderId:
          description: >-
            Optional customer-defined reference ID for this order. Only
            alphanumeric values, dashes and spaces are allowed. Not unique —
            Bandwidth applies no uniqueness constraint, so multiple orders may
            share the same value. Each order receives its own unique
            Bandwidth-assigned `orderId`.
          maxLength: 255
          type: string
        loaAuthorizingPerson:
          description: >-
            This is the first and last names of the person that has authorized
            the port.
          maxLength: 15
          type: string
        locationId:
          description: >-
            Specifies the numeric identifier of the SIP-peer (Location) that the
            telephone numbers will be ported into.<br/><br/>You can find the
            identifier for a SIP-peer (location) by using `GET
            /accounts/id/sites/id/sippeers`, or by clicking on 'Accounts' on the
            upper right of the [Bandwidth App](Https://api.bandwidth.com), then
            clicking 'Locations' on the navigation bar. The SIP-peer (location)
            identifiers are listed next to each location name. If `LocationId`
            is omitted, the SIP-peer (location) designated as the 'default
            location' for that site (sub-account) will be used.
          type: string
        phoneNumbers:
          $ref: '#/components/schemas/phoneNumbersJson'
        processingStatus:
          description: >-
            Including `ProcessingStatus` with a value of DRAFT allows you to
            create a port-in request, but not process the request. This is
            useful if you wish to add items to the order over a period of time
            and submit once you have the order setup the way you want. Note,
            however, that draft orders that have not been updated in a couple of
            days are automatically deleted. Removal of stagnant draft orders is
            performed so that telephone numbers are not tied up in these orders,
            preventing them from being included in other orders.<br/><br/>Very
            little validation is performed while an order is in draft state.
            Omitting `ProcessingStatus` causes the port-in to be validated and,
            if correct, processed right away. The full validation is performed
            on the order when you change the ProcessingStatus to 'SUBMITTED' by
            performing a PUT request on the order. <br><br><p>All toll free
            telephone numbers provided will be validated (even in draft state)
            to ensure

            that they are portable, and to allow you to separate telephone
            numbers into separate port-ins

            based on the RespOrg that they are being ported from.</p>
          enum:
            - DRAFT
          type: string
        requestedFocDate:
          description: >-
            Format: ISO8601 encoding such as “2013-05-10T15:14:22Z”.
            <br/><br/>For all ports, if `RequestedFocDate` is specified, the
            date portion must be:<br/> - in the future<br/> - after the losing
            carrier's minimum number of days to port-out<br/> - not on a weekend
            or U.S. holiday<br/><br/>If `RequestedFocDate` is not specified, the
            next available FOC date meeting the criteria above will be used.
          format: date-time
          type: string
        subAccountId:
          description: >-
            `SubAccountId` specifies the identifier of the site (sub-account)
            that the telephone numbers will be ported into.<br/><br/>You can
            find the identifier for a site (sub-account) by using `GET
            /accounts/id/sites`, or by clicking on 'Manage sub-account' for the
            desired sub-account on the main page of the Bandwidth App.
          format: int32
          type: integer
      required:
        - subAccountId
        - phoneNumbers
        - loaAuthorizingPerson
      type: object
    lnpOrderBasicModifiableFields:
      properties:
        CustomerOrderId:
          description: >
            Optional customer-defined reference ID for this order. Only
            alphanumeric values, dashes and spaces are allowed. Not unique —
            Bandwidth applies no uniqueness constraint, so multiple orders may
            share the same value. Each order receives its own unique
            Bandwidth-assigned `orderId`. This field is removed from the order
            if not included in the PUT payload.
          type: string
        PeerId:
          type: string
        ProcessingStatus:
          description: >-
            May only be SUPPed for port-in orders in DRAFT state. The only valid
            value is “SUBMITTED” (not case sensitive).
          type: string
        RequestedFocDate:
          description: >-
            Is a subject to blackout windows if the current date is too close to
            an assigned FOC date.
          type: string
        SiteId:
          format: int32
          type: integer
      type: object
    lnpOrderBasicModifiableFieldsJson:
      properties:
        customerOrderId:
          description: >
            Optional customer-defined reference ID for this order. Only
            alphanumeric values, dashes and spaces are allowed. Not unique —
            Bandwidth applies no uniqueness constraint, so multiple orders may
            share the same value. Each order receives its own unique
            Bandwidth-assigned `orderId`. This field is removed from the order
            if not included in the PUT payload.
          type: string
        locationId:
          type: string
        processingStatus:
          description: >-
            May only be SUPPed for port-in orders in DRAFT state. The only valid
            value is “SUBMITTED” (not case sensitive).
          type: string
        requestedFocDate:
          description: >-
            Is a subject to blackout windows if the current date is too close to
            an assigned FOC date.
          type: string
        subAccountId:
          format: int32
          type: integer
      type: object
    lnpOrderPortoutResponse:
      properties:
        LnpOrderResponse:
          properties:
            AccountId:
              description: >-
                This is the account that the searched-for order will be
                contributing to. Specifying this parameter will restrict the
                search to Port-out orders within the specified account.
              type: string
            ActualFocDate:
              description: >-
                This is the FOC (Final Order Commit) Date assigned to the
                Port-out order by the losing carrier or their agent.
              type: string
            LastModifiedDate:
              description: >-
                The date and time on which the order was last modified,
                including status updates.
              type: string
            OrderCreateDate:
              description: The date and time on which the CSR order was created.
              type: string
            PON:
              description: >-
                This Bandwidth internal identifier associates the port-out order
                with either an internal port-in or an LSR order, whichever
                caused the port-out order to be created.
              type: string
            PortOutStatus:
              enum:
                - NEW
                - SUPP
                - MODIFY
                - COMPLETE
                - CANCELLED
                - VALIDATION_FAILED_NEW
                - VALIDATION_FAILED_SUPP
                - VALIDATION_FAILED_MODIFY
                - EXCEPTION
                - SOA_PENDING
                - SOA_CONFLICT
                - FOC
              type: string
            RequestedFocDate:
              description: >-
                This is the FOC (Final Order Commit) Date requested by the
                person (or machine) creating the Port-out order.
              type: string
            SPID:
              description: >-
                The Service Provider ID of the carrier that the number is being
                ported to.
              type: string
            userId:
              description: >-
                The UserId is authenticated for access to the network via a
                username string.
              type: string
          type: object
      type: object
    lnpOrderPutResponse:
      properties:
        lnpOrderResponse:
          properties:
            billingTelephoneNumber:
              description: >-
                The BillingTelephoneNumber is the primary telephone number
                associated with the invoice that the subscriber gets from the
                losing carrier.
              type: string
              xml:
                name: BillingTelephoneNumber
            losingResellerName:
              description: >-
                Name of the company serving the telephone numbers prior to the
                port. Some Canada ports may be rejected unless this information
                is supplied.
              example: losingReseller
              type: string
              xml:
                name: LosingResellerName
            newBillingTelephoneNumber:
              description: >-
                This field is used to specify a new billing telephone number on
                the losing carrier account.
              type: string
              xml:
                name: NewBillingTelephoneNumber
            orderId:
              description: Unique orderId that is used to manage the order.
              example: 556f2688-6cb1-46ce-8016-6bbf0741a519
              format: uuid
              type: string
              xml:
                name: OrderId
            processingStatus:
              description: The processing status of the order after it has been updated.
              enum:
                - REQUESTED_SUPP
              type: string
              xml:
                name: ProcessingStatus
            requestedFocDate:
              description: >-
                This is the FOC (Firm Order Commitment) Date requested by the
                person (or machine) creating the Port-in Order.
              type: string
              xml:
                name: RequestedFocDate
            status:
              properties:
                code:
                  type: integer
                  xml:
                    name: Code
                description:
                  type: string
                  xml:
                    name: Description
              type: object
              xml:
                name: Status
            targetRespOrgId:
              description: >-
                This is the RespOrg ID that you want the toll-free numbers
                ported to. Normally it will specify a Bandwidth RespOrg ID like
                JYT01, but it could be something else for RespOrg Exception
                customers.
              type: string
              xml:
                name: TargetRespOrgId
            triggered:
              description: >-
                The Triggered field must be set to true if you want an
                activation time other than the 11:30 AM ET default. The desired
                activation time can then be specified in the time portion of the
                RequestedFocDate. Triggered activation is not yet supported for
                toll-free port-in orders.
              type: string
              xml:
                name: Triggered
          type: object
          xml:
            name: LnpOrderResponse
      type: object
    lnpOrderPutResponseJson:
      properties:
        lnpOrderResponse:
          properties:
            billingTelephoneNumber:
              description: >-
                The BillingTelephoneNumber is the primary telephone number
                associated with the invoice that the subscriber gets from the
                losing carrier.
              type: string
            losingResellerName:
              description: >-
                Name of the company serving the telephone numbers prior to the
                port. Some Canada ports may be rejected unless this information
                is supplied.
              example: losingReseller
              type: string
            newBillingTelephoneNumber:
              description: >-
                This field is used to specify a new billing telephone number on
                the losing carrier account.
              type: string
            orderId:
              description: Unique orderId that is used to manage the order.
              example: 556f2688-6cb1-46ce-8016-6bbf0741a519
              format: uuid
              type: string
            processingStatus:
              description: The processing status of the order after it has been updated.
              enum:
                - REQUESTED_SUPP
              type: string
            requestedFocDate:
              description: >-
                This is the FOC (Firm Order Commitment) Date requested by the
                person (or machine) creating the Port-in Order.
              type: string
            status:
              properties:
                code:
                  type: integer
                description:
                  type: string
              type: object
            targetRespOrgId:
              description: >-
                This is the RespOrg ID that you want the toll-free numbers
                ported to. Normally it will specify a Bandwidth RespOrg ID like
                JYT01, but it could be something else for RespOrg Exception
                customers.
              type: string
            triggered:
              description: >-
                The Triggered field must be set to true if you want an
                activation time other than the 11:30 AM ET default. The desired
                activation time can then be specified in the time portion of the
                RequestedFocDate. Triggered activation is not yet supported for
                toll-free port-in orders.
              type: string
          type: object
      type: object
    lnpOrderResponse:
      properties:
        lnpOrderResponse:
          properties:
            billingTelephoneNumber:
              description: >-
                The BillingTelephoneNumber is the primary telephone number
                associated with the invoice that the subscriber gets from the
                losing carrier.
              type: string
              xml:
                name: BillingTelephoneNumber
            errors:
              properties:
                code:
                  description: Numeric designation of corresponding error.
                  type: integer
                  xml:
                    name: Code
                description:
                  description: Detailed explanation about the error.
                  type: string
                  xml:
                    name: Description
              type: object
              xml:
                name: Errors
            listOfPhoneNumbers:
              description: >-
                ListOfPhoneNumbers is an array of PhoneNumber. At least one
                PhoneNumber must be provided for all port-types.
              items:
                $ref: '#/components/schemas/phoneNumber'
              type: array
            loaAuthorizingPerson:
              description: >-
                The LoaAuthorizingPerson is mandatory for all port-types. This
                is the first and last names of the person that has authorized
                the port. The LoaAuthorizingPerson value may be up to 15
                characters in length.
              type: string
              xml:
                name: LoaAuthorizingPerson
            losingResellerName:
              description: >-
                Name of the company serving the telephone numbers prior to the
                port. Some Canada ports may be rejected unless this information
                is supplied.
              example: losingReseller
              type: string
              xml:
                name: LosingResellerName
            newBillingTelephoneNumber:
              description: >-
                This field is used to specify a new billing telephone number on
                the losing carrier account.
              type: string
              xml:
                name: NewBillingTelephoneNumber
            orderId:
              description: Unique orderId that is used to manage the order.
              example: 556f2688-6cb1-46ce-8016-6bbf0741a519
              format: uuid
              type: string
              xml:
                name: OrderId
            peerId:
              description: >-
                The numeric designation for the Location or SIP PEER ID that
                applied to the Port-in Order. The SIP Peer ID is used to provide
                a home within the location for the TN(s) that were ported in by
                the Port-in Order.
              type: string
              xml:
                name: PeerId
            processingStatus:
              description: >-
                The processing status of this order. Values may be: PROCESSING,
                COMPLETED, FAILED. PROCESSING means that the system is still
                processing the order. COMPLETED means that the order has been
                successfully completed. FAILED means that errors occurred while
                processing the order, and that the order did not make any
                changes to the system.
              enum:
                - PENDING_DOCUMENTS
              type: string
              xml:
                name: ProcessingStatus
            siteId:
              description: >-
                The numeric designation for the Site ID that applied to the
                Port-in Order. The SiteId is used to provide a home within the
                account for the TN(s) that were ported in by the Port-in Order.
              type: string
              xml:
                name: SiteId
            status:
              properties:
                code:
                  type: integer
                  xml:
                    name: Code
                description:
                  type: string
                  xml:
                    name: Description
              type: object
              xml:
                name: Status
            subscriber:
              $ref: '#/components/schemas/subscriber'
            tnAttributes:
              items:
                $ref: '#/components/schemas/tnAttribute'
              type: array
              xml:
                name: TnAttributes
            triggered:
              description: >-
                The Triggered field must be set to true if you want an
                activation time other than the 11:30 AM ET default. The desired
                activation time can then be specified in the time portion of the
                RequestedFocDate. Triggered activation is not yet supported for
                toll-free port-in orders.
              type: string
              xml:
                name: Triggered
            wirelessInfo:
              $ref: '#/components/schemas/wirelessInfo'
          type: object
          xml:
            name: LnpOrderResponse
      title: LNP Order Response
      type: object
    lnpOrderResponseAutomatedTollFree:
      properties:
        lnpOrderResponse:
          properties:
            errors:
              properties:
                code:
                  description: Numeric designation of corresponding error.
                  type: integer
                  xml:
                    name: Code
                description:
                  description: Detailed explanation about error.
                  type: string
                  xml:
                    name: Description
              type: object
              xml:
                name: Errors
            internal:
              description: >-
                This is set to true if the port-in is porting a toll free number
                that is already in service on a Bandwidth account. This value is
                only applicable to automated toll free port-ins.
              type: boolean
              xml:
                name: Internal
            listOfPhoneNumbers:
              description: >-
                ListOfPhoneNumbers is an array of PhoneNumber. At least one
                PhoneNumber must be provided for all port-types.
              items:
                $ref: '#/components/schemas/phoneNumber'
              type: array
            loaAuthorizingPerson:
              description: >-
                The LoaAuthorizingPerson is mandatory for all port-types. This
                is the first and last names of the person that has authorized
                the port. The LoaAuthorizingPerson value may be up to 15
                characters in length.
              type: string
              xml:
                name: LoaAuthorizingPerson
            orderId:
              description: Unique orderId that is used to manage the order.
              example: 556f2688-6cb1-46ce-8016-6bbf0741a519
              format: uuid
              type: string
              xml:
                name: OrderId
            peerId:
              description: >-
                The numeric designation for the Location or SIP PEER ID that
                applied to the Port-in Order. The SIP Peer ID is used to provide
                a home within the location for the TN(s) that were ported in by
                the Port-in Order.
              type: string
              xml:
                name: PeerId
            processingStatus:
              description: >-
                The processing status of this order. Values may be: PROCESSING,
                COMPLETED, FAILED. PROCESSING means that the system is still
                processing the order. COMPLETED means that the order has been
                successfully completed. FAILED means that errors occurred while
                processing the order, and that the order did not make any
                changes to the system.
              enum:
                - PENDING_DOCUMENTS
              type: string
              xml:
                name: ProcessingStatus
            respOrgException:
              description: >-
                This is set to true if the port-in is requesting the toll free
                numbers to be ported to a RespOrg ID that does not belong to
                Bandwidth. This value is only applicable to automated toll free
                port-ins.
              type: boolean
              xml:
                name: RespOrgException
            rocRequired:
              description: >-
                This is set to true if the port-in is getting ported from one
                RespOrg to another, and can be used to tell when a LOA document
                will be required for the port-in. This value is only applicable
                to automated toll free port-ins.
              type: boolean
              xml:
                name: RocRequired
            siteId:
              description: >-
                The numeric designation for the Site ID that applied to the
                Port-in Order. The SiteId is used to provide a home within the
                account for the TN(s) that were ported in by the Port-in Order.
              type: string
              xml:
                name: SiteId
            status:
              properties:
                code:
                  type: integer
                  xml:
                    name: Code
                description:
                  type: string
                  xml:
                    name: Description
              type: object
              xml:
                name: Status
            targetRespOrgId:
              description: >-
                The RespOrg ID that you are porting numbers to. This value is
                only applicable to automated toll free port-ins.
              type: string
              xml:
                name: TargetRespOrgId
          type: object
          xml:
            name: LnpOrderResponse
      title: Automated Toll-Free LNP Order Response
      type: object
    lnpOrderResponseAutomatedTollFreeJson:
      properties:
        errors:
          $ref: '#/components/schemas/lnpOrderResponseJson/properties/errors'
        internal:
          description: >-
            This is set to true if the port-in is porting a toll free number
            that is already in service on a Bandwidth account. This value is
            only applicable to automated toll free port-ins.
          type: boolean
        loaAuthorizingPerson:
          $ref: >-
            #/components/schemas/lnpOrderResponseJson/properties/loaAuthorizingPerson
        locationId:
          $ref: '#/components/schemas/lnpOrderResponseJson/properties/locationId'
        orderId:
          $ref: '#/components/schemas/lnpOrderResponseJson/properties/orderId'
        phoneNumbers:
          $ref: '#/components/schemas/lnpOrderResponseJson/properties/phoneNumbers'
        processingStatus:
          $ref: '#/components/schemas/portInProcessingStatusJson'
        respOrgException:
          description: >-
            This is set to true if the port-in is requesting the toll free
            numbers to be ported to a RespOrg ID that does not belong to
            Bandwidth. This value is only applicable to automated toll free
            port-ins.
          type: boolean
        rocRequired:
          description: >-
            This is set to true if the port-in is getting ported from one
            RespOrg to another, and can be used to tell when a LOA document will
            be required for the port-in. This value is only applicable to
            automated toll free port-ins.
          type: boolean
        status:
          $ref: '#/components/schemas/lnpOrderResponseJson/properties/status'
        subAccountId:
          $ref: '#/components/schemas/lnpOrderResponseJson/properties/subAccountId'
        targetRespOrgId:
          description: >-
            The RespOrg ID that you are porting numbers to. This value is only
            applicable to automated toll free port-ins.
          type: string
      title: Automated Toll-Free LNP Order Response
      type: object
    lnpOrderResponseCancelJson:
      properties:
        errors:
          items:
            $ref: '#/components/schemas/lnpErrorJson'
          type: array
        orderId:
          type: string
        processingStatus:
          $ref: '#/components/schemas/portInProcessingStatusJson'
        status:
          $ref: '#/components/schemas/statusJson'
      type: object
    lnpOrderResponseJson:
      properties:
        billingTelephoneNumber:
          description: >-
            The billingTelephoneNumber is the primary telephone number
            associated with the invoice that the subscriber gets from the losing
            carrier.
          type: string
        errors:
          items:
            $ref: '#/components/schemas/lnpErrorJson'
          type: array
        loaAuthorizingPerson:
          description: >-
            The loaAuthorizingPerson is mandatory for all port-types. This is
            the first and last names of the person that has authorized the port.
            The LoaAuthorizingPerson value may be up to 15 characters in length.
          maxLength: 15
          type: string
        locationId:
          description: >-
            The numeric designation for the Location or SIP PEER ID that applied
            to the Port-in Order. The locationId is used to provide a home
            within the location for the TN(s) that were ported in by the Port-in
            Order
          type: string
        newBillingTelephoneNumber:
          description: >-
            This field is used to specify a new billing telephone number on the
            losing carrier account.
          type: string
        orderId:
          description: Unique orderId that is used to manage the order.
          type: string
        phoneNumberAttributes:
          items:
            $ref: '#/components/schemas/phoneNumberAttributeJson'
          type: array
        phoneNumbers:
          description: >-
            phoneNumbers is an array of PhoneNumber. At least one PhoneNumber
            must be provided for all port-types.
          items:
            $ref: '#/components/schemas/phoneNumberJson'
          type: array
        processingStatus:
          $ref: '#/components/schemas/portInProcessingStatusJson'
        status:
          properties:
            code:
              type: integer
            description:
              type: string
          type: object
        subAccountId:
          description: >-
            The numeric designation for the Sub Account ID (aka Site Id) that
            applied to the Port-in Order. The siteId is used to provide a home
            within the account for the TN(s) that were ported in by the Port-in
            Order
          type: string
        subscriber:
          $ref: '#/components/schemas/subscriberJson'
        triggered:
          description: >-
            The triggered field must be set to true if you want an activation
            time other than the 11:30 AM ET default. The desired activation time
            can then be specified in the time portion of the requestedFocDate.
            Triggered activation is not yet supported for toll free port-in
            orders.
          type: boolean
        wirelessInfo:
          $ref: '#/components/schemas/wirelessInfoJson'
      title: LNP Order Response
      type: object
    lnpOrderSuppAutomatedOffNet:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFields'
        - $ref: '#/components/schemas/lnpOrderAdditionalModifiableFields'
      properties:
        Subscriber:
          allOf:
            - $ref: '#/components/schemas/portinSubscriberSupp'
          description: Cannot be SUPPed after FOC received.
          title: LnpOrderSupp
          type: object
      title: LnpOrderSupp
      type: object
    lnpOrderSuppAutomatedOffNetJson:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFieldsJson'
        - $ref: '#/components/schemas/lnpOrderAdditionalModifiableFieldsJson'
      properties:
        subscriber:
          allOf:
            - $ref: '#/components/schemas/portInSubscriberSuppJson'
          description: Cannot be SUPPed after FOC received.
          title: LnpOrderSupp
          type: object
      title: LnpOrderSupp
      type: object
    lnpOrderSuppAutomatedOnNet:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFields'
        - $ref: '#/components/schemas/lnpOrderAdditionalModifiableFields'
      properties:
        ListOfPhoneNumbers:
          items:
            $ref: '#/components/schemas/phoneNumber'
          type: array
        LoaAuthorizingPerson:
          type: string
        NewBillingTelephoneNumber:
          type: string
        PartialPort:
          type: string
        WirelessInfo:
          $ref: '#/components/schemas/wirelessInfoSupp'
      title: LnpOrderSupp
      type: object
    lnpOrderSuppAutomatedOnNetJson:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFieldsJson'
        - $ref: '#/components/schemas/lnpOrderAdditionalModifiableFieldsJson'
      properties:
        loaAuthorizingPerson:
          type: string
        newBillingTelephoneNumber:
          type: string
        partialPort:
          type: string
        phoneNumbers:
          items:
            description: Telephone Number in E.164 format.
            type: string
          type: array
        wirelessInfo:
          $ref: '#/components/schemas/wirelessInfoSuppJson'
      title: LnpOrderSupp
      type: object
    lnpOrderSuppAutomatedOnNetWireless:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFields'
        - $ref: '#/components/schemas/lnpOrderAdditionalModifiableFields'
      properties:
        ListOfPhoneNumbers:
          items:
            $ref: '#/components/schemas/phoneNumber'
          type: array
        WirelessInfo:
          $ref: '#/components/schemas/wirelessInfoSupp'
      title: LnpOrderSupp
      type: object
    lnpOrderSuppAutomatedOnNetWirelessJson:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFieldsJson'
        - $ref: '#/components/schemas/lnpOrderAdditionalModifiableFieldsJson'
      properties:
        phoneNumbers:
          items:
            description: Telephone Number in E.164 format.
            type: string
          type: array
        wirelessInfo:
          $ref: '#/components/schemas/wirelessInfoSuppJson'
      title: LnpOrderSupp
      type: object
    lnpOrderSuppAutomatedTollFree:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFields'
      properties:
        ListOfPhoneNumbers:
          description: >-
            May be SUPPed only in draft states (i.e. DRAFT, VALIDATE_DRAFT_TFNS,
            VALID_DRAFT_TFNS, or INVALID_DRAFT_TFNS)
          items:
            $ref: '#/components/schemas/phoneNumber'
          type: array
        LoaAuthorizingPerson:
          type: string
        RetryValidation:
          description: >-
            If 'TOLL_FREE_PORT_INS_PHASE_1' feature is enabled for account,
            Bandwidth accesses a vendor to determine if the numbers are
            portable, and if so, from which RespOrg. In the event that we do not
            receive a response from our vendor after a number of retries, we
            give up and place the order in the INVALID_TFNS or
            INVALID_DRAFT_TFNS state. This scenario can occur if our toll free
            porting vendor is performing maintenance, for example. Including
            RetryValidation with a value of true will cause the order to return
            to VALIDATE_TFNS or VALIDATE_DRAFT_TFNS and we will repeat our
            attempts to retrieve the portability data from the vendor. This
            element is included in the synchronous response to the PUT, when
            included in the request, but is not included in subsequent GET
            requests for the order.
          type: boolean
        TargetRespOrgId:
          description: >-
            This is the RespOrg ID that you want the toll free numbers ported
            to. Normally it will specify a Bandwidth RespOrg ID like JYT01, but
            it could be something else for RespOrg Exception customers. Because
            the TargetRespOrgId is mandatory for the toll free port-in order
            (but not mandatory for the PUT operation), omitting it in the PUT
            leaves the TargetRespOrgId unchanged. This field must be populated
            when a draft toll free port-in is submitted.
          maxLength: 5
          minLength: 5
          type: string
      title: LnpOrderSupp
      type: object
    lnpOrderSuppAutomatedTollFreeJson:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFieldsJson'
      properties:
        loaAuthorizingPerson:
          type: string
        phoneNumbers:
          description: >-
            May be SUPPed only in draft states (i.e. DRAFT, VALIDATE_DRAFT_TFNS,
            VALID_DRAFT_TFNS, or INVALID_DRAFT_TFNS)
          items:
            description: Telephone Number in E.164 format.
            type: string
          type: array
        retryValidation:
          description: >-
            If 'TOLL_FREE_PORT_INS_PHASE_1' feature is enabled for account,
            Bandwidth accesses a vendor to determine if the numbers are
            portable, and if so, from which RespOrg. In the event that we do not
            receive a response from our vendor after a number of retries, we
            give up and place the order in the INVALID_TFNS or
            INVALID_DRAFT_TFNS state. This scenario can occur if our toll free
            porting vendor is performing maintenance, for example. Including
            RetryValidation with a value of true will cause the order to return
            to VALIDATE_TFNS or VALIDATE_DRAFT_TFNS and we will repeat our
            attempts to retrieve the portability data from the vendor. This
            element is included in the synchronous response to the PUT, when
            included in the request, but is not included in subsequent GET
            requests for the order.
          type: boolean
        targetRespOrgId:
          description: >-
            This is the RespOrg ID that you want the toll free numbers ported
            to. Normally it will specify a Bandwidth RespOrg ID like JYT01, but
            it could be something else for RespOrg Exception customers. Because
            the TargetRespOrgId is mandatory for the toll free port-in order
            (but not mandatory for the PUT operation), omitting it in the PUT
            leaves the TargetRespOrgId unchanged. This field must be populated
            when a draft toll free port-in is submitted.
          maxLength: 5
          minLength: 5
          type: string
      title: LnpOrderSupp
      type: object
    lnpOrderSuppGlobalManual:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFields'
      properties:
        LosingCarrierName:
          description: The name of the losing carrier the telephone numbers belong to.
          type: string
        Subscriber:
          oneOf:
            - $ref: '#/components/schemas/manualGlobalSubscriberResidential'
            - $ref: '#/components/schemas/manualGlobalSubscriberBusiness'
      title: LnpOrderSupp
      type: object
    lnpOrderSuppGlobalManualJson:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFieldsJson'
      properties:
        losingCarrierName:
          description: The name of the losing carrier the telephone numbers belong to.
          type: string
        subscriber:
          oneOf:
            - $ref: '#/components/schemas/manualGlobalSubscriberResidentialJson'
            - $ref: '#/components/schemas/manualGlobalSubscriberBusinessJson'
      title: LnpOrderSupp
      type: object
    lnpOrderSuppHostedTN:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFields'
        - properties:
            losingCarrierName:
              description: The name of the losing carrier the telephone numbers belong to.
              type: string
              xml:
                name: LosingCarrierName
            operatorCode:
              $ref: '#/components/schemas/operatorCode'
            subscriber:
              oneOf:
                - $ref: '#/components/schemas/manualGlobalSubscriberResidential'
                - $ref: '#/components/schemas/manualGlobalSubscriberBusiness'
          title: LnpOrderSupp
          type: object
    lnpOrderSuppHostedTNJson:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFieldsJson'
        - properties:
            losingCarrierName:
              description: The name of the losing carrier the telephone numbers belong to.
              type: string
            operatorCode:
              $ref: '#/components/schemas/operatorCodeJson'
            subscriber:
              oneOf:
                - $ref: '#/components/schemas/manualGlobalSubscriberResidentialJson'
                - $ref: '#/components/schemas/manualGlobalSubscriberBusinessJson'
          title: LnpOrderSupp
          type: object
    lnpOrderSuppInternal:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFields'
        - $ref: '#/components/schemas/lnpOrderAdditionalModifiableFields'
      properties:
        LoaAuthorizingPerson:
          type: string
        NewBillingTelephoneNumber:
          type: string
        PartialPort:
          type: string
        WirelessInfo:
          $ref: '#/components/schemas/wirelessInfoSupp'
      title: LnpOrderSupp
      type: object
    lnpOrderSuppInternalJson:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFieldsJson'
        - $ref: '#/components/schemas/lnpOrderAdditionalModifiableFieldsJson'
      properties:
        loaAuthorizingPerson:
          type: string
        newBillingTelephoneNumber:
          type: string
        partialPort:
          type: string
        wirelessInfo:
          $ref: '#/components/schemas/wirelessInfoSuppJson'
      title: LnpOrderSupp
      type: object
    lnpOrderSuppManualOnNetOffNet:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFields'
        - $ref: '#/components/schemas/lnpOrderAdditionalModifiableFields'
      properties:
        LoaAuthorizingPerson:
          type: string
        NewBillingTelephoneNumber:
          type: string
        PartialPort:
          type: string
        WirelessInfo:
          $ref: '#/components/schemas/wirelessInfoSupp'
      title: LnpOrderSupp
      type: object
    lnpOrderSuppManualOnNetOffNetJson:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFieldsJson'
        - $ref: '#/components/schemas/lnpOrderAdditionalModifiableFieldsJson'
      properties:
        loaAuthorizingPerson:
          type: string
        newBillingTelephoneNumber:
          type: string
        partialPort:
          type: string
        wirelessInfo:
          $ref: '#/components/schemas/wirelessInfoSuppJson'
      title: LnpOrderSupp
      type: object
    lnpOrderSuppManualTollFree:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFields'
      properties:
        ListOfPhoneNumbers:
          description: May be SUPPed only in DRAFT state
          items:
            $ref: '#/components/schemas/phoneNumber'
          type: array
        LoaAuthorizingPerson:
          type: string
        Subscriber:
          properties:
            BusinessName:
              maxLength: 25
              type: string
            ServiceAddress:
              $ref: '#/components/schemas/portinSubscriberBasicServiceAddress'
            SubscriberType:
              enum:
                - BUSINESS
              type: string
          title: Subscriber
          type: object
      title: LnpOrderSupp
      type: object
    lnpOrderSuppManualTollFreeJson:
      allOf:
        - $ref: '#/components/schemas/lnpOrderBasicModifiableFieldsJson'
      properties:
        loaAuthorizingPerson:
          type: string
        phoneNumbers:
          description: May be SUPPed only in DRAFT state
          items:
            description: Telephone Number in E.164 format.
            type: string
          type: array
        subscriber:
          properties:
            businessName:
              maxLength: 25
              type: string
            serviceAddress:
              $ref: '#/components/schemas/portInSubscriberBasicServiceAddressJson'
            subscriberType:
              enum:
                - BUSINESS
              type: string
          title: Subscriber
          type: object
      title: LnpOrderSupp
      type: object
    lnpOrderSuppResponseHostedTN:
      properties:
        lnpOrderResponse:
          properties:
            operatorCode:
              $ref: '#/components/schemas/operatorCode'
            orderId:
              description: Unique orderId that is used to manage the order.
              example: 556f2688-6cb1-46ce-8016-6bbf0741a519
              format: uuid
              type: string
              xml:
                name: OrderId
            processingStatus:
              enum:
                - REQUESTED_SUPP
              type: string
              xml:
                name: ProcessingStatus
            status:
              properties:
                code:
                  example: 200
                  type: integer
                  xml:
                    name: Code
                description:
                  example: >-
                    Supp request received. Please use the order id to check the
                    status of your order later.
                  type: string
                  xml:
                    name: Description
              type: object
              xml:
                name: Status
          type: object
          xml:
            name: LnpOrderResponse
      type: object
    lnpOrderSuppResponseHostedTNJson:
      properties:
        lnpOrderResponse:
          properties:
            operatorCode:
              $ref: '#/components/schemas/operatorCodeJson'
            orderId:
              description: Unique orderId that is used to manage the order.
              example: 556f2688-6cb1-46ce-8016-6bbf0741a519
              format: uuid
              type: string
            processingStatus:
              enum:
                - REQUESTED_SUPP
              type: string
            status:
              properties:
                code:
                  example: 200
                  type: integer
                description:
                  example: >-
                    Supp request received. Please use the order id to check the
                    status of your order later.
                  type: string
              type: object
          type: object
      type: object
    lnpPortInfoForGivenStatus:
      properties:
        accountId:
          description: >-
            This is the account that the searched-for order will be contributing
            to. Specifying this parameter will restrict the search to port-in
            orders within the specified account.
          type: integer
          xml:
            name: AccountId
        actualFOCDate:
          description: >-
            This is the FOC (Firm Order Commitment) Date assigned to the Port-in
            Order by the losing carrier or their agent.
          type: string
          xml:
            name: ActualFOCDate
        billingTelephoneNumber:
          description: >-
            The BillingTelephoneNumber is the primary telephone number
            associated with the invoice that the subscriber gets from the losing
            carrier.
          type: string
          xml:
            name: BillingTelephoneNumber
        companyName:
          description: Name associated with the Bandwidth App account.
          type: string
          xml:
            name: CompanyName
        countOfTNs:
          description: Total count of telephone numbers in order.
          type: integer
          xml:
            name: CountOfTNs
        countryCodeA3:
          description: The country to which the telephone number belongs.
          type: string
          xml:
            name: CountryCodeA3
        lNPLosingCarrierId:
          description: Internal use only.
          type: string
          xml:
            name: LNPLosingCarrierId
        lNPLosingCarrierName:
          description: The carrier that the telephone numbers are being ported away from.
          type: string
          xml:
            name: LNPLosingCarrierName
        lastModifiedDate:
          description: This is the date when Port-in Order was last modified.
          type: string
          xml:
            name: LastModifiedDate
        operatorCode:
          $ref: '#/components/schemas/operatorCode'
        operatorRoutingPrefix:
          $ref: '#/components/schemas/operatorRoutingPrefix'
        orderDate:
          type: string
          xml:
            name: OrderDate
        orderId:
          description: This is Bandwidth Order ID.
          type: string
          xml:
            name: OrderId
        orderType:
          type: string
          xml:
            name: OrderType
        phoneNumberType:
          description: >-
            The type of phone number that is being ported in. This parameter is
            used to identify the type of phone number that is being ported in.
          type: string
          xml:
            name: PhoneNumberType
        pon:
          description: >-
            A PON (Port Order Number) is a system-generated order number
            assigned to port orders to easily identify individual requests.
          type: string
          xml:
            name: PON
        processingStatus:
          description: >-
            The processing status of this order. Values may be: PROCESSING,
            COMPLETED, FAILED. PROCESSING means that the system is still
            processing the order. COMPLETED means that the order has been
            successfully completed. FAILED means that errors occurred while
            processing the order, and that the order did not make any changes to
            the system.
          type: string
          xml:
            name: ProcessingStatus
        requestedFOCDate:
          description: >-
            This is the FOC (Firm Order Commitment) Date requested by the person
            (or machine) creating the Port-in Order.
          type: string
          xml:
            name: RequestedFOCDate
        userId:
          description: Bandwidth user ID.
          type: string
          xml:
            name: UserId
        vendorId:
          description: Internal use only.
          type: string
          xml:
            name: VendorId
        vendorName:
          type: string
          xml:
            name: VendorName
      type: object
    lnpResponseWrapper:
      properties:
        lnpResponseWrapper:
          properties:
            links:
              $ref: '#/components/schemas/links'
            lnpPortInfoForGivenStatus:
              $ref: '#/components/schemas/lnpPortInfoForGivenStatus'
            totalCount:
              type: integer
              xml:
                name: TotalCount
          type: object
          xml:
            name: LNPResponseWrapper
      type: object
    losingCarrier:
      description: The carrier that the phone number will be ported from
      properties:
        name:
          description: Name of the losing carrier
          example: Bandwidth
          type: string
        spid:
          description: Service profile identifier
          example: 979E
          type: string
      type: object
    losingCarrierRequestSchema:
      description: Fields for a new losing carrier.
      properties:
        countryCodeA3:
          $ref: '#/components/schemas/countryCodeA3'
        name:
          example: Altitude Telecome
          type: string
        phoneNumberType:
          $ref: '#/components/schemas/phoneNumberType'
      type: object
    losingCarrierResponseSchema:
      description: Fields for a new losing carrier.
      properties:
        data:
          properties:
            countryCodeA3:
              $ref: '#/components/schemas/countryCodeA3'
            createdDatetime:
              $ref: '#/components/schemas/createdDateTime'
            id:
              description: The unique identifier for the losing carrier.
              example: cce315ec-6fcc-4ac9-b640-b17693403314
              title: Losing Carrier ID
              type: string
            name:
              description: The losing carrier name.
              example: Altitude Telecome
              title: Losing Carrier Name
              type: string
            phoneNumberType:
              $ref: '#/components/schemas/phoneNumberType'
            updatedDatetime:
              $ref: '#/components/schemas/updatedDateTime'
          type: object
        errors:
          example: []
          items:
            $ref: '#/components/schemas/error'
          type: array
        links:
          $ref: '#/components/schemas/link'
      type: object
    losingCarrierTnList:
      properties:
        LosingCarrierAccountNumberRequired:
          title: Losing Carrier Account Number Required
          type: boolean
        LosingCarrierIsWireless:
          title: Losing Carrier IsWireless
          type: boolean
        LosingCarrierMinimumPortingInterval:
          title: Losing Carrier Minimum Porting Interval
          type: integer
        LosingCarrierName:
          title: Losing Carrier Name
          type: string
        LosingCarrierSPID:
          title: Losing Carrier SPID
          type: integer
        TnList:
          $ref: '#/components/schemas/lnpCheckerTnList'
      title: Losing Carrier TnList
      type: object
    lsrOrder:
      properties:
        LsrOrder:
          $ref: '#/components/schemas/lsrOrderPayload'
      type: object
    lsrOrderError:
      properties:
        Code:
          description: Numeric designation of corresponding error.
          format: int32
          type: integer
        Description:
          description: Detailed explanation about error.
          type: string
      type: object
    lsrOrderErrorResponse:
      properties:
        LsrOrderResponse:
          properties:
            LsrOrder:
              $ref: '#/components/schemas/lsrOrderPayload'
            LsrOrderErrors:
              items:
                $ref: '#/components/schemas/lsrOrderError'
              type: array
            ResponseStatus:
              $ref: '#/components/schemas/responseStatus'
          type: object
      type: object
    lsrOrderHistoryResponse:
      properties:
        LsrOrders:
          properties:
            LsrOrderSummary:
              items:
                properties:
                  ActualFocDate:
                    description: >-
                      This is the FOC (Firm Order Commitment) date assigned to
                      the Port-in Order by the losing carrier or their agent.
                    type: string
                  BillingTelephoneNumber:
                    description: >-
                      The BillingTelephoneNumber is the primary telephone number
                      associated with the invoice that the subscriber gets from
                      the losing carrier.
                    type: string
                  CountOfTNs:
                    description: Total count of telephone numbers in order.
                    type: integer
                  CreatedByUser:
                    description: The username of the person that created the order.
                    type: string
                  CustomerOrderId:
                    description: >-
                      The customer-defined reference ID for this order, if one
                      was provided at creation. Not unique — Bandwidth applies
                      no uniqueness constraint, so multiple orders may share the
                      same value. Each order has a distinct Bandwidth-assigned
                      `orderId`.
                    type: string
                  OrderDate:
                    description: >-
                      A specific date on which you wish to see modifications to
                      a LSR order.
                    type: string
                  OrderId:
                    description: The identifier that uniquely identifies a LSR order.
                    type: string
                  OrderStatus:
                    description: The state of the LSR order.
                    type: string
                  OrderType:
                    type: string
                  Pon:
                    description: The PON that is referenced in the LSR order.
                    type: string
                  PonVersion:
                    type: string
                  RequestedFocDate:
                    description: >-
                      This is the FOC (Firm Order Commitment) date requested by
                      the person (or machine) creating the LSR order.
                    type: string
                  accountId:
                    description: >-
                      This is the account that the searched-for order will be
                      contributing to. Specifying this parameter will restrict
                      the search to portin orders within the specified account.
                    type: integer
                  lastModifiedDate:
                    description: This is the date when LSR order was last modified.
                    type: string
                  userId:
                    description: >-
                      The UserId is authenticated for access to the network via
                      a username string.
                    type: string
                type: object
              type: array
            TotalCount:
              type: integer
          type: object
      type: object
    lsrOrderNotFoundResponse:
      properties:
        LsrOrderResponse:
          $ref: '#/components/schemas/responseStatus'
      type: object
    lsrOrderPayload:
      properties:
        AuthorizingPerson:
          description: Authorizing person
          format: Alphanumeric
          maxLength: 100
          type: string
        BillingTelephoneNumber:
          description: >-
            The billing telephone number associated with the phone numbers that
            are being ported. Non-toll-free.
          format: Numeric
          maxLength: 10
          type: string
        CountOfTNs:
          description: Total count of telephone numbers in order.
          type: string
        CustomerOrderId:
          description: >-
            Optional customer-defined reference ID for this order. Only
            alphanumeric values, dashes and spaces are allowed. Not unique —
            Bandwidth applies no uniqueness constraint, so multiple orders may
            share the same value. Each order receives its own unique
            Bandwidth-assigned `orderId`.
          maxLength: 255
          type: string
        ListOfTelephoneNumbers:
          description: Toll-free number not allowed
          items:
            $ref: '#/components/schemas/telephoneNumber'
          type: array
        LsrOrderErrors:
          items:
            $ref: '#/components/schemas/lsrOrderError'
          type: array
        PartialPort:
          description: >-
            The PartialPort must be set to true if the intent is to NOT port all
            of the telephone numbers associated with the BillingTelephoneNumber.
            If PartialPort is omitted or false, and the ListOfPhoneNumbers does
            not include all of the telephone numbers associated with the
            BillingTelephoneNumber, the port-in will be rejected.  PartialPort
            is applicable only to on-net port-types. This element is not
            applicable to toll free or off-net port-in orders.
          type: boolean
        PeerId:
          description: >-
            The numeric designation for the Location or SIP Peer ID that applied
            to the LSR order. The SIP Peer ID is used to provide a home within
            the location for the TN(s) that were ported in by the LSR Order.
          format: int32
          type: integer
        Pon:
          description: The Pon is customer specified order identifier field.(required)
          format: Alphanumeric and "#","-","_".
          maxLength: 25
          type: string
        PonVersion:
          format: int32
          type: integer
        RequestedFocDate:
          description: >-
            This is the FOC (Firm Order Commitment) date requested when creating
            the LSR order (not past, default next day).
          type: string
        SPID:
          description: >-
            The NPAC SPID corresponding to the carrier that the phone numbers
            are porting to (required if account value 'mult').
          maxLength: 4
          type: string
        SiteId:
          description: >-
            The numeric designation for the Site ID that applied to the LSR
            order. The SiteId is used to provide a home within the account for
            the TN(s) that were ported in by the LSR order.
          format: int32
          type: integer
        Subscriber:
          properties:
            AccountNumber:
              description: Account number
              format: Alphanumeric
              maxLength: 32
              type: string
            BusinessName:
              description: >-
                Subscriber business name for BUSINESS SubscriberType. (required
                BusinessName or LastName)
              maxLength: 25
              type: string
            FirstName:
              description: Subscriber first name for RESIDENTIAL SubscriberType.
              maxLength: 25
              type: string
            LastName:
              description: >-
                Subscriber last name for RESIDENTIAL SubscriberType. (required
                BusinessName or LastName)
              maxLength: 25
              type: string
            MiddleInitial:
              description: Subscriber middle initial for RESIDENTIAL SubscriberType.
              maxLength: 1
              type: string
            Name:
              description: >-
                If the subscriber type is business, the subscriber name is the
                name of the business responsible for the numbers being ported.
                If the subscriber type is residential, the subscriber name is
                the name of the person responsible for the numbers being ported.
              type: string
            PinNumber:
              description: Pin number
              format: Alphanumeric
              maxLength: 10
              type: string
            ServiceAddress:
              properties:
                AddressLine2:
                  description: >-
                    AddressLine2 is used to specify Unit, Suite, Floor, etc. in
                    the Service Address. AddressLine2 is optional when not
                    needed to fully specify the ServiceAddress.
                  maxLength: 200
                  type: string
                AddressType:
                  $ref: '#/components/schemas/addressType'
                City:
                  description: >-
                    City is mandatory in cases where the ServiceAddress is
                    mandatory.
                  maxLength: 100
                  type: string
                Country:
                  description: >-
                    Country is the country of the ServiceAddress. This value
                    will be derived from the StateCode, so it should generally
                    be omitted.
                  type: string
                County:
                  description: The county where the subscriber or business is located.
                  maxLength: 45
                  type: string
                HouseNumber:
                  description: >-
                    The HouseNumber is the street address number of the
                    ServiceAddress. HouseNumber is mandatory for port-in orders
                    in which the ServiceAddress is mandatory.
                  maxLength: 45
                  type: string
                HousePrefix:
                  description: >-
                    The HousePrefix is the non-numeric address number prefix of
                    the ServiceAddress. This element is optional when not needed
                    to fully specify the ServiceAddress.
                  maxLength: 6
                  type: string
                HouseSuffix:
                  description: >-
                    The HouseSuffix is the non-numeric address number suffix of
                    the ServiceAddress. This element is optional when not needed
                    to fully specify the ServiceAddress.
                  maxLength: 45
                  type: string
                PlusFour:
                  description: >-
                    PlusFour is the 4 digits that are sometimes suffixed to the
                    Zip Code.
                  type: string
                PostDirectional:
                  description: >-
                    The PostDirectional is the street name post directional of
                    the ServiceAddress. This element is optional when not needed
                    to fully specify the ServiceAddress.
                  maxLength: 2
                  type: string
                PreDirectional:
                  description: >-
                    The PreDirectional is the non-numeric street name prefix of
                    the ServiceAddress. This element is optional when not needed
                    to fully specify the ServiceAddress.
                  maxLength: 2
                  type: string
                StateCode:
                  description: >-
                    StateCode is the 2-letter abbreviation of the state of the
                    ServiceAddress. StateCode is mandatory in cases where the
                    ServiceAddress is mandatory.
                  maxLength: 2
                  type: string
                StreetName:
                  description: >-
                    The StreetName is mandatory in cases where the
                    ServiceAddress is mandatory.
                  maxLength: 200
                  type: string
                StreetSuffix:
                  description: >-
                    The StreetSuffix is the street suffix of the ServiceAddress.
                    This element is optional when not needed to fully specify
                    the ServiceAddress.
                  maxLength: 45
                  type: string
                Zip:
                  description: >-
                    Zip is the Zip Code of the ServiceAddress. Zip is mandatory
                    in cases where the ServiceAddress is mandatory.
                  format: 'Allowed formats: 5 numbers, 5+4 or Canadian'
                  type: string
              required:
                - HouseNumber
                - StreetName
                - City
                - StateCode
                - Zip
              type: object
            SubscriberType:
              description: Subscriber type. (Defaults to RESIDENTIAL if not specified)
              enum:
                - BUSINESS
                - RESIDENTIAL
              type: string
          required:
            - BusinessName
            - LastName
            - ServiceAddress
          type: object
      required:
        - Pon
        - SPID
        - Subscriber
        - ListOfTelephoneNumbers
        - AuthorizingPerson
      type: object
    lsrOrderResponse:
      properties:
        LsrOrderResponse:
          properties:
            LsrOrder:
              $ref: '#/components/schemas/lsrOrderPayload'
          type: object
      type: object
    mM4Settings:
      properties:
        AllowMultiRecepient:
          type: boolean
        AsyncMessageFlowSupported:
          type: boolean
        ConnMessageRatio:
          type: integer
        ConnSentTimeout:
          type: integer
        ConnValidWindow:
          type: integer
        Domain:
          type: string
        ForceAck:
          type: boolean
        KeepAliveNoop:
          type: boolean
        LoopAllowed:
          type: boolean
        MaxConn:
          type: integer
        MaxMessagesInQueue:
          type: integer
        PersistentConn:
          type: boolean
        SkipAck:
          type: boolean
      type: object
    manualGlobalBetaLnpOrderRequest:
      properties:
        LnpOrder:
          allOf:
            - properties:
                CustomerOrderId:
                  description: >-
                    Optional customer-defined reference ID for this order. Only
                    alphanumeric values, dashes and spaces are allowed. Not
                    unique — Bandwidth applies no uniqueness constraint, so
                    multiple orders may share the same value. Each order
                    receives its own unique Bandwidth-assigned `orderId`.
                  maxLength: 255
                  type: string
                ListOfPhoneNumbers:
                  description: >-
                    `ListOfPhoneNumbers` is an array of `PhoneNumber`. At least
                    one `PhoneNumber` must be provided.
                  items:
                    properties:
                      PhoneNumber:
                        description: >-
                          One or more phone numbers is required. <br/>Use a
                          `<PhoneNumber>` tag for each phone number in the
                          `<ListOfPhoneNumbers>` list.
                        format: E164 phone number with no dots or dashes
                        type: string
                    type: object
                  type: array
                LosingCarrierName:
                  description: >-
                    `LosingCarrierName` specifies the name of the losing
                    carrier 
                  type: string
                PeerId:
                  description: >-
                    `PeerId` specifies the numeric identifier of the SIP-peer
                    (Location) that the telephone numbers will be ported
                    into.<br/><br/>You can find the identifier for a SIP-peer
                    (location) by using `GET /accounts/id/sites/id/sippeers`, or
                    by clicking on 'Accounts' on the upper right of the
                    [Bandwidth App](Https://api.bandwidth.com), then clicking
                    'Locations' on the navigation bar. The SIP-peer (location)
                    identifiers are listed next to each location name. If
                    `PeerId` is omitted, the SIP-peer (location) designated as
                    the 'default location' for that site (sub-account) will be
                    used.
                  type: string
                RequestedFocDate:
                  description: >-
                    Format: ISO8601 encoding such as "2019-10-31".<br/><br/>For
                    global ports, if `RequestedFocDate` is specified the time
                    portions will be ignored and the date portion must be:<br/>
                    - in the future<br/> - not on a weekend.
                  type: string
                SiteId:
                  description: >-
                    `SiteId` specifies the identifier of the site (sub-account)
                    that the telephone numbers will be ported into.<br/><br/>You
                    can find the identifier for a site (sub-account) by using
                    `GET /accounts/id/sites`, or by clicking on 'Manage
                    sub-account' for the desired sub-account on the main page of
                    the Bandwidth App.
                  format: int32
                  type: integer
                Subscriber:
                  oneOf:
                    - $ref: '#/components/schemas/manualGlobalSubscriberResidential'
                    - $ref: '#/components/schemas/manualGlobalSubscriberBusiness'
              required:
                - SiteId
                - ListOfPhoneNumbers
                - LosingCarrierName
                - Subscriber
              type: object
      title: Manual Global LNP Order Request with UK Numbers (Beta)
      type: object
    manualGlobalBetaLnpOrderRequestJson:
      properties:
        lnpOrder:
          allOf:
            - properties:
                customerOrderId:
                  description: >-
                    Optional customer-defined reference ID for this order. Only
                    alphanumeric values, dashes and spaces are allowed. Not
                    unique — Bandwidth applies no uniqueness constraint, so
                    multiple orders may share the same value. Each order
                    receives its own unique Bandwidth-assigned `orderId`.
                  maxLength: 255
                  type: string
                locationId:
                  description: >-
                    `LocationId` specifies the numeric identifier of the
                    SIP-peer (Location) that the telephone numbers will be
                    ported into.<br/><br/>You can find the identifier for a
                    SIP-peer (location) by using `GET
                    /accounts/id/sites/id/sippeers`, or by clicking on
                    'Accounts' on the upper right of the [Bandwidth
                    App](Https://api.bandwidth.com), then clicking 'Locations'
                    on the navigation bar. The SIP-peer (location) identifiers
                    are listed next to each location name. If `LocationId` is
                    omitted, the SIP-peer (location) designated as the 'default
                    location' for that site (sub-account) will be used.
                  type: string
                losingCarrierName:
                  description: >-
                    `LosingCarrierName` specifies the name of the losing
                    carrier 
                  type: string
                phoneNumbers:
                  $ref: '#/components/schemas/phoneNumbersJson'
                requestedFocDate:
                  description: >-
                    Format: ISO8601 encoding such as "2019-10-31".<br/><br/>For
                    global ports, if `RequestedFocDate` is specified the time
                    portions will be ignored and the date portion must be:<br/>
                    - in the future<br/> - not on a weekend.
                  type: string
                subAccountId:
                  description: >-
                    `SubAccountId` specifies the identifier of the site
                    (sub-account) that the telephone numbers will be ported
                    into.<br/><br/>You can find the identifier for a site
                    (sub-account) by using `GET /accounts/id/sites`, or by
                    clicking on 'Manage sub-account' for the desired sub-account
                    on the main page of the Bandwidth Dashboard.
                  format: int32
                  type: integer
                subscriber:
                  oneOf:
                    - $ref: >-
                        #/components/schemas/manualGlobalSubscriberResidentialJson
                    - $ref: '#/components/schemas/manualGlobalSubscriberBusinessJson'
              required:
                - subAccountId
                - phoneNumbers
                - losingCarrierName
                - subscriber
              type: object
      title: Manual Global LNP Order Request with UK Numbers (Beta)
      type: object
    manualGlobalDraftLnpOrderRequest:
      properties:
        LnpOrder:
          allOf:
            - properties:
                CustomerOrderId:
                  description: >-
                    Optional customer-defined reference ID for this order. Only
                    alphanumeric values, dashes and spaces are allowed. Not
                    unique — Bandwidth applies no uniqueness constraint, so
                    multiple orders may share the same value. Each order
                    receives its own unique Bandwidth-assigned `orderId`.
                  maxLength: 255
                  type: string
                ListOfPhoneNumbers:
                  description: >-
                    `ListOfPhoneNumbers` is an array of `PhoneNumber`. At least
                    one `PhoneNumber` must be provided.
                  items:
                    properties:
                      PhoneNumber:
                        description: >-
                          One or more phone numbers is required. <br/>Use a
                          `<PhoneNumber>` tag for each phone number in the
                          `<ListOfPhoneNumbers>` list.
                        format: E164 phone number with no dots or dashes
                        type: string
                    type: object
                  type: array
                LosingCarrierName:
                  description: >-
                    `LosingCarrierName` specifies the name of the losing
                    carrier 
                  type: string
                PeerId:
                  description: >-
                    `PeerId` specifies the numeric identifier of the SIP-peer
                    (Location) that the telephone numbers will be ported
                    into.<br/><br/>You can find the identifier for a SIP-peer
                    (location) by using `GET /accounts/id/sites/id/sippeers`, or
                    by clicking on 'Accounts' on the upper right of the
                    [Bandwidth App](Https://api.bandwidth.com), then clicking
                    'Locations' on the navigation bar. The SIP-peer (location)
                    identifiers are listed next to each location name. If
                    `PeerId` is omitted, the SIP-peer (location) designated as
                    the 'default location' for that site (sub-account) will be
                    used.
                  type: string
                ProcessingStatus:
                  description: >-
                    Including `ProcessingStatus` with a value of DRAFT allows
                    you to create a port-in request, but not process the
                    request. This is useful if you wish to add items to the
                    order over a period of time and submit once you have the
                    order setup the way you want. Note, however, that draft
                    orders that have not been updated in a couple of days are
                    automatically deleted. Removal of stagnant draft orders is
                    performed so that telephone numbers are not tied up in these
                    orders, preventing them from being included in other
                    orders.<br/><br/>Very little validation is performed while
                    an order is in draft state. Omitting `ProcessingStatus`
                    causes the port-in to be validated and, if correct,
                    processed right away. The full validation is performed on
                    the order when you change the ProcessingStatus to
                    'SUBMITTED' by performing a PUT request on the order.
                    <br><br><p>All toll free telephone numbers provided will be
                    validated (even in draft state) to ensure

                    that they are portable, and to allow you to separate
                    telephone numbers into separate port-ins

                    based on the RespOrg that they are being ported from.</p>
                  enum:
                    - DRAFT
                  type: string
                RequestedFocDate:
                  description: >-
                    Format: ISO8601 encoding such as "2019-10-31".<br/><br/>For
                    global ports, if `RequestedFocDate` is specified the time
                    portions will be ignored and the date portion must be:<br/>
                    - in the future<br/> - not on a weekend.
                  type: string
                SiteId:
                  description: >-
                    `SiteId` specifies the identifier of the site (sub-account)
                    that the telephone numbers will be ported into.<br/><br/>You
                    can find the identifier for a site (sub-account) by using
                    `GET /accounts/id/sites`, or by clicking on 'Manage
                    sub-account' for the desired sub-account on the main page of
                    the Bandwidth App.
                  format: int32
                  type: integer
                Subscriber:
                  oneOf:
                    - $ref: '#/components/schemas/manualGlobalSubscriberResidential'
                    - $ref: '#/components/schemas/manualGlobalSubscriberBusiness'
              required:
                - ListOfPhoneNumbers
              type: object
      title: Manual Global Draft LNP Order Request
      type: object
    manualGlobalDraftLnpOrderRequestJson:
      properties:
        lnpOrder:
          allOf:
            - properties:
                customerOrderId:
                  description: >-
                    Optional customer-defined reference ID for this order. Only
                    alphanumeric values, dashes and spaces are allowed. Not
                    unique — Bandwidth applies no uniqueness constraint, so
                    multiple orders may share the same value. Each order
                    receives its own unique Bandwidth-assigned `orderId`.
                  maxLength: 255
                  type: string
                locationId:
                  description: >-
                    `LocationId` specifies the numeric identifier of the
                    SIP-peer (Location) that the telephone numbers will be
                    ported into.<br/><br/>You can find the identifier for a
                    SIP-peer (location) by using `GET
                    /accounts/id/sites/id/sippeers`, or by clicking on
                    'Accounts' on the upper right of the [Bandwidth
                    App](Https://api.bandwidth.com), then clicking 'Locations'
                    on the navigation bar. The SIP-peer (location) identifiers
                    are listed next to each location name. If `LocationId` is
                    omitted, the SIP-peer (location) designated as the 'default
                    location' for that site (sub-account) will be used.
                  type: string
                losingCarrierName:
                  description: >-
                    `LosingCarrierName` specifies the name of the losing
                    carrier 
                  type: string
                phoneNumbers:
                  $ref: '#/components/schemas/phoneNumbersJson'
                processingStatus:
                  description: >-
                    Including `ProcessingStatus` with a value of DRAFT allows
                    you to create a port-in request, but not process the
                    request. This is useful if you wish to add items to the
                    order over a period of time and submit once you have the
                    order setup the way you want. Note, however, that draft
                    orders that have not been updated in a couple of days are
                    automatically deleted. Removal of stagnant draft orders is
                    performed so that telephone numbers are not tied up in these
                    orders, preventing them from being included in other
                    orders.<br/><br/>Very little validation is performed while
                    an order is in draft state. Omitting `ProcessingStatus`
                    causes the port-in to be validated and, if correct,
                    processed right away. The full validation is performed on
                    the order when you change the ProcessingStatus to
                    'SUBMITTED' by performing a PUT request on the order.
                    <br><br><p>All toll free telephone numbers provided will be
                    validated (even in draft state) to ensure

                    that they are portable, and to allow you to separate
                    telephone numbers into separate port-ins

                    based on the RespOrg that they are being ported from.</p>
                  enum:
                    - DRAFT
                  type: string
                requestedFocDate:
                  description: >-
                    Format: ISO8601 encoding such as "2019-10-31".<br/><br/>For
                    global ports, if `RequestedFocDate` is specified the time
                    portions will be ignored and the date portion must be:<br/>
                    - in the future<br/> - not on a weekend.
                  type: string
                subAccountId:
                  description: >-
                    `SubAccountId` specifies the identifier of the site
                    (sub-account) that the telephone numbers will be ported
                    into.<br/><br/>You can find the identifier for a site
                    (sub-account) by using `GET /accounts/id/sites`, or by
                    clicking on 'Manage sub-account' for the desired sub-account
                    on the main page of the Bandwidth Dashboard.
                  format: int32
                  type: integer
                subscriber:
                  oneOf:
                    - $ref: >-
                        #/components/schemas/manualGlobalSubscriberResidentialJson
                    - $ref: '#/components/schemas/manualGlobalSubscriberBusinessJson'
              required:
                - phoneNumbers
              type: object
      title: Manual Global Draft LNP Order Request
      type: object
    manualGlobalLarLnpOrderRequest:
      properties:
        LnpOrder:
          allOf:
            - properties:
                CustomerOrderId:
                  description: >-
                    Optional customer-defined reference ID for this order. Only
                    alphanumeric values, dashes and spaces are allowed. Not
                    unique — Bandwidth applies no uniqueness constraint, so
                    multiple orders may share the same value. Each order
                    receives its own unique Bandwidth-assigned `orderId`.
                  maxLength: 255
                  type: string
                ListOfPhoneNumbers:
                  description: >-
                    `ListOfPhoneNumbers` is an array of `PhoneNumber`. At least
                    one `PhoneNumber` must be provided.
                  items:
                    properties:
                      PhoneNumber:
                        description: >-
                          One or more phone numbers is required. <br/>Use a
                          `<PhoneNumber>` tag for each phone number in the
                          `<ListOfPhoneNumbers>` list.
                        format: E164 phone number with no dots or dashes
                        type: string
                    type: object
                  type: array
                LosingCarrierName:
                  description: >-
                    `LosingCarrierName` specifies the name of the losing
                    carrier 
                  type: string
                PeerId:
                  description: >-
                    `PeerId` specifies the numeric identifier of the SIP-peer
                    (Location) that the telephone numbers will be ported
                    into.<br/><br/>You can find the identifier for a SIP-peer
                    (location) by using `GET /accounts/id/sites/id/sippeers`, or
                    by clicking on 'Accounts' on the upper right of the
                    [Bandwidth App](Https://api.bandwidth.com), then clicking
                    'Locations' on the navigation bar. The SIP-peer (location)
                    identifiers are listed next to each location name. If
                    `PeerId` is omitted, the SIP-peer (location) designated as
                    the 'default location' for that site (sub-account) will be
                    used.
                  type: string
                RequestedFocDate:
                  description: >-
                    Format: ISO8601 encoding such as "2019-10-31".<br/><br/>For
                    global ports, if `RequestedFocDate` is specified the time
                    portions will be ignored and the date portion must be:<br/>
                    - in the future<br/> - not on a weekend.
                  type: string
                RequirementsPackageId:
                  $ref: '#/components/schemas/requirementsPackageId'
                SiteId:
                  description: >-
                    `SiteId` specifies the identifier of the site (sub-account)
                    that the telephone numbers will be ported into.<br/><br/>You
                    can find the identifier for a site (sub-account) by using
                    `GET /accounts/id/sites`, or by clicking on 'Manage
                    sub-account' for the desired sub-account on the main page of
                    the Bandwidth App.
                  format: int32
                  type: integer
                Subscriber:
                  oneOf:
                    - $ref: '#/components/schemas/manualGlobalSubscriberResidential'
                    - $ref: '#/components/schemas/manualGlobalSubscriberBusiness'
                VoiceConfigurationPackageId:
                  $ref: '#/components/schemas/voiceConfigurationPackageId'
              required:
                - SiteId
                - ListOfPhoneNumbers
                - LosingCarrierName
                - Subscriber
                - VoiceConfigurationPackageId
              type: object
      title: Manual Global LNP Order Request with KYC
      type: object
    manualGlobalLarLnpOrderRequestJson:
      properties:
        lnpOrder:
          allOf:
            - properties:
                customerOrderId:
                  description: >-
                    Optional customer-defined reference ID for this order. Only
                    alphanumeric values, dashes and spaces are allowed. Not
                    unique — Bandwidth applies no uniqueness constraint, so
                    multiple orders may share the same value. Each order
                    receives its own unique Bandwidth-assigned `orderId`.
                  maxLength: 255
                  type: string
                locationId:
                  description: >-
                    `locationId` specifies the numeric identifier of the
                    SIP-peer (Location) that the telephone numbers will be
                    ported into.<br/><br/>You can find the identifier for a
                    SIP-peer (location) by using `GET
                    /accounts/id/sites/id/sippeers`, or by clicking on
                    'Accounts' on the upper right of the [Bandwidth
                    App](Https://api.bandwidth.com), then clicking 'Locations'
                    on the navigation bar. The SIP-peer (location) identifiers
                    are listed next to each location name. If `LocationId` is
                    omitted, the SIP-peer (location) designated as the 'default
                    location' for that site (sub-account) will be used.
                  type: string
                losingCarrierName:
                  description: >-
                    `LosingCarrierName` specifies the name of the losing
                    carrier 
                  type: string
                phoneNumbers:
                  $ref: '#/components/schemas/phoneNumbersJson'
                requestedFocDate:
                  description: >-
                    Format: ISO8601 encoding such as "2019-10-31".<br/><br/>For
                    global ports, if `RequestedFocDate` is specified the time
                    portions will be ignored and the date portion must be:<br/>
                    - in the future<br/> - not on a weekend.
                  type: string
                requirementsPackageId:
                  $ref: '#/components/schemas/requirementsPackageIdJson'
                subAccountId:
                  description: >-
                    `SubAccountId` specifies the identifier of the site
                    (sub-account) that the telephone numbers will be ported
                    into.<br/><br/>You can find the identifier for a site
                    (sub-account) by using `GET /accounts/id/sites`, or by
                    clicking on 'Manage sub-account' for the desired sub-account
                    on the main page of the Bandwidth Dashboard.
                  format: int32
                  type: integer
                subscriber:
                  oneOf:
                    - $ref: >-
                        #/components/schemas/manualGlobalSubscriberResidentialJson
                    - $ref: '#/components/schemas/manualGlobalSubscriberBusinessJson'
                voiceConfigurationPackageId:
                  $ref: '#/components/schemas/voiceConfigurationPackageIdJson'
              required:
                - subAccountId
                - phoneNumbers
                - losingCarrierName
                - subscriber
                - voiceConfigurationPackageId
              type: object
      title: Manual Global LNP Order Request with KYC
      type: object
    manualGlobalLnpOrderPutResponse:
      properties:
        LnpOrderResponse:
          properties:
            orderId:
              description: Unique orderId that is used to manage the order.
              example: 556f2688-6cb1-46ce-8016-6bbf0741a519
              format: uuid
              type: string
              xml:
                name: OrderId
            processingStatus:
              enum:
                - REQUESTED_SUPP
              type: string
            status:
              properties:
                Code:
                  type: integer
                Description:
                  type: string
              type: object
          type: object
      type: object
    manualGlobalLnpOrderPutResponseJson:
      properties:
        orderId:
          description: Unique orderId that is used to manage the order.
          example: 556f2688-6cb1-46ce-8016-6bbf0741a519
          format: uuid
          type: string
        processingStatus:
          enum:
            - REQUESTED_SUPP
          type: string
        status:
          properties:
            code:
              type: integer
            description:
              type: string
          type: object
      type: object
    manualGlobalLnpOrderResponse:
      properties:
        lnpOrderResponse:
          properties:
            countryCodeA3:
              description: The ISO-3166 alpha 3 code of the country the numbers belong to.
              type: string
              xml:
                name: CountryCodeA3
            errors:
              properties:
                code:
                  description: Numeric designation of corresponding error.
                  type: integer
                  xml:
                    name: Code
                description:
                  description: Detailed explanation about error.
                  type: string
                  xml:
                    name: Description
              type: object
              xml:
                name: Errors
            listOfPhoneNumbers:
              description: >-
                ListOfPhoneNumbers is an array of PhoneNumber. At least one
                PhoneNumber must be provided for all port-types.
              items:
                $ref: '#/components/schemas/phoneNumber'
              type: array
            losingCarrierName:
              description: The name of the losing carrier the telephone numbers belong to.
              type: string
              xml:
                name: LosingCarrierName
            missingRequirements:
              description: >-
                List of Missing Requirements, needed to be fulfilled by the user
                before this port-in can be submitted for processing.
              items:
                $ref: '#/components/schemas/missingRequirement'
              type: array
            operatorCode:
              $ref: '#/components/schemas/operatorCode'
            operatorRoutingPrefix:
              $ref: '#/components/schemas/operatorRoutingPrefix'
            orderId:
              description: Unique orderId that is used to manage the order.
              example: 556f2688-6cb1-46ce-8016-6bbf0741a519
              format: uuid
              type: string
              xml:
                name: OrderId
            peerId:
              description: >-
                The numeric designation for the Location or SIP Peer ID that
                applied to the Port-in Order. The SIP Peer ID is used to provide
                a home within the location for the TN(s) that were ported in by
                the Port-in Order.
              type: string
              xml:
                name: PeerId
            phoneNumberType:
              $ref: '#/components/schemas/phoneNumberType'
            portType:
              description: Port type.
              enum:
                - MANUAL
              type: string
              xml:
                name: PortType
            processingStatus:
              description: >-
                The processing status of this order. PROCESSING means that the
                system is still processing the order. COMPLETE means that the
                order has been successfully completed. EXCEPTION means that
                errors occurred while processing the order, and that the order
                did not make any changes to the system.
              enum:
                - DRAFT
                - MISSING_REQUIREMENTS
                - SUBMITTED
                - PENDING_CARRIER_APPROVAL
                - FOC
                - COMPLETE
                - EXCEPTION
                - REQUESTED_CANCEL
                - CANCELLED
                - REQUESTED_SUPP
              type: string
              xml:
                name: ProcessingStatus
            requirementsPackageId:
              $ref: '#/components/schemas/requirementsPackageId'
            siteId:
              description: >-
                The numeric designation for the Site ID that applied to the
                Port-in Order. The SiteId is used to provide a home within the
                account for the TN(s) that were ported in by the Port-in Order.
              type: string
              xml:
                name: SiteId
            status:
              properties:
                code:
                  type: integer
                  xml:
                    name: Code
                description:
                  type: string
                  xml:
                    name: Description
              type: object
              xml:
                name: Status
            subscriber:
              oneOf:
                - $ref: '#/components/schemas/manualGlobalSubscriberResidential'
                - $ref: '#/components/schemas/manualGlobalSubscriberBusiness'
            voiceConfigurationPackageId:
              $ref: '#/components/schemas/voiceConfigurationPackageId'
          type: object
          xml:
            name: LnpOrderResponse
      title: Manual Global LNP Order Response
      type: object
    manualGlobalLnpOrderResponseJson:
      properties:
        countryCodeA3:
          description: The ISO-3166 alpha 3 code of the country the numbers belong to.
          type: string
        errors:
          $ref: '#/components/schemas/lnpOrderResponseJson/properties/errors'
        locationId:
          description: >-
            The numeric designation for the Location or SIP Peer ID that applied
            to the Port-in Order. The SIP Peer ID is used to provide a home
            within the location for the TN(s) that were ported in by the Port-in
            Order.
          type: string
        losingCarrierName:
          description: The name of the losing carrier the telephone numbers belong to.
          type: string
        missingRequirements:
          description: >-
            List of Missing Requirements, needed to be fulfilled by the user
            before this port-in can be submitted for processing.
          items:
            $ref: '#/components/schemas/missingRequirementJson'
          type: array
        operatorCode:
          $ref: '#/components/schemas/operatorCodeJson'
        operatorRoutingPrefix:
          $ref: '#/components/schemas/operatorRoutingPrefixJson'
        orderId:
          description: Unique orderId that is used to manage the order.
          example: 556f2688-6cb1-46ce-8016-6bbf0741a519
          format: uuid
          type: string
        phoneNumberType:
          $ref: '#/components/schemas/phoneNumberTypeJson'
        phoneNumbers:
          $ref: '#/components/schemas/lnpOrderResponseJson/properties/phoneNumbers'
        portType:
          description: Port type.
          enum:
            - MANUAL
          type: string
        processingStatus:
          $ref: '#/components/schemas/portInProcessingStatusJson'
        requirementsPackageId:
          $ref: '#/components/schemas/requirementsPackageIdJson'
        status:
          $ref: '#/components/schemas/lnpOrderResponseJson/properties/status'
        subAccountId:
          $ref: '#/components/schemas/lnpOrderResponseJson/properties/subAccountId'
        subscriber:
          oneOf:
            - $ref: '#/components/schemas/manualGlobalSubscriberResidentialJson'
            - $ref: '#/components/schemas/manualGlobalSubscriberBusinessJson'
        voiceConfigurationPackageId:
          $ref: '#/components/schemas/voiceConfigurationPackageIdJson'
      title: Manual Global LNP Order Response
      type: object
    manualGlobalSubscriberBusiness:
      properties:
        AddressId:
          description: >-
            UUID of the address created with the
            `/accounts/{accountId}/addresses` API endpoint.
          maxLength: 36
          type: string
        BusinessName:
          maxLength: 25
          type: string
        SubscriberType:
          enum:
            - BUSINESS
          type: string
        VatNumber:
          description: >-
            The `VatNumber` is the value of the VAT number associated with the
            subscriber. This field is required when porting numbers for a subset
            of countries when the SubscriberType is `BUSINESS`.
          maxLength: 36
          type: string
      required:
        - SubscriberType
        - AddressId
        - BusinessName
        - VatNumber
      title: BUSINESS
      type: object
    manualGlobalSubscriberBusinessJson:
      properties:
        addressId:
          $ref: '#/components/schemas/subscriberJson/properties/addressId'
        businessName:
          $ref: '#/components/schemas/subscriberJson/properties/businessName'
        subscriberType:
          enum:
            - BUSINESS
          type: string
        vatNumber:
          $ref: '#/components/schemas/subscriberJson/properties/vatNumber'
      required:
        - subscriberType
        - addressId
        - businessName
        - vatNumber
      title: BUSINESS
      type: object
    manualGlobalSubscriberResidential:
      properties:
        AddressId:
          description: >-
            UUID of the address created with the
            `/accounts/{accountId}/addresses` API endpoint.
          maxLength: 36
          type: string
        FirstName:
          maxLength: 25
          type: string
        LastName:
          maxLength: 25
          type: string
        MiddleInitial:
          maxLength: 1
          type: string
        SubscriberType:
          enum:
            - RESIDENTIAL
          type: string
      required:
        - SubscriberType
        - AddressId
        - FirstName
        - LastName
      title: RESIDENTIAL
      type: object
    manualGlobalSubscriberResidentialJson:
      properties:
        addressId:
          $ref: '#/components/schemas/subscriberJson/properties/addressId'
        firstName:
          $ref: '#/components/schemas/subscriberJson/properties/firstName'
        lastName:
          $ref: '#/components/schemas/subscriberJson/properties/lastName'
        middleInitial:
          $ref: '#/components/schemas/subscriberJson/properties/middleInitial'
        subscriberType:
          enum:
            - RESIDENTIAL
          type: string
      required:
        - subscriberType
        - addressId
        - firstName
        - lastName
      title: RESIDENTIAL
      type: object
    manualNANPTollFreeLnpOrderRequest:
      description: >-
        Manual indicates that the port-in will be processed manually by
        Bandwidth’s Local Number Portability team. Currently all toll free
        port-ins are handled manually by Bandwidth’s Local Number Portability
        team. But Bandwidth is in the process of automating portions of toll
        free porting, with a goal of eventually automating the entire process.
      properties:
        LnpOrder:
          allOf:
            - $ref: '#/components/schemas/lnpOrderBasic'
          properties:
            Subscriber:
              allOf:
                - $ref: '#/components/schemas/subscriberBusiness'
              type: object
          type: object
      title: Manual NANP Toll-Free LNP Order Request
      type: object
    manualNANPTollFreeLnpOrderRequestJson:
      description: >-
        Manual indicates that the port-in will be processed manually by
        Bandwidth’s Local Number Portability team. Currently all toll free
        port-ins are handled manually by Bandwidth’s Local Number Portability
        team. But Bandwidth is in the process of automating portions of toll
        free porting, with a goal of eventually automating the entire process.
      properties:
        lnpOrder:
          allOf:
            - $ref: '#/components/schemas/lnpOrderBasicJson'
          properties:
            subscriber:
              allOf:
                - $ref: '#/components/schemas/subscriberBusinessJson'
              type: object
          type: object
      title: Manual NANP Toll-Free LNP Order Request
      type: object
    manualPortOutRequestGlobal:
      properties:
        FocDate:
          format: date-time
          type: string
        Immediately:
          type: boolean
        InternalPort:
          type: boolean
        NewCarrierName:
          type: string
        NewCarrierPrefix:
          type: string
        PON:
          description: >-
            Optional, This Bandwidth internal identifier associates the port-out
            order with either an internal port-in or an LSR order, whichever
            caused the port-out order to be created.
          type: string
        TelephoneNumberList:
          description: The list of telephone numbers to port-out.
          items:
            type: string
            xml:
              name: TelephoneNumberToPort
          type: array
      type: object
    manualPortOutRequestNanp:
      properties:
        AccountNumber:
          type: string
        FocDate:
          format: date-time
          type: string
        Immediately:
          type: boolean
        InternalPort:
          type: boolean
        NewNetworkSPID:
          description: >-
            The Service Provider ID of the carrier that the number is being
            ported to.
          type: string
        OverrideValidation:
          type: boolean
        PON:
          description: >-
            This Bandwidth internal identifier associates the port-out order
            with either an internal port-in or an LSR order, whichever caused
            the port-out order to be created.
          type: string
        Pin:
          description: >-
            The personal identifier number the subscriber has associated with
            his or her account with the carrier the number is being ported away
            from.
          type: string
        SubscriberName:
          type: string
        TelephoneNumberList:
          description: The list of telephone numbers to port-out.
          items:
            type: string
            xml:
              name: TelephoneNumberToPort
          type: array
        ZipCode:
          type: string
      type: object
    manuallyPortableTollFreeNumberList:
      properties:
        DisconnectedTollFreeNumberList:
          items:
            $ref: '#/components/schemas/tollFreeNumber'
          type: array
        TransitionalTollFreeNumberList:
          items:
            $ref: '#/components/schemas/tollFreeNumber'
          type: array
      type: object
    messagingA2pCampaign:
      properties:
        AccountId:
          type: integer
        CampaignId:
          type: string
        CreatedDate:
          type: string
        Description:
          type: string
        Imported:
          type: boolean
        MessageClass:
          type: string
        Status:
          type: string
      type: object
    messagingA2pCampaignsResponse:
      properties:
        MessagingA2pCampaigns:
          items:
            $ref: '#/components/schemas/messagingA2pCampaign'
          type: array
      type: object
    messagingRoute:
      properties:
        Default:
          type: boolean
        Details:
          $ref: '#/components/schemas/messagingRouteDetails'
        NNID:
          type: string
        TNType:
          enum:
            - OnNetTns
            - OffNetUsaRoutedTns
            - OffNetCanadianRoutedTns
            - ExternalCustomerOwnedTns
            - ExternalThirdPartyTnsTns
            - ExternalCanadianTns
            - TollFreeTns
            - ExternalTollFreeTns
            - A2pOnNetTns
            - A2pOffNetTns
          type: string
      type: object
    messagingRouteDetails:
      properties:
        NNRoute:
          $ref: '#/components/schemas/nnRoute'
      type: object
    messagingSettings:
      properties:
        BreakOutCountries:
          items:
            properties:
              Country:
                type: string
            type: object
          type: array
        EnableOffNetMessageRoutes:
          type: boolean
        EnableOnNetMessageRoutes:
          type: boolean
        Enabled:
          type: boolean
        EnabledOnNewTN:
          type: boolean
        PreventUpdatingNetNumber:
          type: boolean
        ProxyPeersOwner:
          type: integer
        SupportedOnImportedTns:
          type: boolean
      type: object
    messagingSettingsResponse:
      properties:
        MessagingSettings:
          $ref: '#/components/schemas/messagingSettings'
      type: object
    methodNotSupportError:
      properties:
        errors:
          items:
            properties:
              code:
                description: Error code
                example: '205623'
                type: string
              description:
                description: Error description.
                example: The HTTP method used is not supported by this resource.
                type: string
              id:
                description: Error id.
                example: optional-error-id
                type: string
              type:
                description: Error type.
                example: http-method-not-supported
                type: string
            type: object
          type: array
      title: methodNotSupportError
      type: object
    missingRequirement:
      properties:
        Description:
          description: Additional data describing the nature of the missing requirement
          type: string
        Requirement:
          description: The requirement that is missing from the port-in
          enum:
            - PORTING_DOCUMENTS
          type: string
      type: object
    missingRequirementJson:
      properties:
        description:
          description: Additional data describing the nature of the missing requirement
          type: string
        requirement:
          description: The requirement that is missing from the port-in
          enum:
            - PORTING_DOCUMENTS
          type: string
      type: object
    mmsFeature:
      properties:
        MM4Settings:
          $ref: '#/components/schemas/mM4Settings'
        MmsSettings:
          $ref: '#/components/schemas/accountMmsSettings'
      type: object
    mmsFeatureMm4AdminSettingsResponse:
      properties:
        mm4Settings:
          $ref: '#/components/schemas/mM4Settings'
      type: object
    mmsFeatureMmsSettingsResponse:
      properties:
        MmsSettings:
          $ref: '#/components/schemas/mmsSettings'
      type: object
    mmsFeatureResponse:
      properties:
        MmsFeature:
          $ref: '#/components/schemas/sipPeerMmsFeature'
      type: object
    mmsHttpProtocol:
      properties:
        HttpSettings:
          $ref: '#/components/schemas/mmsHttpSettings'
      title: HTTP
      type: object
    mmsHttpSettings:
      properties:
        ProxyPeerId:
          type: integer
      title: HttpSettings
      type: object
    mmsMM4OrigHost:
      properties:
        HostId:
          type: integer
        HostName:
          type: string
        Port:
          type: string
        Priority:
          type: integer
      title: OrigHosts
      type: object
    mmsMM4OrigHosts:
      properties:
        OrigHosts:
          items:
            $ref: '#/components/schemas/mmsMM4OrigHost'
          type: array
      type: object
    mmsMM4Protocol:
      properties:
        MmsMM4OrigHosts:
          $ref: '#/components/schemas/mmsMM4OrigHosts'
        MmsMM4TermHosts:
          $ref: '#/components/schemas/mmsMM4TermHosts'
        Tls:
          type: string
      title: Mm4Hosts
      type: object
    mmsMM4TermHost:
      properties:
        HostId:
          type: integer
        HostName:
          type: string
        Port:
          type: string
      title: TermHost
      type: object
    mmsMM4TermHosts:
      properties:
        TermHosts:
          items:
            $ref: '#/components/schemas/mmsMM4TermHost'
          type: array
      type: object
    mmsProtocols:
      properties:
        HTTP:
          $ref: '#/components/schemas/mmsHttpProtocol'
        MM4:
          $ref: '#/components/schemas/mmsMM4Protocol'
      title: Protocols
      type: object
    mmsSettings:
      properties:
        Protocol:
          enum:
            - MM4
            - HTTP
          type: string
      type: object
    nANPATNDetailJson:
      description: Returned when `enableTnDetail=True` for NANP numbers
      properties:
        city:
          $ref: '#/components/schemas/city'
        countryCodeA3:
          $ref: '#/components/schemas/countryCodeA3'
        fullNumber:
          example: '+17722029845'
          type: string
        lata:
          example: 426
          type: number
        phoneNumberType:
          $ref: '#/components/schemas/phoneNumberType'
        rateCenter:
          example: SEBASTIAN
          type: string
        state:
          example: FL
          type: string
        tier:
          example: 0
          type: number
        vendorId:
          example: 49
          type: number
        vendorName:
          example: Bandwidth CLEC
          type: string
      title: NANP TN Detail
      type: object
    nnRoute:
      properties:
        DeliveryNetwork:
          type: string
        Espid:
          type: string
        Name:
          type: string
        Nnid:
          type: integer
        ProvisionerIds:
          items:
            properties:
              ProvisionerId:
                type: string
            type: object
          type: array
        trafficType:
          type: string
      type: object
    nonPortableReason:
      description: More detailed description of the non-portability reason
      example: Non-portable toll-free number status
      type: string
    nonPortableTollFreeNumberList:
      properties:
        DeniedTollFreeNumberList:
          items:
            $ref: '#/components/schemas/deniedTollFreeNumber'
          type: array
        RespOrgList:
          items:
            $ref: '#/components/schemas/tollFreeNumberRespOrg'
          type: array
        SpareTollFreeNumberList:
          items:
            $ref: '#/components/schemas/tollFreeNumber'
          type: array
        UnavailableTollFreeNumberList:
          items:
            $ref: '#/components/schemas/tollFreeNumber'
          type: array
      type: object
    notDetailedReport:
      properties:
        Description:
          type: string
        DisplayPriority:
          type: string
        Id:
          type: integer
        Name:
          type: string
      title: Report
      type: object
    note:
      properties:
        Note:
          properties:
            Description:
              description: This is the Order Note description.
              type: string
            Id:
              description: >-
                This is the Order Note identifier that is automatically
                generated by system.
              type: string
            LastDateModifier:
              description: This is the date when Order Note was last modified.
              type: string
            UserId:
              description: >-
                The UserId is authenticated for access to the network via a
                username string.
              type: string
          type: object
      type: object
    noteErrorResponse:
      properties:
        NoteResponse:
          $ref: '#/components/schemas/responseStatus'
      type: object
    notes:
      properties:
        Notes:
          items:
            $ref: '#/components/schemas/note'
          type: array
      type: object
    notesForJson:
      properties:
        notes:
          items:
            properties:
              Description:
                description: This is the Order Note description.
                type: string
              Id:
                description: >-
                  This is the Order Note identifier that is automatically
                  generated by system.
                type: string
              LastDateModifier:
                description: This is the date when Order Note was last modified.
                type: string
              UserId:
                description: >-
                  The UserId is authenticated for access to the network via a
                  username string.
                type: string
          type: array
      type: object
    notesResponse:
      properties:
        Notes:
          items:
            $ref: '#/components/schemas/note'
          type: array
      type: object
    notificationCallbackRequest:
      properties:
        Notification:
          properties:
            CompletedTelephoneNumbers:
              items:
                $ref: '#/components/schemas/telephoneNumber'
              type: array
            CustomerOrderId:
              description: >-
                The customer-defined reference ID for this order, if one was
                provided at creation. Not unique — Bandwidth applies no
                uniqueness constraint, so multiple orders may share the same
                value. Each order has a distinct Bandwidth-assigned `orderId`.
              type: string
            EventType:
              type: string
            ImpactedTelephoneNumbers:
              items:
                $ref: '#/components/schemas/telephoneNumber'
              type: array
            Message:
              type: string
            Note:
              type: string
            OrderId:
              type: string
            OrderType:
              enum:
                - PORTINS
                - PORTOUTS
                - ORDERS
                - DISCONNECTS
                - DLDAS
                - LSRORDERS
                - E911S
                - TNOPTIONS
              type: string
            Status:
              type: string
            SubscriptionId:
              type: string
          type: object
      type: object
    notificationRecipientDescription:
      description: >-
        A mandatory 200 character description of the Emergency Notification
        Recipient. The contents of this field are freeform, but ideally should
        describe the set of endpoints that are being grouped together for the
        purpose of having the same emergency notification recipients. E.g.
        Occupants of building 5 main campus.
      maxLength: 200
      type: string
    notifiedOperator:
      default: false
      description: Indicates which customers are notified operators
      example: true
      type: boolean
    npaBackorderRestriction:
      properties:
        NpaBackorderRestriction:
          properties:
            Limit:
              type: integer
            NPA:
              type: integer
          type: object
    npacInformationRequest:
      properties:
        telephoneNumbers:
          description: List of telephone numbers
          items:
            type: string
          type: array
      type: object
    npacInformationResponse:
      properties:
        data:
          properties:
            portingInformation:
              items:
                $ref: '#/components/schemas/portingInformation'
              type: array
          type: object
        links:
          properties:
            href:
              type: string
            method:
              type: string
            rel:
              type: string
          type: object
      type: object
    numberPortabilityRequest:
      properties:
        NumberPortabilityRequest:
          properties:
            TnList:
              items:
                $ref: '#/components/schemas/tn'
              type: array
          type: object
      type: object
    numberPortabilityResponse:
      properties:
        NumberPortabilityResponse:
          properties:
            PartnerSupportedRateCenters:
              description: >-
                Partner Supported Rate Center information for the indicated set
                of ratecenters, containing City, State, LATA and the list of TNs
                for which that Rate Center applies. 

                The Tier information is provided for offnet rate centers.
              properties:
                RateCenterGroup:
                  $ref: '#/components/schemas/rateCenterGroup'
              type: object
            PortType:
              description: Port type
              type: string
            SupportedLosingCarriers:
              description: >-
                Details on Supported Losing Carriers (unavailable for Enterprise
                Telephony users) including name, SPID, whether or not the
                carrier is a wireless carrier, whether or not account number is
                required as part of the CSR check, and the anticipated minimum
                number of days before a FoC date will be granted.
              properties:
                LosingCarrierTnList:
                  $ref: '#/components/schemas/losingCarrierTnList'
              type: object
            SupportedRateCenters:
              description: >-
                Supported Rate Center information for the indicated set of
                ratecenters, containing City, State, LATA and the list of TNs
                for which that Rate Center applies. 

                The Tier information is provided for offnet rate centers.
              properties:
                RateCenterGroup:
                  $ref: '#/components/schemas/rateCenterGroup'
              type: object
            UnsupportedLosingCarriers:
              description: >-
                Unsupported Losing Carriers (unavailable for Enterprise
                Telephony users) including name, SPID, whether or not the
                carrier is a wireless carrier, whether or not account number is
                required as part of the CSR check, and the anticipated minimum
                number of days before a FoC date will be granted.
              properties:
                LosingCarrierTnList:
                  $ref: '#/components/schemas/losingCarrierTnList'
              type: object
            UnsupportedRateCenters:
              description: >-
                Unsupported Rate Center information for the indicated set of
                ratecenters, containing City, State, LATA and the list of TNs
                for which that Rate Center applies. 

                The Tier information is provided for offnet rate centers.
              properties:
                RateCenterGroup:
                  $ref: '#/components/schemas/rateCenterGroup'
              type: object
          title: Number Portability Response
          type: object
      title: Number Portability Response
      type: object
    offNetNANPLnpOrderRequest:
      properties:
        LnpOrder:
          allOf:
            - $ref: '#/components/schemas/lnpOrderBasic'
            - $ref: '#/components/schemas/lnpOrderAdditionalFields'
      title: Off-net NANP LNP Order Request
      type: object
    offNetNANPLnpOrderRequestJson:
      properties:
        lnpOrder:
          allOf:
            - $ref: '#/components/schemas/lnpOrderBasicJson'
            - $ref: '#/components/schemas/lnpOrderAdditionalFieldsJson'
      title: Off-net NANP LNP Order Request
      type: object
    onNetNANPLnpOrderRequest:
      properties:
        LnpOrder:
          allOf:
            - $ref: '#/components/schemas/lnpOrderBasic'
            - $ref: '#/components/schemas/lnpOrderAdditionalFields'
            - properties:
                AutoActivation:
                  description: ''
                  type: string
                NewBillingTelephoneNumber:
                  description: >-
                    This field is used to specify a new billing telephone number
                    on the losing carrier account.<br/><br/>Cannot be the same
                    as `BillingTelephoneNumber` or be present in the list of
                    ported numbers.
                  type: string
                PartialPort:
                  description: >-
                    The `PartialPort` must be set to `true` if the intent is to
                    **NOT** port all of the telephone numbers associated with
                    the `BillingTelephoneNumber`.<br/><br/>If PartialPort is
                    omitted or false, and the `ListOfPhoneNumbers` does not
                    include all of the telephone numbers associated with the
                    `BillingTelephoneNumber`, the port-in will be
                    rejected.<br/><br/>PartialPort is applicable only to on-net
                    port-types.
                  type: string
                TnAttributes:
                  description: >-
                    The `TnAttributes` field specifies line attributes that will
                    apply to the ported in telephone numbers. If present,
                    `TnAttributes` may have a value of `PROTECTED`.
                  items:
                    $ref: '#/components/schemas/tnAttribute'
                  type: array
              type: object
      title: On-net NANP LNP Order Request
      type: object
    onNetNANPLnpOrderRequestJson:
      properties:
        lnpOrder:
          allOf:
            - $ref: '#/components/schemas/lnpOrderBasicJson'
            - $ref: '#/components/schemas/lnpOrderAdditionalFieldsJson'
            - properties:
                autoActivation:
                  description: ''
                  type: string
                newBillingTelephoneNumber:
                  description: >-
                    This field is used to specify a new billing telephone number
                    on the losing carrier account.<br/><br/>Cannot be the same
                    as `BillingTelephoneNumber` or be present in the list of
                    ported numbers.
                  type: string
                partialPort:
                  description: >-
                    The `PartialPort` must be set to `true` if the intent is to
                    **NOT** port all of the telephone numbers associated with
                    the `BillingTelephoneNumber`.<br/><br/>If PartialPort is
                    omitted or false, and the list of phone numbers does not
                    include all of the telephone numbers associated with the
                    `BillingTelephoneNumber`, the port-in will be
                    rejected.<br/><br/>PartialPort is applicable only to on-net
                    port-types.
                  type: string
                phoneNumberAttributes:
                  description: >-
                    This field specifies line attributes that will apply to the
                    ported in telephone numbers. If present, this field may have
                    a value of `PROTECTED`.
                  items:
                    $ref: '#/components/schemas/phoneNumberAttributeJson'
                  type: array
              type: object
      title: On-net NANP LNP Order Request
      type: object
    operatorCode:
      description: >-
        Operator code is a unique alpha-numeric code provided by the national
        regulator and is used to identify the operating entity in the country.
      example: OPR1
      maxLength: 256
      title: Operator Code
      type: string
      xml:
        name: OperatorCode
    operatorCodeJson:
      description: >-
        Operator code is a unique alpha-numeric code provided by the national
        regulator and is used to identify the operating entity in the country.
      example: OPR1
      maxLength: 256
      title: Operator Code
      type: string
    operatorForbiddenRequestError:
      properties:
        errors:
          items:
            properties:
              code:
                description: Error code
                example: '205620'
                type: string
              description:
                description: Error description.
                example: User does not have permissions to access this resource.
                type: string
              id:
                description: Error id.
                example: optional-error-id
                type: string
              type:
                description: Error type.
                example: resource-permissions
                type: string
            type: object
          type: array
      title: operatorForbiddenRequestError
      type: object
    operatorInternalRequestError:
      properties:
        errors:
          items:
            properties:
              code:
                description: Error code
                example: '205618'
                type: string
              description:
                description: Error description.
                example: >-
                  Unexpected internal server error. Contact Bandwidth Customer
                  Support if this problem persists.
                type: string
              id:
                description: Error id.
                example: optional-error-id
                type: string
              type:
                description: Error type.
                example: internal-server-error
                type: string
            type: object
          type: array
      title: operatorInternalRequestError
      type: object
    operatorInvalidMediaTypeRequestError:
      properties:
        data:
          default: null
        errors:
          items:
            properties:
              code:
                description: Error code
                example: '205621'
                type: string
              description:
                description: Error description.
                example: Content-Type must be application/json.
                type: string
              id:
                description: Error id.
                example: optional-error-id
                type: string
              type:
                description: Error type.
                example: Unsupported Media Type
                type: string
            type: object
          type: array
        links:
          $ref: '#/components/schemas/links'
      title: operatorInvalidMediaTypeRequestError
      type: object
    operatorNotFoundRequestError:
      properties:
        errors:
          items:
            properties:
              code:
                description: Error code
                example: '205621'
                type: string
              description:
                description: Error description.
                example: The resource specified cannot be found.
                type: string
              id:
                description: Error id.
                example: optional-error-id
                type: string
              type:
                description: Error type.
                example: resource-not-found
                type: string
            type: object
          type: array
      title: operatorNotFoundRequestError
      type: object
    operatorPatchRequestPayload:
      properties:
        operatorName:
          description: Update the name of the operator.
          example: operator5
          type: string
        routingPrefixes:
          description: Update the routing prefixes of the operator.
          items:
            $ref: '#/components/schemas/routingPrefixRequestPayload'
          type: array
      title: operatorPatchRequestPayload
      type: object
    operatorRequestPayload:
      properties:
        countryCodeA3:
          description: It used to store country code.
          example: FRA
          type: string
        operatorCode:
          description: It used to store operator code.
          example: VOX
          type: string
        operatorName:
          description: It used to store operator name.
          example: Operator1
          type: string
        routingPrefixes:
          description: It used to store routing prefixes.
          items:
            $ref: '#/components/schemas/routingPrefixRequestPayload'
          type: array
      required:
        - countryCodeA3
        - operatorName
        - operatorCode
        - routingPrefixes
      title: operatorRequestPayload
      type: object
    operatorResponse:
      properties:
        data:
          $ref: '#/components/schemas/operatorResponsePayload'
        links:
          $ref: '#/components/schemas/links'
      title: operatorResponse
      type: object
    operatorResponsePayload:
      properties:
        countryCodeA3:
          description: It used to store country code.
          example: FRA
          type: string
        operatorCode:
          description: It used to store operator code.
          example: VOX
          type: string
        operatorId:
          description: It used to store operator id.
          example: 1
          type: integer
        operatorName:
          description: It used to store operator name.
          example: Operator1
          type: string
        routingPrefixes:
          items:
            $ref: '#/components/schemas/routingPrefixResponsePayload'
          type: array
      title: operatorResponsePayload
      type: object
    operatorRoutingPrefix:
      description: >-
        Routing prefixes are associated with the operator code and used to route
        calls and ports. Each operator code can have multiple associated routing
        prefixes, but only one routing prefix is allowed per number type.
      example: RPC1
      maxLength: 256
      title: Operator Routing Prefix
      type: string
      xml:
        name: OperatorRoutingPrefix
    operatorRoutingPrefixJson:
      description: >-
        Routing prefixes are associated with the operator code and used to route
        calls and ports. Each operator code can have multiple associated routing
        prefixes, but only one routing prefix is allowed per number type.
      example: RPC1
      maxLength: 256
      title: Operator Routing Prefix
      type: string
    operatorTooManyRequestError:
      properties:
        errors:
          items:
            properties:
              code:
                description: Error code
                example: '205622'
                type: string
              description:
                description: Error description.
                example: >-
                  Rate limit exceeded. Wait for the time specified in the
                  Retry-After header before sending another request.
                type: string
              id:
                description: Error id.
                example: optional-error-id
                type: string
              type:
                description: Error type.
                example: rate-limiting
                type: string
            type: object
          type: array
      title: operatorTooManyRequestsError
      type: object
    operatorUnauthorizedRequestError:
      properties:
        data:
          default: null
        errors:
          items:
            properties:
              code:
                description: Error code
                example: '205619'
                type: string
              description:
                description: Error description.
                example: Invalid or missing credentials.
                type: string
              id:
                description: Error id.
                example: optional-error-id
                type: string
              type:
                description: Error type.
                example: authentication-credentials
                type: string
            type: object
          type: array
        links:
          $ref: '#/components/schemas/links'
      title: operatorUnauthorizedRequestError
      type: object
    orderCreatedDate:
      description: Creation date of the order.
      type: string
    orderHistory:
      properties:
        Author:
          description: >-
            This is the user that initiated the event that caused the order
            history to be updated.
          type: string
        Difference:
          description: SUPP changes difference.
          type: string
        Note:
          description: This is the order note that accompanied the order history entry.
          type: string
        OrderDate:
          description: This is the date/time when the order history entry was created.
          type: string
        Status:
          description: >-
            This is the state that the order was in when the order history event
            occurred.
          type: string
      type: object
    orderHistoryWrapper:
      properties:
        OrderHistoryWrapper:
          properties:
            OrderHistory:
              $ref: '#/components/schemas/orderHistory'
          type: object
      type: object
    orderId:
      description: >-
        The identifier that uniquely identifies an emergency notification group
        order.
      maxLength: 255
      type: string
    orderIdUserIdDate:
      properties:
        CountOfTNs:
          type: integer
        OrderDate:
          type: string
        OrderStatus:
          type: string
        OrderType:
          type: string
        TelephoneNumberDetails:
          $ref: '#/components/schemas/telephoneNumberDetails'
        lastModifiedDate:
          type: string
        orderId:
          type: string
        userId:
          type: string
      type: object
    orderIdUserIdDateJson:
      properties:
        lastModifiedDate:
          type: string
        orderDate:
          type: string
        orderId:
          type: string
        orderStatus:
          type: string
        orderType:
          type: string
        phoneNumberCount:
          type: integer
        phoneNumberDetails:
          $ref: '#/components/schemas/telephoneNumberDetailsJson'
        userId:
          type: string
      type: object
    orderRequest:
      properties:
        CustomerOrderId:
          description: >-
            The customer-defined reference ID for this order, if one was
            provided at creation. Not unique — Bandwidth applies no uniqueness
            constraint, so multiple orders may share the same value. Each order
            has a distinct Bandwidth-assigned `orderId`.
          type: string
        DisconnectTelephoneNumberOrderType:
          $ref: '#/components/schemas/disconnectTelephoneNumberOrderType'
        OrderCreateDate:
          type: string
        id:
          type: string
      type: object
    orderSummary:
      properties:
        CountOfTNs:
          type: integer
        CustomerOrderId:
          description: >-
            The customer-defined reference ID for this order, if one was
            provided at creation. Not unique — Bandwidth applies no uniqueness
            constraint, so multiple orders may share the same value. Each order
            has a distinct Bandwidth-assigned `orderId`.
          type: string
        LastModifiedNote:
          $ref: '#/components/schemas/note'
        OrderDate:
          type: string
        OrderId:
          type: string
        OrderStatus:
          type: string
        OrderType:
          type: string
        SuppCount:
          type: integer
        TelephoneNumberDetails:
          $ref: '#/components/schemas/telephoneNumberDetails'
        accountId:
          type: integer
        lastModifiedDate:
          type: string
        userId:
          type: string
      type: object
    otherTNDetail:
      description: Returned when `enableTnDetail=True` for Other numbers
      properties:
        areaCode:
          $ref: '#/components/schemas/areaCode'
        city:
          $ref: '#/components/schemas/city'
        countryCodeA3:
          $ref: '#/components/schemas/countryCodeA3'
        fullNumber:
          example: 31208908115
          type: string
          xml:
            name: FullNumber
        phoneNumberType:
          $ref: '#/components/schemas/phoneNumberType'
        tier:
          example: 0
          type: number
          xml:
            name: Tier
      title: Other TN Detail
      type: object
    paginationLinks:
      properties:
        first:
          type: string
        last:
          type: string
        next:
          type: string
        previous:
          type: string
      title: Links
      type: object
    phoneNumber:
      properties:
        PhoneNumber:
          description: Telephone Number in E.164 format.
          example: '+19194445555'
          type: string
      type: object
    phoneNumberAttributeJson:
      description: >-
        The PhoneNumberAttributes field specifies line attributes that will
        apply to the ported in telephone numbers. If present,
        PhoneNumberAttributes may have a value of PROTECTED. This element is not
        applicable for off-net and toll free port-types.
      type: string
    phoneNumberJson:
      description: Telephone Number in E.164 format.
      type: string
    phoneNumberType:
      description: Phone number type
      enum:
        - GEOGRAPHIC
        - NATIONAL
        - MOBILE
        - TOLL_FREE
        - SHARED_COST
      example: GEOGRAPHIC
      title: Phone Number Type
      type: string
      xml:
        name: PhoneNumberType
    phoneNumberTypeJson:
      description: Phone number type
      enum:
        - GEOGRAPHIC
        - NATIONAL
        - MOBILE
        - TOLL_FREE
        - SHARED_COST
      example: MOBILE
      title: Phone Number Type
      type: string
    phoneNumberTypeString:
      description: >-
        Type of the phone number. Values - GEOGRAPHIC, NATIONAL, MOBILE,
        TOLL_FREE, SHARED_COST
      example: GEOGRAPHIC
      type: string
    phoneNumberTypes:
      description: >-
        A list of Phone number type GEOGRAPHIC, NATIONAL, MOBILE, TOLL_FREE,
        SHARED_COST.
      enum:
        - GEOGRAPHIC
        - NATIONAL
        - TOLLFREE
        - MOBILE
        - SHARED_COST
      example:
        - GEOGRAPHIC
        - TOLL-FREE
      items:
        type: string
      type: array
    phoneNumbersJson:
      description: >-
        An array of phone numbers, formatted as E164 phone numbers with no dots
        or dashes. At least one phone number must be provided.
      items:
        description: One or more phone numbers is required.
        example: '+33109753127'
        type: string
      type: array
    pidfloAddressDeleting911Order:
      properties:
        E911Order:
          properties:
            AdditionalAddresses:
              items:
                properties:
                  Address:
                    properties:
                      LocationId:
                        type: string
                    required:
                      - LocationId
                    type: object
                required:
                  - Address
              type: array
            CustomerOrderId:
              $ref: '#/components/schemas/customerOrderIdE911'
            DeleteTNSpecificE911Address:
              $ref: '#/components/schemas/deleteTNSpecificE911Address'
          required:
            - AdditionalAddresses
            - DeleteTNSpecificE911Address
          type: object
      title: PIDF-LO. PIDF-LO address-deletion order
      type: object
    pidfloAddressEditing911Order:
      properties:
        E911Order:
          properties:
            AdditionalAddresses:
              description: >-
                A list of Address sections. This address information for all
                potential endpoints which will be provisioned to the Bandwidth
                911 system. At call time, the customer will submit this address
                information within the SIP header and, if a match is determined,
                the call will be routed to the PSAP nearest to that address.
                Otherwise, the call will be routed to an ECC. These Address
                sections will be the same in format to the Address section in
                the top-level of the E911Order payload. It replaces the
                TelephoneNumbers and AlternateEndUserIdentifiers payload element
              items:
                properties:
                  Address:
                    properties:
                      AddressType:
                        type: string
                      City:
                        type: string
                      HouseNumber:
                        type: string
                      Latitude:
                        type: string
                      LocationId:
                        type: string
                      Longitude:
                        type: string
                      StateCode:
                        type: string
                      StreetName:
                        type: string
                      StreetSuffix:
                        type: string
                      Zip:
                        type: string
                    required:
                      - LocationId
                    type: object
                required:
                  - Address
              type: array
          required:
            - AdditionalAddresses
          type: object
      title: PIDF-LO. address-editing order
      type: object
    pidfloAddressProvisioning911Order:
      properties:
        E911Order:
          properties:
            AdditionalAddresses:
              description: >-
                A list of Address sections. This address information for all
                potential endpoints which will be provisioned to the Bandwidth
                911 system. At call time, the customer will submit this address
                information within the SIP header and, if a match is determined,
                the call will be routed to the PSAP nearest to that address.
                Otherwise, the call will be routed to an ECC. These Address
                sections will be the same in format to the Address section in
                the top-level of the E911Order payload. It replaces the
                TelephoneNumbers and AlternateEndUserIdentifiers payload element
              items:
                properties:
                  Address:
                    properties:
                      AddressType:
                        type: string
                      City:
                        type: string
                      Country:
                        type: string
                      HouseNumber:
                        type: string
                      Latitude:
                        type: string
                      LocationId:
                        type: string
                      Longitude:
                        type: string
                      PlusFour:
                        type: string
                      StateCode:
                        type: string
                      StreetName:
                        type: string
                      StreetSuffix:
                        type: string
                      Zip:
                        type: string
                    type: object
                required:
                  - Address
              type: array
            CustomerOrderId:
              $ref: '#/components/schemas/customerOrderIdE911'
          required:
            - AdditionalAddresses
          type: object
      title: PIDF-LO. address-provisioning order
      type: object
    pidfloAeuiWithAdditionalAddressWithLocationIdE911Order:
      properties:
        E911Order:
          properties:
            Address:
              properties:
                AddressType:
                  type: string
                City:
                  type: string
                Country:
                  type: string
                HouseNumber:
                  type: string
                Latitude:
                  type: string
                LocationId:
                  type: string
                Longitude:
                  type: string
                PlusFour:
                  type: string
                StateCode:
                  type: string
                StreetName:
                  type: string
                StreetSuffix:
                  type: string
                Zip:
                  type: string
              type: object
            AlternateEndUserIdentifiers:
              items:
                properties:
                  AlternateEndUserIdentifier:
                    properties:
                      CallbackNumber:
                        type: string
                      CallerName:
                        $ref: '#/components/schemas/callerNameE911'
                      Identifier:
                        maxLength: 30
                        minItems: 1
                        type: string
                      PIDFLOEnabled:
                        description: PIDFLOEnabled is required and must be 'true'.
                        type: string
                      PreferredLanguage:
                        default: en
                        type: string
                    required:
                      - Identifier
                      - PIDFLOEnabled
                    type: object
                required:
                  - AlternateEndUserIdentifier
              type: array
            CustomerOrderId:
              $ref: '#/components/schemas/customerOrderIdE911'
          required:
            - AlternateEndUserIdentifiers
            - Address
          type: object
      title: >-
        PIDF-LO. AEUI endpoint-provisioning order with additional address
        provisioning and with pre-defined location id
      type: object
    pidfloAeuiWithAdditionalAddressWithoutLocationIdE911Order:
      properties:
        E911Order:
          properties:
            Address:
              properties:
                AddressType:
                  type: string
                City:
                  type: string
                Country:
                  type: string
                HouseNumber:
                  type: string
                Latitude:
                  type: string
                Longitude:
                  type: string
                PlusFour:
                  type: string
                StateCode:
                  type: string
                StreetName:
                  type: string
                StreetSuffix:
                  type: string
                Zip:
                  type: string
              type: object
            AlternateEndUserIdentifiers:
              items:
                properties:
                  AlternateEndUserIdentifier:
                    properties:
                      CallbackNumber:
                        type: string
                      CallerName:
                        $ref: '#/components/schemas/callerNameE911'
                      Identifier:
                        maxLength: 30
                        minItems: 1
                        type: string
                      PIDFLOEnabled:
                        description: PIDFLOEnabled is required and must be 'true'.
                        type: string
                      PreferredLanguage:
                        default: en
                        type: string
                    required:
                      - Identifier
                      - PIDFLOEnabled
                    type: object
                required:
                  - AlternateEndUserIdentifier
                title: AlternateEndUserIdentifier
              type: array
            CustomerOrderId:
              $ref: '#/components/schemas/customerOrderIdE911'
          required:
            - AlternateEndUserIdentifiers
            - Address
          type: object
      title: >-
        PIDF-LO AEUI. Endpoint-provisioning order with additional address
        provisioning and without pre-defined location id
      type: object
    pidfloAeuiWithLocationIdE911Order:
      properties:
        E911Order:
          properties:
            AlternateEndUserIdentifiers:
              items:
                properties:
                  AlternateEndUserIdentifier:
                    properties:
                      CallbackNumber:
                        type: string
                      CallerName:
                        $ref: '#/components/schemas/callerNameE911'
                      Identifier:
                        maxLength: 30
                        minItems: 1
                        type: string
                      LocationId:
                        type: string
                      PIDFLOEnabled:
                        description: PIDFLOEnabled is required and must be 'true'.
                        type: string
                      PreferredLanguage:
                        default: en
                        type: string
                    required:
                      - LocationId
                      - Identifier
                      - PIDFLOEnabled
                    type: object
                required:
                  - AlternateEndUserIdentifier
              type: array
            CustomerOrderId:
              $ref: '#/components/schemas/customerOrderIdE911'
          required:
            - AlternateEndUserIdentifiers
          type: object
      title: PIDF-LO. AEUI endpoint-provisioning order with provisioned location id
      type: object
    pidfloAndSimpleAeuiMixedPidfloAeuiAndNonPidloAeuiDeleting911Order:
      properties:
        E911Order:
          properties:
            AlternateEndUserIdentifiers:
              items:
                properties:
                  AlternateEndUserIdentifier:
                    properties:
                      CallbackNumber:
                        description: 'Non-PIDF-LO: CallbackNumber is required'
                        type: string
                      Identifier:
                        maxLength: 30
                        minItems: 1
                        type: string
                    required:
                      - Identifier
                    type: object
                required:
                  - AlternateEndUserIdentifier
              type: array
            CustomerOrderId:
              $ref: '#/components/schemas/customerOrderIdE911'
            DeleteTNSpecificE911Address:
              $ref: '#/components/schemas/deleteTNSpecificE911Address'
          required:
            - AlternateEndUserIdentifiers
            - DeleteTNSpecificE911Address
          type: object
      title: PIDF-LO and SIMPLE AEUI. PIDF-LO and Non-PIDF-LO endpoint-deletion order
      type: object
    pidfloAndSimpleAeuiMixedPidfloAeuiAndNonPidloAeuiProvisioning911Order:
      properties:
        E911Order:
          properties:
            Address:
              properties:
                AddressType:
                  type: string
                City:
                  type: string
                Country:
                  type: string
                HouseNumber:
                  type: string
                Latitude:
                  type: string
                LocationId:
                  type: string
                Longitude:
                  type: string
                PlusFour:
                  type: string
                StateCode:
                  type: string
                StreetName:
                  type: string
                StreetSuffix:
                  type: string
                Zip:
                  type: string
              type: object
            AlternateEndUserIdentifiers:
              items:
                properties:
                  AlternateEndUserIdentifier:
                    properties:
                      CallbackNumber:
                        description: 'Non-PIDF-LO: CallbackNumber is required'
                        type: string
                      CallerName:
                        $ref: '#/components/schemas/callerNameE911'
                      Identifier:
                        maxLength: 30
                        minItems: 1
                        type: string
                      LocationId:
                        type: string
                      PIDFLOEnabled:
                        description: PIDFLOEnabled is required and must be 'true'.
                        type: string
                      PreferredLanguage:
                        default: en
                        type: string
                    required:
                      - LocationId
                      - Identifier
                      - PIDFLOEnabled
                    type: object
                required:
                  - AlternateEndUserIdentifier
              type: array
            CustomerOrderId:
              $ref: '#/components/schemas/customerOrderIdE911'
          required:
            - AlternateEndUserIdentifiers
            - Address
          type: object
      title: >-
        PIDF-LO and SIMPLE AEUI. Mixed PIDF-LO AEUI and Non-PIDF-LO AEUI
        endpoint-provisioning order
      type: object
    portInCreateSubscriberServiceAddressJson:
      allOf:
        - $ref: '#/components/schemas/portInSubscriberBasicServiceAddressJson'
      required:
        - houseNumber
        - streetName
        - city
        - stateCode
        - zip
      title: ServiceAddress
    portInProcessingStatusJson:
      description: >-
        The processing status of this order. Values may be: PROCESSING,
        COMPLETED, FAILED. PROCESSING means that the system is still processing
        the order. COMPLETED means that the order has been successfully
        completed. FAILED means that errors occurred while processing the order,
        and that the order did not make any changes to the system.
      enum:
        - DRAFT
        - PENDING_DOCUMENTS
        - MISSING_REQUIREMENTS
        - SUBMITTED
        - PENDING_CARRIER_APPROVAL
        - REQUESTED_SUPP
        - FOC
        - COMPLETE
        - EXCEPTION
        - SNAPBACK
        - REQUESTED_CANCEL
        - CANCELLED
        - VALIDATE_TFNS
        - VALIDATE_DRAFT_TFNS
        - VALID_DRAFT_TFNS
        - INVALID_TFNS
        - INVALID_DRAFT_TFNS
      type: string
    portInPutSubscriberServiceAddressJson:
      allOf:
        - $ref: '#/components/schemas/portInSubscriberBasicServiceAddressJson'
      description: >-
        Includes all address fields. ServiceAddress elements cannot be SUPPed
        for Automated on-net wireless to wireless port-ins. See also,
        ResetAddressFields.
      properties:
        resetAddressFields:
          description: >-
            The `ResetAddressFields` may be specified in a `PUT` request for a
            non-toll free port-in order if you would like to remove
            `ServiceAddress` elements that are not specified in the PUT payload.
            Default value is `false`.
          type: boolean
      title: ServiceAddress
      type: object
    portInSubscriberBasicServiceAddressJson:
      properties:
        addressLine2:
          description: >-
            `AddressLine2` is used to specify Unit, Suite, Floor, etc. in the
            Service Address. `AddressLine2` is optional when not needed to fully
            specify the `ServiceAddress`.
          type: string
        city:
          description: >-
            `City` is mandatory in cases where the `ServiceAddress` is
            mandatory.
          type: string
        country:
          description: >-
            `Country` is the country of the `ServiceAddress`. This value will be
            derived from the `StateCode`, so it should generally be omitted.
          type: string
        houseNumber:
          description: >-
            The `HouseNumber` is the street address number of the
            `ServiceAddress`. `HouseNumber` is mandatory for port-in orders in
            which the `ServiceAddress` is mandatory.
          type: string
        housePrefix:
          description: >-
            The `HouseSuffix` is the non-numeric address number suffix of the
            `ServiceAddress`. This element is optional when not needed to fully
            specify the `ServiceAddress`.
          type: string
        houseSuffix:
          description: >-
            The `HouseSuffix` is the non-numeric address number suffix of the
            `ServiceAddress`. This element is optional when not needed to fully
            specify the `ServiceAddress`.
          type: string
        plusFour:
          description: >-
            `PlusFour` is the 4 digits that are sometimes suffixed to the Zip
            Code.
          maxLength: 4
          type: string
        postDirectional:
          description: >-
            The `PostDirectional` is the street name post directional of the
            `ServiceAddress`. This element is optional when not needed to fully
            specify the `ServiceAddress`.
          type: string
        preDirectional:
          description: >-
            The `PreDirectional` is the non-numeric street name prefix of the
            `ServiceAddress`. This element is optional when not needed to fully
            specify the `ServiceAddress`.
          type: string
        stateCode:
          description: >-
            `StateCode` is the 2-letter abbreviation of the state of the
            `ServiceAddress`. `StateCode` is mandatory in cases where the
            `ServiceAddress` is mandatory. ex: `NC`, `NY`, or `AK`
          maxLength: 2
          type: string
        streetName:
          description: >-
            The `StreetName` is mandatory in cases where the `ServiceAddress` is
            mandatory.
          type: string
        streetSuffix:
          description: >-
            The `StreetSuffix` is the street suffix of the `ServiceAddress`.
            This element is optional when not needed to fully specify the
            `ServiceAddress`.
          type: string
        zip:
          description: >-
            `Zip` is the Zip Code of the `ServiceAddress`. `Zip` is mandatory in
            cases where the `ServiceAddress` is mandatory.
          type: string
      title: ServiceAddress
      type: object
    portInSubscriberSuppJson:
      properties:
        businessName:
          type: string
        firstName:
          type: string
        lastName:
          type: string
        middleInitial:
          type: string
        serviceAddress:
          $ref: '#/components/schemas/portInPutSubscriberServiceAddressJson'
        subscriberType:
          description: >-
            If SubscriberType is set to BUSINESS, a BusinessName must be
            provided. If SubscriberType is set to RESIDENTIAL, a FirstName and
            LastName must be provided.
          enum:
            - business
            - residential
            - generic
          type: string
      title: Subscriber
      type: object
    portOutPasscodeSupportResponse:
      properties:
        portoutPasscodeSupport:
          description: Indicates whether or not the account has the Lumen special BusOrg.
          type: boolean
      required:
        - portoutPasscodeSupport
      type: object
    portOutRequestGlobal:
      properties:
        PortOutRequest:
          $ref: '#/components/schemas/manualPortOutRequestGlobal'
      type: object
    portOutRequestNanp:
      properties:
        PortOutRequest:
          $ref: '#/components/schemas/manualPortOutRequestNanp'
      type: object
    portOutResponse:
      properties:
        Errors:
          items:
            $ref: '#/components/schemas/lnpError'
          type: array
        OrderId:
          description: >-
            The unique identifier string created by Bandwidth to refer to the
            order.  This value is returned in the synchronous response to the
            POST.
          type: string
        PortOutRequest:
          $ref: '#/components/schemas/manualPortOutRequestGlobal'
        ProcessingStatus:
          enum:
            - NEW
            - SUPP
            - MODIFY
            - COMPLETE
            - CANCELLED
            - VALIDATION_FAILED_NEW
            - VALIDATION_FAILED_SUPP
            - VALIDATION_FAILED_MODIFY
            - EXCEPTION
            - SOA_PENDING
            - SOA_CONFLICT
            - FOC
          type: string
        Status:
          $ref: '#/components/schemas/irisStatus'
      type: object
    portOutValidationRequest:
      properties:
        PortOutValidationRequest:
          properties:
            AccountNumber:
              type: string
            PON:
              type: string
            Pin:
              type: string
            SubscriberName:
              type: string
            TelephoneNumbers:
              items:
                $ref: '#/components/schemas/telephoneNumber'
              type: array
            ZipCode:
              type: string
          type: object
      type: object
    portOutValidationRequestJson:
      properties:
        newCarrierName:
          type: string
        orderId:
          type: string
        pon:
          type: string
        telephoneNumbers:
          items:
            $ref: '#/components/schemas/telephoneNumber'
          type: array
      type: object
    portOutValidationResponse:
      properties:
        PortOutValidationResponse:
          properties:
            AcceptableValues:
              properties:
                AccountNumber:
                  type: string
                Pin:
                  type: string
                TelephoneNumbers:
                  items:
                    $ref: '#/components/schemas/telephoneNumber'
                  type: array
                ZipCode:
                  type: string
              type: object
            Errors:
              items:
                properties:
                  Code:
                    type: string
                  Description:
                    type: string
                title: Error
                type: object
              type: array
            PON:
              type: string
            Portable:
              type: boolean
          type: object
      type: object
    portOutValidationResponseJson:
      properties:
        errors:
          items:
            properties:
              code:
                type: string
              description:
                type: string
            title: Error
            type: object
          type: array
        pon:
          type: string
        portable:
          type: boolean
      type: object
    portTypeEnum:
      description: The type of porting request
      enum:
        - INTERNAL
        - AUTOMATED
        - AUTOMATEDOFFNET
        - MANUALOFFNET
        - MANUAL_TOLLFREE
        - MANUAL_ON_NET
        - MANUAL
      type: string
    portableTollFreeNumberList:
      properties:
        RespOrgList:
          items:
            $ref: '#/components/schemas/tollFreeNumberRespOrg'
          type: array
      type: object
    portinCreateSubscriberServiceAddress:
      allOf:
        - $ref: '#/components/schemas/portinSubscriberBasicServiceAddress'
      required:
        - HouseNumber
        - StreetName
        - City
        - StateCode
        - Zip
      title: ServiceAddress
    portinPutSubscriberServiceAddress:
      allOf:
        - $ref: '#/components/schemas/portinSubscriberBasicServiceAddress'
      description: >-
        Includes all address fields. ServiceAddress elements cannot be SUPPed
        for Automated on-net wireless to wireless port-ins. See also,
        ResetAddressFields.
      properties:
        ResetAddressFields:
          description: >-
            The `ResetAddressFields` may be specified in a `PUT` request for a
            non-toll free port-in order if you would like to remove
            `ServiceAddress` elements that are not specified in the PUT payload.
            Default value is `false`.
          type: boolean
      title: ServiceAddress
      type: object
    portinStatistics:
      properties:
        statusCounts:
          description: Count of port-in orders by status.
          properties:
            EXCEPTION:
              example: 45
              type: integer
            FOC:
              example: 120
              type: integer
            MISSING_REQUIREMENT:
              example: 30
              type: integer
            PENDING_CARRIER_APPROVAL:
              example: 20
              type: integer
            PENDING_DOCUMENTS:
              example: 30
              type: integer
            REQUESTED_CANCEL:
              example: 15
              type: integer
            REQUESTED_SUPP:
              example: 25
              type: integer
            SUBMITTED:
              example: 200
              type: integer
          type: object
        timestamp:
          description: The timestamp of when the statistics were generated.
          example: '2024-08-22T14:00:00Z'
          format: date-time
          type: string
        totalOrders:
          description: Total number of port-in orders.
          example: 435
          type: integer
      type: object
    portinSubscriberBasicServiceAddress:
      properties:
        AddressLine2:
          description: >-
            `AddressLine2` is used to specify Unit, Suite, Floor, etc. in the
            Service Address. `AddressLine2` is optional when not needed to fully
            specify the `ServiceAddress`.
          type: string
        City:
          description: >-
            `City` is mandatory in cases where the `ServiceAddress` is
            mandatory.
          type: string
        Country:
          description: >-
            `Country` is the country of the `ServiceAddress`. This value will be
            derived from the `StateCode`, so it should generally be omitted.
          type: string
        HouseNumber:
          description: >-
            The `HouseNumber` is the street address number of the
            `ServiceAddress`. `HouseNumber` is mandatory for port-in orders in
            which the `ServiceAddress` is mandatory.
          type: string
        HousePrefix:
          description: >-
            The `HouseSuffix` is the non-numeric address number suffix of the
            `ServiceAddress`. This element is optional when not needed to fully
            specify the `ServiceAddress`.
          type: string
        HouseSuffix:
          description: >-
            The `HouseSuffix` is the non-numeric address number suffix of the
            `ServiceAddress`. This element is optional when not needed to fully
            specify the `ServiceAddress`.
          type: string
        PlusFour:
          description: >-
            `PlusFour` is the 4 digits that are sometimes suffixed to the Zip
            Code.
          maxLength: 4
          type: string
        PostDirectional:
          description: >-
            The `PostDirectional` is the street name post directional of the
            `ServiceAddress`. This element is optional when not needed to fully
            specify the `ServiceAddress`.
          type: string
        PreDirectional:
          description: >-
            The `PreDirectional` is the non-numeric street name prefix of the
            `ServiceAddress`. This element is optional when not needed to fully
            specify the `ServiceAddress`.
          type: string
        StateCode:
          description: >-
            `StateCode` is the 2-letter abbreviation of the state of the
            `ServiceAddress`. `StateCode` is mandatory in cases where the
            `ServiceAddress` is mandatory. ex: `NC`, `NY`, or `AK`
          maxLength: 2
          type: string
        StreetName:
          description: >-
            The `StreetName` is mandatory in cases where the `ServiceAddress` is
            mandatory.
          type: string
        StreetSuffix:
          description: >-
            The `StreetSuffix` is the street suffix of the `ServiceAddress`.
            This element is optional when not needed to fully specify the
            `ServiceAddress`.
          type: string
        Zip:
          description: >-
            `Zip` is the Zip Code of the `ServiceAddress`. `Zip` is mandatory in
            cases where the `ServiceAddress` is mandatory.
          type: string
      title: ServiceAddress
      type: object
    portinSubscriberSupp:
      properties:
        BusinessName:
          type: string
        FirstName:
          type: string
        LastName:
          type: string
        MiddleInitial:
          type: string
        ServiceAddress:
          $ref: '#/components/schemas/portinPutSubscriberServiceAddress'
        SubscriberType:
          description: >-
            If SubscriberType is set to BUSINESS, a BusinessName must be
            provided. If SubscriberType is set to RESIDENTIAL, a FirstName and
            LastName must be provided.
          enum:
            - business
            - residential
            - generic
          type: string
      title: Subscriber
      type: object
    portingDocument:
      description: The documents required for porting
      properties:
        name:
          description: Name of the required porting document
          example: LOA
          type: string
      type: object
    portingDocumentData:
      properties:
        contentType:
          $ref: '#/components/schemas/documentContentType'
        customReference:
          $ref: '#/components/schemas/customReference'
        type:
          $ref: '#/components/schemas/documentType'
    portingDocumentResponseData:
      allOf:
        - $ref: '#/components/schemas/portingDocumentData'
      properties:
        createdDateTime:
          $ref: '#/components/schemas/createdDateTime'
        documentId:
          $ref: '#/components/schemas/documentId'
        status:
          $ref: '#/components/schemas/documentStatusDefault'
        updatedDateTime:
          $ref: '#/components/schemas/updatedDateTime'
    portingInformation:
      properties:
        altSpid:
          description: Alternate service provider ID of the carrier
          type: string
        carrierName:
          description: Carrier name
          type: string
        lata:
          description: Local access and transport area
          type: string
        lrn:
          description: Local routing number
          type: string
        rateCenter:
          description: Rate center
          type: string
        rateCenterState:
          description: Rate center + state
          type: string
        rcAvailableOffNet:
          description: Is the number's rate center off-net
          type: boolean
        rcAvailableOnNet:
          description: Is the number's rate center on-net
          type: boolean
        rcSupportNewTns:
          description: Does the number's rate center support new TNs
          type: boolean
        spid:
          description: Service provider ID of the carrier
          type: string
        state:
          description: State
          type: string
        telephoneNumber:
          description: Telephone number
          type: string
        tier:
          description: Tier of the number
          enum:
            - '1'
            - '2'
            - '3'
            - '4'
            - '5'
          type: string
      type: object
    portingInternalLosingCarriersResponseSchema:
      properties:
        data:
          properties:
            losingCarriers:
              items:
                properties:
                  countryCodeA3:
                    description: Country A3 code.
                    example: GBR
                    title: Country A3 code
                    type: string
                  createdDatetime:
                    $ref: '#/components/schemas/createdDateTime'
                  id:
                    description: The unique identifier for the losing carrier.
                    example: cce315ec-6fcc-4ac9-b640-b17693403314
                    title: Losing Carrier ID
                    type: string
                  name:
                    description: The losing carrier name.
                    example: Losing Carrier 1
                    title: Losing Carrier Name
                    type: string
                  phoneNumberType:
                    description: Type of the phone number.
                    example: GEOGRAPHIC
                    title: Type of phone number
                    type: string
                  updatedDatetime:
                    $ref: '#/components/schemas/updatedDateTime'
                type: object
              type: array
            totalCount:
              description: The total count of objects returned in the response.
              example: 1
              type: integer
          type: object
        errors:
          example: []
          items:
            $ref: '#/components/schemas/error'
          type: array
        links:
          $ref: '#/components/schemas/link'
      title: List Porting Losing Carriers Response
      type: object
    portingInternalReferenceDocumentsResponseSchema:
      properties:
        data:
          properties:
            referenceDocuments:
              items:
                properties:
                  countryCodeA3:
                    description: Country A3 code.
                    example: GBR
                    title: Country A3 code
                    type: string
                  createdDatetime:
                    $ref: '#/components/schemas/createdDateTime'
                  description:
                    description: Description of the document.
                    example: LOA Description
                    title: Description of the document
                    type: string
                  id:
                    description: The unique identifier for the Reference Document.
                    example: cce315ec-6fcc-4ac9-b640-b17693403314
                    title: Reference Document ID
                    type: string
                  phoneNumberType:
                    description: Type of the phone number.
                    example: GEOGRAPHIC
                    title: Type of phone number
                    type: string
                  required:
                    description: Determines whether the document is required or optional.
                    example: true
                    title: Document is required
                    type: boolean
                  subscriberTypes:
                    description: Subscriber type(s) applicable for this document.
                    example:
                      - BUSINESS
                    items:
                      type: string
                    title: Subscriber Types
                    type: array
                  supportedFileTypes:
                    description: Supported File Types.
                    example:
                      - pdf
                      - jpeg
                    items:
                      type: string
                    title: Supported File Types
                    type: array
                  template:
                    description: Template for the document.
                    example: https://...
                    title: Template for the document
                    type: string
                  type:
                    description: Type of the document.
                    example: LOA
                    title: Type of document
                    type: string
                  updatedDatetime:
                    $ref: '#/components/schemas/updatedDateTime'
                type: object
              type: array
            totalCount:
              description: The total count of objects returned in the response.
              example: 1
              type: integer
          type: object
        errors:
          example: []
          items:
            $ref: '#/components/schemas/error'
          type: array
        links:
          $ref: '#/components/schemas/link'
      title: List Internal Reference Documents
      type: object
    portingLosingCarriersResponseSchema:
      properties:
        data:
          properties:
            losingCarriers:
              items:
                properties:
                  countryCodeA3:
                    description: Country A3 code.
                    example: GBR
                    title: Country A3 code
                    type: string
                  name:
                    description: The losing carrier name.
                    example: Losing Carrier 1
                    title: Losing Carrier Name
                    type: string
                  phoneNumberType:
                    description: Type of the phone number.
                    example: GEOGRAPHIC
                    title: Type of phone number
                    type: string
                type: object
              type: array
            totalCount:
              description: The total count of objects returned in the response.
              example: 1
              type: integer
          type: object
        errors:
          example: []
          items:
            $ref: '#/components/schemas/error'
          type: array
        links:
          $ref: '#/components/schemas/link'
      title: List Porting Losing Carriers Response
      type: object
    portingReferenceDocumentsResponseSchema:
      properties:
        data:
          properties:
            referenceDocuments:
              items:
                properties:
                  business:
                    items:
                      properties:
                        description:
                          description: Description of the document.
                          example: LOA Description
                          title: Description of the document
                          type: string
                        requiredDocument:
                          description: >-
                            Determines whether the document is required or
                            optional.
                          example: true
                          title: Document is required
                          type: boolean
                        supportedFileTypes:
                          description: Supported File Types.
                          example: '[pdf, jpeg]'
                          title: Support file types
                          type: array
                        template:
                          description: Template for the document.
                          example: https://...
                          title: Template for the document
                          type: string
                        type:
                          description: Type of the document.
                          example: LOA
                          title: Type of document
                          type: string
                      type: object
                    type: array
                  countryCodeA3:
                    description: Country A3 code.
                    example: GBR
                    title: Country A3 code
                    type: string
                  phoneNumberType:
                    description: Type of the phone number.
                    example: GEOGRAPHIC
                    title: Type of phone number
                    type: string
                  residential:
                    items:
                      properties:
                        description:
                          description: Description of the document.
                          example: Last Invoice description
                          title: Description of the document
                          type: string
                        requiredDocument:
                          description: >-
                            Determines whether the document is required or
                            optional.
                          example: true
                          title: Document is required
                          type: boolean
                        supportedFileTypes:
                          description: Supported File Types.
                          example: '[csv, xls]'
                          title: Support file types
                          type: array
                        template:
                          description: Template for the document.
                          example: https://...
                          title: Template for the document
                          type: string
                        type:
                          description: Type of the document.
                          example: COB
                          title: Type of document
                          type: string
                      type: object
                    type: array
                type: object
              type: array
            totalCount:
              description: The total count of objects returned in the response.
              example: 1
              type: integer
          type: object
        errors:
          example: []
          items:
            $ref: '#/components/schemas/error'
          type: array
        links:
          $ref: '#/components/schemas/link'
      title: List Reference Documents
      type: object
    portinsTotal:
      properties:
        Quantity:
          properties:
            Count:
              description: Total count of port-ins.
              type: integer
          type: object
      type: object
    processingStatus:
      description: Order status.
      enum:
        - FAILED
        - COMPLETED
      type: string
    product:
      properties:
        Name:
          type: string
      type: object
    productHttpSettings:
      description: Only allowed if VoiceProtocol is HTTP
      properties:
        HttpVoiceV2AppId:
          type: string
      type: object
    productVoiceProtocol:
      enum:
        - HTTP
        - SIP
      type: string
    productWithCountrySettings:
      properties:
        countrySettings:
          $ref: '#/components/schemas/countrySettings'
        features:
          items:
            description: Feature Name
            example: Ordering
            type: string
            xml:
              name: Feature
          type: array
          xml:
            name: Features
            wrapped: true
        name:
          description: Product Name
          example: NumberManagement
          type: string
          xml:
            name: Name
      type: object
      xml:
        name: Product
    proxyPeer:
      properties:
        ProxyPeer:
          properties:
            Name:
              type: string
            ProxyPeerId:
              type: integer
            Service:
              type: string
          type: object
      type: object
    proxyPeerResponse:
      properties:
        AdminDataResponse:
          $ref: '#/components/schemas/proxyPeer'
      type: object
    proxyPeers:
      items:
        $ref: '#/components/schemas/proxyPeer'
      type: array
    proxyPeersResponse:
      properties:
        AdminDataResponse:
          properties:
            ProxyPeers:
              $ref: '#/components/schemas/proxyPeers'
          type: object
      type: object
    putBulkCoverageMatrixTask:
      description: Cancel a stuck Bulk Coverage Matrix task
      properties:
        Status:
          description: Task status
          enum:
            - FAILED
            - COMPLETED
            - PARTIAL
          type: string
        TaskId:
          description: Bulk coverage matrix task's Id
          type: string
      required:
        - TaskId
        - Status
      type: object
    quantity:
      properties:
        Quantity:
          properties:
            Count:
              description: >-
                Total count of telephone numbers associated with the specified
                port-in number.
              type: integer
          type: object
      type: object
    queryParamStringEqStartsWith:
      properties:
        eq:
          type: string
        startsWith:
          type: string
      type: object
    queryParamStringLteGte:
      properties:
        gte:
          type: string
        lte:
          type: string
      type: object
    rateCenter:
      description: Rate center information for the group of portable phone numbers
      properties:
        lata:
          example: '426'
          type: string
        name:
          example: RALEIGH
          type: string
        state:
          example: NC
          type: string
        tier:
          example: '1'
          type: string
        vendor:
          description: The vendor serving phone number porting in this rate center
          example: Bandwidth
          type: string
      type: object
    rateCenterCoverageErrorList:
      description: >-
        A list of coverage matrix entries along with the errors when updating
        them.
      items:
        description: Each data item, which includes a rate center coverage with an error.
        maxItems: 5000
        minItems: 0
        properties:
          coverage:
            $ref: '#/components/schemas/rateCenterCoverageUnsuccessfulResponse'
          error:
            $ref: '#/components/schemas/coverageMatrixEntry'
        type: object
      type: array
    rateCenterCoverageList:
      description: A list of coverage matrix entries.
      properties:
        data:
          items:
            $ref: '#/components/schemas/coverageMatrixEntry'
          maxItems: 5000
          minItems: 1
          type: array
      required:
        - data
      type: object
    rateCenterCoverageUnsuccessfulResponse:
      description: A generic error object for coverage matrix / rate center responses.
      properties:
        description:
          example: Error Message
          type: string
        errorCode:
          example: 3900
          type: number
      type: object
    rateCenterGroup:
      properties:
        City:
          title: City
          type: string
        LATA:
          title: LATA
          type: integer
        RateCenter:
          title: Rate Center
          type: string
        State:
          title: State
          type: string
        TnList:
          $ref: '#/components/schemas/lnpCheckerTnList'
      title: Rate Center information
      type: object
    rateCenterWithCount:
      properties:
        Count:
          type: integer
        RateCenter:
          type: string
      type: object
    rateCenterWithCountJson:
      properties:
        count:
          type: integer
        rateCenter:
          type: string
      type: object
    realm:
      properties:
        Default:
          description: Default Realm flag
          type: boolean
        Description:
          description: Realm Description
          type: string
        Id:
          description: The ID number associated with the Realm
          type: integer
        Realm:
          description: Realm name
          type: string
        SipCredentialCount:
          description: The ID number associated with the Realm
          type: integer
        Status:
          description: >-
            Indicates the status of the Realm. Only 'active' Realms can be used
            to associate with Sip Credentials
          enum:
            - ACTIVE
            - CREATE_PENDING
            - CREATE_FAILED
            - DELETE_PENDING
            - DELETE_FAILED
          type: string
        TrunkInfo:
          $ref: '#/components/schemas/trunkInfo'
      type: object
    realmCreateRequest:
      properties:
        Default:
          description: Default Realm flag
          type: boolean
        Description:
          description: Realm Description
          maxLength: 255
          type: string
        Realm:
          description: Realm name
          maxLength: 64
          type: string
        TrunkInfo:
          $ref: '#/components/schemas/trunkInfo'
      required:
        - Realm
        - Default
      title: Realm
      type: object
    realmResponse:
      properties:
        Realm:
          $ref: '#/components/schemas/realm'
      type: object
    realmUpdateRequest:
      properties:
        Default:
          description: >-
            Default Realm flag. A Realm can only be updated to become the new
            default, ie: Default cannot be set to 'false'
          type: boolean
        Description:
          description: Realm Description
          maxLength: 255
          type: string
        TrunkInfo:
          $ref: '#/components/schemas/trunkInfo'
      type: object
    realms:
      items:
        $ref: '#/components/schemas/realm'
      type: array
    realmsResponse:
      properties:
        Realms:
          $ref: '#/components/schemas/realms'
      type: object
    recipientCallback:
      description: Callback url and credentials
      properties:
        Password:
          description: >-
            A password to be used in Basic Authentication of the callback.
            Passwords are not included in GET responses.
          maxLength: 256
          type: string
        Url:
          description: >-
            An https URL that must be provided when Type is set to CALLBACK. The
            URL may optionally include one or more query parameters
          format: url
          maxLength: 256
          type: string
        Username:
          description: A username to be used in Basic Authentication of the callback
          maxLength: 32
          type: string
      type: object
    recipientCreatedDate:
      description: Creation date of the recipient.
      type: string
    recipientEmailAddress:
      format: email
      type: string
    recipientIdentifier:
      description: >-
        The identifier that uniquely identifies an emergency notification
        recipient.
      maxLength: 255
      type: string
    recipientLastModifiedDate:
      description: Last modified date of the recipient.
      type: string
    recipientSms:
      description: >-
        A telephone number capable of receiving text messages that must be
        specified when Type is set to SMS.
      properties:
        TelephoneNumber:
          $ref: '#/components/schemas/telephoneNumber'
      type: object
    recipientTTS:
      description: >-
        A telephone number capable of receiving voice calls that must be
        specified when Type is set to TTS.
      properties:
        TelephoneNumber:
          $ref: '#/components/schemas/telephoneNumber'
      type: object
    referenceDocumentRequestSchema:
      properties:
        countryCodeA3:
          $ref: '#/components/schemas/countryCodeA3'
        description:
          description: Description of the document.
          example: LOA Description
          title: Description of the document
          type: string
        phoneNumberType:
          $ref: '#/components/schemas/phoneNumberType'
        required:
          description: Specifies if the field is mandatory
          example: true
          type: boolean
        subscriberTypes:
          description: Type of the subscriber.
          example:
            - RESIDENTIAL
            - BUSINESS
          title: Type of subscriber
          type: array
        supportedFileTypes:
          description: Supported File Types.
          example: '[pdf, jpeg]'
          title: Support file types
          type: array
        type:
          $ref: '#/components/schemas/documentType'
      title: Create or Update Reference Document
      type: object
    referenceDocumentResponseSchema:
      properties:
        data:
          properties:
            countryCodeA3:
              $ref: '#/components/schemas/countryCodeA3'
            createdDatetime:
              $ref: '#/components/schemas/createdDateTime'
            description:
              description: Description of the document.
              example: LOA Description
              title: Description of the document
              type: string
            id:
              description: The unique identifier for the document.
              example: cce315ec-6fcc-4ac9-b640-b17693403314
              title: Document ID
              type: string
            phoneNumberType:
              $ref: '#/components/schemas/phoneNumberType'
            required:
              description: Specifies if the field is mandatory
              example: true
              type: boolean
            subscriberTypes:
              description: Type of the subscriber.
              example:
                - RESIDENTIAL
                - BUSINESS
              title: Type of subscriber
              type: array
            supportedFileTypes:
              description: Supported File Types.
              example:
                - pdf
                - jpeg
              items:
                type: string
              title: Supported File Types
              type: array
            template:
              description: Template for the document.
              example: https://...
              title: Template for the document
              type: string
            type:
              $ref: '#/components/schemas/documentType'
            updatedDatetime:
              $ref: '#/components/schemas/updatedDateTime'
          type: object
        errors:
          example: []
          items:
            $ref: '#/components/schemas/error'
          type: array
        links:
          $ref: '#/components/schemas/link'
      title: Get Reference Document
      type: object
    region:
      properties:
        areaCode:
          $ref: '#/components/schemas/areaCode'
        availablePhoneNumberQuantity:
          $ref: '#/components/schemas/availablePhoneNumberQuantity'
        city:
          $ref: '#/components/schemas/city'
        regionName:
          $ref: '#/components/schemas/regionName'
      type: object
      xml:
        name: Region
    regionName:
      description: >-
        The name of the country region (e.g. states for USA, provinces for
        CAN.).
      example: NJ, CT
      title: RegionName
      type: string
      xml:
        name: RegionName
    removeImportedTnOrdersHistoryResponse:
      properties:
        RemoveImportedTnOrdersReportResponse:
          $ref: '#/components/schemas/responseStatus'
      type: object
    removeImportedVoiceTnOrderRequest:
      properties:
        CustomerOrderId:
          description: >-
            Optional customer-defined reference ID for this order. Only
            alphanumeric values, dashes and spaces are allowed. Not unique —
            Bandwidth applies no uniqueness constraint, so multiple orders may
            share the same value. Each order receives its own unique
            Bandwidth-assigned `orderId`.
          maxLength: 255
          type: string
        TelephoneNumbers:
          description: >-
            Ten digit phone number with no dots or dashes. One or more is
            required. Use a PhoneNumber tag for each phone number in the list
          items:
            $ref: '#/components/schemas/telephoneNumber'
          minItems: 1
          type: array
      required:
        - TelephoneNumbers
      title: RemoveImportedVoiceTnOrder
    removeImportedVoiceTnOrderResponse:
      properties:
        RemoveImportedVoiceTnOrder:
          properties:
            AccountId:
              type: integer
            CreatedByUser:
              type: string
            CustomerOrderId:
              description: >-
                The customer-defined reference ID for this order, if one was
                provided at creation. Not unique — Bandwidth applies no
                uniqueness constraint, so multiple orders may share the same
                value. Each order has a distinct Bandwidth-assigned `orderId`.
              type: string
            Errors:
              items:
                $ref: '#/components/schemas/telephoneNumberGroupError'
              type: array
            LastModifiedDate:
              type: string
            OrderCreateDate:
              type: string
            OrderId:
              type: string
            ProcessingStatus:
              enum:
                - RECEIVED
                - PROCESSING
                - COMPLETE
                - PARTIAL
                - FAILED
              type: string
            TelephoneNumbers:
              items:
                $ref: '#/components/schemas/telephoneNumber'
              type: array
          type: object
      type: object
    removeImportedVoiceTnOrders:
      properties:
        Links:
          $ref: '#/components/schemas/paginationLinks'
        RemoveImportedVoiceTnOrderSummary:
          items:
            $ref: '#/components/schemas/orderSummary'
          type: array
        TotalCount:
          type: integer
      type: object
    report:
      properties:
        Description:
          description: A description of the report in general terms
          type: string
        Id:
          description: ID of the report
          type: string
        Name:
          description: Name of the report
          type: string
        Parameters:
          description: >-
            A set of parameters that are used to provide boundaries on the
            information that is provided
          items:
            $ref: '#/components/schemas/reportParameter'
          type: array
      type: object
    reportEnumParameterValue:
      properties:
        DisplayName:
          description: DisplayName tag value can be used for UI purposes
          type: string
        InternalName:
          description: InternalName tag value uses in report instance creation
          type: string
      title: Value
      type: object
    reportInstance:
      properties:
        Instance:
          $ref: '#/components/schemas/reportInstancePayload'
      type: object
    reportInstancePayload:
      properties:
        Description:
          type: string
        ExpiresAt:
          type: string
        OutputFormat:
          type: string
        Parameters:
          items:
            $ref: '#/components/schemas/reportParameterValue'
          type: array
      type: object
    reportInstanceResponse:
      properties:
        ReportInstanceResponse:
          properties:
            Instance:
              $ref: '#/components/schemas/reportInstanceResponsePayload'
          type: object
      type: object
    reportInstanceResponsePayload:
      properties:
        Description:
          type: string
        ExpiresAt:
          type: string
        Id:
          type: integer
        OutputFormat:
          type: string
        Parameters:
          items:
            $ref: '#/components/schemas/reportParameterValue'
          type: array
        ReportId:
          type: integer
        ReportName:
          type: string
        RequestedAt:
          format: date-time
          type: string
        RequestedByUserName:
          type: string
        Status:
          type: string
      type: object
    reportInstances:
      items:
        properties:
          Instance:
            $ref: '#/components/schemas/reportInstanceResponsePayload'
      type: array
    reportInstancesResponse:
      properties:
        Instances:
          $ref: '#/components/schemas/reportInstances'
      type: object
    reportParameter:
      properties:
        Description:
          description: Description of the parameter
          type: string
        HelpInformation:
          description: Some help info for describing parameter
          type: string
        MultiSelectAllowed:
          description: Is multiple vales allowed or not
          type: boolean
        Name:
          description: Name of the parameter
          type: string
        Required:
          description: Declaration of whether it is required or not
          type: boolean
        Type:
          description: Type of the parameter
          enum:
            - Account ID
            - Site ID
            - SipPeer ID
            - String
            - Integer
            - Boolean
            - Enum
          type: string
        ValueFilter:
          description: Contains a semicolon separated list of InternalNames
          type: string
        Values:
          description: A list of values of Enum type
          items:
            $ref: '#/components/schemas/reportEnumParameterValue'
          type: array
      type: object
    reportParameterValue:
      properties:
        Name:
          type: string
        Value:
          items:
            type: string
          type: array
      type: object
    reportResponse:
      properties:
        Reports:
          $ref: '#/components/schemas/report'
      type: object
    reportsResponse:
      properties:
        Reports:
          items:
            $ref: '#/components/schemas/notDetailedReport'
          type: array
      type: object
    requirementsPackageId:
      description: Unique identifier for requirements package
      example: 93ac73e8-20a7-95ec-bd32-4e8270e66c31
      title: Requirements Package ID
      type: string
      xml:
        name: requirementsPackageId
    requirementsPackageIdJson:
      description: Unique identifier for requirements package
      example: 93ac73e8-20a7-95ec-bd32-4e8270e66c31
      title: Requirements Package ID
      type: string
    reservation:
      properties:
        AccountId:
          format: int32
          type: integer
        ReservationExpires:
          format: int64
          type: integer
        ReservationId:
          type: string
        ReservedTn:
          type: string
      type: object
    reservationErrorResponse:
      properties:
        ReservationResponse:
          $ref: '#/components/schemas/responseStatus'
      type: object
    reservationRequest:
      properties:
        Reservation:
          $ref: '#/components/schemas/reservationRequestPayload'
      type: object
    reservationRequestJson:
      properties:
        phoneNumber:
          $ref: '#/components/schemas/phoneNumberJson'
      type: object
    reservationRequestPayload:
      properties:
        ReservedTn:
          $ref: '#/components/schemas/telephoneNumber'
      title: Reservation
      type: object
    reservationResponse:
      properties:
        Reservation:
          $ref: '#/components/schemas/reservationResponsePayload'
      type: object
    reservationResponseJson:
      properties:
        accountId:
          format: int32
          type: integer
        phoneNumber:
          $ref: '#/components/schemas/phoneNumberJson'
        reservationExpires:
          format: int64
          type: integer
        reservationId:
          type: string
      type: object
    reservationResponsePayload:
      properties:
        AccountId:
          format: int32
          type: integer
        ReservationExpires:
          format: int64
          type: integer
        ReservationId:
          type: string
        ReservedTn:
          $ref: '#/components/schemas/telephoneNumber'
      type: object
    respOrg:
      description: Responsible organization information for toll-free numbers
      properties:
        exception:
          description: >-
            Indicates if the account is configured as a RespOrg Exception
            account and the toll-free phone number belongs to one of the
            account's RespOrg IDs.
          example: true
          type: boolean
        id:
          description: >-
            ID of the carrier or service provider that is responsible for a toll
            free number
          example: ABC01
          type: string
      type: object
    responseSelectWrapper:
      properties:
        ResponseSelectWrapper:
          properties:
            ListOrderIdUserIdDate:
              properties:
                Links:
                  $ref: '#/components/schemas/links'
                OrderIdUserIdDate:
                  items:
                    $ref: '#/components/schemas/orderIdUserIdDate'
                  type: array
                TotalCount:
                  type: integer
              type: object
          type: object
      type: object
    responseSelectWrapperJson:
      properties:
        links:
          $ref: '#/components/schemas/linksJson'
        orders:
          items:
            $ref: '#/components/schemas/orderIdUserIdDateJson'
          type: array
        phoneNumberCount:
          type: integer
      type: object
    responseStatus:
      properties:
        Description:
          description: Detailed explanation about error
          type: string
        ErrorCode:
          description: Numeric designation of corresponding error
          type: integer
      type: object
    responseStatusJson:
      properties:
        description:
          description: Detailed explanation about error
          type: string
        errorCode:
          description: Numeric designation of corresponding error
          type: integer
    restriction:
      properties:
        CountryCodeA3:
          type: string
        RestrictionCategory:
          type: string
        RestrictionDescription:
          type: string
        RestrictionType:
          $ref: '#/components/schemas/restrictionType'
      type: object
    restrictionResponse:
      properties:
        RestrictionResponse:
          properties:
            Restrictions:
              items:
                $ref: '#/components/schemas/restriction'
              type: array
          type: object
      type: object
    restrictionType:
      enum:
        - LEGAL
        - PURCHASE
        - SERVICE
        - NRA
      example: LEGAL
      type: string
    rogerTerminationSettings:
      properties:
        SubnetAddressingAllowed:
          type: boolean
        TerminationId:
          type: integer
      type: object
    routingPrefixRequestPayload:
      properties:
        code:
          description: The name of the field that contains the code
          example: R01
          type: string
        phoneNumberTypes:
          $ref: '#/components/schemas/phoneNumberTypes'
      required:
        - code
        - phoneNumberTypes
      title: routingPrefixRequestPayload
      type: object
    routingPrefixResponsePayload:
      properties:
        code:
          description: The name of the field that contains the code
          example: R01
          type: string
        phoneNumberTypes:
          $ref: '#/components/schemas/phoneNumberTypes'
      title: routingPrefixResponsePayload
      type: object
    sbcNodeGroupPayloadWithId:
      properties:
        SbcNodeGroup:
          properties:
            Name:
              type: string
            Nodes:
              items:
                properties:
                  Node:
                    description: Node name
                    type: string
                type: object
              type: array
          type: object
      type: object
    sbcNodeGroupResponse:
      properties:
        AdminDataResponse:
          properties:
            SbcNodeGroups:
              $ref: '#/components/schemas/sbcNodeGroupPayloadWithId'
          type: object
      type: object
    sbcNodeGroups:
      items:
        properties:
          SbcNodeGroup:
            $ref: '#/components/schemas/sbcNodeGroup'
        type: object
      type: array
    sbcNodeGroupsResponse:
      properties:
        AdminDataResponse:
          properties:
            SbcNodeGroups:
              $ref: '#/components/schemas/sbcNodeGroups'
          type: object
      type: object
    sbcSettings:
      properties:
        NodeGroupName:
          type: string
        TrunkGroupId:
          type: string
      type: object
    searchResult:
      oneOf:
        - $ref: '#/components/schemas/TNDetailDisabled'
        - $ref: '#/components/schemas/TNDetailEnabled'
      xml:
        name: SearchResult
    searchResultError:
      properties:
        error:
          properties:
            code:
              example: 4010
              type: integer
              xml:
                name: Code
            description:
              example: >-
                One of more required search parameters are null or empty, please
                refer to the api documentation
              type: string
              xml:
                name: Description
          type: object
          xml:
            name: Error
      title: SearchResult
      type: object
      xml:
        name: SearchResult
    searchResultJson:
      anyOf:
        - $ref: '#/components/schemas/tnDetailDisabledJson'
        - $ref: '#/components/schemas/tnDetailEnabledJson'
        - $ref: '#/components/schemas/consecutiveBlocksSearchResultJson'
    selfLink:
      properties:
        href:
          description: URI of the link
          example: /self/uri
          type: string
        method:
          description: HTTP method to be used
          example: GET
          type: string
        rel:
          description: Specifies the relationship between this link and the resource.
          example: SelfResource
          type: string
      title: Self Link
      type: object
    simpleAeuiNonPidfloProvisioning911Order:
      properties:
        E911Order:
          properties:
            Address:
              properties:
                AddressType:
                  type: string
                City:
                  type: string
                Country:
                  type: string
                HouseNumber:
                  type: string
                Latitude:
                  type: string
                LocationId:
                  type: string
                Longitude:
                  type: string
                PlusFour:
                  type: string
                StateCode:
                  type: string
                StreetName:
                  type: string
                StreetSuffix:
                  type: string
                Zip:
                  type: string
              type: object
            AlternateEndUserIdentifiers:
              items:
                properties:
                  AlternateEndUserIdentifier:
                    properties:
                      CallbackNumber:
                        type: string
                      Identifier:
                        maxLength: 30
                        minItems: 1
                        type: string
                      PIDFLOEnabled:
                        default: 'true'
                        type: string
                    required:
                      - CallbackNumber
                      - Identifier
                    type: object
                required:
                  - AlternateEndUserIdentifier
              type: array
            CallerName:
              $ref: '#/components/schemas/callerNameE911'
            CustomerOrderId:
              $ref: '#/components/schemas/customerOrderIdE911'
          required:
            - AlternateEndUserIdentifiers
            - Address
          type: object
      title: SIMPLE AEUI. Non-PIDF-LO endpoint-provisioning order
      type: object
    sipCredential:
      properties:
        Domain:
          description: Subscriber domain. Will be appended to the UserName with an '@'
          type: string
        Hash1:
          description: 'Hash value #1 in MD5 representation'
          type: string
        Hash1b:
          description: 'Hash value #2 in MD5 representation'
          type: string
        HttpVoiceV2AppId:
          description: Application id associated with subscriber
          type: string
        Id:
          description: The ID number associated with the Credential
          type: integer
        Realm:
          description: A string representing the associated Realm
          type: string
        RealmId:
          description: The ID number corresponding to the associated Realm
          type: integer
        UserName:
          description: 'Subscriber name or aggregated name and domain value(ex: Mike@bw.com)'
          type: string
      type: object
    sipCredentialCreateRequest:
      properties:
        Domain:
          description: Subscriber domain. Will be appended to the UserName with an '@'
          maxLength: 32
          type: string
        Hash1:
          description: 'Hash value #1 in MD5 representation'
          maxLength: 64
          type: string
        Hash1b:
          description: 'Hash value #2 in MD5 representation'
          maxLength: 64
          type: string
        HttpVoiceV2AppId:
          description: Application id associated with subscriber
          maxLength: 64
          type: string
        Realm:
          description: Subscriber realm
          maxLength: 64
          type: string
        UserName:
          description: 'Subscriber name or aggregated name and domain value(ex: Mike@bw.com)'
          maxLength: 32
          type: string
      required:
        - UserName
        - Hash1
      title: SipCredential
      type: object
    sipCredentialError:
      properties:
        Description:
          type: string
        ErrorCode:
          type: integer
        SipCredential:
          $ref: '#/components/schemas/sipCredential'
      title: Error
      type: object
    sipCredentialResponse:
      properties:
        Error:
          $ref: '#/components/schemas/sipCredentialError'
        SipCredential:
          $ref: '#/components/schemas/sipCredential'
      type: object
    sipCredentialUpdateRequest:
      properties:
        Hash1:
          description: 'Hash value #1 in MD5 representation'
          maxLength: 64
          type: string
        Hash1b:
          description: 'Hash value #2 in MD5 representation'
          maxLength: 64
          type: string
        HttpVoiceV2AppId:
          description: Application id associated with subscriber
          maxLength: 64
          type: string
        Realm:
          description: Subscriber realm
          maxLength: 64
          type: string
        RealmId:
          description: Subscriber realm ID
          type: string
      required:
        - Hash1
      title: SipCredential
      type: object
    sipCredentialsResponse:
      properties:
        Errors:
          items:
            $ref: '#/components/schemas/sipCredentialError'
          type: array
        ValidSipCredentials:
          items:
            $ref: '#/components/schemas/sipCredential'
          type: array
      type: object
    sipPeerGatewayAttribute:
      properties:
        GatewayAttribute:
          $ref: '#/components/schemas/terminationAttribute'
        GatewayId:
          format: int64
          type: integer
      type: object
    sipPeerGatewayAttributeResponse:
      properties:
        SipPeerGatewayAttributeResponse:
          properties:
            SipPeerGatewayAttribute:
              $ref: '#/components/schemas/sipPeerGatewayAttribute'
          type: object
      type: object
    sipPeerGatewayAttributes:
      properties:
        GatewayAttributes:
          items:
            $ref: '#/components/schemas/terminationAttribute'
          type: array
        GatewayId:
          format: int64
          type: integer
      type: object
    sipPeerGatewayAttributesResponse:
      properties:
        SipPeerGatewayAttributesResponse:
          properties:
            SipPeerGatewayAttributes:
              $ref: '#/components/schemas/sipPeerGatewayAttributes'
          type: object
      type: object
    sipPeerGatewayIp:
      properties:
        HostName:
          type: string
        Port:
          type: string
        id:
          format: int64
          type: integer
      title: TerminationHost
      type: object
    sipPeerGatewayIpResponse:
      properties:
        SipPeerGatewayIpResponse:
          properties:
            SipPeerGatewayIp:
              allOf:
                - $ref: '#/components/schemas/sipPeerGatewayIp'
              title: SipPeerGatewayIp
              type: object
          type: object
      title: SipPeerGatewayIpResponse
      type: object
    sipPeerGatewayIpsResponse:
      properties:
        TerminationHosts:
          items:
            $ref: '#/components/schemas/sipPeerGatewayIp'
          type: array
      title: TerminationHosts
      type: object
    sipPeerHost:
      properties:
        SipPeerId:
          type: integer
        SmsHosts:
          $ref: '#/components/schemas/hosts'
        TerminationHosts:
          $ref: '#/components/schemas/hosts'
        VoiceHosts:
          $ref: '#/components/schemas/hosts'
      type: object
    sipPeerHosts:
      properties:
        SipPeerHosts:
          items:
            $ref: '#/components/schemas/sipPeerHost'
          type: array
      type: object
      xml:
        name: SipPeerHosts
    sipPeerHttpSettings:
      properties:
        HttpVoiceV2AppId:
          type: string
      title: HttpSettings
      type: object
    sipPeerMessagingSettings:
      properties:
        BreakOutCountries:
          items:
            properties:
              Country:
                type: string
          type: array
      type: object
    sipPeerMessagingSettingsResponse:
      properties:
        SipPeerMessagingSettings:
          $ref: '#/components/schemas/sipPeerMessagingSettings'
      type: object
    sipPeerMmsFeature:
      properties:
        MmsSettings:
          $ref: '#/components/schemas/mmsSettings'
        Protocols:
          $ref: '#/components/schemas/mmsProtocols'
      title: MmsFeature
      type: object
    sipPeerOriginationSettingsRequest:
      properties:
        HttpSettings:
          $ref: '#/components/schemas/productHttpSettings'
        VoiceProtocol:
          $ref: '#/components/schemas/productVoiceProtocol'
      required:
        - VoiceProtocol
      title: SipPeerHttpSettings
      type: object
    sipPeerOriginationSettingsResponse:
      properties:
        SipPeerOriginationSettings:
          $ref: '#/components/schemas/sipPeerProductSettings'
      type: object
    sipPeerProductSettings:
      properties:
        HttpSettings:
          $ref: '#/components/schemas/sipPeerHttpSettings'
        VoiceProtocol:
          type: string
      type: object
    sipPeerProductsResponse:
      properties:
        Products:
          items:
            $ref: '#/components/schemas/product'
          type: array
      type: object
    sipPeerSmsFeature:
      properties:
        HttpSettings:
          $ref: '#/components/schemas/smsHttpSettings'
        SipPeerSmsFeatureSettings:
          $ref: '#/components/schemas/sipPeerSmsFeatureSettings'
        SmppHosts:
          items:
            $ref: '#/components/schemas/smsHost'
          type: array
      type: object
    sipPeerSmsFeatureResponse:
      properties:
        SipPeerSmsFeature:
          $ref: '#/components/schemas/sipPeerSmsFeature'
      type: object
    sipPeerSmsFeatureSettings:
      properties:
        A2pLongCode:
          enum:
            - DEFAULT_ON
            - DEFAULT_OFF
            - INCORRECT_VALUE
          type: string
        A2pMessageClass:
          type: string
        Protocol:
          enum:
            - SIP
            - SMPP
            - HTTP
          type: string
        ShortCode:
          type: boolean
        TollFree:
          type: boolean
        Zone1:
          type: boolean
        Zone2:
          type: boolean
        Zone3:
          type: boolean
        Zone4:
          type: boolean
        Zone5:
          type: boolean
      title: SmsSettings
      type: object
    sipPeerTelephoneNumber:
      properties:
        CallForward:
          description: Does this telephone number have call forwarding or not
          type: string
        CallingNameDisplay:
          description: >-
            Calling Name of the caller is available to the user or not on
            incoming calls
          type: string
        FullNumber:
          description: A 10 Digit Telephone Number
          type: string
        MessagingSettings:
          description: Does this telephone number have any messaging system configured
          type: string
        RPIDFormat:
          description: Telephone number RPID format
          enum:
            - 10digit
            - 11digit
            - e164
            - 'false'
          type: string
        RewriteUser:
          maxLength: 25
          type: string
        TnAttributes:
          description: Is this telephone number protected or not
          items:
            properties:
              TnAttribute:
                type: string
          type: array
      type: object
    sipPeerTelephoneNumberResponse:
      properties:
        SipPeerTelephoneNumber:
          $ref: '#/components/schemas/sipPeerTelephoneNumber'
      type: object
    sipPeerTelephoneNumberResponseBadRequest:
      properties:
        ResponseStatus:
          $ref: '#/components/schemas/responseStatus'
      type: object
    sipPeerTerminationProducts:
      properties:
        TerminationHosts:
          items:
            $ref: '#/components/schemas/sipPeerGatewayIp'
          type: array
          xml:
            wrapped: true
        TerminationSettings:
          $ref: '#/components/schemas/sipPeerTerminationSettings'
      title: TerminationProduct
      type: object
    sipPeerTerminationProductsResponse:
      properties:
        TerminationResponse:
          properties:
            TerminationProduct:
              $ref: '#/components/schemas/sipPeerTerminationProducts'
          type: object
      type: object
    sipPeerTerminationSettings:
      properties:
        HttpSettings:
          $ref: '#/components/schemas/sipPeerHttpSettings'
        VoiceProtocol:
          type: string
      title: TerminationSettings
      type: object
    sipPeerTerminationSettingsRequest:
      properties:
        HttpSettings:
          $ref: '#/components/schemas/productHttpSettings'
        VoiceProtocol:
          $ref: '#/components/schemas/productVoiceProtocol'
      required:
        - VoiceProtocol
      title: SipPeerTerminationSettings
      type: object
    sipPeerTerminationSettingsResponse:
      properties:
        SipPeerTerminationSettings:
          $ref: '#/components/schemas/sipPeerProductSettings'
      type: object
    siteHost:
      properties:
        SipPeerHosts:
          $ref: '#/components/schemas/sipPeerHosts'
        SiteId:
          type: integer
      type: object
    siteHosts:
      properties:
        SiteHosts:
          items:
            $ref: '#/components/schemas/siteHost'
          type: array
      type: object
    siteHostsResponse:
      properties:
        SiteHostsResponse:
          $ref: '#/components/schemas/siteHosts'
      type: object
    smppSettings:
      properties:
        AllowThirdPartyTN:
          type: boolean
        ConnectionTypeDefault:
          enum:
            - TRANSCEIVER
            - SENDER_ONLY
            - RECEIVER_ONLY
          type: string
        Dlr:
          enum:
            - INTERMEDIATE
            - FINAL
          type: string
        DlrCarrier:
          type: boolean
        DstNpi:
          enum:
            - DEFAULT
            - UNKNOWN
            - E164
            - X121
            - TELEX
            - NATIONAL
            - PRIVATE
            - ERMES
            - EXTENSION
          type: string
        DstTon:
          enum:
            - DEFAULT
            - UNKNOWN
            - INTERNATIONAL
            - NATIONAL
            - NETWORKSPECIFIC
            - SUBSCRIBER
            - ALPHANUMERIC
            - ABBREVIATED
            - EXTENSION
          type: string
        ForceTon:
          type: boolean
        MaxConnections:
          type: integer
        MaxPendingSubmits:
          type: integer
        Password:
          type: string
        ResetPassword:
          type: boolean
        SmppUsername:
          type: string
        SrcNpi:
          enum:
            - DEFAULT
            - UNKNOWN
            - E164
            - X121
            - TELEX
            - NATIONAL
            - PRIVATE
            - ERMES
            - EXTENSION
          type: string
        SrcTon:
          enum:
            - DEFAULT
            - UNKNOWN
            - INTERNATIONAL
            - NATIONAL
            - NETWORKSPECIFIC
            - SUBSCRIBER
            - ALPHANUMERIC
            - ABBREVIATED
            - EXTENSION
          type: string
      type: object
    smsHost:
      properties:
        ConnectionType:
          enum:
            - TRANSCEIVER
            - SENDER_ONLY
            - RECEIVER_ONLY
          type: string
        HostId:
          type: integer
        HostName:
          type: string
        Port:
          type: string
        Priority:
          type: integer
      type: object
    smsHttpSettings:
      properties:
        ProxyPeerId:
          type: integer
      title: HttpSettings
      type: object
    sort:
      enum:
        - ASC
        - DESC
      type: string
    stateWithCount:
      properties:
        Count:
          type: integer
        State:
          type: string
      type: object
    stateWithCountJson:
      properties:
        count:
          type: integer
        state:
          type: string
      type: object
    statusHistoryResponse:
      properties:
        data:
          properties:
            pon:
              example: 05fe99c6-0a9f-4d42-9ac3-aa7d0516d39f
            status:
              example:
                - lastModifiedDate: '2025-01-31T15:52:21Z'
                  processingStatus: PENDING_DOCUMENTS
                - lastModifiedDate: '2025-01-31T15:53:21Z'
                  processingStatus: SUBMITTED
                - processingStatus: FOC
                - processingStatus: COMPLETE
          type: object
        errors:
          example: []
          items:
            $ref: '#/components/schemas/error'
          type: array
        links:
          allOf:
            - $ref: '#/components/schemas/listLinksOnlyWithAfterCursor'
          example:
            - href: >-
                https://api.bandwidth.com/api/v2/accounts/{account_id}/portin/statusHistory?pon=05fe99c6-0a9f-4d42-9ac3-aa7d0516d39f
              method: GET
              ref: self
      title: Status History Response
      type: object
    statusJson:
      properties:
        code:
          format: int32
          type: integer
        description:
          type: string
      type: object
    subscriber:
      properties:
        BusinessName:
          description: Subscriber business name.
          type: string
        FirstName:
          description: Subscriber first name.
          type: string
        LastName:
          description: Subscriber last name.
          type: string
        MiddleInitial:
          description: Subscriber middle initial.
          type: string
        ServiceAddress:
          $ref: '#/components/schemas/address'
        SubscriberType:
          description: If residential, order will be rejected if a BusinessName is entered.
          enum:
            - BUSINESS
            - RESIDENTIAL
            - GENERIC
          type: string
        type: object
      type: object
    subscriberBusiness:
      properties:
        BusinessName:
          maxLength: 25
          type: string
        ServiceAddress:
          $ref: '#/components/schemas/portinCreateSubscriberServiceAddress'
        SubscriberType:
          enum:
            - BUSINESS
          type: string
      required:
        - SubscriberType
        - ServiceAddress
        - BusinessName
      title: BUSINESS
      type: object
    subscriberBusinessJson:
      properties:
        businessName:
          maxLength: 25
          type: string
        serviceAddress:
          $ref: '#/components/schemas/portInCreateSubscriberServiceAddressJson'
        subscriberType:
          enum:
            - BUSINESS
          type: string
      required:
        - subscriberType
        - serviceAddress
        - businessName
      title: BUSINESS
      type: object
    subscriberJson:
      properties:
        accountNumber:
          description: >-
            The WirelessInfo.AccountNumber is sometimes required to authorize
            the port-out from the losing carrier. This is most common for
            telephone numbers that were formerly wireless. This element is not
            applicable for toll free port-ins.
          type: string
        addressId:
          description: >-
            UUID of the address created with the
            `/accounts/{accountId}/addresses` API endpoint.
          maxLength: 36
          type: string
        businessName:
          description: >-
            The BusinessName is mandatory for non-toll free port-ins for which
            the SubscriberType is set to BUSINESS. The BusinessName may be up to
            25 characters in length. This element is not applicable for toll
            free port-ins.
          type: string
        firstName:
          description: >-
            The FirstName value is applicable to non-toll free port-in orders in
            which the SubscriberType is set to RESIDENTIAL. The FirstName is
            always optional. The FirstName may be up to 25 characters in length.
          type: string
        lastName:
          description: >-
            The LastName value is mandatory for non-toll free port-in orders in
            which the SubscriberType is set to RESIDENTIAL. The LastName may be
            up to 25 characters in length.
          type: string
        middleInitial:
          description: >-
            The MiddleInitial value is applicable to non-toll free port-in
            orders in which the SubscriberType is set to RESIDENTIAL. The
            MiddleInitial is always optional. The MiddleInitial is 1 character
            in length.
          type: string
        name:
          description: >-
            If the subscriber type is business, the subscriber name is the name
            of the business responsible for the numbers being ported. If the
            subscriber type is residential, the subscriber name is the name of
            the person responsible for the numbers being ported.
          type: string
        pinNumber:
          description: >-
            Element of WirelessInfo. Not applicable to toll free port-ins.
            Cannot be SUPPed for Automated off-net port-ins. If you want to SUPP
            WirelessInfo, you must include both AccountNumber and PinNumber in
            the payload, even if you are not changing both.
          type: string
        serviceAddress:
          $ref: '#/components/schemas/addressJson'
        subscriberType:
          description: >-
            The SubscriberType is mandatory for all non-toll free port-in
            orders. The SubscriberType field may have values: BUSINESS or
            RESIDENTIAL.
          enum:
            - business
            - residential
            - generic
          type: string
        vatNumber:
          description: >-
            The `VatNumber` is the value of the VAT number associated with the
            subscriber. This field is required when porting numbers for a subset
            of countries when the SubscriberType is `BUSINESS`.
          maxLength: 36
          type: string
      type: object
    subscriberResidential:
      properties:
        FirstName:
          maxLength: 25
          type: string
        LastName:
          maxLength: 25
          type: string
        MiddleInitial:
          maxLength: 1
          type: string
        ServiceAddress:
          $ref: '#/components/schemas/portinCreateSubscriberServiceAddress'
        SubscriberType:
          enum:
            - RESIDENTIAL
          type: string
      required:
        - SubscriberType
        - ServiceAddress
        - FirstName
        - LastName
      title: RESIDENTIAL
      type: object
    subscriberResidentialJson:
      properties:
        firstName:
          maxLength: 25
          type: string
        lastName:
          maxLength: 25
          type: string
        middleInitial:
          maxLength: 1
          type: string
        serviceAddress:
          $ref: '#/components/schemas/portInCreateSubscriberServiceAddressJson'
        subscriberType:
          enum:
            - RESIDENTIAL
          type: string
      required:
        - subscriberType
        - serviceAddress
        - firstName
        - lastName
      title: RESIDENTIAL
      type: object
    subscriberType:
      description: The type of subscriber / end-user.
      enum:
        - RESIDENTIAL
        - BUSINESS
      type: string
    subscriptionOrderId:
      description: >-
        If provided order id notifications will only be sent for events
        regarding this specific order, if omitted notifications regarding events
        for all orders of the specified type will be sent.
      format: uuid
      type: string
    subscriptionOrderType:
      enum:
        - portins
        - orders
        - portouts
        - disconnects
        - dldas
        - lsrorders
        - e911s
        - tnoptions
        - lidb
        - bulkPortins
        - importtnorders
        - removeImportedTnOrders
        - csrs
        - emergencyNotificationGroup
        - emergencyEndpointGroup
        - tollfreePortingValidations
      type: string
    subscriptionResponse:
      properties:
        SubscriptionResponse:
          properties:
            Subscription:
              $ref: '#/components/schemas/subscriptionResponsePayload'
          type: object
      type: object
    subscriptionResponsePayload:
      properties:
        CallbackSubscription:
          $ref: '#/components/schemas/callbackSubscription'
        EmailSubscription:
          $ref: '#/components/schemas/emailSubscription'
        EventType:
          type: string
        OrderId:
          type: string
        OrderType:
          type: string
        SubscriptionId:
          type: string
      type: object
    subscriptionsErrorResponse:
      properties:
        SubscriptionsResponse:
          $ref: '#/components/schemas/responseStatus'
      type: object
    subscriptionsResponse:
      properties:
        SubscriptionsResponse:
          properties:
            Subscriptions:
              items:
                $ref: '#/components/schemas/subscriptionResponsePayload'
              type: array
          type: object
      type: object
    telephoneDetailsReports:
      properties:
        TelephoneDetailsReports:
          properties:
            TelephoneDetailsReport:
              properties:
                AreaCode:
                  description: >-
                    The first 3 digits of a 10-digit North American Numbering
                    Plan telephone number.
                  type: integer
                Count:
                  description: >-
                    Total number of area codes associated with the specified
                    port-in number.
                  type: integer
              type: object
          type: object
      type: object
    telephoneDetailsReportsNPAXX:
      properties:
        TelephoneDetailsReports:
          properties:
            Count:
              description: >-
                Total number of NPA-NXX codes associated with the specified
                port-in number
              type: integer
            NPA-NXX:
              description: >-
                The first 6 digits of a 10-digit North American Numbering Plan
                telephone number.
              type: integer
          type: object
      type: object
    telephoneNumber:
      properties:
        TelephoneNumber:
          description: Telephone Number in E.164 format.
          type: string
      type: object
    telephoneNumberDetails:
      properties:
        Cities:
          items:
            $ref: '#/components/schemas/cityWithCount'
          type: array
          xml:
            wrapped: true
        RateCenters:
          items:
            $ref: '#/components/schemas/rateCenterWithCount'
          type: array
          xml:
            wrapped: true
        States:
          items:
            $ref: '#/components/schemas/stateWithCount'
          type: array
          xml:
            wrapped: true
        Tiers:
          items:
            $ref: '#/components/schemas/tiers'
          type: array
          xml:
            wrapped: true
        Vendors:
          items:
            $ref: '#/components/schemas/vendors'
          type: array
          xml:
            wrapped: true
      type: object
    telephoneNumberDetailsJson:
      properties:
        cities:
          items:
            $ref: '#/components/schemas/cityWithCountJson'
          type: array
        rateCenters:
          items:
            $ref: '#/components/schemas/rateCenterWithCountJson'
          type: array
        states:
          items:
            $ref: '#/components/schemas/stateWithCountJson'
          type: array
        tiers:
          items:
            $ref: '#/components/schemas/tiersJson'
          type: array
        vendors:
          items:
            $ref: '#/components/schemas/vendorsJson'
          type: array
      type: object
    telephoneNumberGroupError:
      properties:
        Code:
          type: integer
        Description:
          type: string
        TelephoneNumbers:
          items:
            type: string
            xml:
              name: TelephoneNumber
          type: array
          xml:
            wrapped: true
      title: Error
      type: object
    telephoneNumberRange:
      properties:
        From:
          description: The starting telephone number in the range in E.164 format.
          type: string
        To:
          description: The ending telephone number in the range in E.164 format.
          type: string
      type: object
    telephoneNumbers:
      properties:
        TelephoneNumbers:
          properties:
            Count:
              description: >-
                Total count of telephone numbers associated with the specified
                port-in number.
              type: integer
            TelephoneNumber:
              description: >-
                ListOfPhoneNumbers is an array of PhoneNumber. At least one
                PhoneNumber must be provided for all port-types.
              items:
                $ref: '#/components/schemas/telephoneNumber'
              type: array
          type: object
      type: object
    telephoneNumbersAssignmentError:
      properties:
        Code:
          type: integer
        Description:
          type: string
        TelephoneNumbers:
          items:
            $ref: '#/components/schemas/telephoneNumber'
          type: array
      title: Error
      type: object
    telephoneNumbersAssignmentOrder:
      properties:
        TelephoneNumbersAssignmentOrder:
          $ref: '#/components/schemas/telephoneNumbersAssignmentOrderPayload'
      type: object
    telephoneNumbersAssignmentOrderErrorResponse:
      properties:
        TelephoneNumbersAssignmentOrderResponse:
          $ref: '#/components/schemas/responseStatus'
      type: object
    telephoneNumbersAssignmentOrderHistoryResponse:
      properties:
        TelephoneNumbersAssignmentOrders:
          properties:
            TelephoneNumbersAssignmentOrderSummary:
              items:
                $ref: '#/components/schemas/telephoneNumbersAssignmentOrderSummary'
              type: array
            TotalCount:
              type: integer
          type: object
      type: object
    telephoneNumbersAssignmentOrderPayload:
      properties:
        Action:
          enum:
            - ASSIGN
            - UNASSIGN
          type: string
        CustomerOrderId:
          description: >-
            Optional customer-defined reference ID for this order. Only
            alphanumeric values, dashes and spaces are allowed. Not unique —
            Bandwidth applies no uniqueness constraint, so multiple orders may
            share the same value. Each order receives its own unique
            Bandwidth-assigned `orderId`.
          type: string
        TelephoneNumbers:
          items:
            $ref: '#/components/schemas/telephoneNumber'
          type: array
      title: TelephoneNumbersAssignmentOrder
      type: object
    telephoneNumbersAssignmentOrderResponse:
      properties:
        AccountId:
          format: int32
          type: integer
        CreatedByUser:
          type: string
        Errors:
          items:
            $ref: '#/components/schemas/telephoneNumbersAssignmentError'
          type: array
        FailedQuantity:
          format: int32
          type: integer
        OrderCreateDate:
          type: string
        OrderId:
          type: string
        OrderStatus:
          type: string
        TelephoneNumbersAssignmentOrder:
          $ref: '#/components/schemas/telephoneNumbersAssignmentOrderPayload'
        TotalQuantity:
          format: int32
          type: integer
      type: object
    telephoneNumbersAssignmentOrderSummary:
      properties:
        TelephoneNumbersAssignmentOrderSummary:
          properties:
            Action:
              type: string
            FailedQuantity:
              format: int32
              type: integer
            OrderDate:
              type: string
            OrderId:
              type: string
            OrderStatus:
              type: string
            OrderType:
              type: string
            TotalQuantity:
              format: int32
              type: integer
            accountId:
              format: int32
              type: integer
            userId:
              type: string
          type: object
      type: object
    terminationAttribute:
      properties:
        effectiveDate:
          format: date-time
          type: string
        externalId:
          format: int64
          type: integer
        id:
          format: int64
          type: integer
        inEffectiveDate:
          format: date-time
          type: string
        isTemplate:
          type: boolean
        productAttributeId:
          format: int64
          type: integer
        productId:
          format: int64
          type: integer
        profileId:
          format: int64
          type: integer
        type:
          type: string
        value:
          type: string
      title: GatewayAttribute
      type: object
    terminationSettings:
      properties:
        HttpVoiceProxyTermHost:
          description: can be used only with RogerTerminationSettings
          type: string
        LegacyTerminationSettings:
          $ref: '#/components/schemas/legacyTerminationSettings'
        RogerTerminationSettings:
          $ref: '#/components/schemas/rogerTerminationSettings'
        RogerUsedForTerminationSettings:
          type: boolean
      type: object
    terminationSettingsResponse:
      properties:
        TerminationSettings:
          $ref: '#/components/schemas/terminationSettings'
      type: object
    tiers:
      properties:
        Count:
          type: integer
        Tier:
          type: string
      type: object
    tiersJson:
      properties:
        count:
          type: integer
        tier:
          type: integer
      type: object
    tn:
      properties:
        Tn:
          type: string
      type: object
    tnAttribute:
      description: >-
        The TnAttributes field specifies line attributes that will apply to the
        ported in telephone numbers. If present, TnAttributes may have a value
        of PROTECTED. This element is not applicable for off-net and toll free
        port-types.
      properties:
        TnAttribute:
          type: string
      type: object
    tnDetailDisabledJson:
      properties:
        phoneNumbers:
          items:
            example: '+17722029845'
            type: string
          type: array
        resultCount:
          example: 1
          type: integer
      title: TN Detail Disabled
      type: object
    tnDetailEnabledJson:
      properties:
        resultCount:
          example: 1
          type: integer
        telephoneNumberDetails:
          items:
            oneOf:
              - $ref: '#/components/schemas/nANPATNDetailJson'
              - $ref: '#/components/schemas/otherTNDetail'
          type: array
      title: TN Detail Enabled
      type: object
    tnOptionOrderReportValidationErrorResponse:
      properties:
        TollFreePortingValidationResponse:
          $ref: '#/components/schemas/responseStatus'
      title: TollFreePortingValidationResponse
      type: object
    tnReservationResponse:
      properties:
        TNReservation:
          $ref: '#/components/schemas/reservation'
      type: object
    tnTypePayload:
      properties:
        TnType:
          properties:
            IsAllowed:
              type: boolean
            Source:
              type: string
            Type:
              type: string
          type: object
    tnTypeWithId:
      properties:
        IsAllowed:
          type: boolean
        Source:
          type: string
        TnTypeId:
          type: integer
        Type:
          type: string
      type: object
    tollFreeNumber:
      properties:
        TollFreeNumber:
          type: string
      type: object
    tollFreeNumberRespOrg:
      properties:
        Id:
          type: string
        RespOrgException:
          type: boolean
        TollFreeNumberList:
          items:
            $ref: '#/components/schemas/tollFreeNumber'
          type: array
      type: object
    tollFreePeeringPartner:
      properties:
        Enabled:
          type: boolean
      type: object
    tollFreePortingValidationOrderBreakdown:
      properties:
        ManuallyPortableTollFreeNumberList:
          $ref: '#/components/schemas/manuallyPortableTollFreeNumberList'
        NonPortableTollFreeNumberList:
          $ref: '#/components/schemas/nonPortableTollFreeNumberList'
        PortableTollFreeNumberList:
          $ref: '#/components/schemas/portableTollFreeNumberList'
      type: object
    tollFreePortingValidationOrdersResponse:
      properties:
        TollFreePortingValidationResponses:
          items:
            $ref: '#/components/schemas/tollFreePortingValidationResponse'
          type: array
      type: object
    tollFreePortingValidationRequest:
      properties:
        TollFreePortingValidation:
          $ref: '#/components/schemas/tollFreePortingValidationRequestPayload'
      type: object
    tollFreePortingValidationRequestPayload:
      properties:
        CustomerOrderId:
          description: >-
            Optional customer-defined reference ID for this order. Only
            alphanumeric values, dashes and spaces are allowed. Not unique —
            Bandwidth applies no uniqueness constraint, so multiple orders may
            share the same value. Each order receives its own unique
            Bandwidth-assigned `orderId`.
          type: string
        TollFreeNumberList:
          description: >-
            Is a list of toll free telephone numbers for which you want
            information about the status and RespOrg from SOMOS. The list may
            consist of up to 5,000 toll free telephone numbers in one order. 
            The more numbers in the order, the longer it will take the order to
            complete.
          items:
            $ref: '#/components/schemas/tollFreeNumber'
          maxItems: 5000
          type: array
      title: TollFreePortingValidation
      type: object
    tollFreePortingValidationResponse:
      properties:
        TollFreePortingValidationResponse:
          properties:
            TollFreePortingValidation:
              $ref: '#/components/schemas/tollFreePortingValidationResponsePayload'
          type: object
      type: object
    tollFreePortingValidationResponsePayload:
      properties:
        AccountId:
          format: int32
          type: integer
        Breakdown:
          $ref: '#/components/schemas/tollFreePortingValidationOrderBreakdown'
        CreatedByUser:
          type: string
        CustomerOrderId:
          description: >-
            The customer-defined reference ID for this order, if one was
            provided at creation. Not unique — Bandwidth applies no uniqueness
            constraint, so multiple orders may share the same value. Each order
            has a distinct Bandwidth-assigned `orderId`.
          type: string
        ErrorList:
          items:
            $ref: '#/components/schemas/lnpError'
          type: array
        OrderCreateDate:
          type: string
        OrderId:
          type: string
        ProcessingStatus:
          enum:
            - SUBMITTED
            - PROCESSING
            - FAILED
            - COMPLETE
            - CANCELLED
          type: string
        TollFreeNumberList:
          items:
            $ref: '#/components/schemas/tollFreeNumber'
          type: array
      title: TollFreePortingValidation
      type: object
    tollFreeRoutingTemplateErrorResponse:
      properties:
        data:
          description: >-
            This is the object that holds the response data for valid toll free
            telephone numbers.  More information about the contents is provided
            below.
          items:
            type: object
          nullable: true
          type: array
        errors:
          description: >-
            An array of error objects.  If the request payload included
            telephone numbers that are invalid or not in-service on your
            account, one or more errors entries will be present in the error
            response payload to describe the problem(s) and the list of phone
            numbers that are associated with each problem.
          items:
            properties:
              code:
                description: >-
                  A unique error code associated with the problem with the
                  /tollFreeTemplateAssignments/search request payload error.
                type: string
              description:
                description: >-
                  A text description of the problem with the
                  /tollFreeTemplateAssignments/search request payload.
                type: string
              meta:
                description: >-
                  Meta-data associated with the error.  For the
                  /tollFreeTemplateAssignments/search 400 response payload, the
                  meta object will be null if the source field has a value other
                  than "phoneNumbers".  Otherwise the meta object will consist
                  of an array of phoneNumbers to which the error applies.
                nullable: true
                properties:
                  phonenumbers:
                    description: >-
                      An array of 1 or more toll free telephone numbers to which
                      the error applies.
                    type: string
                type: object
              source:
                description: >-
                  The name of the /tollFreeTemplateAssignments/search request
                  payload element that the error refers to.  For the
                  /tollFreeTemplateAssignments/search 400 response payload, the
                  source will consist of a single field name.  If the source
                  field name is "phoneNumbers", a "meta" object will be present
                  with an array of toll free phone numbers to which the error
                  applies.
                properties:
                  field:
                    type: string
                type: object
            type: object
          type: array
        links:
          description: >-
            For the /tollFreeTemplateAssignments/search response payload, this
            will always be an empty array.
          items:
            type: object
          type: array
      type: object
    tollFreeRoutingTemplateRequest:
      properties:
        queryCriteria:
          description: >-
            An array of query parameter names, values, and comparison
            operators.  For the /tollFreeTemplateAssignments/search request
            payload, only a single queryCriteria entry is allowed.
          items:
            properties:
              operator:
                description: >-
                  For the /tollFreeTemplateAssignments/search request payload,
                  the only supported operator value is "IN".
                type: string
              parameter:
                description: >-
                  For the /tollFreeTemplateAssignments/search request payload,
                  the only supported parameter name is "phoneNumbers".
                type: string
              values:
                description: >-
                  For the /tollFreeTemplateAssignments/search request payload,
                  the only supported values are an array of North American
                  Numbering Plan toll free telephone numbers in e.164 format.
                  These toll free telephone numbers must be in-service on the
                  account specified in the {accountId} in the URL path.
                items:
                  type: string
                type: array
            type: object
          type: array
      type: object
    tollFreeRoutingTemplateSuccessResponse:
      properties:
        data:
          description: >-
            This is the object that holds the response data for valid toll free
            telephone numbers.  More information about the contents is provided
            below.
          properties:
            phoneNumberTemplateMappings:
              description: >-
                This is an array of toll free telephone numbers and the toll
                free routing template names they map to. The response may
                include up to 5000 array entries, corresponding to the toll free
                telephone numbers specified in the request payload.
              items:
                properties:
                  phoneNumber:
                    description: >-
                      A valid toll free telephone number from the request
                      payload.
                    type: string
                  reasonForNoTemplate:
                    description: >-
                      If the templateName is null, this field specifies the
                      reason why the template is null. If the templateName is
                      non-null, the reasonForNoTemplate is specified as null.
                    nullable: true
                    type: string
                  templateName:
                    description: >-
                      The toll free routing template name associated with the
                      phoneNumber. The templateName can be used to infer routing
                      information for the toll free number. If no template has
                      been assigned to this telephone number (rare), the
                      templateName value will be null.
                    nullable: true
                    type: string
                type: object
              type: array
          type: object
        errors:
          description: >-
            For the /tollFreeTemplateAssignments/search success response
            payload, this will always be an empty array.
          items:
            type: object
          type: array
        links:
          description: >-
            For the /tollFreeTemplateAssignments/search response payload, this
            will always be an empty array.
          items:
            type: object
          type: array
      type: object
    tollFreeSettings:
      properties:
        RespOrgException:
          default: false
          description: >-
            A value of true indicates that the customer is their own RespOrg, or
            Responsible Organization, and any numbers ported in should NOT be
            changed to a Bandwidth RespOrg ID.  A value of false indicates that
            the customer would like to have Bandwidth act as RespOrg on their
            behalf.  Any toll free numbers ported in should be changed to a
            Bandwidth RespOrg ID.
          type: boolean
        RespOrgIdList:
          description: >-
            A list of RespOrgId values that the customer owns if they are a
            RespOrg Exception customer (i.e. RespOrgException is set to true).
          items:
            properties:
              RespOrgId:
                description: A 5-character RespOrgId value assigned by SOMOS.
                type: string
            type: object
          type: array
        TargetBandwidthRespOrgId:
          default: JYT01
          description: >-
            The Bandwidth RespOrgId to use as the default for this customer. 
            This is used if the customer, by prior arrangement with Bandwidth,
            should have their toll free numbers assigned to a custom Bandwidth
            RespOrgId (e.g. JYT50).
          type: string
        TollFreeTemplateAssignmentsSearch:
          default: false
          description: >-
            A value of true indicates that all users of this account are
            authorized to use the
            /accounts/{accountId}/tollFreeTemplateAssignments/search endpoint to
            fetch the toll free routing template names associated with telephone
            numbers on this account.
          type: boolean
      required:
        - RespOrgException
      type: object
    tollFreeSettingsResponse:
      properties:
        TerminationSettings:
          $ref: '#/components/schemas/tollFreeSettings'
      type: object
    tpas:
      items:
        $ref: '#/components/schemas/tpa'
      type: array
    trunkAllocationRule:
      properties:
        LowerBound:
          type: integer
        Ratio:
          type: integer
      type: object
    trunkInfo:
      properties:
        CapabilityPipeId:
          type: string
        TrunkId:
          type: string
      type: object
    ucTrunkingCloudSettings:
      properties:
        BiDirectionalTrunks:
          type: string
      type: object
    ucTrunkingCloudSettingsPayload:
      properties:
        UcTrunkingCloudSettings:
          $ref: '#/components/schemas/ucTrunkingCloudSettings'
      type: object
    ucTrunkingCloudSettingsResponse:
      properties:
        UcTrunkingCloudSettings:
          $ref: '#/components/schemas/ucTrunkingCloudSettings'
      type: object
    ucTrunkingPremiseSettings:
      properties:
        BiDirectionalTrunks:
          format: int32
          type: integer
      type: object
    ucTrunkingPremiseTrunksResponse:
      properties:
        UcTrunkingPremiseTrunksResponse:
          properties:
            UcTrunkingPremiseSettings:
              $ref: '#/components/schemas/ucTrunkingPremiseSettings'
          type: object
      type: object
    ucTrunkingSettings:
      properties:
        BillingType:
          enum:
            - DNIS
            - LRN
          type: string
        CustomerTrafficAllowed:
          enum:
            - ALL
            - LITE
            - DOMESTIC
            - NONE
          type: string
        MaxUcTrunks:
          type: integer
        PartnerType:
          enum:
            - RESELLER
            - AGENT
          type: string
        TrunkAllocationRules:
          items:
            $ref: '#/components/schemas/trunkAllocationRule'
          type: array
        UsageCategory:
          enum:
            - UC250
            - UC500
            - UC1000
          type: string
      type: object
    ucTrunkingSettingsResponse:
      properties:
        UcTrunkingSettings:
          $ref: '#/components/schemas/ucTrunkingSettings'
      type: object
    updateAdminDocumentRequestSchema:
      properties:
        documentType:
          $ref: '#/components/schemas/adminDocumentType'
      title: Update Admin Documents Request
      type: object
    updateDocumentStatusUpdateRequestSchema:
      properties:
        status:
          $ref: '#/components/schemas/documentStatusDefault'
      title: Updated document status
      type: object
    updateSubscriberRequestSchema:
      properties:
        addressId:
          $ref: '#/components/schemas/addressId'
        companyName:
          maxLength: 60
          type: string
        firstName:
          maxLength: 60
          type: string
        lastName:
          maxLength: 60
          type: string
        subscriberType:
          $ref: '#/components/schemas/subscriberType'
        vatNumber:
          maxLength: 36
          type: string
      title: Update Subscriber Request
      type: object
    updateSubscriberResponseSchema:
      properties:
        addressId:
          $ref: '#/components/schemas/addressId'
        companyName:
          type: string
        firstName:
          maxLength: 50
          type: string
        lastName:
          maxLength: 50
          type: string
        portinId:
          example: daa9dd0f-de97-4103-8530-b31bf4be8fc0
          type: string
        subscriberType:
          $ref: '#/components/schemas/subscriberType'
        vatNumber:
          maxLength: 36
          type: string
      title: Updated Subscriber Details
      type: object
    updatedDateTime:
      description: The date and time this object was last updated in ISO 8601 format
      example: '2024-03-11T04:09:25.399Z'
      type: string
    vendors:
      properties:
        Count:
          type: integer
        VendorId:
          type: integer
        VendorName:
          type: string
      type: object
    vendorsJson:
      properties:
        count:
          type: integer
        onNetVendor:
          type: boolean
        vendorId:
          type: integer
        vendorName:
          type: string
      type: object
    voiceConfigurationPackageId:
      description: >-
        `voiceConfigurationPackageId` is the identifier of the voice
        configuration package containing the voice origination settings. Upon
        activation, telephone numbers will be configured with the voice
        origination settings specified in the voice configuration package.
      example: c7951e4f-6285-4b75-83e5-392558f59067
      format: uuid
      title: Voice Configuration Package ID
      type: string
    voiceConfigurationPackageIdJson:
      description: >-
        `voiceConfigurationPackageId` is the identifier of the voice
        configuration package containing the voice origination settings. Upon
        activation, telephone numbers will be configured with the voice
        origination settings specified in the voice configuration package.
      example: c7951e4f-6285-4b75-83e5-392558f59067
      format: uuid
      title: Voice Configuration Package ID
      type: string
    warning:
      description: >-
        Errors/Warnings that occur during telephone number provisioning for
        messaging, may be requiring user action. For example, a Letter of
        Authorization (LOA) may be needed from the number provider.
      properties:
        Code:
          description: A numerical code representing the specific warning.
          type: integer
        Description:
          description: Details about the issue which may require user attention.
          type: string
        TelephoneNumber:
          $ref: '#/components/schemas/telephoneNumber'
      title: Warning
      type: object
    webRtc:
      properties:
        Enabled:
          type: boolean
      type: object
    whitelistIpWithId:
      properties:
        Application:
          type: string
        Id:
          type: integer
        Ipv4Address:
          type: string
        Netmask:
          type: integer
      required:
        - Application
        - Ipv4Address
        - Netmask
      type: object
    whitelistIps:
      items:
        properties:
          WhitelistIp:
            $ref: '#/components/schemas/whitelistIpWithId'
        type: object
      type: array
    wirelessInfo:
      properties:
        AccountNumber:
          description: >-
            The WirelessInfo.AccountNumber is sometimes required to authorize
            the port-out from the losing carrier. This is most common for
            telephone numbers that were formerly wireless. This element is not
            applicable for toll free port-ins.
          type: string
        PinNumber:
          description: >-
            The WirelessInfo.PinNumber is sometimes required to authorize the
            port-out from the losing carrier. This is most common for telephone
            numbers that were formerly wireless. This element is not applicable
            for toll free port-ins.
          type: string
      type: object
    wirelessInfoJson:
      properties:
        accountNumber:
          description: >-
            The wirelessInfo.accountNumber is sometimes required to authorize
            the port-out from the losing carrier. This is most common for
            telephone numbers that were formerly wireless. This element is not
            applicable for toll free port-ins.
          type: string
        pinNumber:
          description: >-
            The wirelessInfo.pinNumber is sometimes required to authorize the
            port-out from the losing carrier. This is most common for telephone
            numbers that were formerly wireless. This element is not applicable
            for toll free port-ins.
          type: string
      type: object
    wirelessInfoSupp:
      description: >-
        If you want to SUPP WirelessInfo, you must include both AccountNumber
        and PinNumber in the payload, even if you are not changing both.
      properties:
        AccountNumber:
          type: string
        PinNumber:
          type: string
      title: WirelessInfo
      type: object
    wirelessInfoSuppJson:
      description: >-
        If you want to SUPP WirelessInfo, you must include both AccountNumber
        and PinNumber in the payload, even if you are not changing both.
      properties:
        accountNumber:
          type: string
        pinNumber:
          type: string
      title: WirelessInfo
      type: object
  securitySchemes:
    Basic:
      type: http
      scheme: basic
      description: >-
        Basic authentication is a simple authentication scheme built into the
        HTTP protocol. To use it, send your HTTP requests with an
        `Authorization` header that contains the word `Basic` followed by a
        space and a Base64-encoded string `username:password`.


        - Example: `Authorization: Basic ZGVtbZpwQDU1dzByZA==`
    Bearer:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Bearer authentication (also called token authentication) is an HTTP
        authentication scheme that involves security tokens called bearer
        tokens. The name “Bearer authentication” can be understood as “give
        access to the bearer of this token.” The client must send this token in
        the `Authorization` header when making requests to protected resources.


        - Example: `Authorization: Bearer <token>`


        Where `<token>` should be replaced with the token string without angle
        brackets.


        For more information, see the following guide:
        [Credentials](https://dev.bandwidth.com/docs/account/credentials/management)
info:
  description: >-
    Bandwidth's Account and Number Management API


    ### Disclaimer


    This OpenAPI Specification is a work in progress as we work to finalize our
    conversion from RAML to OpenAPI. It is not yet intended for use with open
    source tools such as Swagger or OpenAPI Generator, and is meant for
    documentation purposes only at this stage.


    ## Base Path

    <code>https://api.bandwidth.com/api/v2/</code>
  title: Numbers
  version: 1.0.0
openapi: 3.1.0
paths:
  /accounts/{accountId}/aeuis:
    get:
      description: GET is used to retrieve all Alternate end user identifiers.
      operationId: GetAllAeuis
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            An ID of the first element in a page.  This value will indicate the
            first value, not the count, of the initial entry in the page being
            requested.<br> It can be an acid of alternate end user identifier.
            The initial page is tagged with the ID '1'.
          example: 3, customIdentifier
          in: query
          name: page
          required: false
          schema:
            default: '1'
            type: string
        - description: The number of items to include in a page.
          example: 5000
          in: query
          name: size
          required: false
          schema:
            default: 500
            type: integer
        - description: >-
            The Alternate end user identifier associated with callback using
            E911 order.
          example: someAcid
          in: query
          name: aeui
          required: false
          schema:
            type: string
        - description: Callback telephone number associated with AEUI using E911 oder.
          example: '+18042105760'
          in: query
          name: callback
          required: false
          schema:
            type: string
        - description: This parameter allows to retrieve PIDF-LO enabled only AEUIs.
          in: query
          name: pidfloenabledonly
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            The text to search simultaneously through callbacks, called names
            and AEUIs.
          example: name
          in: query
          name: suggestions
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AlternateEndUserIdentifiersResponse>
                      <TotalCount>2</TotalCount>
                      <AlternateEndUserIdentifiers>
                        <AlternateEndUserIdentifier>
                          <Identifier>DavidAcid</Identifier>
                          <CallbackNumber>+18042105760</CallbackNumber>
                          <EmergencyNotificationGroup>
                            <Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>
                            <Description>Building 5, 5th Floor.</Description>
                          </EmergencyNotificationGroup>
                        </AlternateEndUserIdentifier>
                        <AlternateEndUserIdentifier>
                          <Identifier>JohnAcid</Identifier>
                          <CallbackNumber>+18042105618</CallbackNumber>
                        </AlternateEndUserIdentifier>
                      </AlternateEndUserIdentifiers>
                    </AlternateEndUserIdentifiersResponse>
              schema:
                $ref: >-
                  #/components/schemas/alternateEndUserIdentifiersResponseWrapper
          description: OK - the AEUIs retrieval request will return a list of all AEUIs.
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AlternateEndUserIdentifiersResponse>
                      <ResponseStatus>
                        <ErrorCode>12087</ErrorCode>
                        <Description>Alternate End User Identifiers were not found.</Description>
                      </ResponseStatus>
                    </AlternateEndUserIdentifiersResponse>
              schema:
                $ref: >-
                  #/components/schemas/alternateEndUserIdentifiersResponseNotFound
          description: >-
            Not Found - if the account specified does not exist or is locked or
            there are no AEUIs for specified search criteria it will result in a
            "NOT FOUND" response.
      summary: Retrieve all AEUIS
      tags:
        - E911
  /accounts/{accountId}/aeuis/{acid}:
    get:
      description: >-
        GET is used to retrieve a detailed information of Alternate end user
        identifier by acid.
      operationId: RetrieveAeui
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Alternate caller identity ID.
          in: path
          name: acid
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AlternateEndUserIdentifierResponse>
                      <AlternateEndUserIdentifier>
                        <Identifier>DavidAcid</Identifier>
                        <CallbackNumber>+18042105760</CallbackNumber>
                        <E911>
                          <CallerName>David</CallerName>
                          <Address>
                            <HouseNumber>900</HouseNumber>
                            <HouseSuffix/>
                            <PreDirectional/>
                            <StreetName>MAIN CAMPUS</StreetName>
                            <StreetSuffix>DR</StreetSuffix>
                            <AddressLine2/>
                            <City>RALEIGH</City>
                            <StateCode>NC</StateCode>
                            <Zip>27606</Zip>
                            <PlusFour>5214</PlusFour>
                            <Country>United States</Country>
                            <AddressType>Billing</AddressType>
                          </Address>
                          <EmergencyNotificationGroup>
                            <Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>
                            <Description>Building 5, 5th Floor.</Description>
                          </EmergencyNotificationGroup>
                        </E911>
                      </AlternateEndUserIdentifier>
                    </AlternateEndUserIdentifierResponse>
              schema:
                $ref: '#/components/schemas/alternateEndUserIdentifierWrapper'
          description: OK - will return full information about AEUI for the specified acid.
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AlternateEndUserIdentifierResponse>
                      <ResponseStatus>
                        <Description>The resource does not exist</Description>
                      </ResponseStatus>
                    </AlternateEndUserIdentifierResponse>
              schema:
                $ref: >-
                  #/components/schemas/alternateEndUserIdentifierResponseNotFound
          description: >-
            Not Found - if the account specified does not exist or is locked or
            there are no AEUI that corresponds to specified acid it will result
            in a "NOT FOUND" response.
      summary: Retrieve AEUI
      tags:
        - E911
  /accounts/{accountId}/availableNumbers:
    get:
      description: >-
        Search for available phone numbers by specified criteria for your
        account.


        **Choosing your search context** 


        The parameters you can use depend on which country you are searching in:


        - **US and Canada (NANP)** — when `countryCodeA3` is not provided, or is
        USA or CAN. Use NANP-specific parameters such as `state`, `npaNxx`,
        `rateCenter`, `zip`, etc.

        - **International** — when `countryCodeA3` is a non-NANP country code
        (anything other than USA or CAN). Use parameters such as
        `phoneNumberType`, `city`, `capabilities`, etc.


        **Note:** Some query parameters work across both search contexts, while
        others are context-specific and will be ignored or invalid in the other.
        See the supported parameters tables below for details.


        **Searching for consecutive numbers**


        To find consecutive blocks of available numbers, use either:

        - `searchPattern` — works for any country. Also requires `countryCodeA3`
        and `quantity`.

        - `enableConsecutive=true` — NANP only. Requires at least one geographic
        filter (e.g. `areaCode`, `state`) and `quantity` must not exceed 100.


        **Note:** These two parameters are mutually exclusive — providing both
        returns a 400 error.


        **Supported parameters — USA and Canada (NANP)**


        | Search type | Required | Filter by | Options |

        |:------------|:---------|:----------|:--------|

        | Area code | **areaCode** | **rateCenter** (needs **state**), **city**
        (needs **state**), **state**, **lata**, **zip** | **quantity**,
        **enableTNDetail** |

        | NPA-NXX | **npaNxx** | **rateCenter** (needs **state**), **city**
        (needs **state**), **state**, **lata**, **zip**, **orderBy** |
        **quantity**, **enableTNDetail** |

        | NPA-NXX with local calling area | **npaNxx**, **LCA=true** | |
        **quantity**, **enableTNDetail** |

        | NPA-NXX-X | **npaNxxx** | **rateCenter** (needs **state**), **city**
        (needs **state**), **state**, **lata**, **zip**, **orderBy** |
        **quantity**, **enableTNDetail** |

        | NPA-NXX-X with local calling area | **npaNxxx**, **LCA=true** | |
        **quantity**, **enableTNDetail** |

        | Rate center | **rateCenter**, **state** | **city**,
        **areaCode**/**npaNxx**/**npaNxxx**, **lata**, **zip**, **orderBy** |
        **quantity**, **enableTNDetail** |

        | Rate center with local calling area | **rateCenter**, **state**,
        **LCA=true** | | **quantity**, **enableTNDetail** |

        | State | **state** | **rateCenter**, **city**,
        **areaCode**/**npaNxx**/**npaNxxx**, **lata**, **zip** | **quantity**,
        **enableTNDetail** |

        | City | **state**, **city** | **rateCenter**,
        **areaCode**/**npaNxx**/**npaNxxx**, **lata**, **zip**, **orderBy** |
        **quantity**, **enableTNDetail** |

        | Zip code | **zip** | **rateCenter** (needs **state**), **city** (needs
        **state**), **state**, **areaCode**/**npaNxx**/**npaNxxx**, **lata**,
        **orderBy** | **quantity**, **enableTNDetail** |

        | LATA | **lata** | **rateCenter** (needs **state**), **city** (needs
        **state**), **state**, **areaCode**/**npaNxx**/**npaNxxx**, **zip** |
        **quantity**, **enableTNDetail** |

        | Local vanity | **localVanity** | **state**, **areaCode** | **endsIn**,
        **quantity**, **enableTNDetail** |

        | Toll-free vanity | **tollFreeVanity** | **orderBy** | **quantity** |

        | Toll-free wildcard | **tollFreeWildCardPattern** | **orderBy** |
        **quantity** |

        | Capabilities | **capabilities**, **countryCodeA3** (USA or CAN) |
        **areaCode**/**npaNxx**/**npaNxxx**, **state**, **rateCenter** (needs
        **state**), **city** (needs **state**), **zip**, **lata**,
        **capabilities** | **quantity**, **enableTNDetail** |

        | Exclude capabilities | **excludeCapabilities**, **countryCodeA3** (USA
        or CAN) | **areaCode**/**npaNxx**/**npaNxxx**, **state**, **rateCenter**
        (needs **state**), **city** (needs **state**), **zip**, **lata**,
        **capabilities** | **quantity**, **enableTNDetail** |

        | Consecutive (pattern) | **searchPattern**, **countryCodeA3**,
        **quantity (10, 25, 50, or 100)** | **areaCode**/**npaNxx**/**npaNxxx**,
        **state**, **rateCenter** (needs **state**), **city** (needs **state**),
        **zip**, **lata**, **capabilities** | |

        | Consecutive (enableConsecutive) | **enableConsecutive**, **quantity
        (1–100)**, one of: **areaCode**, **state**, **rateCenter**, etc |
        **areaCode**/**npaNxx**/**npaNxxx**, **state**, **rateCenter** (needs
        **state**), **city** (needs **state**), **zip**, **lata**,
        **capabilities** | **enableTNDetail** |


        **Supported parameters — International (non-NANP)**


        | Search type | Required | Filter by | Options |

        |:------------|:---------|:----------|:--------|

        | Area code | **areaCode**, **countryCodeA3** | **phoneNumberType**,
        **city**, **capabilities** | **enableTNDetail**, **quantity**,
        **searchPattern** |

        | Phone number type | **phoneNumberType**, **countryCodeA3** |
        **areaCode**, **city**, **capabilities** | **enableTNDetail**,
        **quantity**, **searchPattern** |

        | City | **city**, **countryCodeA3** | **phoneNumberType**,
        **areaCode**, **capabilities** | **enableTNDetail**, **quantity**,
        **searchPattern** |

        | Capabilities | **capabilities**, **countryCodeA3** | **areaCode**,
        **city**, **phoneNumberType**, **excludeCapabilities** |
        **enableTNDetail**, **quantity**, **searchPattern** |

        | Exclude capabilities | **excludeCapabilities**, **countryCodeA3** |
        **areaCode**, **city**, **phoneNumberType**, **capabilities** |
        **enableTNDetail**, **quantity**, **searchPattern** |

        | Consecutive (pattern) | **searchPattern**, **countryCodeA3**,
        **quantity (10, 25, 50, or 100)**, **capabilities**,
        **excludeCapabilities** | **areaCode**, **city**, **phoneNumberType** |
        |
      operationId: GetAvailableTns
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            Country code in ISO 3166-1 alpha-3 format (e.g. USA, CAN, GBR). Only
            one country code may be specified.

            Required for all international (non-NANP) searches. When not
            provided, the search defaults to USA and CAN,

            and only NANP-specific search parameters are applicable.
          example: GBR
          in: query
          name: countryCodeA3
          required: false
          schema:
            default: USA,CAN
            type: string
        - $ref: '#/components/parameters/phoneNumberTypeQueryParam'
        - $ref: '#/components/parameters/areaCodeQueryParam'
        - $ref: '#/components/parameters/cityQueryParam'
        - deprecated: true
          description: >-
            **Deprecated** — use `capabilities` instead. The product features
            supported by the number. Multiple values can be specified by
            repeating the parameter.
          example: VOICE
          in: query
          name: features
          required: false
          schema:
            type: string
        - description: >
            Maximum number of results to return. Defaults to 5000.

            - With `searchPattern` (consecutive search): must be **10**, **25**,
            **50**, or **100**. Returns up to 10 blocks, capped at 1000 total
            numbers.

            - With `enableConsecutive=true`: must not exceed **100**.
          example: 30
          in: query
          name: quantity
          required: false
          schema:
            default: 5000
            maximum: 5000
            minimum: 1
            type: integer
        - description: >-
            If set to true, a list of details associated with the telephone
            number (rate center, abbreviation, city, etc.) will be displayed
            along with the TN.
          example: true
          in: query
          name: enableTNDetail
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            If set to true, restricts results to phone numbers within the local
            calling area of the specified search criteria. Defaults to true.
          example: true
          in: query
          name: LCA
          required: false
          schema:
            default: true
            type: boolean
        - description: >-
            Intended to be used with `localVanity` only. If set to true, the
            search will look for only numbers which end in the specified
            `localVanity` value; otherwise the `localVanity` sequence can be
            matched anywhere in the last 7 number digits. The default is false.
          example: true
          in: query
          name: endsIn
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            The 6-digit prefix associated with the TN.


            - Allowed number ranges for NPA: [2-9] for the first digit, [0-9]
            for the second and third digits.

            - Allowed number ranges for NXX: [2-9] for the first digit, [0-9]
            for the second and third digits.
          example: 435213
          in: query
          name: npaNxx
          required: false
          schema:
            type: integer
        - description: >-
            The 7-digit prefix associated with the TN.


            - Allowed number ranges for NPA: [2-9] for the first digit, [0-9]
            for the second and third digits.

            - Allowed number ranges for NXXX: [2-9] for the first digit, [0-9]
            for the remaining digits.
          example: 4352134
          in: query
          name: npaNxxx
          required: false
          schema:
            type: integer
        - description: >-
            Local Access and Transport Area (LATA) code — a geographic region
            used in telecom routing. A maximum five-digit (XXXXX) numeric value.
          example: 244
          in: query
          name: lata
          required: false
          schema:
            type: integer
        - description: The abbreviation for the rate center.
          example: Cary
          in: query
          name: rateCenter
          required: false
          schema:
            type: string
        - description: The two-letter state abbreviation (e.g. NC, ON).
          example: NC
          in: query
          name: state
          required: false
          schema:
            type: string
        - description: >-
            The toll-free requested vanity number. Valid range is 7+
            alphanumeric characters.
          example: NEWCARS
          in: query
          name: tollFreeVanity
          required: false
          schema:
            type: string
        - description: >-
            The toll-free requested wildcard pattern. Must be a 3-character
            pattern using digits and `*` as a wildcard (e.g. `8**`, `80*`).
          example: 8**, 80*, 87*
          in: query
          name: tollFreeWildCardPattern
          required: false
          schema:
            type: string
        - description: >-
            Requested vanity number. Valid range is from 4 to 7 alphanumeric
            characters.
          example: NEWCARS
          in: query
          name: localVanity
          required: false
          schema:
            type: string
        - description: >-
            Pattern used to search for consecutive blocks of available phone
            numbers.

            Supplying this parameter enables consecutive number search mode.
          example: '2431'
          in: query
          name: searchPattern
          required: false
          schema:
            type: string
        - description: >
            If set to true, restricts results to consecutive phone numbers only
            (NANP searches only).

            - At least one geographic or toll-free filter must be provided:
            `areaCode`, `npaNxx`,
              `npaNxxx`, `rateCenter`, `city`, `zip`, `state`, `lata`, `tollFreeVanity`,
              `tollFreeWildCardPattern`, or `localVanity`.

            - `quantity` must not exceed **100**.

            - Mutually exclusive with `searchPattern` — providing both returns a
            400 error.
          example: true
          in: query
          name: enableConsecutive
          required: false
          schema:
            default: false
            type: boolean
        - description: A five-digit (XXXXX) or nine-digit (XXXXX-XXXX) format value.
          example: 27607
          in: query
          name: zip
          required: false
          schema:
            type: integer
        - description: >-
            The field by which the results should be sorted. Possible values:
            fullNumber, npaNxxx, npaNxx, areaCode.
          example: fullNumber
          in: query
          name: orderBy
          required: false
          schema:
            type: string
        - description: >-
            Filters results to numbers that support the specified capability.
            Requires `countryCodeA3`.

            Multiple values can be specified by repeating the parameter,
            supporting AND/OR logic:

            - **OR (default)** — returns numbers that support *at least one* of
            the specified capabilities. Example:
            `capabilities=MESSAGING,INBOUND_VOICE`.

            - **AND** — returns numbers that support *all* of the specified
            capabilities. Example:
            `capabilities=MESSAGING&capabilities=INBOUND_VOICE`.

            - **Combination** — returns numbers that support at least one of the
            comma-separated capabilities and all of the repeated-parameter
            capabilities. Example:
            `capabilities=MESSAGING,INBOUND_VOICE&capabilities=EMERGENCY_SERVICES`.
          example: INBOUND_VOICE
          in: query
          name: capabilities
          required: false
          schema:
            enum:
              - INBOUND_VOICE
              - OUTBOUND_VOICE_NATIONAL
              - OUTBOUND_VOICE_INTERNATIONAL
              - EMERGENCY_SERVICES
              - MESSAGING
            type: string
        - description: >-
            Filters results to numbers that do not support the specified
            capability. Requires `countryCodeA3`.

            Multiple values can be specified by comma-separation or by repeating
            the parameter.

            Unlike `capabilities`, there is no AND/OR distinction — a number
            must lack **at least one**

            of the specified capabilities to appear in results. Example:
            `excludeCapabilities=INBOUND_VOICE,EMERGENCY_SERVICES`.
          example: EMERGENCY_SERVICES
          in: query
          name: excludeCapabilities
          required: false
          schema:
            enum:
              - INBOUND_VOICE
              - OUTBOUND_VOICE_NATIONAL
              - OUTBOUND_VOICE_INTERNATIONAL
              - EMERGENCY_SERVICES
              - MESSAGING
            type: string
      responses:
        '200':
          $ref: '#/components/responses/availableNumbersGetResponse'
        '400':
          content:
            application/json:
              examples:
                invalidCountryCodeA3:
                  summary: Invalid countryCodeA3 value
                  value:
                    error:
                      code: 4010
                      description: The supplied countryCodeA3 'test' is invalid.
                noSearchCriteria:
                  summary: No search criteria provided
                  value:
                    error:
                      code: 4010
                      description: >-
                        Unable to perform search. Please, provide some search
                        criteria
              schema:
                properties:
                  error:
                    properties:
                      code:
                        example: 4010
                        type: integer
                      description:
                        example: >-
                          Unable to perform search. Please, provide some search
                          criteria
                        type: string
                    type: object
                type: object
            application/xml:
              examples:
                invalidCountryCodeA3:
                  summary: Invalid countryCodeA3 value
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SearchResult>
                      <Error>
                        <Code>4010</Code>
                        <Description>The supplied countryCodeA3 'test' is invalid.</Description>
                      </Error>
                    </SearchResult>
                noSearchCriteria:
                  summary: No search criteria provided
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SearchResult>
                      <Error>
                        <Code>4010</Code>
                        <Description>Unable to perform search. Please, provide some search criteria</Description>
                      </Error>
                    </SearchResult>
              schema:
                $ref: '#/components/schemas/searchResultError'
          description: Invalid or missing input parameter.
      summary: List available numbers
      tags:
        - Available Tns
  /accounts/{accountId}/billingreports:
    get:
      deprecated: true
      description: >-
        Retrieve billing report instances within the account scope and billing
        type. The valid Billing Types are: <table><thead><tr><th>Report
        Type</th><th>Description</th></tr></thead><tbody><tr><td>BDR</td><td>Billing
        Detail Records for Voice Services - per call information, available on
        day to day basis - may not reflect final
        invoice</td></tr><tr><td>MDR</td><td>Message Detail Records - per
        message information - may not reflect final
        invoice</td></tr><tr><td>INVOICE</td><td>A copy of the invoice file or
        files for the specified date range</td></tr><tr><td>STMTBDR</td><td>BDR
        records that are aligned with the invoice for Voice
        Services</td></tr><tr><td>DIDSNAP</td><td>A list of telephone numbers,
        aligned with invoice</td></tr><tr><td>DIDSNAP_MSG</td><td>A list of
        telephone numbers that are enabled for messaging, aligned with
        invoice</td></tr><tr><td>RECORDINGBDR</td><td>Billing Detail Records for
        Recording Services - per recording information, available on day to day
        basis</td></tr><tr><td>RECORDINGSTMTBDR</td><td>BDR records that are
        aligned with the invoice for Recording
        Services</td></tr><tr><td>TRANSCRIPTIONBDR</td><td>Billing Detail
        Records for Transcription Services - per call transcription information,
        available on day to day
        basis</td></tr><tr><td>TRANSCRIPTIONSTMTBDR</td><td>BDR records that are
        aligned with the invoice for Recording
        Services</td></tr><tr><td>CNAMBDR</td><td>Record of CNAM Subscribe and
        Notify queries/dips, available on day to day
        basis</td></tr><tr><td>CNAMSTMTBDR</td><td>Record of CNAM Subscribe and
        Notify queries/dips, aligns with
        invoices</td></tr><tr><td>CONFBDR</td><td>Billing Detail Records for
        Transcription Services - per conference information, available on day to
        day basis</td></tr><tr><td>CONFSTMTBDR</td><td>BDR records that are
        aligned with the invoice for Conferencing
        Services</td></tr><tr><td>UNPROVISIONED_CALLS_BDR</td><td>BDR for
        unprovisioned 911 calls that were routed to the
        ECC</td></tr></tbody></table>

        <br/>Effective February 1, 2026, customers will no longer access billing
        reports under Billing in the Bandwidth App or via the /billingreports
        endpoints; [GetBillingReportByType,
        ](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/GetBillingReportByType)[GetBillingReportStatus](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/GetBillingReportStatus),
        [CreateBillingReport](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/CreateBillingReport),
        and
        [DownloadBillingReport](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/DownloadBillingReport).
        Customers will be able to access their usage, charge, and number details
        reports under Reports in the Bandwidth App or the [Insights Reports
        API](https://dev.bandwidth.com/apis/insights-apis/insights/#tag/Reporting).
        Existing reports under Billing will be available under Charges. 

        <br/>Beginning February 1, customers will need to use the [Insights
        Reports
        APIs](https://dev.bandwidth.com/apis/insights-apis/insights/#tag/Reporting)
        to download reports related to invoice charges. Billing reports are
        being transitioned to the Charge report location. They’re available for
        download in the Bandwidth App and also via the Insights Reports APIs.
        You’ll continue to have access to Billing reports and Charge reports
        until January 31, 2026.
      operationId: GetBillingReportByType
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            One of billing report types DIDSNAP, DIDSNAP_MSG. Empty parameter
            will return all reports of types DIDSNAP, DIDSNAP_MSG.
          example: DIDSNAP
          in: query
          name: kind
          required: false
          schema:
            default: kind=DIDSNAP,DIDSNAP_MSG
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BillingReportsRetrievalResponse>
                        <BillingReportList>
                            <BillingReport>
                                <BillingReportId>5f8734f0-d7c3-445c-b1e2-cdbb620e4ff7</BillingReportId>
                                <BillingReportKind>DIDSNAP</BillingReportKind>
                                <UserId>jbm</UserId>
                                <ReportStatus>PROCESSING</ReportStatus>
                                <Description>The requested report archive is still being constructed, please check back later.</Description>
                                <CreatedDate>2017-11-01 14:12:16</CreatedDate>
                                <DateRange>
                                    <StartDate>2017-01-01</StartDate>
                                    <EndDate>2017-09-30</EndDate>
                                </DateRange>
                            </BillingReport>
                            <BillingReport>
                                <BillingReportId>7680a54a-b1f1-4d43-8af6-bf3a701ad202</BillingReportId>
                                <BillingReportKind>DIDSNAP</BillingReportKind>
                                <UserId>jbm</UserId>
                                <ReportStatus>COMPLETE</ReportStatus>
                                <Description>The requested report archive is failed</Description>
                                <CreatedDate>2017-11-06 14:22:21</CreatedDate>
                                <DateRange>
                                     <StartDate>2017-05-01</StartDate>
                                     <EndDate>2017-10-31</EndDate>
                                </DateRange>
                            </BillingReport>
                        </BillingReportList>
                    </BillingReportsRetrievalResponse>
              schema:
                $ref: '#/components/schemas/billingReportsRetrievalResponse'
          description: >
            The list of all billing report instances. (Not supported for BDR,
            MDR, INVOICE, STMTBDR, RECORDINGBDR, RECORDINGSTMTBDR,
            TRANSCRIPTIONBDR, TRANSCRIPTIONSTMTBDR, CNAMBDR, CNAMSTMTBDR,
            CONFBDR, CONFSTMTBDR, TFPEERINGSTMTBDR, AMDBDR, AMDSTMTBDR,
            SIPURIBDR, SIPURISTMTBDR, TTSBDR, TTSSTMTBDR as status history not
            implemented yet for these billing types)
        '204':
          description: >-
            Billing report data for requested time frame hasn't been provided
            yet.
        '400':
          description: A 400 response indicates that report type is incorrect.
      summary: Retrieve billing report by billing type
      tags:
        - Reports
    post:
      deprecated: true
      description: >-
        The payload for the POST declares the date range and type for the
        desired reports. The valid types are: <ul> <li>BDR - Billing Detail
        Records - per call information</li> <li>MDR - Message Detail Records -
        per messagin information</li> <li>INVOICE - A copy of the invoice file
        or files for the specified date range</li> <li>STMTBDR - BDR records
        that are aligned with the invoice</li> <li>DIDSNAP - a list of telephone
        numbers aligned as closely as we can with the billing window</li>
        <li>DIDSNAP_MSG - a list of telephone numbers with active messaging</li>
        </ul>

        <br/>Effective February 1, 2026, customers will no longer access billing
        reports under Billing in the Bandwidth App or via the /billingreports
        endpoints; [GetBillingReportByType,
        ](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/GetBillingReportByType)[GetBillingReportStatus](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/GetBillingReportStatus),
        [CreateBillingReport](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/CreateBillingReport),
        and
        [DownloadBillingReport](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/DownloadBillingReport).
        Customers will be able to access their usage, charge, and number details
        reports under Reports in the Bandwidth App or the [Insights Reports
        API](https://dev.bandwidth.com/apis/insights-apis/insights/#tag/Reporting).
        Existing reports under Billing will be available under Charges. 

        <br/>Beginning February 1, customers will need to use the [Insights
        Reports
        APIs](https://dev.bandwidth.com/apis/insights-apis/insights/#tag/Reporting)
        to download reports related to invoice charges. Billing reports are
        being transitioned to the Charge report location. They’re available for
        download in the Bandwidth App and also via the Insights Reports APIs.
        You’ll continue to have access to Billing reports and Charge reports
        until January 31, 2026.
      operationId: CreateBillingReport
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <BillingReport>
                      <Type>BDR</Type>
                      <DateRange>
                         <StartDate>2013-05-21</StartDate>
                         <EndDate>2013-05-29</EndDate>
                      </DateRange>
                  </BillingReport>
            schema:
              $ref: '#/components/schemas/billingReport'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BillingReportCreationResponse>
                        <ReportStatus>RECEIVED</ReportStatus>
                        <Description>The report archive is currently being constructed.</Description>
                    </BillingReportCreationResponse>
              schema:
                $ref: '#/components/schemas/billingReportCreationResponse'
          description: >-
            A 201 response means that the response file is currently being
            constructed. Constructing the file takes time, so this does not
            indicate that the information is available.<br>

            The response also includes header information in the Location Header
            that can be used for retrieving the state of the report.<br>

            An informative payload is also included in success and failure
            cases.
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BillingReportCreationResponse>
                        <ResponseStatus>
                            <ErrorCode>15501</ErrorCode>
                            <Description>Invalid date range. Start date 2014-05-21 must be before end date 2013-05-29</Description>
                        </ResponseStatus>
                    </BillingReportCreationResponse>
              schema:
                $ref: '#/components/schemas/billingReportCreationErrorResponse'
          description: >-
            A 400 response indicates that there was an error in processing the
            payload, perhaps something like incorrectly formatted or chosen
            dates.
      summary: Create billing report in range
      tags:
        - Reports
  /accounts/{accountId}/billingreports/{reportId}:
    get:
      deprecated: true
      description: >-
        <p>The resource will query the status of the report that is being
        generated.</p>

        <br/>Effective February 1, 2026, customers will no longer access billing
        reports under Billing in the Bandwidth App or via the /billingreports
        endpoints; [GetBillingReportByType,
        ](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/GetBillingReportByType)[GetBillingReportStatus](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/GetBillingReportStatus),
        [CreateBillingReport](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/CreateBillingReport),
        and
        [DownloadBillingReport](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/DownloadBillingReport).
        Customers will be able to access their usage, charge, and number details
        reports under Reports in the Bandwidth App or the [Insights Reports
        API](https://dev.bandwidth.com/apis/insights-apis/insights/#tag/Reporting).
        Existing reports under Billing will be available under Charges. 

        <br/>Beginning February 1, customers will need to use the [Insights
        Reports
        APIs](https://dev.bandwidth.com/apis/insights-apis/insights/#tag/Reporting)
        to download reports related to invoice charges. Billing reports are
        being transitioned to the Charge report location. They’re available for
        download in the Bandwidth App and also via the Insights Reports APIs.
        You’ll continue to have access to Billing reports and Charge reports
        until January 31, 2026.
      operationId: GetBillingReportStatus
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Unique Report ID
          in: path
          name: reportId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BillingReportRetrievalResponse>
                        <ReportStatus>COMPLETED</ReportStatus>
                         <Description>The report archive is constructed.</Description>
                    </BillingReportRetrievalResponse>
              schema:
                $ref: '#/components/schemas/billingReportRetrievalResponse'
          description: >-
            <p>A 200 indicates that the request is valid. The payload indicates
            the report status: <br></p>


            <ul>
                <li><b>PROCESSING</b> - The requested report archive is still being constructed, please check back later.</li>
                <li><b>COMPLETED</b> - The report archive is constructed.</li>
            </ul>


            <p>For <b>COMPLETED</b> report, fetching the file can be done by
            issuing a GET request to the resource path in the Location
            Header.</p>
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BillingReportRetrievalResponse>
                        <ResponseStatus>
                            <ErrorCode>1008</ErrorCode>
                            <Description>'9b428b4c-159b-465f-9667-' is not a valid UUID</Description>
                        </ResponseStatus>
                    </BillingReportRetrievalResponse>
              schema:
                $ref: '#/components/schemas/billingReportRetrievalErrorResponse'
          description: A 400 indicates that the report ID is malformed.
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BillingReportRetrievalResponse>
                        <ResponseStatus>
                            <ErrorCode>15603</ErrorCode>
                            <Description>The requested report was not found.</Description>
                        </ResponseStatus>
                    </BillingReportRetrievalResponse>
              schema:
                $ref: '#/components/schemas/billingReportRetrievalErrorResponse'
          description: A 404 indicates that the requested report cannot be found.
      summary: Retrieve billing report status or redirect to download
      tags:
        - Reports
  /accounts/{accountId}/billingreports/{reportId}/file:
    get:
      deprecated: true
      description: >-
        <p>A GET on the /file resource subtending a report ID will cause the
        download of the file.  Executing this resource path within a browser
        will cause the download of the file.</p>

        <br/>Effective February 1, 2026, customers will no longer access billing
        reports under Billing in the Bandwidth App or via the /billingreports
        endpoints; [GetBillingReportByType,
        ](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/GetBillingReportByType)[GetBillingReportStatus](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/GetBillingReportStatus),
        [CreateBillingReport](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/CreateBillingReport),
        and
        [DownloadBillingReport](https://dev.bandwidth.com/apis/numbers-apis/numbers/#tag/Reports/operation/DownloadBillingReport).
        Customers will be able to access their usage, charge, and number details
        reports under Reports in the Bandwidth App or the [Insights Reports
        API](https://dev.bandwidth.com/apis/insights-apis/insights/#tag/Reporting).
        Existing reports under Billing will be available under Charges. 

        <br/>Beginning February 1, customers will need to use the [Insights
        Reports
        APIs](https://dev.bandwidth.com/apis/insights-apis/insights/#tag/Reporting)
        to download reports related to invoice charges. Billing reports are
        being transitioned to the Charge report location. They’re available for
        download in the Bandwidth App and also via the Insights Reports APIs.
        You’ll continue to have access to Billing reports and Charge reports
        until January 31, 2026.
      operationId: DownloadBillingReport
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Unique Report ID
          in: path
          name: reportId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BillingReportArchiveRetrievalResponse>
                      <ResponseStatus>COMPLETED</ResponseStatus>
                      <Description>The report archive is constructed</Description>
                    </BillingReportArchiveRetrievalResponse>
              schema:
                $ref: '#/components/schemas/billingReportArchiveRetrievalResponse'
          description: >-
            A 200 OK indicates that the request for the file download was
            accepted and will be processed.
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BillingReportArchiveRetrievalResponse>
                        <ResponseStatus>
                            <ErrorCode>1008</ErrorCode>
                            <Description>'9b428b4c-159b-465f-9667-' is not a valid UUID</Description>
                        </ResponseStatus>
                    </BillingReportArchiveRetrievalResponse>
              schema:
                $ref: >-
                  #/components/schemas/billingReportArchiveRetrievalErrorResponse
          description: A 400 indicates that the report ID is malformed.
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BillingReportArchiveRetrievalResponse>
                        <ResponseStatus>
                            <ErrorCode>15603</ErrorCode>
                            <Description>The requested report was not found.</Description>
                        </ResponseStatus>
                    </BillingReportArchiveRetrievalResponse>
              schema:
                $ref: >-
                  #/components/schemas/billingReportArchiveRetrievalErrorResponse
          description: A 404 indicates that the requested report cannot be found.
      summary: Download billing report
      tags:
        - Reports
  /accounts/{accountId}/csrs/{orderId}/notes:
    get:
      description: 'Retrieve all notes associated with the CSRs order. '
      operationId: ReadCsrsOrderNotes
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <Notes>
                        <Note>
                            <Id>87037</Id>
                            <UserId>jbm</UserId>
                            <Description>This is a test note</Description>
                            <LastDateModifier>2014-11-16T04:01:10.000Z</LastDateModifier>
                        </Note>
                        <Note>
                            <Id>87039</Id>
                            <UserId>smckinnon</UserId>
                            <Description>This is a second test note</Description>
                            <LastDateModifier>2014-11-16T04:08:46.000Z</LastDateModifier>
                        </Note>
                    </Notes>
          description: >-
            OK - there are Notes associated with the order, and they have been
            returned in the response.
        '204':
          description: >-
            No Content - there are no Notes associated with the order.  Since
            the notes resource is an aggregate rather than addressed resource
            the generic no content response is used, rather than a 404 as would
            be used if the resource was addressed with an identifier
      summary: List CSRs order notes
      tags:
        - Porting
    post:
      description: |-
        Updates the Notes resource by adding a note. Adding a note to a CSRs 
         order causes a notification to be sent to Bandwidth Operations, so that they may assist as necessary. A note may be up to 500 characters in length
      operationId: CreateCsrsOrderNote
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Note>
                   <UserId>userId</UserId>
                        <!-- note the userId must match the logged-in user -->
                   <Description>note text</Description>
                   </Note>
            schema:
              $ref: '#/components/schemas/note'
      responses:
        '201':
          description: >-
            CREATED - the note has been created and added to the collection of
            notes associated with the order.  A link to the note is included in
            the Location header of the response.  No body is returned
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <NoteResponse>
                        <ResponseStatus>
                            <ErrorCode>12501</ErrorCode>
                            <Description>Username is required</Description>
                        </ResponseStatus>
                    </NoteResponse>
              schema:
                $ref: '#/components/schemas/noteErrorResponse'
          description: >-
            Bad Request - the note has not been created because the payload is
            incomplete or in error.  An error payload is provided in the
            response.
      summary: Add CSRs order note
      tags:
        - Porting
  /accounts/{accountId}/csrs/{orderId}/notes/{noteId}:
    put:
      description: Update a specified note.  Notes may only be updated, not deleted
      operationId: UpdateCsrsOrderNote
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: CSR Order id
          example: 34adcd9f-2c4a-4631-9dae-d1f318ed57bc
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: Note ID
          example: '123'
          in: path
          name: noteId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Note>
                   <UserId>userId</UserId>
                   <Description>note text</Description>
                   </Note>
            schema:
              $ref: '#/components/schemas/note'
      responses:
        '200':
          description: OK - note has been updated.  No body is returned
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <NoteResponse>
                        <ResponseStatus>
                            <ErrorCode>12501</ErrorCode>
                            <Description>Username is required</Description>
                        </ResponseStatus>
                    </NoteResponse>
              schema:
                $ref: '#/components/schemas/noteErrorResponse'
          description: >-
            Bad Request - the note has not been updated because the payload is
            incomplete or in error.  An error payload is provided in the
            response.
      summary: Update CSRs order note
      tags:
        - Porting
  /accounts/{accountId}/customerProfiles:
    get:
      description: >
        Get a paginated list of customer profiles matching the specified filter
        criteria, in the specified sort order. If more than one filter criteria
        is applied, profiles must match all of the criteria (to match if any
        filter applies, provide the `filterOperator` query parameter with a
        value of `any`). If more than one sort parameter is provided, sorting
        occurs in the order provided in the query string.
      operationId: getCustomerProfiles
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/cpNameParam'
        - $ref: '#/components/parameters/cpOffsetQueryParam'
        - $ref: '#/components/parameters/cpLimitQueryParam'
        - $ref: '#/components/parameters/cpWebsiteParam'
        - $ref: '#/components/parameters/cpContactNameParam'
        - $ref: '#/components/parameters/cpContactEmailParam'
        - $ref: '#/components/parameters/cpContactPhoneNumberParam'
        - $ref: '#/components/parameters/cpCreatedDateParam'
        - $ref: '#/components/parameters/cpModifiedDateParam'
        - $ref: '#/components/parameters/cpFilterOperatorParam'
        - $ref: '#/components/parameters/cpSoftDeletedParam'
        - $ref: '#/components/parameters/cpTotalCampaignsParam'
      responses:
        '200':
          $ref: '#/components/responses/customerProfilesResponse'
        '400':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '401':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '403':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '429':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '500':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '503':
          $ref: '#/components/responses/customerProfileErrorResponse'
      summary: Get a list of customer profiles
      tags:
        - Customer Profiles
    post:
      description: Create a new customer profile.
      operationId: createCustomerProfile
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        $ref: '#/components/requestBodies/customerProfileRequest'
      responses:
        '201':
          $ref: '#/components/responses/customerProfileResponse'
        '400':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '401':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '403':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '429':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '500':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '503':
          $ref: '#/components/responses/customerProfileErrorResponse'
      summary: Create a new customer profile
      tags:
        - Customer Profiles
  /accounts/{accountId}/customerProfiles/{profileId}:
    delete:
      description: >
        Soft deletes a customer profile (marks it as deleted in the database).
        It will no longer show up in paged and search APIs, but the record will
        still be retrievable from the service individually. External services
        utilizing customer profiles should no longer accept this customer
        profile ID when creating associations (the record is returned with the
        `deleted` flag set to true—calling systems will *not* receive a 404
        response). Furthermore, associations in external services may be removed
        after this deletion as a result of the deletion event the service
        issues.
      operationId: deleteCustomerProfile
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/cpProfileIdPathParam'
      responses:
        '204':
          description: No Content
        '400':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '401':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '403':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '404':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '429':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '500':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '503':
          $ref: '#/components/responses/customerProfileErrorResponse'
      summary: Delete a customer profile
      tags:
        - Customer Profiles
    get:
      description: >
        Get a customer profile by its ID. This API returns profiles whether they
        have been soft deleted or not, so external systems should check for the
        `deleted` property, and not allow associations to deleted profiles.
      operationId: getCustomerProfile
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/cpProfileIdPathParam'
      responses:
        '200':
          $ref: '#/components/responses/customerProfileResponse'
        '400':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '401':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '403':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '404':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '429':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '500':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '503':
          $ref: '#/components/responses/customerProfileErrorResponse'
      summary: Get a customer profile
      tags:
        - Customer Profiles
    put:
      description: >
        Update an exiting customer profile by its ID. Customer profile records
        are optimistically locked on their version attribute, so an update must
        return the version attribute and that attribute must match the currently
        persisted value, or the caller will receive a 409 response. 


        **Undoing soft deletions.** A deleted record cannot be updated (this API
        will return 404), *unless* the payload to this endpoint includes a
        `deleted` field set to `false` (all other fields will be ignored in such
        an update, so `{"deleted":false}` is sufficient). After this update, the
        record will be available once again and will be returned in the
        paginated API.
      operationId: updateCustomerProfile
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/cpProfileIdPathParam'
      responses:
        '200':
          $ref: '#/components/responses/customerProfileResponse'
        '400':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '401':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '403':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '404':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '409':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '429':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '500':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '503':
          $ref: '#/components/responses/customerProfileErrorResponse'
      summary: Update an existing customer profile
      tags:
        - Customer Profiles
  /accounts/{accountId}/customerProfiles/{profileId}/history:
    get:
      description: >
        Get a paged list of changes to this customer profile. Each historical
        entry contains the state of the profile as of that change.
      operationId: getCustomerProfileHistory
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/cpProfileIdPathParam'
        - $ref: '#/components/parameters/cpOffsetQueryParam'
        - $ref: '#/components/parameters/cpLimitQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/customerProfileHistoryListResponse'
        '400':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '401':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '403':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '404':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '429':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '500':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '503':
          $ref: '#/components/responses/customerProfileErrorResponse'
      summary: Get change history for a customer profile
      tags:
        - Customer Profiles
  /accounts/{accountId}/customerProfiles/{profileId}/history/{version}:
    get:
      description: |
        Get a single change history record for this customer profile.
      operationId: getCustomerProfileHistoryRecord
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/cpProfileIdPathParam'
        - $ref: '#/components/parameters/cpVersionPathParam'
      responses:
        '200':
          $ref: '#/components/responses/customerProfileHistoryResponse'
        '400':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '401':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '403':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '404':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '429':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '500':
          $ref: '#/components/responses/customerProfileErrorResponse'
        '503':
          $ref: '#/components/responses/customerProfileErrorResponse'
      summary: Get a change history record for a customer profile
      tags:
        - Customer Profiles
  /accounts/{accountId}/disconnects:
    get:
      description: >-
        Retrieve a list of disconnect orders that is associated with an account.

        Please visit <a href='/docs/numbers/guides/disconnectNumbers'>Guides and
        Tutorials</a>
      operationId: ReadDisconnectOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/pageQueryParam'
        - $ref: '#/components/parameters/sizeQueryParam'
        - $ref: '#/components/parameters/startDateQueryParam'
        - $ref: '#/components/parameters/endDateQueryParam'
        - description: The user ID associated with disconnected phone numbers
          example: jbm
          in: query
          name: userid
          required: false
          schema:
            type: string
        - description: The status of the order
          example: complete
          in: query
          name: status
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                links:
                  first: >-
                    Link=<https://app.bandwidth.com:443/api/v2/accounts/9900099/disconnects?page=1&size=1000>;rel="first";
                orders:
                  - lastModifiedDate: '2014-01-10T17:34:15Z'
                    orderDate: '2014-01-10T17:34:15.797Z'
                    orderId: 6d7da966-e071-4741-b31c-1d8932f4b8da
                    orderStatus: COMPLETE
                    orderType: disconnect
                    phoneNumberCount: 1
                    phoneNumberDetails:
                      cities:
                        - city: New York
                          count: 9
                        - city: Los Angeles
                          count: 7
                      rateCenters:
                        - count: 5
                          rateCenter: Chicago
                        - count: 6
                          rateCenter: Dallas
                      states:
                        - count: 5
                          state: IL
                        - count: 6
                          state: TX
                        - count: 11
                          state: IN
                        - count: 9
                          state: FL
                      tiers:
                        - count: 10
                          tier: tier1
                        - count: 20
                          tier: tier2
                      vendors:
                        - count: 15
                          vendor: vendorA
                        - count: 10
                          vendor: vendorB
                    userId: smckinnon
                  - lastModifiedDate: '2013-12-04T21:59:32Z'
                    orderDate: '2013-12-04T21:59:32.243Z'
                    orderId: 4ffe9262-1965-4479-a1d5-b8584440667d
                    orderStatus: COMPLETE
                    orderType: disconnect
                    phoneNumberCount: 1
                    phoneNumberDetails:
                      cities:
                        - city: New York
                          count: 9
                        - city: Los Angeles
                          count: 7
                      rateCenters:
                        - count: 5
                          rateCenter: Chicago
                        - count: 6
                          rateCenter: Dallas
                      states:
                        - count: 9
                          state: NY
                        - count: 4
                          state: VA
                        - count: 4
                          state: PA
                        - count: 8
                          state: MA
                      tiers:
                        - count: 10
                          tier: tier1
                        - count: 20
                          tier: tier2
                      vendors:
                        - count: 15
                          vendor: vendorA
                        - count: 10
                          vendor: vendorB
                    userId: jbm
                totalCount: 7
              schema:
                $ref: '#/components/schemas/responseSelectWrapperJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ResponseSelectWrapper>
                        <ListOrderIdUserIdDate>
                            <TotalCount>7</TotalCount>
                            <Links>
                                               <!-- SNIP -->
                            </Links>
                            <OrderIdUserIdDate>
                                <CountOfTNs>1</CountOfTNs>
                                <userId>smckinnon</userId>
                                <lastModifiedDate>2014-01-10T17-34-15Z</lastModifiedDate>
                                <OrderId>6d7da966-e071-4741-b31c-1d8932f4b8da</OrderId>
                                <OrderType>disconnect</OrderType>
                                <OrderDate>2014-01-10T17-34-15.797Z</OrderDate>
                                <OrderStatus>COMPLETE</OrderStatus>
                                <TelephoneNumberDetails>
                                                <!-- SNIP -->
                                </TelephoneNumberDetails>
                            </OrderIdUserIdDate>
                            <OrderIdUserIdDate>
                                <CountOfTNs>1</CountOfTNs>
                                <userId>jbm</userId>
                                <lastModifiedDate>2013-12-04T21-59-32Z</lastModifiedDate>
                                <OrderId>4ffe9262-1965-4479-a1d5-b8584440667d</OrderId>
                                <OrderType>disconnect</OrderType>
                                <OrderDate>2013-12-04T21-59-32.243Z</OrderDate>
                                <OrderStatus>COMPLETE</OrderStatus>
                                <TelephoneNumberDetails>
                                                  <!-- SNIP -->
                                </TelephoneNumberDetails>
                            </OrderIdUserIdDate>
                        </ListOrderIdUserIdDate>
                    </ResponseSelectWrapper>
              schema:
                $ref: '#/components/schemas/responseSelectWrapper'
          description: A list of Disconnect orders
        '204':
          description: No disconnect orders are present on the indicated account
      summary: Read disconnect orders
      tags:
        - Disconnecting Numbers
    post:
      description: >-
        Use this method to disconnect telephone numbers from the account. 


        In this table are presented capabilities that are not universally
        available. The following request parameters are only allowed for numbers
        from specific region/country and users of specific type:

        | Number Region | User Scope | Request Parameter |

        |:--------------|:-----------|:------------------|

        |NANP|-|Protected|

        |-|Bandwidth Internal|DisconnectMode = "PURGE"|


        Please visit <a href='/docs/numbers/guides/disconnectNumbers'>Guides and
        Tutorials</a> for more details.
      operationId: CreateDisconnectOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/json:
            example:
              customerOrderId: My OrderId
              disconnectOrderType:
                disconnectMode: NORMAL
                phoneNumbers:
                  - '+14158714245'
                  - '+14352154439'
                  - '+14352154466'
                protected: UNCHANGED
            schema:
              $ref: '#/components/schemas/disconnectPhoneNumberOrderJson'
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <DisconnectTelephoneNumberOrder>
                      <CustomerOrderId>My OrderId</CustomerOrderId>
                      <DisconnectTelephoneNumberOrderType>
                          <TelephoneNumberList>
                              <TelephoneNumber>+14158714245</TelephoneNumber>
                              <TelephoneNumber>+14352154439</TelephoneNumber>
                              <TelephoneNumber>+14352154466</TelephoneNumber>
                          </TelephoneNumberList>
                          <Protected>UNCHANGED</Protected>
                      </DisconnectTelephoneNumberOrderType>
                  </DisconnectTelephoneNumberOrder>
            schema:
              $ref: '#/components/schemas/disconnectTelephoneNumberOrder'
      responses:
        '201':
          content:
            application/json:
              example:
                createdByUser: someUser
                customerOrderId: My OrderId
                disconnectOrderType:
                  disconnectMode: NORMAL
                  phoneNumbers:
                    - '+14158714245'
                    - '+14352154439'
                    - '+14352154466'
                  protected: UNCHANGED
                id: ba05e04b-192a-47cb-b182-b1bf6cfef0d7
                orderCreateDate: 2022-05-25T14-12-57.840Z
                orderStatus: RECEIVED
              schema:
                $ref: '#/components/schemas/disconnectPhoneNumberOrderResponseJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <DisconnectTelephoneNumberOrderResponse>
                        <orderRequest>
                            <CustomerOrderId>My OrderId</CustomerOrderId>
                            <id>ba05e04b-192a-47cb-b182-b1bf6cfef0d7</id>
                            <OrderCreateDate>2022-05-25T14-12-57.840Z</OrderCreateDate>
                            <DisconnectTelephoneNumberOrderType>
                                <DisconnectMode>normal</DisconnectMode>
                                <Protected>UNCHANGED</Protected>
                                <TelephoneNumberList>
                                    <TelephoneNumber>+14158714245</TelephoneNumber>
                                    <TelephoneNumber>+14352154439</TelephoneNumber>
                                    <TelephoneNumber>+14352154466</TelephoneNumber>
                                </TelephoneNumberList>
                            </DisconnectTelephoneNumberOrderType>
                        </orderRequest>
                        <OrderStatus>RECEIVED</OrderStatus>
                    </DisconnectTelephoneNumberOrderResponse>
              schema:
                $ref: '#/components/schemas/disconnectTelephoneNumberOrderResponse'
          description: >-
            The order has been created as described in the payload <br>

            The Location header contains the url of the disconnect order that
            has been created.
        '400':
          content:
            application/json:
              example:
                errors:
                  - code: '54321'
                    description: Some error description
                order:
                  disconnectOrderType:
                    phoneNumbers:
                      - '+14158714245'
                  orderCreateDate: '2019-11-19T14:06:57.254Z'
              schema:
                $ref: >-
                  #/components/schemas/disconnectPhoneNumberOrderErrorResponseJson
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <DisconnectTelephoneNumberOrderResponse>
                        <ErrorList>
                            <Error>
                                <Code>54321</Code>
                                <Description>Some error description</Description>
                            </Error>
                        </ErrorList>
                        <orderRequest>
                            <OrderCreateDate>2019-11-19T14:06:57.254Z</OrderCreateDate>
                            <DisconnectTelephoneNumberOrderType>
                                <TelephoneNumberList>
                                    <TelephoneNumber>+14158714245</TelephoneNumber>
                                </TelephoneNumberList>
                            </DisconnectTelephoneNumberOrderType>
                        </orderRequest>
                    </DisconnectTelephoneNumberOrderResponse>
              schema:
                $ref: >-
                  #/components/schemas/disconnectTelephoneNumberOrderErrorResponse
          description: >-
            Bad Response - there were errors in evaluating the body of the
            request.

            Potential errors include: <ul>
              <li> Protected attribute is invalid. Valid values: TRUE, FALSE, UNCHANGED.</li>
            </ul>
      summary: Disconnect numbers from account
      tags:
        - Disconnecting Numbers
  /accounts/{accountId}/disconnects/{disconnectId}:
    get:
      description: >-
        Retrieves the information associated with the disconnect order
        specified.

        Please visit <a
        href='/docs/numbers/guides/disconnectNumbers#get-disconnect-info'>Guides
        and Tutorials</a>
      operationId: ReadDisconnectOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Disconnect Order ID
          example: 59e69657-44d2-4e7e-90f8-777988be4aef
          in: path
          name: disconnectId
          required: true
          schema:
            type: string
        - description: >-
            If set to true, displays the disconnect order's telephone order
            information in greater detail
          example: true
          in: query
          name: tndetail
          required: false
          schema:
            default: 'False'
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                createdByUser: test_user
                customerOrderId: TestUserOrderId
                disconnectOrderType:
                  disconnectMode: NORMAL
                  phoneNumbers:
                    - '+441962573125'
                disconnectedPhoneNumbers:
                  - '+441962573125'
                id: 00006a95-33fa-4e91-bbe5-d8fc0457adf3
                orderCreateDate: '2024-06-29T06:10:09.780Z'
                orderStatus: COMPLETE
              schema:
                $ref: >-
                  #/components/schemas/disconnectPhoneNumberOrderFetchResponseJson
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <DisconnectTelephoneNumberOrderResponse>
                      <DisconnectedTelephoneNumberList>
                        <TelephoneNumber>+19194392566</TelephoneNumber>
                      </DisconnectedTelephoneNumberList>
                      <orderRequest>
                        <id>4ffe9262-1965-4479-a1d5-b8584440667d</id>
                        <OrderCreateDate>2013-12-04T21:59:32.243Z</OrderCreateDate>
                        <DisconnectTelephoneNumberOrderType>
                          <DisconnectMode>normal</DisconnectMode>
                          <Protected>UNCHANGED</Protected>
                          <TelephoneNumberList>
                            <TelephoneNumber>+19194392566</TelephoneNumber>
                          </TelephoneNumberList>
                        </DisconnectTelephoneNumberOrderType>
                      </orderRequest>
                      <OrderStatus>COMPLETE</OrderStatus>
                    </DisconnectTelephoneNumberOrderResponse>
              schema:
                $ref: >-
                  #/components/schemas/disconnectTelephoneNumberOrderFetchResponse
          description: The disconnect order's information has been successfully retrieved.
      summary: Fetching Disconnect Order Status
      tags:
        - Disconnecting Numbers
  /accounts/{accountId}/disconnects/{disconnectId}/notes:
    get:
      description: >-
        Retrieve all notes associated with the disconnect order. Please visit <a
        href='/docs/numbers/guides/disconnectNumbers'>Guides and Tutorials</a>
      operationId: ReadDisconnectOrderNotes
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Disconnect Order ID
          example: 59e69657-44d2-4e7e-90f8-777988be4aef
          in: path
          name: disconnectId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <Notes>
                        <Note>
                            <Id>87037</Id>
                            <UserId>jbm</UserId>
                            <Description>This is a test note</Description>
                            <LastDateModifier>2014-11-16T04:01:10.000Z</LastDateModifier>
                        </Note>
                        <Note>
                            <Id>87039</Id>
                            <UserId>smckinnon</UserId>
                            <Description>This is a second test note</Description>
                            <LastDateModifier>2014-11-16T04:08:46.000Z</LastDateModifier>
                        </Note>
                    </Notes>
              schema:
                $ref: '#/components/schemas/notes'
          description: >-
            OK - there are Notes associated with the order, and they have been
            returned in the response.
        '204':
          description: >-
            No Content - there are no Notes associated with the order.  Since
            the notes resource is an aggregate rather than addressed resource
            the generic no content response is used, rather than a 404 as would
            be used if the resource was addressed with an identifier
      summary: List disconnect order notes
      tags:
        - Disconnecting Numbers
    post:
      description: >-
        Updates the Notes resource by adding a note. Adding a note to a
        disconnect 
         order causes a notification to be sent to Bandwidth Operations, so that they may assist as necessary. A note may be up to 500 characters in length. Please visit <a href='/docs/numbers/guides/disconnectNumbers'>Guides and Tutorials</a>
      operationId: CreateDisconnectOrderNote
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Disconnect Order ID
          example: 59e69657-44d2-4e7e-90f8-777988be4aef
          in: path
          name: disconnectId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Note>
                   <UserId>userId</UserId>
                        <!-- note the userId must match the logged-in user -->
                   <Description>note text</Description>
                   </Note>
            schema:
              $ref: '#/components/schemas/note'
      responses:
        '201':
          description: >-
            CREATED - the note has been created and added to the collection of
            notes associated with the order.  A link to the note is included in
            the Location header of the response.  No body is returned
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <NoteResponse>
                        <ResponseStatus>
                            <ErrorCode>12501</ErrorCode>
                            <Description>Username is required</Description>
                        </ResponseStatus>
                    </NoteResponse>
              schema:
                $ref: '#/components/schemas/noteErrorResponse'
          description: >-
            Bad Request - the note has not been created because the payload is
            incomplete or in error.  An error payload is provided in the
            response.
      summary: Add disconnect order note
      tags:
        - Disconnecting Numbers
  /accounts/{accountId}/disconnects/{disconnectId}/notes/{noteId}:
    put:
      description: >
        Update a specified note.  Notes may only be updated, not deleted. Please
        visit <a href='/docs/numbers/guides/disconnectNumbers'>Guides and
        Tutorials</a>
      operationId: UpdateDisconnectOrderNote
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Disconnect Order ID
          example: 59e69657-44d2-4e7e-90f8-777988be4aef
          in: path
          name: disconnectId
          required: true
          schema:
            type: string
        - description: Note ID
          example: '123'
          in: path
          name: noteId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Note>
                    <UserId>userId</UserId>
                    <Description>note text</Description>
                  </Note>
            schema:
              $ref: '#/components/schemas/note'
      responses:
        '200':
          description: OK - note has been updated.  No body is returned
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <NoteResponse>
                        <ResponseStatus>
                            <ErrorCode>12501</ErrorCode>
                            <Description>Username is required</Description>
                        </ResponseStatus>
                    </NoteResponse>
              schema:
                $ref: '#/components/schemas/noteErrorResponse'
          description: >-
            Bad Request - the note has not been updated because the payload is
            incomplete or in error.  An error payload is provided in the
            response.
      summary: Update disconnect order note
      tags:
        - Disconnecting Numbers
  /accounts/{accountId}/e911Addresses:
    get:
      description: GET is used to retrieve all e911 addresses.
      operationId: GetAllE911Addresses
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Search criterion for e911 address by its locationid.
          example: 47950147-9c58-407c-bcc4-e88743b20db5
          in: query
          name: e911locationid
          required: false
          schema:
            type: string
        - description: >-
            An ID of the first element in a page.  This value will indicate the
            first value, not the page number, of the initial entry in the page
            being requested.<br> It can be an id of address. The initial page is
            tagged with the ID `1`.
          example: '3'
          in: query
          name: page
          required: false
          schema:
            default: '1'
            type: string
        - description: The number of items to include in a page.
          example: 5000
          in: query
          name: size
          required: false
          schema:
            default: 500
            type: integer
        - description: The text to search simultaneously through e911locationIds.
          example: name
          in: query
          name: suggestions
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AddressesResponse>
                      <TotalCount>1</TotalCount>
                      <Links>
                        <first>Link=&lt;http://admin.localhost:8080/api/accounts/8000259/addresses?page=1&amp;size=500&gt;;rel="first";</first>
                        <next>Link=&lt;http://localhost:8080/api/accounts/8000259/addresses?page=501&amp;size=500&gt;;rel="next";</next>
                      </Links>
                      <Addresses>
                        <Address>
                          <HouseNumber>207</HouseNumber>
                          <HouseSuffix/>
                          <PreDirectional/>
                          <StreetName>Elmastar</StreetName>
                          <StreetSuffix>AlternateStar</StreetSuffix>
                          <PostDirectional/>
                          <AddressLine2/>
                          <City>Carpinteriaaly</City>
                          <StateCode>NY</StateCode>
                          <Zip>93019</Zip>
                          <PlusFour/>
                          <County/>
                          <Country>United States</Country>
                          <AddressType>E911</AddressType>
                          <EndpointCount>2</EndpointCount>
                          <ValidationStatus>VALID</ValidationStatus>
                        </Address>
                      </Addresses>
                    </AddressesResponse>
              schema:
                $ref: '#/components/schemas/addressesResponseWrapper'
          description: >-
            OK - the addresses retrieval request will return a list of all
            addresses having specified search criteria.
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AddressesResponse>
                      <ResponseStatus>
                        <Description>The resource does not exist</Description>
                      </ResponseStatus>
                    </AddressesResponse>
              schema:
                $ref: '#/components/schemas/addressesResponseNotFound'
          description: >-
            Not Found - if the account specified does not exist or is locked or
            there are no addresses for specified search criteria it will result
            in a not found.
      summary: List E911 addresses [NANP]
      tags:
        - Addresses
  /accounts/{accountId}/e911s:
    get:
      description: >-
        Retrieve a list of the E911 orders that are associated with the account.
        A maximum of 1,000 orders can be retrieved per request. If no date range
        or specific query parameter (marked by <b class="required">*</b> below)
        is provided, the order results will be limited to the last two years. 

        Please visit <a href='/docs/numbers/guides/e911s'>Guides and
        Tutorials</a>
      operationId: ListE911Orders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The status of the E911 order being searched for.
          example: PROCESSING
          in: query
          name: status
          required: false
          schema:
            items:
              type: string
            type: array
        - description: A Telephone Number (TN) that is referenced in the order.
          example: '+19199918388'
          in: query
          name: tn
          required: true
          schema:
            type: string
        - description: A callback Telephone Number (TN) used for 911 purposes.
          example: '+19199918388'
          in: query
          name: callBack
          required: true
          schema:
            type: string
        - description: >-
            Alternate End-user Identifier used to identify the calling party for
            911 purposes.
          example: Alter12345
          in: query
          name: aeui
          required: true
          schema:
            type: string
        - description: >-
            The Customer Order ID is an ID assigned by the account owner to
            provide a reference number for the E911 order.
          example: ABCCorp12345
          in: query
          name: customerOrderId
          required: true
          schema:
            type: string
        - description: >-
            For Date-based searches, the starting date of a date range
            (inclusive) that will be used to find E911 Orders that were modified
            within the date range.  It is in the form yyyy-MM-dd.
          example: '2013-10-22'
          in: query
          name: modifiedDateFrom
          required: false
          schema:
            type: string
        - description: >-
            For Date-based searches, the ending date of a date range (inclusive)
            that will be used to find E911 Orders that were modified within the
            date range.  It is in the form yyyy-MM-dd.
          example: '2013-10-25'
          in: query
          name: modifiedDateTo
          required: false
          schema:
            type: string
        - description: >-
            Checks the order's creation date against this value. Orders that
            have a creation date after this date will be included. Format is
            yyyy-MM-dd
          example: '2013-10-22'
          in: query
          name: createdDateFrom
          required: false
          schema:
            type: string
        - description: >-
            Checks the order's creation date against this value. Orders that
            have a creation date before this date will be included. Format is
            yyyy-MM-dd
          example: '2013-10-25'
          in: query
          name: createdDateTo
          required: false
          schema:
            type: string
        - description: >-
            Checks the order's last modified date against this value. Orders
            that have a modification date after this date will be included.
            Format is yyyy-MM-dd
          example: '2013-10-25'
          in: query
          name: lastModifiedAfter
          required: false
          schema:
            type: string
        - description: This is the user-name of the user that last modified the E911 Order.
          example: smckinnon
          in: query
          name: lastModifiedBy
          required: false
          schema:
            type: string
        - description: >-
            This search parameter represents the internal Bandwidth App API ID
            that has been assigned to the E911 Order.  This parameter is the
            first few characters of the internal ID - the entire ID does not
            need to be specified.
          example: ed1c0bed-e2
          in: query
          name: orderIdFragment
          required: true
          schema:
            type: string
        - description: >-
            If set to true, a list of order details will be displayed instead
            the summary information.
          example: true
          in: query
          name: orderDetails
          required: false
          schema:
            default: false
            type: boolean
      responses:
        '200':
          content:
            application/xml:
              examples:
                orderDetails = false:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <E911Orders>
                       <TotalCount>2</TotalCount>
                       <E911OrderSummary>
                          <accountId>1</accountId>
                          <CountOfTNs>1</CountOfTNs>
                          <userId>admin</userId>
                          <lastModifiedDate>2015-08-03T14:41:01.769Z</lastModifiedDate>
                          <OrderDate>2015-08-03T14:41:00.815Z</OrderDate>
                          <OrderType>e911</OrderType>
                          <OrderStatus>COMPLETE</OrderStatus>
                          <OrderId>6dae2a67-b8f5-4bf2-9bf7-5216277b9be3</OrderId>
                       </E911OrderSummary>
                       <E911OrderSummary>
                          <accountId>1</accountId>
                          <CountOfTNs>1</CountOfTNs>
                          <userId>admin</userId>
                          <lastModifiedDate>2015-08-03T14:40:19.008Z</lastModifiedDate>
                          <OrderDate>2015-08-03T14:40:17.864Z</OrderDate>
                          <OrderType>e911</OrderType>
                          <OrderStatus>ADJUSTED_COMPLETE</OrderStatus>
                          <OrderId>6a97b54f-459e-4683-a79c-0de52acf7c6b</OrderId>
                       </E911OrderSummary>
                    </E911Orders>
                orderDetails = true:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <E911Orders>
                       <TotalCount>2</TotalCount>
                       <E911Order>
                          <OrderCreateDate>2015-08-03T14:41:00.815Z</OrderCreateDate>
                          <AccountId>1</AccountId>
                          <CreatedByUser>admin</CreatedByUser>
                          <OrderId>6dae2a67-b8f5-4bf2-9bf7-5216277b9be3</OrderId>
                          <LastModifiedDate>2015-08-03T14:41:01.769Z</LastModifiedDate>
                          <Address>
                             <HouseNumber>800</HouseNumber>
                             <HouseSuffix/>
                             <PreDirectional/>
                             <StreetName>PENNSYLVANIA AVE</StreetName>
                             <StreetSuffix>NW</StreetSuffix>
                             <AddressLine2/>
                             <City>WASHINGTON</City>
                             <StateCode>DC</StateCode>
                             <Zip>20004</Zip>
                             <PlusFour/>
                             <Country>United States</Country>
                             <Latitude>35.848359</Latitude>
                             <Longitude>-75.000000</Longitude>
                          </Address>
                          <CallerName>0931180f-4</CallerName>
                          <ErrorList/>
                          <ProcessingStatus>COMPLETE</ProcessingStatus>
                          <TelephoneNumbers>
                             <TelephoneNumber>+19142971000</TelephoneNumber>
                          </TelephoneNumbers>
                       </E911Order>
                       <E911Order>
                          <OrderCreateDate>2015-08-03T14:40:17.864Z</OrderCreateDate>
                          <AccountId>1</AccountId>
                          <CreatedByUser>admin</CreatedByUser>
                          <OrderId>6a97b54f-459e-4683-a79c-0de52acf7c6b</OrderId>
                          <LastModifiedDate>2015-08-03T14:40:19.008Z</LastModifiedDate>
                          <Address>
                             <HouseNumber>1600</HouseNumber>
                             <HouseSuffix/>
                             <PreDirectional/>
                             <StreetName>PENNSYLVANIA AVE</StreetName>
                             <StreetSuffix>NW</StreetSuffix>
                             <AddressLine2/>
                             <City>WASHINGTON</City>
                             <StateCode>DC</StateCode>
                             <Zip>20500</Zip>
                             <PlusFour>0003</PlusFour>
                             <Country>United States</Country>
                             <Latitude>35.848359</Latitude>
                             <Longitude>-75.000000</Longitude>
                          </Address>
                          <CallerName>0931180f-4</CallerName>
                          <ErrorList/>
                          <ProcessingStatus>ADJUSTED_COMPLETE</ProcessingStatus>
                          <TelephoneNumbers>
                             <TelephoneNumber>+19142971000</TelephoneNumber>
                          </TelephoneNumbers>
                       </E911Order>
                    </E911Orders>
              schema:
                $ref: '#/components/schemas/e911Orders'
          description: >-
            The descriptive payload for the E911 Orders query provides a broad
            range of information about the E911  Orders found by the query,
            including the data associated with the order, the state of the
            order, and details about the order if it was successful.
        '404':
          description: >-
            Not Found. If any errors are found in the processing of the query
            string a 404 will be returned.  Note that parameters that are not
            recognized are not considered errors, and are just ignored.
      summary: List E911 orders
      tags:
        - E911
    post:
      description: "<p>The E911Orders endpoint resource represents the requests made to the Bandwidth App API to add or otherwise manage a request to associate a postal address with an endpoint (a telephone number, ACID (alternate caller identifier), or some other unique identifier. This API allows the creation and observation of a \"E911\" work order that causes an update of a address information in a network database.</p><p>The E911 order processing model is consistent with the overall model of creating an order or request with the initial POST, and then checking on the status of that order using callbacks and / or GET while that order progresses through the various steps in the process.</p><h4>The E911 order supports several 911 use cases:</h4><ol><li>CONVENTIONAL E911: Telephone number/address combination. For UC Trunking and most applicable wholesale customers, this method associates a telephone number in the customer’s Bandwidth App API TN inventory to a postal address. Caller name can also be specified in the request. At 911 call time, the address that is associated with the telephone number in the SIP 'from' header will be seen by the Public Safety Answering Point (PSAP).</li><br><li>PIDF-LO (Presence Information Data Format-Location Object or Dynamic Location Routing) Endpoints and Addresses: For customers utilizing Bandwidth’s Dynamic Routing capability, addresses are first added to an \"address pool\", then endpoints are provisioned using one of the addresses as a default for taxation purposes. Each endpoint is represented by an Alternate End User Identifier consisting of a unique identifier (could be TN, ACID, or other identifier), callback number and caller name (if not being passed in at 911 call time), and preferred language (French or English, with English as the default). At 911 call time, the customer can pass any address in the SIP header of the call and the sip 'from' header will contain the identifier of the endpoint. If the address in the call matches an address in the address pool, then the call is routed to the PSAP. Otherwise, the call is routed to an Emergency Call Center.</li><br><li><p>SIMPLE AEUI: This is similar to telephone number/address combination in that there is a 1 to 1 mapping between endpoint and address. Each endpoint is represented by an Alternate End User Identifier(AEUI) consisting of a unique identifier and callback number. At 911 call time, the endpoint identifier is passed in the SIP from header and the address that is associated with that endpoint will be seen by the PSAP.</p><p>The states that the order may reside in are RECEIVED, PROCESSING, COMPLETE, PARTIAL, FAILED, ADJUSTED_COMPLETE, and ADJUSTED_PARTIAL. \"ADJUSTED\" indicates that the provisioning was successful, but that the street address was subtly changed to reflect a geocodable address. As with other order types, PARTIAL indicates that there were some errors detected, but that all elements of the order that could be processed were processed. In this case, the order record will need to be examined to determine the items that failed.</p></o></li></ol><h4>The key data elements in the submission are as follows.</h4><table><tr><th>Parameter</th><th>Description</th></tr><tr><td>TelephoneNumbers</td><td>A list of telephone numbers you need link to the street address</td></tr><tr><td>CallerName</td><td>\tCallerName that will be linked to TNs. This field is required in the case of a new address assignment</td></tr><tr><td>Address</td><td>This field is required in the case of a new address assignment. Inner fields: HousePrefix, HouseNumber, HouseSuffix, PreDirectional, StreetName, StreetSuffix, PostDirectional, AddressLine2, City, StateCode, Zip, PlusFour. Streetname, City, and State are required. House Number is currently required, although this enforcement may be relaxed in the future. Depending on the type of E911 service, the Location ID may be updated by the Bandwidth App API</td></tr><tr><td>DeleteTNSpecificE911Address</td><td>Can be true or false. If value is true then Address and CallerName should not be specified</td></tr><tr><td>AlternateEndUserIdentifiers</td><td>A list of AEUIs acts as a replacement for the list of telephone numbers. It replaces the TelephoneNumbers and AdditionalAddress payload element. If ACID exists in external system it will be updated with given values</td></tr><tr><td>AdditionalAddresses</td><td>A list of Address sections. This address information for all potential endpoints which will be provisioned to the Bandwidth 911 system. At call time, the customer will submit this address information within the SIP header and, if a match is determined, the call will be routed to the PSAP nearest to that address. Otherwise, the call will be routed to an ECC. These Address sections will be the same in format to the Address section in the top-level of the E911Order payload. It replaces the TelephoneNumbers and AlternateEndUserIdentifiers payload element</td></tr><tr><td>CustomerOrderId</td><td>The Customer Order ID is an ID assigned by the account owner to provide a reference number for the Order. The element is optional. Only alphanumeric values, dashes and spaces are allowed. Max length is 40 characters</td></tr></table>"
      operationId: CreateE911Order
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              ConventionalAddressDeletionE911Order:
                summary: CONVENTIONAL E911. TN/address-deletion order
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <E911Order>
                    <CustomerOrderId>CustomOrderId1</CustomerOrderId>
                    <TelephoneNumbers>
                      <TelephoneNumber>+19706542332</TelephoneNumber>
                      <TelephoneNumber>+19706542333</TelephoneNumber>
                    </TelephoneNumbers>
                    <DeleteTNSpecificE911Address>true</DeleteTNSpecificE911Address>
                  </E911Order>
              ConventionalAddressProvisioningE911Order:
                summary: CONVENTIONAL E911. TN/Address-provisioning order
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <E911Order>
                    <TelephoneNumbers>
                      <TelephoneNumber>+19706542332</TelephoneNumber>
                      <TelephoneNumber>+19706542333</TelephoneNumber>
                    </TelephoneNumbers>
                    <CallerName>OptionalCallerName</CallerName>
                    <Address>
                      <HouseNumber>915</HouseNumber>
                      <HouseSuffix/>
                      <PreDirectional/>
                      <StreetName>Elm</StreetName>
                      <StreetSuffix>Ave</StreetSuffix>
                      <PostDirectional/>
                      <AddressLine2/>
                      <City>Carpinteria</City>
                      <StateCode>CA</StateCode>
                      <Zip>93013</Zip>
                      <PlusFour/>
                      <County/>
                      <Country>United States</Country>
                      <Latitude>35.848359</Latitude>
                      <Longitude>-75.000000</Longitude>
                    </Address>
                  </E911Order>
              PidfloAddressDeleting911Order:
                summary: PIDF-LO. address-deletion order
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <E911Order>
                    <CustomerOrderId>CustomOrderId1</CustomerOrderId>
                    <AdditionalAddresses>
                      <Address>
                        <LocationId>Some32CharacterOrLessString1</LocationId>
                      </Address>
                      <Address>
                        <LocationId>Some32CharacterOrLessString1</LocationId>
                      </Address>
                    </AdditionalAddresses>
                    <DeleteTNSpecificE911Address>true</DeleteTNSpecificE911Address>
                  </E911Order>
              PidfloAddressEditing911Order:
                summary: PIDF-LO. address-editing order
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <E911Order>
                    <AdditionalAddresses>
                      <Address>
                        <HouseNumber>645</HouseNumber>
                        <PreDirectional>E</PreDirectional>
                        <HouseSuffix>1/2</HouseSuffix>
                        <PostDirectional>S</PostDirectional>
                        <StreetName>Manchester</StreetName>
                        <StreetSuffix>AVE</StreetSuffix>
                        <AddressLine2>test address line 2</AddressLine2>
                        <City>Los Angeles</City>
                        <StateCode>CA</StateCode>
                        <Zip>90001</Zip>
                        <Latitude>35.848359</Latitude>
                        <Longitude>-75.000000</Longitude>
                        <LocationId>Some32CharacterOrLessString</LocationId>
                      </Address>
                    </AdditionalAddresses>
                  </E911Order>
              PidfloAddressProvisioning911Order:
                summary: PIDF-LO. address-provisioning order
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <E911Order>
                    <CustomerOrderId>CustomOrderId1</CustomerOrderId>
                    <AdditionalAddresses>
                      <Address>
                        <LocationId>Some32CharacterOrLessString</LocationId>
                        <HouseNumber>901</HouseNumber>
                        <StreetName>MAIN CAMPUS</StreetName>
                        <StreetSuffix>DR</StreetSuffix>
                        <City>RALEIGH</City>
                        <StateCode>NC</StateCode>
                        <Zip>27606</Zip>
                        <PlusFour>5244</PlusFour>
                        <Country>United States</Country>
                        <Latitude>35.848359</Latitude>
                        <Longitude>-75.000000</Longitude>
                        <AddressType>E911</AddressType>
                      </Address>
                      <Address>
                        <LocationId>Some32CharacterOrLessString</LocationId>
                        <HouseNumber>645</HouseNumber>
                        <PreDirectional>E</PreDirectional>
                        <StreetName>MANCHESTER</StreetName>
                        <StreetSuffix>AVE</StreetSuffix>
                        <City>LOS ANGELES</City>
                        <StateCode>United States</StateCode>
                        <Zip>90001</Zip>
                        <Country>United States</Country>
                      </Address>
                    </AdditionalAddresses>
                  </E911Order>
              PidfloAeuiWithAdditionalAddressWithLocationIdE911Order:
                summary: >-
                  PIDF-LO. AEUI endpoint-provisioning order with additional
                  address provisioning and with pre-defined location id
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <E911Order>
                    <CustomerOrderId>CustomOrderId1</CustomerOrderId>
                    <Address>
                      <LocationId>Some32CharacterOrLessString</LocationId>
                      <HouseNumber>901</HouseNumber>
                      <StreetName>MAIN CAMPUS</StreetName>
                      <StreetSuffix>DR</StreetSuffix>
                      <City>RALEIGH</City>
                      <StateCode>NC</StateCode>
                      <Zip>27606</Zip>
                      <PlusFour>5244</PlusFour>
                      <Country>United States</Country>
                      <Latitude>35.848359</Latitude>
                      <Longitude>-75.000000</Longitude>
                      <AddressType>E911</AddressType>
                    </Address>
                    <AlternateEndUserIdentifiers>
                      <AlternateEndUserIdentifier>
                        <CallerName>OptionalCallerName</CallerName>
                        <CallbackNumber>+19706542333</CallbackNumber>
                        <Identifier>blep123</Identifier>
                        <PIDFLOEnabled>true</PIDFLOEnabled>
                        <PreferredLanguage>en</PreferredLanguage>
                      </AlternateEndUserIdentifier>
                    </AlternateEndUserIdentifiers>
                  </E911Order>
              PidfloAeuiWithAdditionalAddressWithoutLocationIdE911Order:
                summary: >-
                  PIDF-LO. AEUI endpoint-provisioning order with additional
                  address provisioning and without pre-defined location id
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <E911Order>
                    <CustomerOrderId>CustomOrderId1</CustomerOrderId>
                    <Address>
                      <HouseNumber>901</HouseNumber>
                      <StreetName>MAIN CAMPUS</StreetName>
                      <StreetSuffix>DR</StreetSuffix>
                      <City>RALEIGH</City>
                      <StateCode>NC</StateCode>
                      <Zip>27606</Zip>
                      <PlusFour>5244</PlusFour>
                      <Country>United States</Country>
                      <Latitude>35.848359</Latitude>
                      <Longitude>-75.000000</Longitude>
                      <AddressType>E911</AddressType>
                    </Address>
                    <AlternateEndUserIdentifiers>
                      <AlternateEndUserIdentifier>
                        <CallerName>OptionalCallerName</CallerName>
                        <CallbackNumber>+19706542333</CallbackNumber>
                        <Identifier>blep123</Identifier>
                        <PIDFLOEnabled>true</PIDFLOEnabled>
                        <PreferredLanguage>en</PreferredLanguage>
                      </AlternateEndUserIdentifier>
                    </AlternateEndUserIdentifiers>
                  </E911Order>
              PidfloAeuiWithLocationIdE911Order:
                summary: >-
                  PIDF-LO. AEUI endpoint-provisioning order with provisioned
                  location id
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <E911Order>
                    <CustomerOrderId>CustomOrderId1</CustomerOrderId>
                    <AlternateEndUserIdentifiers>
                      <AlternateEndUserIdentifier>
                        <CallerName>OptionalCallerName</CallerName>
                        <LocationId>Some32CharacterOrLessString</LocationId>
                        <CallbackNumber>+19706542333</CallbackNumber>
                        <Identifier>blep123</Identifier>
                        <PIDFLOEnabled>true</PIDFLOEnabled>
                        <PreferredLanguage>en</PreferredLanguage>
                      </AlternateEndUserIdentifier>
                    </AlternateEndUserIdentifiers>
                  </E911Order>
              PidfloAndSimpleAeuiMixedPidfloAeuiAndNonPidloAeuiDeleting911Order:
                summary: >-
                  PIDF-LO and SIMPLE AEUI. PIDF-LO and Non-PIDF-LO
                  endpoint-deletion order
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <E911Order>
                    <CustomerOrderId>CustomOrderId1</CustomerOrderId>
                    <AdditionalAddresses>
                      <Address>
                        <LocationId>Some32CharacterOrLessString</LocationId>
                        <HouseNumber>901</HouseNumber>
                        <StreetName>MAIN CAMPUS</StreetName>
                        <StreetSuffix>DR</StreetSuffix>
                        <City>RALEIGH</City>
                        <StateCode>NC</StateCode>
                        <Zip>27606</Zip>
                        <PlusFour>5244</PlusFour>
                        <Country>United States</Country>
                        <Latitude>35.848359</Latitude>
                        <Longitude>-75.000000</Longitude>
                        <AddressType>E911</AddressType>
                      </Address>
                      <Address>
                        <LocationId>Some32CharacterOrLessString</LocationId>
                        <HouseNumber>645</HouseNumber>
                        <PreDirectional>E</PreDirectional>
                        <StreetName>MANCHESTER</StreetName>
                        <StreetSuffix>AVE</StreetSuffix>
                        <City>LOS ANGELES</City>
                        <StateCode>United States</StateCode>
                        <Zip>90001</Zip>
                        <Country>United States</Country>
                      </Address>
                    </AdditionalAddresses>
                  </E911Order>
              PidfloAndSimpleAeuiMixedPidfloAeuiAndNonPidloAeuiProvisioning911Order:
                summary: >-
                  PIDF-LO and SIMPLE AEUI. Mixed PIDF-LO AEUI and Non-PIDF-LO
                  AEUI endpoint-provisioning order
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <E911Order>
                    <CustomerOrderId>CustomOrderId1</CustomerOrderId>
                    <CallerName>OptionalCallerName</CallerName>
                    <Address>
                      <LocationId>Some32CharacterOrLessString</LocationId>
                      <HouseNumber>901</HouseNumber>
                      <StreetName>MAIN CAMPUS</StreetName>
                      <StreetSuffix>DR</StreetSuffix>
                      <City>RALEIGH</City>
                      <StateCode>NC</StateCode>
                      <Zip>27606</Zip>
                      <PlusFour>5244</PlusFour>
                      <Country>United States</Country>
                      <Latitude>35.848359</Latitude>
                      <Longitude>-75.000000</Longitude>
                      <AddressType>E911</AddressType>
                    </Address>
                    <AlternateEndUserIdentifiers>
                      <AlternateEndUserIdentifier>
                        <CallerName>OptionalCallerName</CallerName>
                        <LocationId>Some32CharacterOrLessString</LocationId>
                        <CallbackNumber>+19706542333</CallbackNumber>
                        <Identifier>blep123</Identifier>
                        <PIDFLOEnabled>true</PIDFLOEnabled>
                        <PreferredLanguage>en</PreferredLanguage>
                      </AlternateEndUserIdentifier>
                      <AlternateEndUserIdentifier>
                        <CallbackNumber>+19706542334</CallbackNumber>
                        <Identifier>blepblop</Identifier>
                        <PIDFLOEnabled>false</PIDFLOEnabled>
                      </AlternateEndUserIdentifier>
                    </AlternateEndUserIdentifiers>
                  </E911Order>
              SimpleAeuiNonPidfloProvisioning911Order:
                summary: SIMPLE AEUI. Non-PIDF-LO endpoint-provisioning order
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <E911Order>
                    <CustomerOrderId>CustomOrderId1</CustomerOrderId>
                    <CallerName>OptionalCallerName</CallerName>
                    <Address>
                      <LocationId>Some32CharacterOrLessString</LocationId>
                      <HouseNumber>901</HouseNumber>
                      <StreetName>MAIN CAMPUS</StreetName>
                      <StreetSuffix>DR</StreetSuffix>
                      <City>RALEIGH</City>
                      <StateCode>NC</StateCode>
                      <Zip>27606</Zip>
                      <PlusFour>5244</PlusFour>
                      <Country>United States</Country>
                      <Latitude>35.848359</Latitude>
                      <Longitude>-75.000000</Longitude>
                      <AddressType>E911</AddressType>
                    </Address>
                    <AlternateEndUserIdentifiers>
                      <AlternateEndUserIdentifier>
                        <CallbackNumber>+19706542333</CallbackNumber>
                        <Identifier>abc123</Identifier>
                        <PIDFLOEnabled>false</PIDFLOEnabled>
                      </AlternateEndUserIdentifier>
                    </AlternateEndUserIdentifiers>
                  </E911Order>
            schema:
              oneOf:
                - $ref: >-
                    #/components/schemas/conventionalAddressProvisioningE911Order
                - $ref: '#/components/schemas/conventionalAddressDeletionE911Order'
                - $ref: >-
                    #/components/schemas/pidfloAeuiWithAdditionalAddressWithoutLocationIdE911Order
                - $ref: >-
                    #/components/schemas/pidfloAeuiWithAdditionalAddressWithLocationIdE911Order
                - $ref: '#/components/schemas/pidfloAeuiWithLocationIdE911Order'
                - $ref: >-
                    #/components/schemas/pidfloAndSimpleAeuiMixedPidfloAeuiAndNonPidloAeuiProvisioning911Order
                - $ref: >-
                    #/components/schemas/pidfloAndSimpleAeuiMixedPidfloAeuiAndNonPidloAeuiDeleting911Order
                - $ref: '#/components/schemas/pidfloAddressProvisioning911Order'
                - $ref: '#/components/schemas/pidfloAddressEditing911Order'
                - $ref: '#/components/schemas/pidfloAddressDeleting911Order'
                - $ref: '#/components/schemas/simpleAeuiNonPidfloProvisioning911Order'
        description: >-
          <h5>1. CONVENTIONAL E911. TN/Address-provisioning
          order:</h5><p>TN/Address-provisioning order.</p><h5>2. CONVENTIONAL
          E911. TN/address-deletion order:</h5><p>TelephoneNumbers and
          TelephoneNumber are required. DeleteTNSpecificE911Address is required
          and must be set to 'true'.</p><h5>3. PIDF-LO. AEUI
          endpoint-provisioning order with additional address provisioning and
          without pre-defined location id:</h5><p>AlternateEndUserIdentifiers,
          AlternateEndUserIdentifier, Address, and Identifier are required.
          Identifier can only contain alphanumeric characters and must be
          between 1 and 30 characters. PIDFLOEnabled is required and must be
          'true'. Default value of PreferredLanguage is 'en'.</p><h5>4. PIDF-LO.
          AEUI endpoint-provisioning order with additional address provisioning
          and with pre-defined location id</h5><p>AlternateEndUserIdentifiers,
          AlternateEndUserIdentifier, Address, and Identifier are required.
          Identifier can only contain alphanumeric characters and must be
          between 1 and 30 characters. PIDFLOEnabled is required and must be
          'true'. Default value of PreferredLanguage is 'en'.</p><h5>5. PIDF-LO.
          AEUI endpoint-provisioning order with provisioned location
          id</h5><p>AlternateEndUserIdentifiers, AlternateEndUserIdentifier,
          LocationId, and Identifier are required. Identifier can only contain
          alphanumeric characters and must be between 1 and 30 characters.
          PIDFLOEnabled is required and must be 'true'. Default value of
          PreferredLanguage is 'en'.</p><h5>6. PIDF-LO and SIMPLE AEUI. Mixed
          PIDF-LO AEUI and Non-PIDF-LO AEUI endpoint-provisioning
          order</h5><p>AlternateEndUserIdentifiers, AlternateEndUserIdentifier,
          Address, and Identifier are required. Default value of
          PreferredLanguage is 'en'. Non-PIDF-LO: CallbackNumber is required.
          Identifier can only contain alphanumeric characters and must be
          between 4 and 30 characters. PIDF-LO: PIDFLOEnabled is required and
          must be 'true'. Identifier can only contain alphanumeric characters
          and must be between 1 and 30 characters.</p><h5>7. PIDF-LO and SIMPLE
          AEUI. PIDF-LO and Non-PIDF-LO endpoint-deletion
          order</h5><p>AlternateEndUserIdentifiers, AlternateEndUserIdentifier,
          and Identifier are required. DeleteTNSpecificE911Address is required
          and must be 'true'. Non-PIDF-LO: CallbackNumber is required.
          Identifier can only contain alphanumeric characters 4 and 30
          characters. PIDF-LO: PIDFLOEnabled is required and must be 'true'.
          Identifier can only contain alphanumeric characters and must be
          between 1 and 30 characters.</p><h5>8. PIDF-LO. address-provisioning
          order</h5><p>AdditionalAddresses and Address are required. If a
          LocationId specified matches an existing record, the current address
          will be overwritten with the new values.</p><h5>9. PIDF-LO.
          address-editing order</h5><p>Address and LocationId are required.
          Allows a user to update all address fields except PlusFour and
          Country.</p><h5>10. PIDF-LO. address-deletion
          order</h5><p>AdditionalAddresses, Address, and LocationId are
          required. DeleteTNSpecificE911Address is required and must be
          'true'.</p><h5>11. SIMPLE AEUI. Non-PIDF-LO endpoint-provisioning
          order</h5><p>AlternateEndUserIdentifiers, AlternateEndUserIdentifier,
          Address, CallbackNumber, and Identifier are required Identifier can
          only contain alphanumeric characters, must contain at least one
          letter, and must be between 4 and 30 characters.</p>
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <E911OrderResponse>
                       <E911Order>
                          <CustomerOrderId>CustomOrderId1</CustomerOrderId>
                          <orderId>1d863522-c9bf-430c-8e79-cc63cad04a1d</orderId>
                          <ProcessingStatus>RECEIVED</ProcessingStatus>
                          <TelephoneNumbers>
                             <TelephoneNumber>+19706542332</TelephoneNumber>
                             <TelephoneNumber>+19706542333</TelephoneNumber>
                          </TelephoneNumbers>
                          <CallerName>CustomCallerName</CallerName>
                          <Address>
                             <HouseNumber>915</HouseNumber>
                             <HouseSuffix/>
                             <PreDirectional/>
                             <StreetName>Elm</StreetName>
                             <StreetSuffix>Ave</StreetSuffix>
                             <PostDirectional/>
                             <AddressLine2/>
                             <City>Carpinteria</City>
                             <StateCode>CA</StateCode>
                             <Zip>93013</Zip>
                             <PlusFour/>
                             <County/>
                             <Country/>
                             <Latitude>35.848359</Latitude>
                             <Longitude>-75.000000</Longitude>
                          </Address>
                       </E911Order>
                    </E911OrderResponse>
              schema:
                $ref: '#/components/schemas/e911OrderResponse'
          description: Created - a 201 response indicates that an order has been created.
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <E911OrderResponse>
                       <ResponseStatus>
                          <ErrorCode>5070</ErrorCode>
                          <Description>Telephone number is invalid.</Description>
                       </ResponseStatus>
                    </E911OrderResponse>
          description: >-
            Bad Request - a 400 response indicates that the order could not be
            created.<br>

            Error text and an error code will be provided in the ErrorList
            element.
      summary: Create E911 order - associate the address with the telephone number
      tags:
        - E911
  /accounts/{accountId}/e911s/{orderId}:
    get:
      description: >-
        Retrieve information about a E911 Order with specified ID. 

        Please visit <a href='/docs/numbers/guides/e911s'>Guides and
        Tutorials</a>
      operationId: ReadE911Order
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: E911 order id
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <E911Order>
                       <OrderCreateDate>2015-06-16T14:03:10.199Z</OrderCreateDate>
                       <AccountId>111</AccountId>
                       <CreatedByUser>admin</CreatedByUser>
                       <OrderId>8578086b-f73d-4a0f-bba6-d20399c7de31</OrderId>
                       <LastModifiedDate>2015-06-16T14:03:10.789Z</LastModifiedDate>
                       <Address>
                          <HouseNumber>901</HouseNumber>
                          <StreetName>Main Campus Drive</StreetName>
                          <City>Raleigh</City>
                          <StateCode>NC</StateCode>
                          <Zip>27606</Zip>
                          <Country>United States</Country>
                          <Latitude>35.848359</Latitude>
                          <Longitude>-75.000000</Longitude>
                       </Address>
                       <CallerName>testName111111</CallerName>
                       <CustomerOrderId>test</CustomerOrderId>
                       <ProcessingStatus>PARTIAL</ProcessingStatus>
                       <TelephoneNumbers>
                          <TelephoneNumber>+13172000218</TelephoneNumber>
                          <TelephoneNumber>+13172000000</TelephoneNumber>
                       </TelephoneNumbers>
                       <ErrorList>
                          <Error>
                             <Code>8003</Code>
                             <Description>Telephone numbers does not belong to this account.</Description>
                             <TelephoneNumbers>
                                <TelephoneNumber>+13172000000</TelephoneNumber>
                             </TelephoneNumbers>
                          </Error>
                          <Error>
                             <Code>8009</Code>
                             <Description>Telephone numbers not in 'Inservice'</Description>
                             <TelephoneNumbers>
                                <TelephoneNumber>+13172000000</TelephoneNumber>
                             </TelephoneNumbers>
                          </Error>
                       </ErrorList>
                       <!-- or, instead of TelephoneNumbers, a list of Alternative identifiers can be returned -->
                       <AlternateEndUserIdentifiers>
                          <AlternateEndUserIdentifier>
                             <PIDFLOEnabled>true</PIDFLOEnabled>
                             <Identifier>alphanumeric characters only, 1 character minimum, 30 characters maximum</Identifier>
                             <CallbackNumber>+19706542332</CallbackNumber>
                             <CallerName>Eli</CallerName>
                             <PreferredLanguage>en</PreferredLanguage>
                             <LocationId>Some32CharacterOrLessString</LocationId>
                             <Address>
                                <LocationId>Some32CharacterOrLessString</LocationId>
                                <HouseNumber>915</HouseNumber>
                                <HouseSuffix/>
                                <PreDirectional/>
                                <StreetName>Elm</StreetName>
                                <StreetSuffix>Ave</StreetSuffix>
                                <PostDirectional/>
                                <AddressLine2/>
                                <City>Carpinteria</City>
                                <StateCode>CA</StateCode>
                                <Zip>93013</Zip>
                                <PlusFour/>
                                <County/>
                                <Country>United States</Country>
                                <Latitude>35.848359</Latitude>
                                <Longitude>-75.000000</Longitude>
                             </Address>
                          </AlternateEndUserIdentifier>
                          <AlternateEndUserIdentifier>
                             <PIDFLOEnabled>true</PIDFLOEnabled>
                             <Identifier>alphanumeric characters only, 1 character minimum, 30 characters maximum</Identifier>
                             <CallbackNumber>+19706542333</CallbackNumber>
                             <CallerName>Ethan</CallerName>
                             <PreferredLanguage>en</PreferredLanguage>
                          </AlternateEndUserIdentifier>
                       </AlternateEndUserIdentifiers>
                       <!-- or, instead of the TelephoneNumbers and Alternative identifiers, a list of Additional Addresses can be returned -->
                       <AdditionalAddresses>
                          <Address>
                             <LocationId>Some32CharacterOrLessString</LocationId>
                             <HouseNumber>915</HouseNumber>
                             <HouseSuffix/>
                             <PreDirectional/>
                             <StreetName>Elm</StreetName>
                             <StreetSuffix>Ave</StreetSuffix>
                             <PostDirectional/>
                             <AddressLine2/>
                             <City>Carpinteria</City>
                             <StateCode>CA</StateCode>
                             <Zip>93013</Zip>
                             <PlusFour/>
                             <County/>
                             <Country>United States</Country>
                             <Latitude>35.848359</Latitude>
                             <Longitude>-75.000000</Longitude>
                          </Address>
                       </AdditionalAddresses>
                       <OrderType>e911</OrderType>
                    </E911Order>
              schema:
                $ref: '#/components/schemas/e911OrderFetchResponse'
          description: >
            The descriptive payload for the E911 Orders query provides a broad
            range of information about the E911 Order identified in the URL. 
            Included amongst the information is:

            <ul>

            <li>ErrorList - the errors discovered with codes and
            explanations</li>

            <li>ProcessingStatus(RECEIVED, PROCESSING, COMPLETE, PARTIAL,
            FAILED) - the overall status of the order</li>

            </ul>
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <E911OrderReportResponse>
                       <ResponseStatus>
                          <Description>The resource does not exist</Description>
                       </ResponseStatus>
                    </E911OrderReportResponse>
          description: NOT FOUND - the order id does not exist in the system
      summary: Fetch E911 order status
      tags:
        - E911
  /accounts/{accountId}/e911s/{orderId}/history:
    get:
      description: >-
        Retrieve the history information associated with an order. 

        Please visit <a href='/docs/numbers/guides/e911s'>Guides and
        Tutorials</a>
      operationId: ReadE911OrderHistory
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: E911 order id
          example: 8578086b-f73d-4a0f-bba6-d20399c7de31
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                application/xml:
                  description: application/xml
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <OrderHistoryWrapper>
                       <OrderHistory>
                          <OrderDate>2014-09-04T16:28:11.320Z</OrderDate>
                          <Note>...</Note>
                          <Author>jbm</Author>
                          <Status>RECEIVED</Status>
                       </OrderHistory>
                       <OrderHistory>
                          <OrderDate>2014-09-04T16:28:18.742Z</OrderDate>
                          <Note>...</Note>
                          <Author>jbm</Author>
                          <Status>PROCESSING</Status>
                       </OrderHistory>
                       <OrderHistory>
                          <OrderDate>2014-09-05T19:00:17.968Z</OrderDate>
                          <Note>...</Note>
                          <Author>jbm</Author>
                          <Status>COMPLETE</Status>
                       </OrderHistory>
                    </OrderHistoryWrapper>
              schema:
                $ref: '#/components/schemas/orderHistoryWrapper'
          description: >-
            The history payload is a set of history records, each of which
            contains:
                <table style="text-align: left; width: 80%;" border="1" cellpadding="2" cellspacing="2">
                    <tbody>
                        <tr>
                            <td>OrderModifiedDate</td>
                            <td>The date that the order history event happened</td>
                        </tr>
                        <tr>
                            <td>Status</td>
                            <td>The new state of the E911 order - RECEIVED, PROCESSING, COMPLETE, PARTIAL, FAILED </td>
                        </tr>
                        <tr>
                            <td>Note</td>
                            <td>A Note or additional information included with the state change </td>
                       </tr>
                       <tr>
                            <td>Author</td>
                            <td>The user id that implemented the state change</td>
                        </tr>
                    </tbody>
                </table>
        '404':
          content:
            application/xml:
              examples:
                application/xml:
                  description: application/xml
                  value: null
          description: NOT FOUND - the order id does not exist in the system
      summary: Read E911 order history
      tags:
        - E911
  /accounts/{accountId}/emergencyNotificationEndpointOrders:
    get:
      description: >-
        The GET operation provides a means to query any Emergency Notification
        Endpoint Order associated with the account. This endpoint is for
        querying "orders", not the emergency endpoint to emergency notification
        group associations themselves. 

        <p>The GET operation has no payload, although the accountId URI
        parameter is mandatory and a number of optional query parameters may be
        added. The query parameters are described in this section.
           Results are returned by default in the order of newest to oldest creation date of the Emergency Notification Endpoint Order. This default order is reversed from oldest to newest when the CreatedAfterDate query parameter is included in the query.
           Query parameters act as filters on the data. If more than one query parameter is provided, the results will be the intersection of the results from each query parameter. In other words, the query parameters are logically ANDed.
           Query parameters are appended to the end of the endpoint, separated by a '?' and in the format parameter=value. If you wish to specify more than one query parameter, separate them using an '&' character. The order of query parameters does not matter
      operationId: ListEmergencyNotificationEndpointOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            Include results only for orders having order creation date and time
            after the date and time specified in this parameter. Note that
            inclusion of this parameter reverses the default sort order of the
            results to ascending in date/time (i.e. from oldest to newest). If
            you are looking for the `createdBeforeDate` query parameter, please
            see the `page` parameter
          example: '2020-03-30T14:00:00Z'
          in: query
          name: createdAfterDate
          required: false
          schema:
            format: date-time
            type: string
        - description: >-
            Include results only for orders created by the user specified in
            this parameter
          example: testuser
          in: query
          name: createdByUser
          required: false
          schema:
            type: string
        - description: >-
            Include results only for orders with specified status in this
            parameter
          example: COMPLETED
          in: query
          name: processingStatus
          required: false
          schema:
            enum:
              - FAILED
              - COMPLETED
            type: string
        - description: >-
            Include results only for orders having the specified customer order
            id value
          example: j3jljkd8
          in: query
          name: customerOrderId
          required: false
          schema:
            type: string
        - description: >-
            The Identifier of an Emergency Notification Group that was altered
            by an order
          example: 63865500-0904-46b1-9b4f-7bd237a26363
          in: query
          name: engId
          required: false
          schema:
            type: string
        - description: >-
            A substring that will exist in the emergency notification group
            Description for all returned Emergency Notification Endpoint Orders
          example: 3rd floor
          in: query
          name: engDescription
          required: false
          schema:
            type: string
        - description: >-
            Include results only for orders having EepTns that start with the
            specified digit string
          example: '404'
          in: query
          name: eepTns
          required: false
          schema:
            maxLength: 11
            minLength: 1
            type: number
        - description: >-
            Include results only for orders having EepAeuiIds that start with
            the specified character string
          example: Joe
          in: query
          name: eepAeuiIds
          required: false
          schema:
            maxLength: 30
            minLength: 1
            type: string
        - description: >-
            This represents the position in the data set from which you want
            your output to begin. If this parameter is omitted, results will
            include Emergency Notification Endpoint Orders created on or before
            the current date and time. If a date and time is provided, results
            will include Emergency Notification Endpoint Orders created on or
            before that date and time. Date/time format is
            YYYY-MM-DDTHH:MM:SS.mmmZ, where the Z indicate UTC time, or
            YYYY-MM-DDTHH:MM:SS.mmm-hh:mm, where "-hh:mm" represents the local
            time offset, plus or minus, from UTC time
          example: '2020-03-15T14:00:00.000-04:00'
          in: query
          name: page
          required: false
          schema:
            format: date-time
            type: string
        - description: >-
            The maximum number of Emergency Notification Endpoint Order results
            to include in the response payload
          example: 250
          in: query
          name: size
          required: false
          schema:
            default: 100
            maximum: 500
            minimum: 1
            type: integer
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationEndpointOrderResponse>\n\t<Links>\n\t\t<!-- The 'first' link always gets the most recent results. -->\n\t\t<first> -- link to first page of results -- </first>\n\t\t<!-- If the 'next' link is present, there are more than 'size' results. -->\n\t\t<!-- Use the 'next' link to fetch the next set of results. -->\n\t\t<next> -- link to next page of results -- </next>\n\t</Links>\n\t<EmergencyNotificationEndpointOrders>\n\t\t<EmergencyNotificationEndpointOrder>\n\t\t\t<OrderId>3e9a852e-2d1d-4e2d-84c3-87223a78cb70</OrderId>\n\t\t\t<OrderCreatedDate>2020-01-23T18:34:17.284Z</OrderCreatedDate>\n\t\t\t<CreatedBy>testuser</CreatedBy>\n\t\t\t<ProcessingStatus>COMPLETED</ProcessingStatus>\n\t\t\t<CustomerOrderId>ALG-31233884</CustomerOrderId>\n\t\t\t<EmergencyNotificationEndpointAssociations>\n\t\t\t\t<EmergencyNotificationGroup>\n\t\t\t\t\t<Identifier>3e9a852e-2d1d-4e2d-84c3-04595ba2eb93</Identifier>\n\t\t\t\t</EmergencyNotificationGroup>\n\t\t\t\t<!-- If the order created emergency endpoint to emergency notification group associations -->\n\t\t\t\t<AddedAssociations>\n\t\t\t\t\t<EepToEngAssociations>\n\t\t\t\t\t\t<EepTns>\n\t\t\t\t\t\t\t<TelephoneNumber>+12248838829</TelephoneNumber>\n\t\t\t\t\t\t\t<TelephoneNumber>+14052397735</TelephoneNumber>\n\t\t\t\t\t\t</EepTns>\n\t\t\t\t\t\t<EepAeuiIds>\n\t\t\t\t\t\t\t<Identifier>Fred992834</Identifier>\n\t\t\t\t\t\t\t<Identifier>Bob00359</Identifier>\n\t\t\t\t\t\t</EepAeuiIds>\n\t\t\t\t\t</EepToEngAssociations>\n\t\t\t\t\t<ErrorList/>\n\t\t\t\t</AddedAssociations>\n\t\t\t</EmergencyNotificationEndpointAssociations>\n\t\t</EmergencyNotificationEndpointOrder>\n\t\t<EmergencyNotificationEndpointOrder>\n\t\t\t<!-- Snip -->\n\t\t</EmergencyNotificationEndpointOrder>\n\t\t<EmergencyNotificationEndpointOrder>\n\t\t\t<!-- Snip -->\n\t\t</EmergencyNotificationEndpointOrder>\n\t</EmergencyNotificationEndpointOrders>\n</EmergencyNotificationEndpointOrderResponse>"
              schema:
                $ref: >-
                  #/components/schemas/emergencyNotificationEndpointOrdersResponse
          description: >-
            <p> Successful response </p> <br> If no order matching the query
            exists, GET responds with a 200 and an empty array of orders
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationEndpointOrderResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>A description of what went wrong.</Description>\n\t</ResponseStatus>\n</EmergencyNotificationEndpointOrderResponse>"
          description: >-
            <p>Bad request </p><br> <p><b>Condition:</b> Unrecognized query
            parameter <br> <b>Error Description:</b>Query parameter xxx is not
            recognized. </p> <br> <p><b>Condition:</b>Unsupported value for
            query parameter <br> <b>Error Description:</b>Invalid value xxx for
            query parameter yyy. Supported values are aaa, bbb, etc. </p>
        '403':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationEndpointOrderResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>1001</ErrorCode>\n\t\t<Description>Access Denied</Description>\n\t</ResponseStatus>\n</EmergencyNotificationEndpointOrderResponse>"
          description: >-
            <p>Access Denied <br> <p> <b>Condition:</b>User does not have
            permission to view Endpoint orders, either due to Role/Permission or
            because the account is not configured for Emergency Notification
            Config.<br> <b>Error Description:</b>Access Denied </p></p>
      summary: List emergency notification endpoint orders
      tags:
        - Emergency Notification
    post:
      description: >-
        The POST operation creates a new order to request that an emergency
        endpoint be added to or removed from an emergency notification group.  A
        given order may either add or remove associations, not both in one
        order.<br>
            If the order is successfully created, a 201 response is returned, including an order-id that is used to query for completion of the order. <br>
            The order's ProcessingStatus is set to PROCESSING when the request is successfully created.  When processing of all emergency endpoint to emergency notification group associations has been attempted, the software
            will update the order's processing status to either COMPLETED or FAILED.
      operationId: CreateEmergencyNotificationEndpointOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              Remove order response:
                description: >-
                  The payload for creating an order to remove emergency endpoint
                  associations from an emergency notification group looks like
                  the following
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <EmergencyNotificationEndpointAssociation>
                     <CustomerOrderId>ALG-31233885</CustomerOrderId>
                     <EmergencyNotificationGroup>
                        <Identifier>3e9a852e-2d1d-4e2d-84c3-04595ba2eb93</Identifier>
                     </EmergencyNotificationGroup>
                     <DeletedAssociations>
                        <EepToEngAssociations>
                           <EepTns>
                              <TelephoneNumber>+12248838829</TelephoneNumber>
                              <TelephoneNumber>+14052397735</TelephoneNumber>
                           </EepTns>
                           <EepAeuiIds>
                              <Identifier>Fred992834</Identifier>
                              <Identifier>Bob00359</Identifier>
                           </EepAeuiIds>
                        </EepToEngAssociations>
                     </DeletedAssociations>
                  </EmergencyNotificationEndpointAssociation>
              Simple response:
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationEndpointOrder>\n\t<CustomerOrderId>ALG-31233884</CustomerOrderId>\n\t<EmergencyNotificationEndpointAssociations>\n\t\t<EmergencyNotificationGroup>\n\t\t\t<Identifier>3e9a852e-2d1d-4e2d-84c3-04595ba2eb93</Identifier>\n\t\t</EmergencyNotificationGroup>\n\t\t<AddedAssociations>\n\t\t\t<EepToEngAssociations>\n\t\t\t\t<EepTns>\n\t\t\t\t\t<TelephoneNumber>+12248838829</TelephoneNumber>\n\t\t\t\t\t<TelephoneNumber>+14052397735</TelephoneNumber>\n\t\t\t\t</EepTns>\n\t\t\t\t<EepAeuiIds>\n\t\t\t\t\t<Identifier>Fred992834</Identifier>\n\t\t\t\t\t<Identifier>Bob00359</Identifier>\n\t\t\t\t</EepAeuiIds>\n\t\t\t</EepToEngAssociations>\n\t\t</AddedAssociations>\n\t</EmergencyNotificationEndpointAssociations>\n</EmergencyNotificationEndpointOrder>"
            schema:
              oneOf:
                - $ref: >-
                    #/components/schemas/emergencyNotificationEndpointOrderForAddAssociation
                - $ref: >-
                    #/components/schemas/emergencyNotificationEndpointOrderForRemoveAssociation
      responses:
        '201':
          content:
            application/xml:
              examples:
                add endpoint:
                  description: >-
                    The 201 response payload for creating an order to add
                    emergency endpoint associations to an emergency notification
                    group
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <EmergencyNotificationEndpointOrderResponse>
                       <EmergencyNotificationEndpointOrder>
                          <OrderId>3e9a852e-2d1d-4e2d-84c3-87223a78cb70</OrderId>
                          <OrderCreatedDate>2020-01-23T18:34:17.284Z</OrderCreatedDate>
                          <CreatedBy>testuser</CreatedBy>
                          <ProcessingStatus>COMPLETED</ProcessingStatus>
                          <CustomerOrderId>ALG-31233884</CustomerOrderId>
                          <EmergencyNotificationEndpointAssociations>
                             <EmergencyNotificationGroup>
                                <Identifier>3e9a852e-2d1d-4e2d-84c3-04595ba2eb93</Identifier>
                             </EmergencyNotificationGroup>
                             <!-- If the order created emergency endpoint to emergency notification group associations -->
                             <AddedAssociations>
                                <EepToEngAssociations>
                                   <EepTns>
                                      <TelephoneNumber>+12248838829</TelephoneNumber>
                                      <TelephoneNumber>+14052397735</TelephoneNumber>
                                   </EepTns>
                                   <EepAeuiIds>
                                      <Identifier>Fred992834</Identifier>
                                      <Identifier>Bob00359</Identifier>
                                   </EepAeuiIds>
                                </EepToEngAssociations>
                                <ErrorList/>
                             </AddedAssociations>
                          </EmergencyNotificationEndpointAssociations>
                       </EmergencyNotificationEndpointOrder>
                    </EmergencyNotificationEndpointOrderResponse>
                remove endpoint:
                  description: >-
                    The 201 response payload for creating an order to remove
                    emergency endpoint associations from an emergency
                    notification group
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationEndpointOrderResponse>\n\t<EmergencyNotificationEndpointAssociation>\n\t\t<OrderId>3e9a852e-2d1d-4e2d-84c3-87223a78cb70</OrderId>\n\t\t<OrderCreatedDate>2020-01-23T18:34:17.284Z</OrderCreatedDate>\n\t\t<CreatedBy>testuser</CreatedBy>\n\t\t<ProcessingStatus>PROCESSING</ProcessingStatus>\n\t\t<CustomerOrderId>ALG-31233884</CustomerOrderId>\n\t\t<EmergencyNotificationGroup>\n\t\t\t<Identifier>3e9a852e-2d1d-4e2d-84c3-04595ba2eb93</Identifier>\n\t\t</EmergencyNotificationGroup>\n\t\t<!-- If the order removed emergency endpoint to emergency notification group associations -->\n\t\t<DeletedAssociations>\n\t\t\t<EepToEngAssociations>\n\t\t\t<EepTns>\n\t\t\t\t<TelephoneNumber>+19152877649</TelephoneNumber>\n\t\t\t</EepTns>\n\t\t\t<EepAeuiIds>\n\t\t\t\t<Identifier>Sally88744</Identifier>\n\t\t\t</EepAeuiIds>\n\t\t\t</EepToEngAssociations>\n\t\t<ErrorList/>\n\t\t</DeletedAssociations>\n\t</EmergencyNotificationEndpointAssociation>\n</EmergencyNotificationEndpointOrderResponse>"
              schema:
                $ref: >-
                  #/components/schemas/emergencyNotificationEndpointOrderResponse
          description: >
            <p>Successful response <br> <p> <b>The response payload may include
            the following payload elements in addition to information added in
            the request payload:</b> <br> </p> <table border="1" cellspacing="0"
            cellpadding="0" width="624"> <tbody> <tr> <td valign="top"> <p>
            <strong>Parameter</strong> </p> </td> <td width="351" valign="top">
            <p> <strong>Description</strong> </p> </td> </tr> <tr> <td
            valign="top"> <p> OrderId </p> </td> <td width="351" valign="top">
            <p> A system-assigned unique identifier assigned to this order.  Use
            this order id to fetch the status of the order. </p> </td> </tr>
            <tr> <td valign="top"> <p> OrderCreatedDate </p> </td> <td
            width="351" valign="top"> <p> The UTC date and time at which this
            order was created. </p> </td> </tr> <tr> <td valign="top"> <p>
            CreatedBy </p> </td> <td width="351" valign="top"> <p> The username
            of the user that created this order. </p> </td> </tr> <tr> <td
            valign="top"> <p> ProcessingStatus </p> </td> <td width="351"
            valign="top"> <p>The processing status of this order. Values may
            be:<b></b> PROCESSING, COMPLETED, FAILED.  PROCESSING means that the
            system is still processing the order.  COMPLETED means that the
            order has been successfully completed.  FAILED means that errors
            occurred while processing the order, and that the order did not make
            any changes to the system. </p> </td> </tr> <tr> <td valign="top">
            <p> ErrorList </p> </td> <td width="351" valign="top"> <p>A list,
            possibly empty, of errors affecting emergency notification group
            updates.  The ErrorList will be empty for orders that are
            COMPLETED.  It will be non-empty for orders that FAILED. </p> </td>
            </tr> <tr> <td valign="top"> <p> ErrorList Description </p> </td>
            <td width="351" valign="top"> <p> If an emergency notification group
            operation failed for some reason, this text describes the reason for
            the failure. </p> </td> </tr> </tbody> </table></p>
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationEndpointOrderResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>A description of what went wrong.</Description>\n\t</ResponseStatus>\n</EmergencyNotificationEndpointOrderResponse>"
          description: >-
            <p>Bad request <br> <table border="1" cellspacing="0"
            cellpadding="0" width="724"> <tbody> <tr> <td valign="top"> <p>
            <strong>Condition</strong> </p> </td> <td width="451" valign="top">
            <p> <strong>Error Description</strong> </p> </td> </tr> <tr> <td
            valign="top"> <p> Order payload does not indicate whether the
            endpoints are being added or deleted </p> </td> <td width="451"
            valign="top"> <p> Order payload must include one of
            "AddedAssociations" or "DeletedAssociations". </p> </td> </tr> <tr>
            <td valign="top"> <p> Attempt to both add and delete endpoint
            associations in one request </p> </td> <td width="451" valign="top">
            <p> Order payload must include one of "AddedAssociations" or
            "DeletedAssociations", but not both in one request. </p> </td> </tr>
            <tr> <td valign="top"> <p> Order payload does not specify any
            endpoints to be added </p> </td> <td width="451" valign="top"> <p>
            Order payload must include at least one Emergency Enpoint value.
            </p> </td> </tr> <tr> <td valign="top"> <p> Too many emergency
            endpoints listed </p> </td> <td width="451" valign="top"> <p> Please
            limit the total number of emergency endpoints to 5000 per request.
            </p> </td> </tr> </tbody> </table></p>
        '403':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationEndpointOrderResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>1001</ErrorCode>\n\t\t<Description>Access Denied</Description>\n\t</ResponseStatus>\n</EmergencyNotificationEndpointOrderResponse>"
          description: >-
            <p>Access Denied <br> <p> <b>Condition:</b> User does not have
            permission to configure associations between emergency endpoints and
            an emergency notification group, either due to Role/Permission or
            because the account is not configured for Emergency Notification
            Config. <br> <b>Error Description:</b> Access Denied </p></p>
        '409':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationEndpointOrderResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>A description of what went wrong.</Description>\n\t</ResponseStatus>\n</EmergencyNotificationEndpointOrderResponse>"
          description: >-
            <p>Conflict <br> <table border="1" cellspacing="0" cellpadding="0"
            width="724"> <tbody> <tr> <td valign="top"> <p>
            <strong>Condition</strong> </p> </td> <td width="451" valign="top">
            <p> <strong>Error Description</strong> </p> </td> </tr> <tr> <td
            valign="top"> <p> Invalid emergency notification group identifier
            </p> </td> <td width="451" valign="top"> <p> Emergency Notification
            Group Identifier xxx does not exist., where xxx is replaced by the
            emergency notification group identifier supplied in the request. 
            Note:<b></b> This error can be used also for the case where the
            emergency notification group ID exists, but not for this Iris
            account. </p> </td> </tr> <tr> <td valign="top"> <p> Attempt to add
            invalid emergency endpoint identifier </p> </td> <td width="451"
            valign="top"> <p> Emergency Endpoint Identifier being added does not
            exist.  Note:<b></b> This error can also be used for the case where
            the emergency endpoint ID exists, but not for this Iris account.
            </p> </td> </tr> <tr> <td valign="top"> <p> Attempt to remove
            invalid emergency endpoint identifier, for the case where the
            emergency endpoint does not exist for the specified Iris account
            </p> </td> <td width="451" valign="top"> <p>Warning:<b></b>
            Emergency Endpoint Identifier specified for removal does not exist.
            </p> </td> </tr> <tr> <td valign="top"> <p> Attempt to remove a
            valid emergency endpoint identifier that is associated with an
            emergency notification group other than the one specified in the
            request </p> </td> <td width="451" valign="top"> <p> Error:<b></b>
            Emergency Endpoint Identifier specified for removal is not
            associated with Emergency Notification Group xxx., where xxx is
            replaced by the emergency notification group identifier. </p> </td>
            </tr> <tr> <td valign="top"> <p> Attempt to add an endpoint, but
            specified emergency endpoint is already associated with another
            emergency notification group                                </p>
            </td> <td width="451" valign="top"> <p> The Emergency Endpoint with
            identifier xxx is already associated with Emergency Notification
            Group with identifier yyy., where xxx is replaced with the TN or
            AEUI supplied in the request, and yyy is replaced by the emergency
            notification group ID of the emergency notification group that the
            supplied endpoint ID is associated with. </p> </td> </tr> </tbody>
            </table></p>
      summary: Create emergency notification endpoint order
      tags:
        - Emergency Notification
  /accounts/{accountId}/emergencyNotificationEndpointOrders/{orderId}:
    get:
      description: >-
        This endpoint is used to fetch the status of an emergency notification
        endpoint order, using the order-id assigned when the order was created.
        <br>

        If the order is still being processed, the ProcessingStatus will be
        PROCESSING.  If the order has completed successfully, the
        ProcessingStatus will be COMPLETED.  Otherwise the ProcessingStatus will
        be FAILED.  If the ProcessingStatus is FAILED, look for the ErrorList in
        the payload to see reasons for the failure.

        URI parameters:</p>


        <ul>
          <li>
          <b>accountId</b> - the account id of the account to which the emergency notification endpoint order belongs.
          </li>
          <li>
          <b>orderId</b> - the order-id assigned to the emergency notification endpoint order when it was created.
          </li>
        </ul>
      operationId: RetrieveEmergencyNotificationEndpointOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          example: 28ef2b1a-dd03-4641-a362-c6d238c3dfc0
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationEndpointOrderResponse>\n\t<EmergencyNotificationEndpointOrder>\n\t\t<OrderId>3e9a852e-2d1d-4e2d-84c3-87223a78cb70</OrderId>\n\t\t<OrderCreatedDate>2020-01-23T18:34:17.284Z</OrderCreatedDate>\n\t\t<CreatedBy>testuser</CreatedBy>\n\t\t<ProcessingStatus>COMPLETED</ProcessingStatus>\n\t\t<CustomerOrderId>ALG-31233884</CustomerOrderId>\n\t\t<EmergencyNotificationEndpointAssociations>\n\t\t\t<EmergencyNotificationGroup>\n\t\t\t\t<Identifier>3e9a852e-2d1d-4e2d-84c3-04595ba2eb93</Identifier>\n\t\t\t</EmergencyNotificationGroup>\n\t\t\t<AddedAssociations>\n\t\t\t\t<EepToEngAssociations>\n\t\t\t\t\t<EepTns>\n\t\t\t\t\t\t<TelephoneNumber>+12248838829</TelephoneNumber>\n\t\t\t\t\t\t<TelephoneNumber>+14052397735</TelephoneNumber>\n\t\t\t\t\t</EepTns>\n\t\t\t\t\t<EepAeuiIds>\n\t\t\t\t\t\t<Identifier>Fred992834</Identifier>\n\t\t\t\t\t\t<Identifier>Bob00359</Identifier>\n\t\t\t\t\t</EepAeuiIds>\n\t\t\t\t</EepToEngAssociations>\n\t\t\t\t<ErrorList/>\n\t\t\t</AddedAssociations>\n\t\t</EmergencyNotificationEndpointAssociations>\n\t</EmergencyNotificationEndpointOrder>\n</EmergencyNotificationEndpointOrderResponse>"
              schema:
                $ref: >-
                  #/components/schemas/emergencyNotificationEndpointOrderResponse
          description: Successful response
        '403':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationEndpointOrderResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>1001</ErrorCode>\n\t\t<Description>Access Denied </Description>\n\t</ResponseStatus>\n</EmergencyNotificationEndpointOrderResponse>"
          description: >-
            <p>Access Denied <br> <p> <b>Condition:</b> User does not have
            permission to view emergency notification endpoint orders, either
            due to Role/Permission or because the account is not configured for
            Emergency Notification Config. <br> <b>Error Description:</b> Access
            Denied </p></p>
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationEndpointOrderResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>The resource does not exist</Description>\n\t</ResponseStatus>\n</EmergencyNotificationEndpointOrderResponse>"
          description: >-
            <p>The resource does not exist </p><br> <p><b>Condition:</b>
            Specified emergency notification endpoint order id does not exist
            for this account <br> <b>Error Description:</b> The resource does
            not exist </p>
      summary: Retrieve emergency notification endpoint order
      tags:
        - Emergency Notification
  /accounts/{accountId}/emergencyNotificationGroupOrders:
    get:
      description: >-
        The GET operation provides a means of fetching all of the emergency
        notification group order history for an account
      operationId: ListEmergencyNotificationGroupOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            Include results only for orders having order creation date and time
            after the date and time specified in this parameter. Note that
            inclusion of this parameter reverses the default sort order of the
            results to ascending in date/time (i.e. from oldest to newest). If
            you are looking for the `createdBeforeDate` query parameter, please
            see the Page parameter
          example: '2020-03-15T14:00:00.000-04:00'
          in: query
          name: createdAfterDate
          required: false
          schema:
            format: date-time
            type: string
        - description: >-
            Include results only for orders created by the user specified in
            this parameter
          example: testuser
          in: query
          name: createdByUser
          required: false
          schema:
            type: string
        - description: >-
            Include results only for orders with specified status in this
            parameter
          example: COMPLETED
          in: query
          name: processingStatus
          required: false
          schema:
            enum:
              - FAILED
              - COMPLETED
            type: string
        - description: >-
            Include results only for orders having the specified customer order
            id value
          example: j3jljkd8
          in: query
          name: customerOrderId
          required: false
          schema:
            type: string
        - description: >-
            The Identifier of an Emergency Notification Group that was altered
            by an order
          example: 63865500-0904-46b1-9b4f-7bd237a26363
          in: query
          name: engId
          required: false
          schema:
            type: string
        - description: >-
            A substring that will exist in the emergency notification group
            Description for all returned Emergency Notification Endpoint Orders
          example: 3rd floor
          in: query
          name: engDescription
          required: false
          schema:
            type: string
        - description: >-
            Include results only for orders having EepTns that start with the
            specified digit string
          example: '404'
          in: query
          name: eepTns
          required: false
          schema:
            maxLength: 11
            minLength: 1
            type: number
        - description: >-
            Include results only for orders having EepAeuiIds that start with
            the specified character string
          example: Joe
          in: query
          name: eepAeuiIds
          required: false
          schema:
            maxLength: 30
            minLength: 1
            type: string
        - description: >-
            This represents the position in the data set from which you want
            your output to begin. If this parameter is omitted, results will
            include Emergency Notification Endpoint Orders created on or before
            the current date and time. If a date and time is provided, results
            will include Emergency Notification Endpoint Orders created on or
            before that date and time. Date/time format is
            YYYY-MM-DDTHH:MM:SS.mmmZ, where the Z indicate UTC time, or
            YYYY-MM-DDTHH:MM:SS.mmm-hh:mm, where "-hh:mm" represents the local
            time offset, plus or minus, from UTC time
          example: '2020-03-15T14:00:00.000-04:00'
          in: query
          name: page
          required: false
          schema:
            format: date-time
            type: string
        - description: >-
            The maximum number of Emergency Notification Endpoint Order results
            to include in the response payload
          example: 250
          in: query
          name: size
          required: false
          schema:
            default: 100
            maximum: 500
            minimum: 1
            type: integer
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrderResponse>\n\t<Links>\n\t\t<first>Link=&lt;https://api.bandwidth.com/api/accounts/12346371/emergencyNotificationGroupOrders&gt;;rel=\"first\";</first>\n\t</Links>\n\t<EmergencyNotificationGroupOrders>\n\t\t<EmergencyNotificationGroupOrder>\n\t\t\t<OrderId>092815dc-9ced-4d67-a070-a80eb243b914</OrderId>\n\t\t\t<OrderCreatedDate>2020-04-29T15:40:01.449Z</OrderCreatedDate>\n\t\t\t<CreatedBy>systemUser</CreatedBy>\n\t\t\t<ProcessingStatus>COMPLETED</ProcessingStatus>\n\t\t\t<CustomerOrderId>QTWeKMys</CustomerOrderId>\n\t\t\t<AddedEmergencyNotificationGroup>\n\t\t\t\t<Identifier>6daa55e1-e499-4cf0-9f3d-9524215f1bee</Identifier>\n\t\t\t\t<Description>enr test description 3</Description>\n\t\t\t\t<AddedEmergencyNotificationRecipients>\n\t\t\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t\t\t<Identifier>44f203915ca249b7b69bbc084af09a</Identifier>\n\t\t\t\t\t\t<Description>TestDesc SEHsbDMM</Description>\n\t\t\t\t\t\t<Type>SMS</Type>\n\t\t\t\t\t\t<Sms>\n\t\t\t\t\t\t\t<TelephoneNumber>+15638765448</TelephoneNumber>\n\t\t\t\t\t\t</Sms>\n\t\t\t\t\t</EmergencyNotificationRecipient>\n\t\t\t\t</AddedEmergencyNotificationRecipients>\n\t\t\t</AddedEmergencyNotificationGroup>\n\t\t</EmergencyNotificationGroupOrder>\n\t<EmergencyNotificationGroupOrder>\n\t\t<OrderId>89b4e0a1-2789-43fb-b948-38d368159142</OrderId>\n\t\t<OrderCreatedDate>2020-04-29T15:39:59.325Z</OrderCreatedDate>\n\t\t<CreatedBy>systemUser</CreatedBy>\n\t\t<ProcessingStatus>COMPLETED</ProcessingStatus>\n\t\t<CustomerOrderId>SDWupQpf</CustomerOrderId>\n\t\t<AddedEmergencyNotificationGroup>\n\t\t\t<Identifier>b49fa543-5bb3-4b9d-9213-96c8b63e77f5</Identifier>\n\t\t\t<Description>enr test description 2</Description>\n\t\t\t<AddedEmergencyNotificationRecipients>\n\t\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t\t<Identifier>c719e060a6ba4212a2c0642b87a784</Identifier>\n\t\t\t\t\t\t<Description>TestDesc zscxcAGG</Description>\n\t\t\t\t\t\t<Type>SMS</Type>\n\t\t\t\t\t\t<Sms>\n\t\t\t\t\t\t\t<TelephoneNumber>+15678765448</TelephoneNumber>\n\t\t\t\t\t</Sms>\n\t\t\t\t</EmergencyNotificationRecipient>\n\t\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t\t<Identifier>93ad72dfe59c4992be6f8aa625466d</Identifier>\n\t\t\t\t\t<Description>TestDesc RTflsKBz</Description>\n\t\t\t\t\t<Type>TTS</Type>\n\t\t\t\t\t<Tts>\n\t\t\t\t\t\t<TelephoneNumber>+17678765449</TelephoneNumber>\n\t\t\t\t\t</Tts>\n\t\t\t\t</EmergencyNotificationRecipient>\n\t\t\t</AddedEmergencyNotificationRecipients>\n\t\t</AddedEmergencyNotificationGroup>\n\t</EmergencyNotificationGroupOrder>\n\t<EmergencyNotificationGroupOrder>\n\t\t<OrderId>247d1425-4247-4b27-99d8-83ce30038b14</OrderId>\n\t\t\t<OrderCreatedDate>2020-04-29T15:39:57.058Z</OrderCreatedDate>\n\t\t\t<CreatedBy>systemUser</CreatedBy>\n\t\t\t<ProcessingStatus>COMPLETED</ProcessingStatus>\n\t\t\t<CustomerOrderId>vgshuNMB</CustomerOrderId>\n\t\t\t<AddedEmergencyNotificationGroup>\n\t\t\t\t<Identifier>69a3d588-f314-42ca-8726-faa824bdf4be</Identifier>\n\t\t\t\t<Description>eng test description</Description>\n\t\t\t\t<AddedEmergencyNotificationRecipients>\n\t\t\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t\t\t<Identifier>aab78f87074940f1aaaf1c9658be4b</Identifier>\n\t\t\t\t\t\t<Description>enr test description</Description>\n\t\t\t\t\t\t<Type>EMAIL</Type>\n\t\t\t\t\t\t<EmailAddress>testEmail@gmail.com</EmailAddress>\n\t\t\t\t\t</EmergencyNotificationRecipient>\n\t\t\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t\t\t<Identifier>852e9eee161b4da6823c91173b05c4</Identifier>\n\t\t\t\t\t\t<Description>TestDesc WkHqpnNH</Description>\n\t\t\t\t\t\t<Type>TTS</Type>\n\t\t\t\t\t\t<Tts>\n\t\t\t\t\t\t\t<TelephoneNumber>+15678765449</TelephoneNumber>\n\t\t\t\t\t\t</Tts>\n\t\t\t\t\t</EmergencyNotificationRecipient>\n\t\t\t\t</AddedEmergencyNotificationRecipients>\n\t\t\t</AddedEmergencyNotificationGroup>\n\t\t</EmergencyNotificationGroupOrder>\n\t</EmergencyNotificationGroupOrders>\n</EmergencyNotificationGroupOrderResponse>"
              schema:
                $ref: '#/components/schemas/emergencyNotificationGroupOrdersResponse'
          description: >-
            <p>Successful response </p> <br> The "Links" element includes two
            links.  The link called "first" is the link to the first set of
            results for the query that was submitted. If there are more than
            "Size" results, a link called "next" is included to help you
            retrieve the next set of results up to "Size" elements. <br> If the
            results of the query, filtered by the query parameters, do not
            return any results, the payload will contain empty tag
            "EmergencyNotificationGroupOrders"
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrderResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>A description of what went wrong.</Description>\n\t</ResponseStatus>\n</EmergencyNotificationGroupOrderResponse>"
          description: >-
            <p>Bad request</p> <br> <p><b>Condition:</b> Unrecognized query
            parameter <br> <b>Error Description:</b>Query parameter xxx is not
            recognized. </p> <br> <p><b>Condition:</b>Unsupported value for
            query parameter <br> <b>Error Description:</b>Invalid value xxx for
            query parameter yyy. Supported values are aaa, bbb, etc. </p>
        '403':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrderResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>1001</ErrorCode>\n\t\t<Description>Access Denied</Description>\n\t</ResponseStatus>\n</EmergencyNotificationGroupOrderResponse>"
          description: >-
            <p>Access Denied <br> <p> <b>Condition:</b>User does not have
            permission to view emergency notification group orders, either due
            to Role/Permission or because the account is not configured for
            Emergency Notification Config.<br> <b>Error Description:</b>Access
            Denied </p></p>
      summary: List emergency notification group orders
      tags:
        - Emergency Notification
    post:
      description: >-
        The POST operation is used to create an order to create, update, or
        delete an emergency notification group.
      operationId: CreateEmergencyNotificationGroupOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              Adding recipients:
                description: >-
                  Updating an emergency notification group by adding emergency
                  notification recipients
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrder>\n\t<ModifiedEmergencyNotificationGroup>\n\t\t<Identifier>a6d00a2d-94ee-4ecb-9bd8-7c2dde258863</Identifier>\n\t\t<AddedEmergencyNotificationRecipients>\n\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t<Identifier>d81dcc9526d54cad9dbf076c4e6461</Identifier>\n\t\t\t</EmergencyNotificationRecipient>\n\t\t</AddedEmergencyNotificationRecipients>\n\t</ModifiedEmergencyNotificationGroup>\n</EmergencyNotificationGroupOrder>"
              Deleting group:
                description: Deleting an emergency notification group
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrder>\n\t<CustomerOrderId>JvvEOKOP</CustomerOrderId>\n\t<DeletedEmergencyNotificationGroup>\n\t\t<Identifier>52897b97-3592-43fe-aa3f-857cf96671ee</Identifier>\n\t</DeletedEmergencyNotificationGroup>\n</EmergencyNotificationGroupOrder>"
              Removing recipients:
                description: >-
                  Updating an emergency notification group by removing emergency
                  notification recipients
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrder>\n\t<ModifiedEmergencyNotificationGroup>\n\t\t<Identifier>a97149dc-586c-419d-a054-6b3d352ea8af</Identifier>\n\t\t<DeletedEmergencyNotificationRecipients>\n\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t<Identifier>ebce6adfb6e94a8a80bc16841b4697</Identifier>\n\t\t\t</EmergencyNotificationRecipient>\n\t\t</DeletedEmergencyNotificationRecipients>\n\t</ModifiedEmergencyNotificationGroup>\n</EmergencyNotificationGroupOrder>"
              Simple response:
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrder>\n\t<CustomerOrderId>UbOxhMnp</CustomerOrderId>\n\t<AddedEmergencyNotificationGroup>\n\t\t<Description>JgHzUzIchD</Description>\n\t\t<AddedEmergencyNotificationRecipients>\n\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t<Identifier>c7f74671edd8410d9a4c0f8e985e0a</Identifier>\n\t\t\t</EmergencyNotificationRecipient>\n\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t<Identifier>74ac30535b414d29bc36d50572f553</Identifier>\n\t\t\t</EmergencyNotificationRecipient>\n\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t<Identifier>b910df3245ce4192aee052f583259f</Identifier>\n\t\t\t</EmergencyNotificationRecipient>\n\t\t</AddedEmergencyNotificationRecipients>\n\t</AddedEmergencyNotificationGroup>\n</EmergencyNotificationGroupOrder>"
              Updating description:
                description: >-
                  Updating an emergency notification group by changing its
                  description
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrder>\n\t<ModifiedEmergencyNotificationGroup>\n\t\t<Identifier>38ba2379-b4e6-452b-a350-1fa524b6f75a</Identifier>\n\t\t<Description>new Desc</Description>\n\t</ModifiedEmergencyNotificationGroup>\n</EmergencyNotificationGroupOrder>"
            schema:
              oneOf:
                - $ref: >-
                    #/components/schemas/emergencyNotificationGroupOrderForAddGroup
                - $ref: >-
                    #/components/schemas/emergencyNotificationGroupOrderForDeleteGroup
                - $ref: >-
                    #/components/schemas/emergencyNotificationGroupOrderForUpdateGroup
                - $ref: >-
                    #/components/schemas/emergencyNotificationGroupOrderForUpdateGroupByAddingRecipient
                - $ref: >-
                    #/components/schemas/emergencyNotificationGroupOrderForUpdateGroupByRemovingRecipient
      responses:
        '201':
          content:
            application/xml:
              examples:
                201 for adding recipients:
                  description: >-
                    A sample 201 response to an order payload for updating an
                    emergency notification group by adding emergency
                    notification recipients looks like the following
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <EmergencyNotificationGroupOrderResponse>
                       <OrderId>31e4be80-e816-432e-a554-1219ed4fc5e9</OrderId>
                       <OrderCreatedDate>2020-04-29T15:34:32.799</OrderCreatedDate>
                       <CreatedBy>systemUser</CreatedBy>
                       <ProcessingStatus>PROCESSING</ProcessingStatus>
                       <ModifiedEmergencyNotificationGroup>
                          <Identifier>5da0859b-2af8-42a3-85dd-dad4ba5f7503</Identifier>
                          <Description>oXHGGVKwmd</Description>
                          <AddedEmergencyNotificationRecipients>
                             <EmergencyNotificationRecipient>
                                <Identifier>f2eaa7be771241af9b031584875a60</Identifier>
                             </EmergencyNotificationRecipient>
                          </AddedEmergencyNotificationRecipients>
                       </ModifiedEmergencyNotificationGroup>
                    </EmergencyNotificationGroupOrderResponse>
                201 for delete group:
                  description: >-
                    A sample 201 response to an order payload for deleting an
                    emergency notification group looks like the following
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrderResponse>\n\t<OrderId>7d424c13-f9b1-4fb5-b7c1-f9a9de5847ed</OrderId>\n\t<OrderCreatedDate>2020-04-29T15:27:16.358</OrderCreatedDate>\n\t<CreatedBy>systemUser</CreatedBy>\n\t<ProcessingStatus>PROCESSING</ProcessingStatus>\n\t<CustomerOrderId>JvvEOKOP</CustomerOrderId>\n\t<DeletedEmergencyNotificationGroup>\n\t\t<Identifier>52897b97-3592-43fe-aa3f-857cf96671ee</Identifier>\n\t</DeletedEmergencyNotificationGroup>\n</EmergencyNotificationGroupOrderResponse>"
                201 for removing recipients:
                  description: >-
                    A sample 201 response to an order payload for updating an
                    emergency notification group by removing emergency
                    notification recipients looks like the following
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrderResponse>\n\t<OrderId>31e4be80-e816-432e-a554-1219ed4fc5e9</OrderId>\n\t<OrderCreatedDate>2020-04-29T15:34:32.799</OrderCreatedDate>\n\t<CreatedBy>systemUser</CreatedBy>\n\t<ProcessingStatus>PROCESSING</ProcessingStatus>\n\t<ModifiedEmergencyNotificationGroup>\n\t\t<Identifier>5da0859b-2af8-42a3-85dd-dad4ba5f7503</Identifier>\n\t\t<Description>oXHGGVKwmd</Description>\n\t\t<DeletedEmergencyNotificationRecipients>\n\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t<Identifier>f2eaa7be771241af9b031584875a60</Identifier>\n\t\t\t</EmergencyNotificationRecipient>\n\t\t</DeletedEmergencyNotificationRecipients>\n\t</ModifiedEmergencyNotificationGroup>\n</EmergencyNotificationGroupOrderResponse>"
                201 for updated description:
                  description: >-
                    A sample 201 response to an order payload for updating an
                    emergency notification group description looks like the
                    following
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <EmergencyNotificationGroupOrderResponse>
                       <OrderId>3e9a852e-2d1d-4e2d-84c3-87223a78cb70</OrderId>
                       <OrderCreatedDate>2020-01-23T18:34:17.284Z</OrderCreatedDate>
                       <CreatedBy>testuser</CreatedBy>
                       <ProcessingStatus>PROCESSING</ProcessingStatus>
                       <CustomerOrderId>ALG-31233884</CustomerOrderId>
                       <UpdatedEmergencyNotificationGroup>
                          <Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>
                          <Description>This is an updated description of the emergency notification Group.</Description>
                       </UpdatedEmergencyNotificationGroup>
                    </EmergencyNotificationGroupOrderResponse>
                Simple response:
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrderResponse>\n<OrderId>900b3646-18df-4626-b237-3a8de648ebf6</OrderId>\n\t<OrderCreatedDate>2020-04-29T15:27:16.151</OrderCreatedDate>\n\t<CreatedBy>systemUser</CreatedBy>\n\t<ProcessingStatus>PROCESSING</ProcessingStatus>\n\t<CustomerOrderId>UbOxhMnp</CustomerOrderId>\n\t<AddedEmergencyNotificationGroup>\n\t\t<Identifier>52897b97-3592-43fe-aa3f-857cf96671ee</Identifier>\n\t\t<Description>JgHzUzIchD</Description>\n\t\t<AddedEmergencyNotificationRecipients>\n\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t<Identifier>c7f74671edd8410d9a4c0f8e985e0a</Identifier>\n\t\t\t</EmergencyNotificationRecipient>\n\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t<Identifier>74ac30535b414d29bc36d50572f553</Identifier>\n\t\t\t</EmergencyNotificationRecipient>\n\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t<Identifier>b910df3245ce4192aee052f583259f</Identifier>\n\t\t\t</EmergencyNotificationRecipient>\n\t\t</AddedEmergencyNotificationRecipients>\n\t</AddedEmergencyNotificationGroup>\n</EmergencyNotificationGroupOrderResponse>"
              schema:
                $ref: '#/components/schemas/emergencyNotificationGroupOrderResponse'
          description: >-
            <p>Successfull response </p> <br> <p> <b>Emergency notification
            group order response elements:</b> <br> </p> <table border="1"
            cellspacing="0" cellpadding="0" width="624"> <tbody> <tr> <td
            valign="top"> <p> <strong>Parameter</strong> </p> </td> <td
            width="351" valign="top"> <p> <strong>Description</strong> </p>
            </td> </tr> <tr> <td valign="top"> <p> OrderId </p> </td> <td
            width="351" valign="top"> <p> A system-assigned unique identifier
            assigned to this order.  Use this order id to fetch the status of
            the order. </p> </td> </tr> <tr> <td valign="top"> <p>
            OrderCreatedDate </p> </td> <td width="351" valign="top"> <p> The
            UTC date and time at which this order was created. </p> </td> </tr>
            <tr> <td valign="top"> <p> CreatedBy </p> </td> <td width="351"
            valign="top"> <p> The username of the user that created this order.
            </p> </td> </tr> <tr> <td valign="top"> <p> ProcessingStatus </p>
            </td> <td width="351" valign="top"> <p>The processing status of this
            order. Values may be:<b></b> PROCESSING, COMPLETED, FAILED. 
            PROCESSING means that the system is still processing the order. 
            COMPLETED means that the order has been successfully completed. 
            FAILED means that errors occurred while processing the order, and
            that the order did not make any changes to the system. </p> </td>
            </tr> <tr> <td valign="top"> <p> Identifier </p> </td> <td
            width="351" valign="top"> <p>A system-assigned unique identifier for
            the Emergency Notification Group.  This field is not present in the
            request, but mandatory in the success response.  This identifier can
            be used as a key to fetch the emergency notification group instance
            later. </p> </td> </tr> <tr> <td valign="top"> <p> ErrorList </p>
            </td> <td width="351" valign="top"> <p>A list, possibly empty, of
            errors affecting emergency notification group updates.  The
            ErrorList will be empty for orders that are COMPLETED.  It will be
            non-empty for orders that FAILED. </p> </td> </tr> <tr> <td
            valign="top"> <p> ErrorList Description </p> </td> <td width="351"
            valign="top"> <p> If an emergency notification group operation
            failed for some reason, this text describes the reason for the
            failure. </p> </td> </tr> </tbody> </table>
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrderResponse>\n<ResponseStatus>\n\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>A description of what went wrong.</Description>\n\t</ResponseStatus>\n</EmergencyNotificationGroupOrderResponse>"
          description: >-
            <p>Bad request <br> <table border="1" cellspacing="0"
            cellpadding="0" width="724"> <tbody> <tr> <td valign="top"> <p>
            <strong>Condition</strong> </p> </td> <td width="451" valign="top">
            <p> <strong>Error Description</strong> </p> </td> </tr> <tr> <td
            valign="top"> <p> Order payload does not indicate whether the
            emergency notification group is being created, modified, or deleted
            </p> </td> <td width="451" valign="top"> <p> Order payload must
            include one of "AddedEmergencyNotificationGroup",
            "DeletedEmergencyNotificationGroup", or
            "ModifiedEmergencyNotificationGroup". </p> </td> </tr> <tr> <td
            valign="top"> <p> Order is creating a new emergency notification
            group, but does not indicate that emergency notification recipients
            are being added </p> </td> <td width="451" valign="top"> <p> When
            creating an emergency notification group,
            "AddedEmergencyNotificationRecipients" must be included to indicate
            that emergency notification recipients are being added. </p> </td>
            </tr> <tr> <td valign="top"> <p> Missing or empty emergency
            notification group description </p> </td> <td width="451"
            valign="top"> <p> Emergency Notification Group Description must be
            present and non-empty. </p> </td> </tr> <tr> <td valign="top"> <p>
            No emergency notification recipients listed </p> </td> <td
            width="451" valign="top"> <p> An Emergency Notification Group must
            have 1, 2, or 3 Emergency Notification Recipients.  Note:<b></b>
            This can be used for missing list or empty list. </p> </td> </tr>
            <tr> <td valign="top"> <p> Too many emergency notification
            recipients listed </p> </td> <td width="451" valign="top"> <p> An
            Emergency Notification Group must have 1, 2, or 3 Emergency
            Notification Recipients. </p> </td> </tr> <tr> <td valign="top"> <p>
            Order does not include an emergency notification group </p> </td>
            <td width="451" valign="top"> <p> </p> </td> </tr> <tr> <td
            valign="top"> <p> The specified emergency notification group does
            not exist </p> </td> <td width="451" valign="top"> <p> ENG
            Identifier xxx does not exist., where xxx is replaced by the
            emergency notification group identifier supplied in the request.
            </p> </td> </tr> <tr> <td valign="top"> <p> The specified emergency
            notification recipient identifier does not exist </p> </td> <td
            width="451" valign="top"> <p> ENR Identifier xxx does not exist.,
            where xxx is replaced by the emergency notification recipient
            identifier supplied in the request. </p> </td> </tr> <tr> <td
            valign="top"> <p> Attempt to update an emergency notification group,
            but none of "Description", "AddedEmergencyNotificationRecipients",
            or "DeletedEmergencyNotificationRecipients" included </p> </td> <td
            width="451" valign="top"> <p> Update of ENG did not specify any
            of:<b></b> new description, added ENRs, or deleted ENRs. </p> </td>
            </tr> <tr> <td valign="top"> <p> Attempt to update an emergency
            notification group with both "AddedEmergencyNotificationRecipients"
            and "DeletedEmergencyNotificationRecipients" included </p> </td> <td
            width="451" valign="top"> <p> Update of ENG supports added ENRs or
            deleted ENRs, but not both. </p> </td> </tr> </tbody> </table></p>
        '403':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrderResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>1001</ErrorCode>\n\t\t<Description>Access Denied</Description>\n\t</ResponseStatus>\n</EmergencyNotificationGroupOrderResponse>"
          description: >-
            <p>Access Denied <br> <p> <b>Condition:</b> User does not have
            permission to configure emergency notification group orders, either
            due to Role/Permission or because the account is not configured for
            Emergency Notification Config. <br> <b>Error Description:</b> Access
            Denied </p></p>
        '409':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrderResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>A description of what went wrong.</Description>\n\t</ResponseStatus>\n</EmergencyNotificationGroupOrderResponse>"
          description: >-
            <p>Conflict <br> <table border="1" cellspacing="0" cellpadding="0"
            width="724"> <tbody> <tr> <td valign="top"> <p>
            <strong>Condition</strong> </p> </td> <td width="451" valign="top">
            <p> <strong>Error Description</strong> </p> </td> </tr> <tr> <td
            valign="top"> <p> Invalid emergency notification recipient
            identifier </p> </td> <td width="451" valign="top"> <p> Emergency
            Notification Recipient Identifier xxx does not exist., where xxx is
            replaced by the emergency notification recipient identifier supplied
            in the request.  Note:<b></b> This error can be used also for the
            case where the emergency notification recipient ID exists, but not
            for this Iris account. </p> </td> </tr> <tr> <td valign="top"> <p>
            Specified emergency notification recipient is already associated
            with another emergency notification group </p> </td> <td width="451"
            valign="top"> <p> The Emergency Notification Recipient with
            identifier xxx is already associated with Emergency Notification
            Group with identifier yyy., where xxx is replaced with the emergency
            notification recipient ID supplied in the request, and yyy is
            replaced by the emergency notification group ID of the emergency
            notification group that the supplied emergency notification
            recipient ID is associated with.  Note:<b></b> The emergency
            notification group must also belong to this account. </p> </td>
            </tr> <tr> <td valign="top"> <p> Attempt to remove an emergency
            notification group that has emergency endpoints associated with it
            </p> </td> <td width="451" valign="top"> <p> ENG xxx cannot be
            removed until emergency endpoint associations are removed., where
            xxx is replaced by the emergency notification group identifier
            supplied in the request. </p> </td> </tr> <tr> <td valign="top"> <p>
            Removal of ENRs would leave the emergency notification group with no
            emergency notification recipient associations </p> </td> <td
            width="451" valign="top"> <p> An Emergency Notification Group must
            have 1, 2, or 3 Emergency Notification Recipients. </p> </td> </tr>
            <tr> <td valign="top"> <p> Addition of emergency notification
            recipients would leave the emergency notification group with too
            many emergency notification recipient associations </p> </td> <td
            width="451" valign="top"> <p> An Emergency Notification Group must
            have 1, 2, or 3 Emergency Notification Recipients. </p> </td> </tr>
            </tbody> </table></p>
      summary: Create emergency notification group order
      tags:
        - Emergency Notification
  /accounts/{accountId}/emergencyNotificationGroupOrders/{orderId}:
    get:
      description: >-
        This endpoint is used to query the status of a specified emergency
        notification group order, using the order-id that was assigned in the
        201 response to the order creation. <br>

        When you query an order-id, look for the "ProcessingStatus" element in
        the 200 response.  Values may be: PROCESSING, COMPLETED, or FAILED. 
        PROCESSING means that the system is still processing the order.  Please
        wait a couple of minutes and fetch the order results again.  COMPLETED
        means that the order has been successfully completed.  FAILED means that
        errors occurred while processing the order, and that the order did not
        make any changes to the system.  Look for the "ErrorList" element to see
        what type of error occurred. <br>

        URI parameters:</p>


        <ul>
          <li>
          <b>accountId</b> - the account id of the account to which the emergency notification group order belongs.
          </li>
          <li>
          <b>orderId</b> - the order identifier assigned to the emergency notification group order when it was created.
          </li>
        </ul>
      operationId: RetrieveEmergencyNotificationGroupOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          example: 28ef2b1a-dd03-4641-a362-c6d238c3dfc0
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrderResponse>\n\t<EmergencyNotificationGroup>\n\t\t<OrderId>3e9a852e-2d1d-4e2d-84c3-87223a78cb70</OrderId>\n\t\t<OrderCreatedDate>2020-01-23T18:34:17.284Z</OrderCreatedDate>\n\t\t<CreatedBy>testuser</CreatedBy>\n\t\t<ProcessingStatus>COMPLETED</ProcessingStatus>\n\t\t<CustomerOrderId>ALG-31233884</CustomerOrderId>\n\t\t<AddedEmergencyNotificationGroup>\n\t\t\t<EmergencyNotificationGroup>\n\t\t\t\t<Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>\n\t\t\t\t<Description>Building 5, 5th Floor.</Description>\n\t\t\t\t<AddedEmergencyNotificationRecipients>\n\t\t\t\t\t<EmergencyNotificationRecipients>\n\t\t\t\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t\t\t\t<Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>\n\t\t\t\t\t\t\t<Description>Building 5 front desk email</Description>\n\t\t\t\t\t\t\t<Type>EMAIL</Type>\n\t\t\t\t\t\t\t<EmailAddress>Bldg5Reception@company.com</EmailAddress>\n\t\t\t\t\t\t</EmergencyNotificationRecipient>\n\t\t\t\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t\t\t\t<Identifier>ef47eb61-e3b1-449d-834b-0fbc5a11da30</Identifier>\n\t\t\t\t\t\t\t<Description>Building 5 5th floor responder text</Description>\n\t\t\t\t\t\t\t<Type>SMS</Type>\n\t\t\t\t\t\t\t<Sms>\n\t\t\t\t\t\t\t\t<TelephoneNumber>+12124487782</TelephoneNumber>\n\t\t\t\t\t\t\t</Sms>\n\t\t\t\t\t\t</EmergencyNotificationRecipient>\n\t\t\t\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t\t\t\t<Identifier>c9a2f068-e1b0-4454-9c0b-74c4113f6141</Identifier>\n\t\t\t\t\t\t\t<Description>Callback for MyCompany</Description>\n\t\t\t\t\t\t\t<Type>CALLBACK</Type>\n\t\t\t\t\t\t\t<Url>https://foo.bar/baz</Url>\n\t\t\t\t\t\t\t<Credentials>\n\t\t\t\t\t\t\t\t<Username>testuser</Username>\n\t\t\t\t\t\t\t</Credentials>\n\t\t\t\t\t\t</EmergencyNotificationRecipient>\n\t\t\t\t\t</EmergencyNotificationRecipients>\n\t\t\t\t</AddedEmergencyNotificationRecipients>\n\t\t\t\t<ErrorList/>\n\t\t\t</EmergencyNotificationGroup>\n\t\t</AddedEmergencyNotificationGroup>\n\t</EmergencyNotificationGroup>\n</EmergencyNotificationGroupOrderResponse>"
              schema:
                $ref: '#/components/schemas/emergencyNotificationGroupOrderResponse'
          description: Successful response
        '403':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrderResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>1001</ErrorCode>\n\t\t<Description>Access Denied</Description>\n\t</ResponseStatus>\n</EmergencyNotificationGroupOrderResponse>"
          description: >
            <p>Access Denied <br> <p> <b>Condition:</b> User does not have
            permission to view emergency notification group orders, either due
            to Role/Permission or because the account is not configured for
            Emergency Notification Config. <br> <b>Error Description:</b> Access
            Denied </p></p>
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrderResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>A description of what went wrong.</Description>\n\t</ResponseStatus>\n</EmergencyNotificationGroupOrderResponse>"
          description: >-
            <p>The resource does not exist </p><br> <p><b>Condition:</b>
            Specified emergency notification group order-id does not exist for
            this account. <br> <b>Error Description:</b> The resource does not
            exist </p>
      summary: Retrieve emergency notification group order
      tags:
        - Emergency Notification
  /accounts/{accountId}/emergencyNotificationGroups:
    get:
      description: >-
        Fetch emergency notification groups that are currently configured on the
        account.  Use the provided query parameters to filter the results. <br>

        URI Parameters: <b>accountId</b> - the account id of the account to
        which the emergency notification group belongs </p>

        <p><b>Query parameters:</b><br>

        The GET operation has no request payload, but the accountId must be
        specified in the URI parameter.

        Results are returned in the order of newest to oldest modification date
        of the Emergency Notification Group.

        Query parameters act as filters on the data. If more than one query
        parameter is provided, the results will be the intersection of the
        results from each query parameter. In other words, the query parameters
        are logically ANDed.

        Query parameters are appended to the end of the endpoint, separated by a
        '?' and in the format parameter=value.  If you wish to specify more than
        one query parameter, separate them using an '&' character.
          The order of query parameters does not matter
      operationId: ListEmergencyNotificationGroups
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            The Identifier of an Emergency Notification Recipient that is
            associated with the Emergency Notification Groups returned
          example: 63865500-0904-46b1-9b4f-7bd237a26363
          in: query
          name: engId
          required: false
          schema:
            type: string
        - description: >-
            If set to true, the results will include full details about each
            Emergency Notification Recipient associated with the Emergency
            Notification Groups satisfying the query. Otherwise, only Emergency
            Notification Recipient identifiers are included
          example: 'true'
          in: query
          name: enrDetails
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            If set to true, the results will include the current number of all
            Emergency Endpoints associated with each Emergency Notification
            Group
          example: 'true'
          in: query
          name: endpointCount
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            Returns all Emergency Notification Groups that contain the group
            description value passed in (substrings accepted)
          example: foo
          in: query
          name: engName
          required: false
          schema:
            type: string
        - description: >-
            Returns all Emergency Notification Groups that contain the recipient
            value passed in (substrings accepted)
          example: foo
          in: query
          name: enrRecipient
          required: false
          schema:
            type: string
        - description: >-
            This represents the position in the data set from which you want
            your output to begin. If this parameter is omitted, results will
            include Emergency Notification Groups last modified on or before the
            current date and time. If a date and time is provided, results will
            include Emergency Notification Groups last modified on or before
            that date and time. Date/time format is YYYY-MM-DDTHH:MM:SS.mmmZ,
            where the Z indicate UTC time, or YYYY-MM-DDTHH:MM:SS.mmm-hh:mm,
            where "-hh:mm" represents the local time offset, plus or minus, from
            UTC time
          example: '2020-04-07T00:00:00Z'
          in: query
          name: page
          required: false
          schema:
            format: date-time
            type: string
        - description: >-
            The maximum number of Emergency Notification Group results to
            include in the response payload. This value may be between 1 and 500
          example: 250
          in: query
          name: size
          required: false
          schema:
            default: 100
            maximum: 500
            minimum: 1
            type: integer
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupsResponse>\n\t<Links>\n\t\t<!-- The 'first' link always gets the most recent results. -->\n\t\t<first> -- link to first page of results -- </first>\n\t\t<!-- If the 'next' link is present, there are more than 'size' results. -->\n\t\t<!-- Use the 'next' link to fetch the next set of results. -->\n\t\t<next> -- link to next page of results -- </next>\n\t</Links>\n\t<EmergencyNotificationGroups>\n\t\t<EmergencyNotificationGroup>\n\t\t\t<Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>\n\t\t\t<CreatedDate>2020-01-23T18:34:17.284Z</CreatedDate>\n\t\t\t<ModifiedBy>testuser</ModifiedBy>\n\t\t\t<ModifiedDate>2020-01-23T18:34:17.284Z</ModifiedDate>\n\t\t\t<Description>This is a description of the emergency notification group.</Description>\n\t\t\t<EmergencyNotificationRecipients>\n\t\t\t\t<!-- Specify the 'EnrDetails' query parameter to see full details for the emergency notification recipients -->\n\t\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t\t<Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>\n\t\t\t\t</EmergencyNotificationRecipient>\n\t\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t\t<Identifier>ef47eb61-e3b1-449d-834b-0fbc5a11da30</Identifier>\n\t\t\t\t</EmergencyNotificationRecipient>\n\t\t\t</EmergencyNotificationRecipients>\n\t\t</EmergencyNotificationGroup>\n\t\t<EmergencyNotificationGroup>\n\t\t\t<Identifier>29477382-23947-23c-2349-aa8238b22743</Identifier>\n\t\t\t<CreatedDate>2020-01-23T18:36:51.987Z</CreatedDate>\n\t\t\t<ModifiedBy>testuser</ModifiedBy>\n\t\t\t<ModifiedDate>2020-01-23T18:36:51.987Z</ModifiedDate>\n\t\t\t<Description>This is a description of the emergency notification group.</Description>\n\t\t\t<EmergencyNotificationRecipients>\n\t\t\t\t<!-- Specify the 'EnrDetails' query parameter to see full details for the emergency notification recipients -->\n\t\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t\t<Identifier>37742335-8722-3abc-8722-e2434f123a4d</Identifier>\n\t\t\t\t</EmergencyNotificationRecipient>\n\t\t\t</EmergencyNotificationRecipients>\n\t\t</EmergencyNotificationGroup>\n\t</EmergencyNotificationGroups>\n</EmergencyNotificationGroupsResponse>"
              schema:
                $ref: '#/components/schemas/emergencyNotificationGroupsResponse'
          description: >-
            <p>Successful response </p> <br> The "Links" element includes two
            links.  The link called "first" is the link to the first set of
            results for the query that was submitted.  If there are more than
            "Size" results, a link called "next" is included to help you
            retrieve the next set of results up to "Size" elements. If the
            results of the query, filtered by the query parameters, do not
            return any results, the payload will contain empty tag
            "EmergencyNotificationGroups"
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrderResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>A description of what went wrong.</Description>\n\t</ResponseStatus>\n</EmergencyNotificationGroupOrderResponse>"
          description: >-
            <p>Bad request </p><br> <p><b>Condition:</b> Unrecognized query
            parameter <br> <b>Error Description:</b>Query parameter xxx is not
            recognized. </p> <br> <p><b>Condition:</b>Unsupported value for
            query parameter <br> <b>Error Description:</b>Invalid value xxx for
            query parameter yyy. Supported values are aaa, bbb, etc. </p>
        '403':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupOrderResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>1001</ErrorCode>\n\t\t<Description>Access Denied</Description>\n\t</ResponseStatus>\n</EmergencyNotificationGroupOrderResponse>"
          description: >-
            <p>Access Denied <br> <p> <b>Condition:</b>User does not have
            permission to view emergency notification orders, either due to
            Role/Permission or because the account is not configured for
            Emergency Notification Config.<br> <b>Error Description:</b>Access
            Denied </p></p>
      summary: List emergency notification groups
      tags:
        - Emergency Notification
  /accounts/{accountId}/emergencyNotificationGroups/{engId}:
    get:
      description: >-
        This endpoint allows you to fetch the configuration of a current
        emergency notification group by identifier.
      operationId: RetrieveEmergencyNotificationGroup
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            The emergency notification group identifier assigned to the
            emergency notification group when it was created
          example: 28ef2b1a-dd03-4641-a362-c6d238c3dfc0
          in: path
          name: engId
          required: true
          schema:
            type: string
        - description: >-
            Set this optional parameter to true, if you wish to include a list
            of all Emergency Endpoints (with AEUI or conventional TN
            identifiers) associated with this Emergency Notification Group
          example: true
          in: query
          name: includeEndpoints
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            This parameter, which may only be specified if the
            `includeEndpoints` parameter is set to true, indicates the starting
            digits of the emergency endpoint TN for conventional endpoints or
            starting letters / digits of AEUI endpoint identifier that you wish
            to begin with in the list of emergency endpoints associated with the
            emergency notification group. At least 3 digits must be supplied
          example: '203208110'
          in: query
          name: endpointId
          required: false
          schema:
            type: string
        - description: >-
            This parameter, which may only be specified, if the
            `includeEndpoints` parameter is set to true, indicates the maximum
            number of associated emergency endpoints you wish to include for
            each emergency notification group that is returned in the query
            results
          example: '200'
          in: query
          name: endpointSize
          required: false
          schema:
            default: 20
            maximum: 5000
            minimum: 1
            type: number
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupResponse>\n\t<EmergencyNotificationGroup>\n\t\t<Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>\n\t\t<CreatedDate>2020-01-23T18:34:17.284Z</CreatedDate>\n\t\t<ModifiedBy>testuser</ModifiedBy>\n\t\t<ModifiedDate>2020-01-23T18:34:17.284Z</ModifiedDate>\n\t\t<Description>This is a description of the emergency notification group.</Description>\n\t\t<EmergencyNotificationRecipients>\n\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t<Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>\n\t\t\t</EmergencyNotificationRecipient>\n\t\t\t<EmergencyNotificationRecipient>\n\t\t\t\t<Identifier>ef47eb61-e3b1-449d-834b-0fbc5a11da30</Identifier>\n\t\t\t</EmergencyNotificationRecipient>\n\t\t</EmergencyNotificationRecipients>\n\t\t<EepToEngAssociations>\n\t\t\t<Endpoints>\n\t\t\t\t<Identifier>+19152431000</Identifier>\n\t\t\t\t<Identifier>ACIDIdentifier12345</Identifier>\n\t\t\t</Endpoints>\n\t\t</EepToEngAssociations>\n\t</EmergencyNotificationGroup>\n</EmergencyNotificationGroupResponse>"
              schema:
                $ref: '#/components/schemas/emergencyNotificationGroupResponse'
          description: Successful response
        '403':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>1001</ErrorCode>\n\t\t<Description>Access Denied </Description>\n\t</ResponseStatus>\n</EmergencyNotificationGroupResponse>"
          description: >
            <p>Access Denied <br> <p> <b>Condition:</b> User does not have
            permission to view emergency notification groups, either due to
            Role/Permission or because the account is not configured for
            Emergency Notification Config. <br> <b>Error Description:</b> Access
            Denied </p></p>
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationGroupsResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>The resource does not exist</Description>\n\t</ResponseStatus>\n</EmergencyNotificationGroupsResponse>"
          description: >-
            <p>The resource does not exist </p><br> <p><b>Condition:</b>
            Specified emergency notification group id does not exist for this
            account <br> <b>Error Description:</b> The resource does not exist
            </p>
      summary: Retrieve emergency notification group
      tags:
        - Emergency Notification
  /accounts/{accountId}/emergencyNotificationRecipients:
    get:
      description: >-
        Retrieve a list of emergency notification recipients configured for this
        account. <br>
         Results can be paginated and filtered using the following query parameters.
      operationId: ListEmergencyNotificationRecipients
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            Include results only for orders last modified by the user specified
            in this parameter
          example: testuser
          in: query
          name: modifiedByUser
          required: false
          schema:
            type: string
        - description: >-
            The type of notification specified for Emergency Notification
            Recipients returned
          example: EMAIL
          in: query
          name: enrNotificationType
          required: false
          schema:
            enum:
              - EMAIL
              - SMS
              - TTS
              - CALLBACK
            type: string
        - description: >-
            The notification recipient: either a Message Service telephone
            number, a Voice telephone number, an email address, or a callback
            URL. (Returns all Notification Recipients that start with the
            specified recipient value)
          example: '+19195551212'
          in: query
          name: enrRecipient
          required: false
          schema:
            type: string
        - description: >-
            The callback username in all CALLBACK type Emergency Notification
            Recipients returned
          example: testuser
          in: query
          name: enrCallbackUsername
          required: false
          schema:
            type: string
        - description: >-
            This represents the position in the data set from which you want
            your output to begin. If this parameter is omitted, results will
            include Emergency Notification Recipients last modified on or before
            the current date and time. If a date and time is provided, results
            will include Emergency Notification Recipients last modified on or
            before that date and time. Date/time format is
            YYYY-MM-DDTHH:MM:SS.mmmZ, where the Z indicate UTC time, or
            YYYY-MM-DDTHH:MM:SS.mmm-hh:mm, where "-hh:mm" represents the local
            time offset, plus or minus, from UTC time
          example: '2020-03-15T14:00:00.000-04:00'
          in: query
          name: page
          required: false
          schema:
            format: date-time
            type: string
        - description: >-
            The maximum number of Emergency Notification Recipient results to
            include in the response payload. This value may be between 1 and 500
          example: 250
          in: query
          name: size
          required: false
          schema:
            default: 100
            maximum: 500
            minimum: 1
            type: integer
        - description: >-
            If GroupCount is true, each notification recipient in the response
            will include a GroupCount representing how many notification groups
            it is associated with
          example: 'true'
          in: query
          name: groupCount
          required: false
          schema:
            default: 'false'
            type: boolean
        - description: >-
            Returns all Emergency Notification Recipients that contain this
            value, whether that value is a substring or partial value of the
            recipient or a recipient TYPE
          example: foo
          in: query
          name: uriSubstring
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<Links>\n\t\t<!-- The 'first' link always gets the most recent results. -->\n\t\t<first> -- link to first page of results -- </first>\n\t\t<!-- If the 'next' link is present, there are more than 'size' results. -->\n\t\t<!-- Use the 'next' link to fetch the next set of results. -->\n\t\t<next> -- link to next page of results -- </next>\n\t</Links>\n\t<EmergencyNotificationRecipients>\n\t\t<EmergencyNotificationRecipient>\n\t\t\t<Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>\n\t\t\t<CreatedDate>2020-03-18T21:26:47.403Z</CreatedDate>\n\t\t\t<LastModifiedDate>2020-03-18T21:26:47.403Z</LastModifiedDate>\n\t\t\t<ModifiedByUser>testuser</ModifiedByUser>\n\t\t\t<Description>This is a description of the emergency notification recipient.</Description>\n\t\t\t<Type>CALLBACK</Type>\n\t\t\t<Callback>\n\t\t\t\t<Url>https://foo.bar/baz</Url>\n\t\t\t\t<Credentials>\n\t\t\t\t\t<Username>testuser</Username>\n\t\t\t\t\t<!-- CallbackPassword is omitted for security -->\n\t\t\t\t</Credentials>\n\t\t\t</Callback>\n\t\t</EmergencyNotificationRecipient>\n\t\t<EmergencyNotificationRecipient>\n\t\t\t<Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>\n\t\t\t<CreatedDate>2020-03-22T12:13:25.782Z</CreatedDate>\n\t\t\t<LastModifiedDate>2020-03-22T12:13:25.782Z</LastModifiedDate>\n\t\t\t<ModifiedByUser>gfranklin</ModifiedByUser>\n\t\t\t<Description>This is a description of the emergency notification recipient.</Description>\n\t\t\t<Type>EMAIL</Type>\n\t\t\t<EmailAddress>fred@gmail.com</EmailAddress>\n\t\t</EmergencyNotificationRecipient>\n\t\t<EmergencyNotificationRecipient>\n\t\t\t<Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>\n\t\t\t<CreatedDate>2020-03-25T17:04:53.042Z</CreatedDate>\n\t\t\t<LastModifiedDate>2020-03-25T17:04:53.042Z</LastModifiedDate>\n\t\t\t<ModifiedByUser>msimpson</ModifiedByUser>\n\t\t\t<Description>This is a description of the emergency notification recipient.</Description>\n\t\t\t<Type>SMS</Type>\n\t\t\t<Sms>\n\t\t\t\t<TelephoneNumber>+12015551212</TelephoneNumber>\n\t\t\t</Sms>\n\t\t</EmergencyNotificationRecipient>\n\t\t<EmergencyNotificationRecipient>\n\t\t\t<Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>\n\t\t\t<CreatedDate>2020-03-29T20:14:01.736Z</CreatedDate>\n\t\t\t<LastModifiedDate>2020-03-29T20:17:53.294Z</LastModifiedDate>\n\t\t\t<ModifiedByUser>lsimpson</ModifiedByUser>\n\t\t\t<Description>This is a description of the emergency notification recipient.</Description>\n\t\t\t<Type>TTS</Type>\n\t\t\t<Tts>\n\t\t\t\t<TelephoneNumber>+12015551212</TelephoneNumber>\n\t\t\t</Tts>\n\t\t</EmergencyNotificationRecipient>\n\t</EmergencyNotificationRecipients>\n</EmergencyNotificationRecipientsResponse>"
              schema:
                oneOf:
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientsResponseWithCallback
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientsResponseWithEmail
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientsResponseWithSms
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientsResponseWithTts
          description: >-
            <p>Successful response</p> <br> The "Links" element includes two
            links.  The link called "first" is the link to the first set of
            results for the query that was submitted.  If there are more than
            "Size" results, a link called "next" is included to help you
            retrieve the next set of results up to "Size" elements. If the
            results of the query, filtered by the query parameters, do not
            return any results, the payload will contain empty tag
            "EmergencyNotificationRecipients"
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>A description of what went wrong.</Description>\n\t</ResponseStatus>\n</EmergencyNotificationRecipientsResponse>"
          description: >-
            <p>Bad request </p><br> <p><b>Condition:</b> Unrecognized query
            parameter <br> <b>Error Description:</b>Query parameter xxx is not
            recognized. </p> <br> <p><b>Condition:</b>Unsupported value for
            query parameter <br> <b>Error Description:</b>Invalid value xxx for
            query parameter yyy. Supported values are aaa, bbb, etc. </p>
        '403':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>1001</ErrorCode>\n\t\t<Description>Access Denied </Description>\n\t</ResponseStatus>\n</EmergencyNotificationRecipientsResponse>"
          description: >-
            <p>Access Denied <br> <p> <b>Condition:</b>User does not have
            permission to view emergency notification recipients, either due to
            Role/Permission or because the account is not configured for
            Emergency Notification Config.<br> <b>Error Description:</b>Access
            Denied </p></p>
      summary: List emergency notification recipients
      tags:
        - Emergency Notification
    post:
      description: Create a new emergency notification recipient.
      operationId: CreateEmergencyNotificationRecipient
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              callback:
                description: Sample request payload for an CALLBACK recipient
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipient>\n<Description>Callback to property management system</Description>\n\t<Type>CALLBACK</Type>\n\t<Callback>\n\t\t<Url>https://foo.bar/baz</Url>\n\t\t<Credentials>\n\t\t\t<Username>testuser</Username>\n\t\t\t<Password>x23388%SLHss</Password>\n\t\t</Credentials>\n\t</Callback>\n</EmergencyNotificationRecipient>"
              email:
                description: Sample request payload for an EMAIL recipient
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipient>\n\t<Description>Email to Bldg. 3 Front Desk</Description>\n\t<Type>EMAIL</Type>\n\t<EmailAddress>foo@bar.com</EmailAddress>\n</EmergencyNotificationRecipient>"
              sms:
                description: Sample request payload for an SMS recipient
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <EmergencyNotificationRecipient>
                    <Description>Text message to guard shack</Description>
                    <Type>SMS</Type>
                    <Sms>
                      <TelephoneNumber>+12015551212</TelephoneNumber>
                    </Sms>
                  </EmergencyNotificationRecipient>
              tts:
                description: Sample request payload for an TTS recipient
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipient>\n\t<Description>Voice call notification to Susan Jones</Description>\n\t<Type>TTS</Type>\n\t<Tts>\n\t\t<TelephoneNumber>+12015551212</TelephoneNumber>\n\t</Tts>\n</EmergencyNotificationRecipient>"
            schema:
              oneOf:
                - $ref: '#/components/schemas/emergencyNotificationRecipientCallback'
                - $ref: '#/components/schemas/emergencyNotificationRecipientSms'
                - $ref: '#/components/schemas/emergencyNotificationRecipientTts'
                - $ref: '#/components/schemas/emergencyNotificationRecipientEmail'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<EmergencyNotificationRecipient>\n\t\t<Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>\n\t\t<CreatedDate>2020-03-18T21:26:47.403Z</CreatedDate>\n\t\t<LastModifiedDate>2020-03-18T21:26:47.403Z</LastModifiedDate>\n\t\t<ModifiedByUser>testuser</ModifiedByUser>\n\t\t<Description>This is a description of the emergency notification recipient.</Description>\n\t\t<Type>CALLBACK</Type>\n\t\t<Callback>\n\t\t\t<Url>https://foo.bar/baz</Url>\n\t\t\t<Credentials>\n\t\t\t\t<Username>testuser</Username>\n\t\t\t\t<!-- CallbackPassword is omitted for security -->\n\t\t\t</Credentials>\n\t\t</Callback>\n\t</EmergencyNotificationRecipient>\n</EmergencyNotificationRecipientsResponse>"
              schema:
                oneOf:
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientResponseWithEmail
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientResponseWithCallback
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientResponseWithSms
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientResponseWithTts
          description: >-
            <p>Successful response </p><br> <p> <b>Emergency notification
            recipient response elements</b> <br> The following fields are
            present only in the success response.  For request fields, please
            see the request tab. </p> <table border="1" cellspacing="0"
            cellpadding="0" width="624"> <tbody> <tr> <td valign="top"> <p>
            <strong>Parameter</strong> </p> </td> <td width="351" valign="top">
            <p> <strong>Description</strong> </p> </td> </tr> <tr> <td
            valign="top"> <p> Identifier </p> </td> <td width="351"
            valign="top"> <p> a system-assigned unique identifier for the
            Emergency Notification Recipient. This field is not present in the
            request, but mandatory in the success response.  This identifier can
            be used as a key to fetch the emergency notification recipient
            instance later.  This value will be used as the EVS Notification ID.
            </p> </td> </tr> <tr> <td valign="top"> <p> CreatedDate </p> </td>
            <td width="351" valign="top"> <p> the date and time in UTC when the
            emergency notification recipient was created. </p> </td> </tr> <tr>
            <td valign="top"> <p> LastModifiedDate </p> </td> <td width="351"
            valign="top"> <p> the date and time in UTC when the emergency
            notification recipient was last modified.  If this date and time is
            the same as the CreatedDate, the recipient has never been modified.
            </p> </td> </tr> <tr> <td valign="top"> <p> ModifiedByUser </p>
            </td> <td width="351" valign="top"> <p> the Bandwidth App username
            of the last person to create or modify this emergency notification
            recipient. </p> </td> </tr> </tbody> </table>
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>A description of what went wrong.</Description>\n\t</ResponseStatus>\n</EmergencyNotificationRecipientResponse>"
          description: >-
            Bad request <br> <table border="1" cellspacing="0" cellpadding="0"
            width="624"> <tbody> <tr> <td valign="top"> <p>
            <strong>Condition</strong> </p> </td> <td width="351" valign="top">
            <p> <strong>Error Description</strong> </p> </td> </tr> <tr> <td
            valign="top"> <p> Missing or empty description </p> </td> <td
            width="351" valign="top"> <p> Description must be present and
            non-empty. </p> </td> </tr> <tr> <td valign="top"> <p> Missing type
            </p> </td> <td width="351" valign="top"> <p> Type is a mandatory
            element. </p> </td> </tr> <tr> <td valign="top"> <p> Unrecognized
            type value </p> </td> <td width="351" valign="top"> <p> Type value
            must be one of 'EMAIL', 'SMS', 'TTS', or 'CALLBACK'. </p> </td>
            </tr> <tr> <td valign="top"> <p> Missing data required for type -
            for example, type is EMAIL, but no EmailAddress element is present.
            </p> </td> <td width="351" valign="top"> <p> When Type xxx is
            specified, yyy must be included., where xxx is one of the type
            values and yyy is the element that is missing. </p> </td> </tr> <tr>
            <td valign="top"> <p> Malformed email </p> </td> <td width="351"
            valign="top"> <p> Invalid EmailAddress.  Format should be
            foo@bar.com.  Max length is 254 characters. </p> </td> </tr> <tr>
            <td valign="top"> <p> Malformed telephone number </p> </td> <td
            width="351" valign="top"> <p> Invalid TelephoneNumber.  Telephone
            number must be 11 digits in format 1NPANXXXXXX. </p> </td> </tr>
            <tr> <td valign="top"> <p> Malformed url </p> </td> <td width="351"
            valign="top"> <p> Invalid Url.  Format should be
            https://foo.bar[?param=val]. </p> </td> </tr> <tr> <td valign="top">
            <p> Malformed username </p> </td> <td width="351" valign="top"> <p>
            Invalid Username.  Username must be between 1 and 32 characters.
            </p> </td> </tr> <tr> <td valign="top"> <p> Malformed password </p>
            </td> <td width="351" valign="top"> <p> Invalid Password.  Password
            must be between 1 and 256 characters. </p> </td> </tr> </tbody>
            </table>
        '403':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>1001</ErrorCode>\n\t\t<Description>Access Denied </Description>\n\t</ResponseStatus>\n</EmergencyNotificationRecipientsResponse>"
          description: >-
            <p>Access Denied <br> <p> <b>Condition:</b> User does not have
            permission to configure emergency notification recipients, either
            due to Role/Permission or because the account is not enabled for
            Emergency Notifications. <br> <b>Error Description:</b> Access
            Denied </p></p>
        '409':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>An entry with an identical recipient already exists. Identifier xxx., where xxx is replaced with the emergency notification recipient Identifier of the existing entry.</Description>\n\t</ResponseStatus>\n</EmergencyNotificationRecipientsResponse>"
          description: >-
            <p>Conflict <br> <p> <b>Condition:</b> Duplicate entry <br> <b>Error
            Description:</b> An entry with an identical recipient already
            exists. Identifier xxx., where xxx is replaced with the emergency
            notification recipient Identifier of the existing entry.</p></p>
      summary: Create emergency notification recipient
      tags:
        - Emergency Notification
  /accounts/{accountId}/emergencyNotificationRecipients/{enrId}:
    delete:
      description: >-
        The DELETE operation is used to remove the emergency notification
        recipient specified by its identifier. <br><br>

        An emergency notification recipient cannot be removed if it is still
        used by an emergency notification group.
         If you wish to remove an emergency notification recipient that is associated with an emergency notificaiton group, use the /account/{accountId}/emergencyNotificationGroupOrders endpoint to remove the group or modify the group to no longer use this emergency notification recipient.
        URI parameters:
            <ul>
              <li>
              <b>accountId</b> - the account id of the account to which the emergency notification recipient belongs
              </li>
              <li>
              <b>enrId</b> - the identifier assigned to the emergency notification recipient when it was created
              </li>
            </ul>
      operationId: DeleteEmergencyNotificationRecipient
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          example: 23c4b891513e48c6a7ede53abd3449
          in: path
          name: enrId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: >-
            <p>Sussessful response</p> <br> The DELETE request has no payload.
            The 200 response also has no payload
        '403':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>1001</ErrorCode>\n\t\t<Description>Access Denied </Description>\n\t</ResponseStatus>\n</EmergencyNotificationRecipientsResponse>"
          description: >-
            <p>Access Denied <br> <p> <b>Condition:</b> User does not have
            permission to configure emergency notification recipients, either
            due to Role/Permission or because the account is not configured for
            Emergency Notification Config. <br> <b>Error Description:</b> Access
            Denied </p></p>
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>The resource does not exist</Description>\n\t</ResponseStatus>\n</EmergencyNotificationRecipientsResponse>"
          description: >-
            <p>The resource does not exist <br> <p><b>Condition:</b> The
            emergency notification recipient identifier does not exist, or does
            not exist for the specified account id. <br> <b>Error
            Description:</b> The resource does not exist </p> <br></p>
        '409':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>Emergency notification recipient with identifier xxx is being used by emergency notification group with identifier yyy. Please remove the recipient reference from the group prior to removing the recipient., where xxx is replaced by the emergency notification recipient ID and yyyis replaced by the emergency notification group ID. </Description>\n\t</ResponseStatus>\n</EmergencyNotificationRecipientsResponse>"
          description: >-
            <p>Conflict <br> <p> <b>Condition:</b> Attempt to delete an
            emergency notification recipient that is referenced by an emergency
            notification group. <br> <b>Error Description:</b> Emergency
            notification recipient with identifier xxx is being used by
            emergency notification group with identifier yyy. Please remove the
            recipient reference from the group prior to removing the recipient.,
            where xxx is replaced by the emergency notification recipient ID and
            yyy is replaced by the emergency notification group ID. </p></p>
      summary: Delete emergency notification recipient
      tags:
        - Emergency Notification
    get:
      description: >-
        The GET operation is used to fetch the emergency notification recipient
        specified by its identifier. <br>

        URI parameters:</p>


        <ul>
          <li>
          <b>accountId</b> - the account id of the account to which the emergency notification recipient belongs
          </li>
          <li>
          <b>enrId</b> - the identifier assigned to the emergency notification recipient when it was created
          </li>
        </ul>
      operationId: RetrieveEmergencyNotificationRecipient
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          example: 23c4b891513e48c6a7ede53abd3449
          in: path
          name: enrId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                callback:
                  description: For an CALLBACK type emergency notification recipient
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<EmergencyNotificationRecipient>\n\t\t<Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>\n\t\t<CreatedDate>2020-03-18T21:26:47.403Z</CreatedDate>\n\t\t<LastModifiedDate>2020-04-01T18:32:22.316Z</LastModifiedDate>\n\t\t<ModifiedByUser>testuser</ModifiedByUser>\n\t\t<Description>This is a description of the emergency notification recipient.</Description>\n\t\t<Type>CALLBACK</Type>\n\t\t<Callback>\n\t\t\t<Url>https://foo.bar/baz</Url>\n\t\t\t<Credentials>\n\t\t\t\t<Username>testuser</Username>\n\t\t\t\t<!-- CallbackPassword is omitted for security -->\n\t\t\t</Credentials>\n\t\t</Callback>\n\t</EmergencyNotificationRecipient>\n</EmergencyNotificationRecipientsResponse>"
                email:
                  description: For an EMAIL type emergency notification recipient
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<EmergencyNotificationRecipient>\n\t\t<Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>\n\t\t<CreatedDate>2020-03-20T14:04:28.778Z</CreatedDate>\n\t\t<LastModifiedDate>2020-03-20T14:04:28.778Z</LastModifiedDate>\n\t\t<ModifiedByUser>wchurchill</ModifiedByUser>\n\t\t<Description>This is a description of the emergency notification recipient.</Description>\n\t\t<Type>EMAIL</Type>\n\t\t<EmailAddress>fred@gmail.com</EmailAddress>\n\t</EmergencyNotificationRecipient>\n</EmergencyNotificationRecipientsResponse>"
                sms:
                  description: For an SMS type emergency notification recipient
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<EmergencyNotificationRecipient>\n\t\t<Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>\n\t\t<CreatedDate>2020-03-28T15:45:01.371Z</CreatedDate>\n\t\t<LastModifiedDate>2020-03-29T18:59:42.220Z</LastModifiedDate>\n\t\t<ModifiedByUser>deisenhower</ModifiedByUser>\n\t\t<Description>This is a description of the emergency notification recipient.</Description>\n\t\t<Type>SMS</Type>\n\t\t<Sms>\n\t\t\t<TelephoneNumber>+12015551212</TelephoneNumber>\n\t\t</Sms>\n\t</EmergencyNotificationRecipient>\n</EmergencyNotificationRecipientsResponse>"
                tts:
                  description: For an TTS type emergency notification recipient
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <EmergencyNotificationRecipientsResponse>
                       <EmergencyNotificationRecipient>
                          <Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>
                          <CreatedDate>2020-03-30T22:14:30.443Z</CreatedDate>
                          <LastModifiedDate>2020-03-30T22:14:30.443Z</LastModifiedDate>
                          <ModifiedByUser>frooseveldt</ModifiedByUser>
                          <Description>This is a description of the emergency notification recipient.</Description>
                          <Type>TTS</Type>
                          <Tts>
                             <TelephoneNumber>+12015551212</TelephoneNumber>
                          </Tts>
                       </EmergencyNotificationRecipient>
                    </EmergencyNotificationRecipientsResponse>
              schema:
                oneOf:
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientResponseWithEmail
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientResponseWithCallback
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientResponseWithSms
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientResponseWithTts
          description: Successful response
        '403':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>Access Denied </Description>\n\t</ResponseStatus>\n</EmergencyNotificationRecipientResponse>"
          description: >-
            <p>Access Denied <br> <p> <b>Condition:</b> User does not have
            permission to view emergency notification recipients, either due to
            Role/Permission or because the account is not configured for
            Emergency Notification Config. <br> <b>Error Description:</b> Access
            Denied </p></p>
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>The resource does not exist</Description>\n\t</ResponseStatus>\n</EmergencyNotificationRecipientResponse>"
          description: >-
            <p>The resource does not exist <br> <p><b>Condition:</b> The
            emergency notification recipient identifier does not exist, or does
            not exist for the specified account id. <br> <b>Error
            Description:</b> The resource does not exist </p> <br></p>
      summary: Retrieve emergency notification recipient
      tags:
        - Emergency Notification
    put:
      description: >-
        The PUT operation is used to replace an emergency notification recipient
        without changing its identifier value.  All emergency notification
        recipient fields must be specified, even if they are not changing.
      operationId: UpdateEmergencyNotificationRecipient
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          example: 23c4b891513e48c6a7ede53abd3449
          in: path
          name: enrId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              callback:
                description: 'Sample request payload for an CALLBACK recipient:'
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipient>\n\t<Description>Callback to property management system</Description>\n\t<Type>CALLBACK</Type>\n\t<Callback>\n\t\t<Url>https://foo.bar/baz</Url>\n\t\t<Credentials>\n\t\t\t<Username>testuser</Username>\n\t\t\t<Password>x23388%SLHss</Password>\n\t\t</Credentials>\n\t</Callback>\n</EmergencyNotificationRecipient>"
              email:
                description: 'Sample request payload for an EMAIL recipient:'
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipient>\n\t<Description>Email to Bldg. 3 Front Desk</Description>\n\t<Type>EMAIL</Type>\n\t<EmailAddress>foo@bar.com</EmailAddress>\n</EmergencyNotificationRecipient>"
              sms:
                description: 'Sample request payload for an SMS recipient:'
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipient>\n\t<Description>Text message to guard shack</Description>\n\t<Type>SMS</Type>\n\t<Sms>\n\t\t<TelephoneNumber>+12015551212</TelephoneNumber>\n\t</Sms>\n</EmergencyNotificationRecipient>"
              tts:
                description: 'Sample request payload for an TTS recipient:'
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipient>\n\t<Description>Voice call notification to Susan Jones</Description>\n\t<Type>TTS</Type>\n\t<Tts>\n\t\t<TelephoneNumber>+12015551212</TelephoneNumber>\n\t</Tts>\n</EmergencyNotificationRecipient>"
            schema:
              oneOf:
                - $ref: '#/components/schemas/emergencyNotificationRecipientCallback'
                - $ref: '#/components/schemas/emergencyNotificationRecipientSms'
                - $ref: '#/components/schemas/emergencyNotificationRecipientTts'
                - $ref: '#/components/schemas/emergencyNotificationRecipientEmail'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<EmergencyNotificationRecipient>\n\t\t<Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>\n\t\t<CreatedDate>2020-03-18T21:26:47.403Z</CreatedDate>\n\t\t<LastModifiedDate>2020-04-01T18:32:22.316Z</LastModifiedDate>\n\t\t<ModifiedByUser>testuser</ModifiedByUser>\n\t\t<Description>This is a description of the emergency notification recipient.</Description>\n\t\t<Type>CALLBACK</Type>\n\t\t<Callback>\n\t\t\t<Url>https://foo.bar/baz</Url>\n\t\t\t<Credentials>\n\t\t\t\t<Username>testuser</Username>\n\t\t\t\t<!-- CallbackPassword is omitted for security -->\n\t\t\t</Credentials>\n\t\t</Callback>\n\t</EmergencyNotificationRecipient>\n</EmergencyNotificationRecipientsResponse>"
              schema:
                oneOf:
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientResponseWithEmail
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientResponseWithCallback
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientResponseWithSms
                  - $ref: >-
                      #/components/schemas/emergencyNotificationRecipientResponseWithTts
          description: Successful response
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>A description of what went wrong.</Description>\n\t</ResponseStatus>\n</EmergencyNotificationRecipientsResponse>"
          description: >
            <p>Bad request <br> <table border="1" cellspacing="0"
            cellpadding="0" width="624"> <tbody> <tr> <td valign="top"> <p>
            <strong>Condition</strong> </p> </td> <td width="351" valign="top">
            <p> <strong>Error Description</strong> </p> </td> </tr> <tr> <td
            valign="top"> <p> Missing or empty description </p> </td> <td
            width="351" valign="top"> <p> Description must be present and
            non-empty. </p> </td> </tr> <tr> <td valign="top"> <p> Missing type
            </p> </td> <td width="351" valign="top"> <p> Type is a mandatory
            element. </p> </td> </tr> <tr> <td valign="top"> <p> Unrecognized
            type value </p> </td> <td width="351" valign="top"> <p> Type value
            must be one of 'EMAIL', 'SMS', 'TTS', or 'CALLBACK'. </p> </td>
            </tr> <tr> <td valign="top"> <p> Missing data required for type -
            for example, type is EMAIL, but no EmailAddress element is present.
            </p> </td> <td width="351" valign="top"> <p> When Type xxx is
            specified, yyy must be included., where xxx is one of the type
            values and yyy is the element that is missing. </p> </td> </tr> <tr>
            <td valign="top"> <p> Malformed email </p> </td> <td width="351"
            valign="top"> <p> Invalid EmailAddress.  Format should be
            foo@bar.com.  Max length is 254 characters. </p> </td> </tr> <tr>
            <td valign="top"> <p> Malformed telephone number </p> </td> <td
            width="351" valign="top"> <p> Invalid TelephoneNumber.  Telephone
            number must be 11 digits in format 1NPANXXXXXX. </p> </td> </tr>
            <tr> <td valign="top"> <p> Malformed url </p> </td> <td width="351"
            valign="top"> <p> Invalid Url.  Format should be
            https://foo.bar[?param=val]. </p> </td> </tr> <tr> <td valign="top">
            <p> Malformed username </p> </td> <td width="351" valign="top"> <p>
            Invalid Username.  Username must be between 1 and 32 characters.
            </p> </td> </tr> <tr> <td valign="top"> <p> Malformed password </p>
            </td> <td width="351" valign="top"> <p> Invalid Password.  Password
            must be between 1 and 256 characters. </p> </td> </tr> </tbody>
            </table></p>
        '403':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>Access Denied </Description>\n\t</ResponseStatus>\n</EmergencyNotificationRecipientsResponse>"
          description: >-
            <p>Access Denied <br> <p> <b>Condition:</b> User does not have
            permission to configure emergency notification recipients, either
            due to Role/Permission or because the account is not enabled for
            Emergency Notifications. <br> <b>Error Description:</b> Access
            Denied </p></p>
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<EmergencyNotificationRecipientsResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>nnnn</ErrorCode>\n\t\t<Description>The resource does not exist</Description>\n\t</ResponseStatus>\n</EmergencyNotificationRecipientsResponse>"
          description: >-
            <p>The resource does not exist</p> <br> <p> <b>Condition:</b>
            Specified emergency notification recipient ID does not exist for
            this account <br> <b>Error Description:</b> The resource does not
            exist </p>
        '409':
          description: >-
            <p>Conflict</p><p> <b>Condition:</b> Duplicate entry <br> <b>Error
            Description:</b> An entry with an identical recipient already
            exists. Identifier xxx., where xxx is replaced with the emergency
            notification recipient Identifier of the existing entry. </p>
      summary: Update emergency notification recipient
      tags:
        - Emergency Notification
  /accounts/{accountId}/geocodeRequest:
    post:
      description: >-
        POST is used to validate address as geocode-able one. Request payload is
        the address to geocode. If decomposed elements are provided for
        AddressLine 1 then AddressLine1 is ignored. At least HouseNumber and
        StreetName are required to use them as replacement of AddressLine1. If
        at least HouseNumber or StreetName is absent then AddressLine1 is used.
      operationId: CreateGeocodeRequest
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <RequestAddress>
                    <AddressLine1>904 E Ansun Str</AddressLine1>
                    <HousePrefix/>
                    <HouseNumber>904</HouseNumber>
                    <HouseSuffix>E</HouseSuffix>
                    <PreDirectional/>
                    <StreetName>Ansun</StreetName>
                    <StreetSuffix>Str</StreetSuffix>
                    <PostDirectional/>
                    <AddressLine2/>
                    <City>Marshalltown</City>
                    <StateCode>IA</StateCode>
                    <Zip>50158</Zip>
                    <PlusFour/>
                    <County/>
                    <Country/>
                  </RequestAddress>
            schema:
              $ref: '#/components/schemas/geocodeRequestAddress'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <GeocodeRequestResponse>
                      <GeocodedAddress>
                        <AddressLine1>904 E ANSON ST</AddressLine1>
                        <HouseNumber>904</HouseNumber>
                        <PreDirectional>E</PreDirectional>
                        <StreetName>ANSON</StreetName>
                        <StreetSuffix>ST</StreetSuffix>
                        <City>MARSHALLTOWN</City>
                        <StateCode>IA</StateCode>
                        <Zip>50158</Zip>
                        <PlusFour>3522</PlusFour>
                        <Country>US</Country>
                      </GeocodedAddress>
                      <RequestAddress>
                        <HouseNumber>904</HouseNumber>
                        <HouseSuffix>E</HouseSuffix>
                        <StreetName>Anson</StreetName>
                        <StreetSuffix>St</StreetSuffix>
                        <City>Marshalltown</City>
                        <StateCode>IA</StateCode>
                        <Zip>50158</Zip>
                        <Country>US</Country>
                        <AddressLine1>904 E Anson St</AddressLine1>
                      </RequestAddress>
                    </GeocodeRequestResponse>
              schema:
                $ref: '#/components/schemas/geocodeRequestResponse'
          description: <p>OK - service validates address perfectly.</p>
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <GeocodeRequestResponse>
                      <ResponseStatus>
                        <ErrorCode>12110</ErrorCode>
                        <Description>This address could not be validated / geocoded</Description>
                      </ResponseStatus>
                    </GeocodeRequestResponse>
              schema:
                $ref: '#/components/schemas/geocodeRequestErrorResponse'
          description: >-
            <p>Bad request - service cannot geocode address or validation rules
            were violated.</p>
        '409':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <GeocodeRequestResponse>
                      <ErrorMessage>Some adjustments are required to allow the address to pass geocoding: Specified value - Street Name : "ANSUN" Valid value - "ANSON" Specified value - Street Suffix : "STR" Valid value - "ST"  </ErrorMessage>
                      <GeocodedAddress>
                        <AddressLine1>904 E ANSON ST</AddressLine1>
                        <HouseNumber>904</HouseNumber>
                        <PreDirectional>E</PreDirectional>
                        <StreetName>ANSON</StreetName>
                        <StreetSuffix>ST</StreetSuffix>
                        <City>MARSHALLTOWN</City>
                        <StateCode>IA</StateCode>
                        <Zip>50158</Zip>
                        <PlusFour>3522</PlusFour>
                        <Country>US</Country>
                      </GeocodedAddress>
                      <RequestAddress>
                        <HouseNumber>904</HouseNumber>
                        <HouseSuffix>E</HouseSuffix>
                        <StreetName>Ansun</StreetName>
                        <StreetSuffix>Str</StreetSuffix>
                        <City>Marshalltown</City>
                        <StateCode>IA</StateCode>
                        <Zip>50158</Zip>
                        <Country>US</Country>
                        <AddressLine1>904 E Ansun Str</AddressLine1>
                      </RequestAddress>
                    </GeocodeRequestResponse>
              schema:
                $ref: '#/components/schemas/geocodeRequestConflictResponse'
          description: <p>Conflict - address is close to one that can be geocoded.</p>
        '500':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <GeocodeRequestResponse>
                      <ResponseStatus>
                        <ErrorCode>12111</ErrorCode>
                        <Description>Error during E911 Geocoding API response handling</Description>
                      </ResponseStatus>
                    </GeocodeRequestResponse>
              schema:
                $ref: '#/components/schemas/geocodeRequestErrorResponse'
          description: >-
            <p>System error - internal error which cannot be fixed by changing
            payload etc.</p>
        '503':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <GeocodeRequestResponse>
                      <ResponseStatus>
                        <ErrorCode>12109</ErrorCode>
                        <Description>E911 Geocoding Service is temporary unavailable</Description>
                      </ResponseStatus>
                    </GeocodeRequestResponse>
              schema:
                $ref: '#/components/schemas/geocodeRequestErrorResponse'
          description: >-
            <p>Service unavailable - for some reason service is temporary
            unavailable.</p>
      summary: Validate E911 address [NANP]
      tags:
        - Addresses
  /accounts/{accountId}/hosts:
    get:
      description: >-
        Retrieve information about the hosts of account, as guided by optional
        search parameters.
      operationId: GetHosts
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            <p>An IP address or subnet (CIDR format) associated with the
            account. Filter for subnet applies by exact match.</p>
          example: 47.16.211.63 or 69.22.181.68/30
          in: query
          name: host
          required: false
          schema:
            type: string
        - description: >-
            <p>A status value to filter the hosts returned in the payload. 
            Values that can be accepted
            include:</p><ul><li>SMS</li><li>TERMINATION</li><li>ORIGINATION</li></ul>
          example: TERMINATION
          in: query
          name: type
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SiteHostsResponse>
                      <SiteHosts>
                        <SiteHost>
                          <SiteId>5</SiteId>
                          <SipPeerHosts>
                            <SipPeerHost>
                              <SipPeerId>500146</SipPeerId>
                              <SmsHosts/>
                              <VoiceHosts>
                                <Host>
                                  <HostName>47.16.211.63</HostName>
                                </Host>
                              </VoiceHosts>
                              <TerminationHosts/>
                            </SipPeerHost>
                          </SipPeerHosts>
                        </SiteHost>
                      </SiteHosts>
                    </SiteHostsResponse>
              schema:
                $ref: '#/components/schemas/siteHostsResponse'
          description: <p>A successful result that contains the response data</p>
      summary: List hosts on account
      tags:
        - Account
  /accounts/{accountId}/importTnChecker:
    post:
      description: >-
        Request importability information on a set of TNs. SipPeerId is an
        optional value. If SipPeerId is not specified, the id of the default
        Sip-Peer for the provided SiteId will be used.
      operationId: CreateRequestImportTnChecker
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <ImportTnCheckerPayload>
                    <TelephoneNumbers>
                      <TelephoneNumber>+13032281000</TelephoneNumber>
                      <TelephoneNumber>+14109235436</TelephoneNumber>
                      <TelephoneNumber>+14104685864</TelephoneNumber>
                    </TelephoneNumbers>
                    <SiteId>486</SiteId>
                    <SipPeerId>500025</SipPeerId>
                  </ImportTnCheckerPayload>
            schema:
              $ref: '#/components/schemas/importTnCheckerPayload'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ImportTnCheckerResponse>
                      <ImportTnCheckerPayload>
                        <TelephoneNumbers>
                          <TelephoneNumber>+13032281000</TelephoneNumber>
                        </TelephoneNumbers>
                        <ImportTnErrors>
                          <ImportTnError>
                            <Code>19006</Code>
                            <Description>Bandwidth numbers cannot be imported by this account at this time.</Description>
                            <TelephoneNumbers>
                              <TelephoneNumber>+14109235436</TelephoneNumber>
                              <TelephoneNumber>+14104685864</TelephoneNumber>
                            </TelephoneNumbers>
                          </ImportTnError>
                        </ImportTnErrors>
                      </ImportTnCheckerPayload>
                    </ImportTnCheckerResponse>
              schema:
                $ref: '#/components/schemas/importTnCheckerResponse'
          description: <p>A successful check has been performed.</p>
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ImportTnCheckerResponse>
                    <Errors>
                      <Code>7201</Code>
                        <Description>+161746052083 is not a valid NANP telephone number.</Description>
                      </Errors>
                      <Errors>
                        <Code>7201</Code>
                        <Description>+161746052082 is not a valid NANP telephone number.</Description>
                      </Errors>
                    </ImportTnCheckerResponse>
              schema:
                $ref: '#/components/schemas/importTnCheckerErrorResponse'
          description: >-
            <p>Bad Response - there were errors in evaluating the body of the
            request.</p> <p>Potential errors include:</p><ul><li> List of TNs is
            empty.<li> List of TNs is more than 5000 TNs.<li> The account does
            not have the necessary (IMPORT_TNS) flag.<li> TNs are invalid (they
            are not actual TNs, and there are duplicates).</ul>
      summary: Check Tns importability
      tags:
        - Hosted Messaging
  /accounts/{accountId}/importTnOrders/messaging/{orderId}:
    get:
      description: Retrieve information about a importTnOrder with specified ID.
      operationId: readImportMessagingTnOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
      responses:
        '200':
          $ref: '#/components/responses/ImportTnOrdersResponse'
      summary: Fetch Import Messaging Tn order status
      tags:
        - Hosted Messaging
  /accounts/{accountId}/importTnOrders/messaging/{orderId}/loas/{fileId}:
    delete:
      description: Deletes the file associated with the order
      operationId: DeleteImportMessagingTnOrderLoasFile
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import Messaging Tn order's ID
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: File id with format
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4.pdf
          in: path
          name: fileId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: The 200 OK  indicates a successful deletion of the identified file.
        '404':
          description: >-
            a 404 indicates that the indicated file was not found in conjunction
            with the order id.
      summary: Removing Import Messaging Tn order loas file [NANP]
      tags:
        - Hosted Messaging
    get:
      description: Retrieves the file associated with the order.
      operationId: ReadImportMessagingTnOrderLoasFile
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import Messaging Tn order's ID
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: File id with format
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4.pdf
          in: path
          name: fileId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: >-
            The 200 OK  indicates a successful download request.<br>

            The response to the get on a filename will result in the file being
            prepared and delivered in a manner consistent with browser
            download.  The Response headers include the content-disposition
            header describing the file download.
        '404':
          description: >-
            a 404 indicates that the indicated file was not found in conjunction
            with the order id.
      summary: Fetch Import Messaging Tn order loas file [NANP]
      tags:
        - Hosted Messaging
    put:
      description: >-
        A PUT on the filename will update / replace the identified file id.  The
        format of the PUT is identical to that of the POST.
      operationId: UpdateImportMessagingTnOrderLoasFile
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import Messaging Tn order's ID
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: File id with format
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4.pdf
          in: path
          name: fileId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <fileUploadResponse>
                          <filename>63097af1-37ae-432f-8a0d-9b0e6517a35b-1429550165581.pdf</filename>
                          <resultCode>0</resultCode>
                          <resultMessage>LOA file uploaded successfully for order 63097af1-37ae-432f-8a0d-9b0e6517a35b</resultMessage>
                    </fileUploadResponse>
              schema:
                $ref: '#/components/schemas/fileUploadResponse'
          description: >-
            The 200 response indicates the successful replacement of a file
            resource containing the uploaded content.

            The response header will include a link to the created file as a GET
            on the identified resource.
        '400':
          description: A 400 indicates that the requested upload failed.
        '404':
          description: A 404 indicates that the file was not available for replacement.
        '415':
          description: Unsupported content type provided in http header or uploaded file.
      summary: Updating Import Messaging Tn order loas file [NANP]
      tags:
        - Hosted Messaging
  /accounts/{accountId}/importTnOrders/messaging/{orderId}/loas/{fileId}/metadata:
    delete:
      description: Deletes the metadata previously associated with the identified file.
      operationId: RemoveImportMessagingTnOrderLoasFileMetadata
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import Messaging Tn order's ID
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: File id with format
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4.pdf
          in: path
          name: fileId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: >-
            The 200 OK  indicates a successful deletion of the identified
            metadata.
        '404':
          description: >-
            A 404 indicates that the indicated file was not found in conjunction
            with the order id.cd
      summary: Removing Import Messaging Tn order loas file metadata [NANP]
      tags:
        - Hosted Messaging
    get:
      description: Retrieves the metadata associated with the file.
      operationId: ReadImportMessagingTnOrderLoasFileMetadata
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import Messaging Tn order's ID
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: File id with format
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4.pdf
          in: path
          name: fileId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <FileMetaData>
                         <DocumentName> [string] </DocumentName>
                         <DocumentType> [LOA | INVOICE | CSR | OTHER] </DocumentType>
                    </FileMetaData>
              schema:
                $ref: '#/components/schemas/fileMetaData'
          description: The Metatdata has been successfully retrieved.
        '404':
          description: >-
            a 404 indicates that the indicated file was not found in conjunction
            with the order id.
      summary: Fetch Import Messaging Tn order loas file metadata [NANP]
      tags:
        - Hosted Messaging
    put:
      description: >-
        Associate metadata with the file named in the resource path.  This will
        describe the file, and declare the data that is contained in the file,
        selected from a list of [LOA | INVOICE | CSR | OTHER].
      operationId: UpdateImportMessagingTnOrderLoasFileMetadata
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import Messaging Tn order's ID
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: File id with format
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4.pdf
          in: path
          name: fileId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <FileMetaData>
                       <DocumentName>fileName</DocumentName>
                       <DocumentType>LOA</DocumentType>
                  </FileMetaData>
            schema:
              $ref: '#/components/schemas/fileMetaDataRequest'
      responses:
        '200':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/fileMetaData'
          description: >-
            Successful update of the metadata associated with the identified
            file.
        '400':
          description: Some error has occured as a result of the attempt.
      summary: Updating Import Messaging Tn order loas file metadata [NANP]
      tags:
        - Hosted Messaging
  /accounts/{accountId}/importTnOrders/voice:
    get:
      description: >
        Retrieves the ImportVoiceTnOrder requests for the given account ID. A
        maximum of 1,000 orders can be retrieved per request. If no date range
        or specific query parameter (marked by <b class="required">*</b> below)
        is provided, the order results will be limited to the last two years.
      operationId: ReadImportVoiceTnOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/StatusQueryParam'
        - $ref: '#/components/parameters/TnQueryParam'
        - $ref: '#/components/parameters/CustomerOrderIdQueryParam'
        - $ref: '#/components/parameters/CreatedDateFromQueryParam'
        - $ref: '#/components/parameters/CreatedDateToQueryParam'
        - $ref: '#/components/parameters/ModifiedDateFromQueryParam'
        - $ref: '#/components/parameters/ModifiedDateToQueryParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ImportVoiceTnOrders>
                       <TotalCount>2</TotalCount>
                       <ImportVoiceTnOrderSummary>
                          <accountId>14</accountId>
                          <CountOfTNs>1</CountOfTNs>
                          <CustomerOrderId>CustomerOrderId</CustomerOrderId>
                          <userId>systemUser</userId>
                          <lastModifiedDate>2019-01-24T11:08:09.770Z</lastModifiedDate>
                          <OrderDate>2019-01-24T11:08:09.770Z</OrderDate>
                          <OrderType>import_voice_tn_orders</OrderType>
                          <OrderStatus>COMPLETE</OrderStatus>
                          <OrderId>211a103c-5f9c-4117-8833-c574bdc390fd</OrderId>
                       </ImportVoiceTnOrderSummary>
                       <ImportVoiceTnOrderSummary>
                          <accountId>14</accountId>
                          <CountOfTNs>2</CountOfTNs>
                          <CustomerOrderId>CustomerOrderId</CustomerOrderId>
                          <userId>systemUser</userId>
                          <lastModifiedDate>2019-01-24T10:43:16.934Z</lastModifiedDate>
                          <OrderDate>2019-01-24T10:43:16.934Z</OrderDate>
                          <OrderType>import_voice_tn_orders</OrderType>
                          <OrderStatus>PARTIAL</OrderStatus>
                          <OrderId>8dc32f09-2329-4c73-b702-526f46b02712</OrderId>
                       </ImportVoiceTnOrderSummary>
                    </ImportVoiceTnOrders>
              schema:
                $ref: '#/components/schemas/importVoiceTnOrdersResponseList'
          description: >-
            The descriptive payload for the importVoiceTnOrders query provides
            information about the orders found by the query, including the data
            associated with the order, the state of the order, and a list of the
            successfully imported Telephone Numbers, and descriptions of any
            encountered errors.
      summary: List Import Voice Tn orders
      tags:
        - Hosted Voice
    post:
      description: >-
        Creates an ImportVoiceTnOrders request to add numbers under the given
        site ID and sipPeer ID as specified in the body.

        We can either provide the list of telephone numbers or the range(s) of
        telephone numbers in the request.  

        A successfully submitted order will have a status of "RECEIVED". A
        successfully completed order will have a status of "COMPLETE" if all of
        the telephone numbers were successfully imported and  "PARTIAL" if some
        of the telephone numbers were imported. A failed order with will have a
        staus of "FAILED" and no telephone numbers would have been imported.
      operationId: CreateImportVoiceTnOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              With telephone numbers list:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <ImportVoiceTnOrder>
                     <CustomerOrderId>ICPA123ABC</CustomerOrderId>
                     <SiteId>743</SiteId>
                     <SipPeerId>303716</SipPeerId>
                     <VoiceConfigurationPackageId>8826e9fe-1f0a-4cb0-be37-85cad742686c</VoiceConfigurationPackageId>
                     <OperatorId>1</OperatorId>
                     <TelephoneNumbers>
                        <TelephoneNumber>+19199918388</TelephoneNumber>
                        <TelephoneNumber>+14158714245</TelephoneNumber>
                        <TelephoneNumber>+14352154439</TelephoneNumber>
                        <TelephoneNumber>+14352154466</TelephoneNumber>
                     </TelephoneNumbers>
                  </ImportVoiceTnOrder>
              With telephone numbers range:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <ImportVoiceTnOrder>
                     <CustomerOrderId>ICPA123ABC</CustomerOrderId>
                     <SiteId>743</SiteId>
                     <SipPeerId>303716</SipPeerId>
                     <VoiceConfigurationPackageId>8826e9fe-1f0a-4cb0-be37-85cad742686c</VoiceConfigurationPackageId>
                     <OperatorId>1</OperatorId>
                     <TelephoneNumbersRanges>
                        <TelephoneNumbersRange>
                          <From>+19199918388</From>
                          <To>+19199918400</To>
                        </TelephoneNumbersRange>
                        <TelephoneNumbersRange>
                          <From>+14158714245</From>
                          <To>+14158714252</To>
                        </TelephoneNumbersRange>
                     </TelephoneNumbersRanges>
                  </ImportVoiceTnOrder>
            schema:
              $ref: '#/components/schemas/importVoiceTnOrderRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                With telephone numbers list:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ImportVoiceTnOrderResponse>
                         <ImportVoiceTnOrder>
                            <CustomerOrderId>SJM000001</CustomerOrderId>
                            <OrderCreateDate>2018-01-20T02:59:54.000Z</OrderCreateDate>
                            <AccountId>9900012</AccountId>
                            <CreatedByUser>smckinnon</CreatedByUser>
                            <OrderId>b05de7e6-0cab-4c83-81bb-9379cba8efd0</OrderId>
                            <LastModifiedDate>2018-01-20T02:59:54.000Z</LastModifiedDate>
                            <SiteId>202</SiteId>
                            <SipPeerId>520565</SipPeerId>
                            <VoiceConfigurationPackageId>8826e9fe-1f0a-4cb0-be37-85cad742686c</VoiceConfigurationPackageId>
                            <OperatorId>1</OperatorId>
                            <TelephoneNumbers>
                               <TelephoneNumber>+19199918388</TelephoneNumber>
                               <TelephoneNumber>+14158714245</TelephoneNumber>
                               <TelephoneNumber>+14352154439</TelephoneNumber>
                               <TelephoneNumber>+14352154466</TelephoneNumber>
                            </TelephoneNumbers>
                            <ProcessingStatus>PROCESSING</ProcessingStatus>
                            <Errors/>
                         </ImportVoiceTnOrder>
                      </ImportVoiceTnOrderResponse>
                With telephone numbers range along with list:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ImportVoiceTnOrderResponse>
                        <ImportVoiceTnOrder>
                           <CustomerOrderId>ICPA123ABC</CustomerOrderId>
                           <SiteId>743</SiteId>
                           <SipPeerId>303716</SipPeerId>
                           <VoiceConfigurationPackageId>8826e9fe-1f0a-4cb0-be37-85cad742686c</VoiceConfigurationPackageId>
                           <OperatorId>1</OperatorId>
                           <TelephoneNumbersRanges>
                              <TelephoneNumbersRange>
                                <From>+12106078250</From>
                                <To>+12109678253</To>
                              </TelephoneNumbersRange>                  
                              <TelephoneNumbersRange>
                                <From>+12106078910</From>
                                <To>+12109678912</To>
                              </TelephoneNumbersRange>                  
                           </TelephoneNumbersRanges>                    
                           <TelephoneNumbers>
                              <TelephoneNumber>+12106078250</TelephoneNumber>
                              <TelephoneNumber>+12106078251</TelephoneNumber>
                              <TelephoneNumber>+12106078252</TelephoneNumber>
                              <TelephoneNumber>+12106078253</TelephoneNumber>
                              <TelephoneNumber>+12106078910</TelephoneNumber>
                              <TelephoneNumber>+12106078911</TelephoneNumber>
                              <TelephoneNumber>+12106078912</TelephoneNumber>
                           </TelephoneNumbers>
                        </ImportVoiceTnOrder>
                    </ImportVoiceTnOrderResponse>
              schema:
                $ref: '#/components/schemas/importVoiceTnOrderResponse'
          description: >-
            The order has been created and an order ID will be specified in the
            payload and in the header.
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ImportVoiceTnOrderResponse>
                       <ProcessingStatus>FAILED</ProcessingStatus>
                       <Errors>
                          <Code>7309</Code>
                          <Description>The site id was not supplied or is invalid.</Description>
                       </Errors>
                       <Errors>
                          <Code>7312</Code>
                          <Description>The sippeer id is invalid.</Description>
                       </Errors>
                       <Errors>
                         <Code>19021</Code>
                         <Description>Multiple operators are present for this country, operatorId is required to create this order</Description>
                       </Errors>
                       <Errors>
                         <Code>19022</Code>
                         <Description>OperatorId is not allowed in the request : number administration is not enabled for this country.</Description>
                       </Errors>
                       <Errors>
                         <Code>19026</Code>
                         <Description>Voice config Id required for this order.</Description>
                       </Errors>
                       <Errors>
                         <Code>19027</Code>
                         <Description>Feature VoiceConfigs is not enabled for this account.</Description>
                       </Errors>
                       <Errors>
                         <Code>7721</Code>
                         <Description>The voice configuration package ID is not associated with any existing configuration.</Description>
                       </Errors>
                    </ImportVoiceTnOrderResponse>
              schema:
                $ref: '#/components/schemas/importVoiceTnOrderError'
          description: >-
            The order failed; one of the input parameters is invalid. The error
            text and an error code will be provided in the ErrorList
            element.</p> <table cellspacing="0" cellpadding="0" width="624">
                    <tbody>
                        <tr>
                            <td valign="top">
                                <p>
                                    <strong>ErrorCode</strong>
                                </p>
                            </td>
                            <td valign="top">
                                <p>
                                    <strong>Description</strong>
                                </p>
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    25010
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    The account does not have permission to use the endpoint requested, please contact support if you believe you should have permission.
                                </p>
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    5052
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    Customer order ID is invalid. Only alphanumeric values, dashes and spaces are allowed. Max length is 255 characters.
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    1003
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    SiteId is required.
                                </p>
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    5073
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    Telephone number is required.
                                </p>
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    5095
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    The count of telephone numbers in order exceeds the maximum size of 5000.
                                </p>
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    1003
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    TelephoneNumbers is required.
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    5070
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    Telephone number is invalid.
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    5093
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    Order cannot contain duplicate telephone numbers.
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    5070
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    Telephone number is invalid.
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    19022
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    operatorId is not allowed in the request because number administration is not enabled for this country.
                            </td>
                        </tr>
                            <td valign="top">
                                <p>
                                    19021
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    Multiple operators are present for this account, Oprator Id Required for this Order.
                                   Operator id is Optional if account have less then two operator for the country.
                            </td>
                        </tr>            
              <tr>
                            <td valign="top">
                                <p>
                                    19026
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    Voice config Id required for this order.
                            </td>
                        </tr>
               <tr>
                            <td valign="top">
                                <p>
                                    19027
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    Feature VoiceConfigs is not enabled for this account.
                            </td>
                        </tr>
                    <tr>
                            <td valign="top">
                                <p>
                                    7721
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    The voice configuration package ID is not associated with any existing configuration.
                            </td>
                        </tr>
                  </tbody>
                </table>
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ImportVoiceTnOrderResponse>
                       <ProcessingStatus>FAILED</ProcessingStatus>
                       <Errors>
                          <Code>8000</Code>
                          <Description>Operator Info Not Found</Description>
                       </Errors>
                    </ImportVoiceTnOrderResponse>
              schema:
                $ref: '#/components/schemas/importVoiceTnOrderError'
          description: >-
            The order failed; one of the input parameters is invalid. The error
            text and an error code will be provided in the ErrorList
            element.</p> <table cellspacing="0" cellpadding="0" width="624">
                    <tbody>
                        <tr>
                            <td valign="top">
                                <p>
                                    <strong>ErrorCode</strong>
                                </p>
                            </td>
                            <td valign="top">
                                <p>
                                    <strong>Description</strong>
                                </p>
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    8000
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    Operator Info Not Found.
                                </p>
                            </td>
                        </tr>
                            </tbody>
                </table>
      summary: Import Voice Tn order
      tags:
        - Hosted Voice
  /accounts/{accountId}/importTnOrders/voice/{orderId}:
    get:
      description: Retrieve information about a importVoiceTnOrder with specified ID.
      operationId: ReadImportVoiceTnOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example when order is created with list of telephone numbers:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ImportTnOrder>
                       <OrderCreateDate>2018-01-09T02:58:04.615Z</OrderCreateDate>
                       <AccountId>9900012</AccountId>
                       <CreatedByUser>sjm</CreatedByUser>
                       <OrderId>bf1305b8-8998-1111-2222-51ba3ce52d4e</OrderId>
                       <LastModifiedDate>2018-01-09T02:58:05.298Z</LastModifiedDate>
                       <SiteId>65487</SiteId>
                       <SipPeerId>885544</SipPeerId>
                       <TelephoneNumbers>
                          <TelephoneNumber>+12106078250</TelephoneNumber>
                          <TelephoneNumber>+12109678273</TelephoneNumber>
                          <TelephoneNumber>+12109678331</TelephoneNumber>
                          <TelephoneNumber>+12109678337</TelephoneNumber>
                          <TelephoneNumber>+12266401468</TelephoneNumber>
                          </TelephoneNumbers>
                       <ProcessingStatus>PARTIAL</ProcessingStatus>
                       <Errors>
                          <Error>
                             <Code>19013</Code>
                             <Description>Numbers already exist</Description>
                             <TelephoneNumbers>
                                <TelephoneNumber>+12262665583</TelephoneNumber>
                             </TelephoneNumbers>
                          </Error>
                       </Errors>
                    </ImportTnOrder>
                example when order is created with range of telephone numbers:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ImportTnOrder>
                       <OrderCreateDate>2018-01-09T02:58:04.615Z</OrderCreateDate>
                       <AccountId>9900012</AccountId>
                       <CreatedByUser>sjm</CreatedByUser>
                       <OrderId>bf1305b8-8998-1111-2222-51ba3ce52d4e</OrderId>
                       <LastModifiedDate>2018-01-09T02:58:05.298Z</LastModifiedDate>
                       <SiteId>65487</SiteId>
                       <SipPeerId>885544</SipPeerId>
                       <TelephoneNumbersRanges>
                          <TelephoneNumbersRange>
                            <From>+12106078250</From>
                            <To>+12109678253</To>
                          </TelephoneNumbersRange>                  
                          <TelephoneNumbersRange>
                            <From>+12106078910</From>
                            <To>+12109678912</To>
                          </TelephoneNumbersRange>                  
                       </TelephoneNumbersRanges>                    
                       <TelephoneNumbers>
                          <TelephoneNumber>+12106078250</TelephoneNumber>
                          <TelephoneNumber>+12106078251</TelephoneNumber>
                          <TelephoneNumber>+12106078252</TelephoneNumber>
                          <TelephoneNumber>+12106078253</TelephoneNumber>
                          <TelephoneNumber>+12106078910</TelephoneNumber>
                          <TelephoneNumber>+12106078911</TelephoneNumber>
                          <TelephoneNumber>+12106078912</TelephoneNumber>
                       </TelephoneNumbers>
                       <ProcessingStatus>PARTIAL</ProcessingStatus>
                       <Errors>
                          <Error>
                             <Code>19013</Code>
                             <Description>Numbers already exist</Description>
                             <TelephoneNumbers>
                                <TelephoneNumber>+12262665583</TelephoneNumber>
                             </TelephoneNumbers>
                          </Error>
                       </Errors>
                    </ImportTnOrder>
                example with VCP:
                  value: |
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ImportTnOrder>
                       <OrderCreateDate>2018-01-09T02:58:04.615Z</OrderCreateDate>
                       <AccountId>9900012</AccountId>
                       <CreatedByUser>sjm</CreatedByUser>
                       <OrderId>bf1305b8-8998-1111-2222-51ba3ce52d4e</OrderId>
                       <LastModifiedDate>2018-01-09T02:58:05.298Z</LastModifiedDate>
                       <SiteId>65487</SiteId>
                       <SipPeerId>885544</SipPeerId>
                       <VoiceConfigurationPackageId>8826e9fe-1f0a-4cb0-be37-85cad742686c</VoiceConfigurationPackageId>
                       <OperatorId>1</OperatorId>
                       <TelephoneNumbers>
                          <TelephoneNumber>+12106078250</TelephoneNumber>
                          <TelephoneNumber>+12109678273</TelephoneNumber>
                          <TelephoneNumber>+12109678331</TelephoneNumber>
                          <TelephoneNumber>+12109678337</TelephoneNumber>
                          <TelephoneNumber>+12266401468</TelephoneNumber>
                        </TelephoneNumbers>
                       <ProcessingStatus>MISSING_REQUIREMENTS</ProcessingStatus>
                       <MissingRequirements>
                          <MissingRequirement>
                            <Requirement>HOSTED_VOICE_DOCUMENTS</Requirement>
                            <Description>Mandat de Collecte</Description>
                            <DocumentType>MANDAT_DE_COLLECTE</Description>
                          </MissingRequirement>
                          <MissingRequirement>
                            <Requirement>HOSTED_VOICE_DOCUMENTS</Requirement>
                            <Description>Numbering Certificate</Description>
                            <DocumentType>NUMBERING_CERTIFICATE</Description>
                          </MissingRequirement>
                      </MissingRequirements>
                    </ImportTnOrder>
                example with VCP and range of telephone numbers:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ImportTnOrder>
                       <OrderCreateDate>2018-01-09T02:58:04.615Z</OrderCreateDate>
                       <AccountId>9900012</AccountId>
                       <CreatedByUser>sjm</CreatedByUser>
                       <OrderId>bf1305b8-8998-1111-2222-51ba3ce52d4e</OrderId>
                       <LastModifiedDate>2018-01-09T02:58:05.298Z</LastModifiedDate>
                       <SiteId>65487</SiteId>
                       <SipPeerId>885544</SipPeerId>
                       <VoiceConfigurationPackageId>8826e9fe-1f0a-4cb0-be37-85cad742686c</VoiceConfigurationPackageId>
                       <OperatorId>1</OperatorId>
                       <TelephoneNumbersRanges>
                          <TelephoneNumbersRange>
                            <From>+12106078250</From>
                            <To>+12109678253</To>
                          </TelephoneNumbersRange>                  
                          <TelephoneNumbersRange>
                            <From>+12106078910</From>
                            <To>+12109678912</To>
                          </TelephoneNumbersRange>                  
                       </TelephoneNumbersRanges>                    
                       <TelephoneNumbers>
                          <TelephoneNumber>+12106078250</TelephoneNumber>
                          <TelephoneNumber>+12106078251</TelephoneNumber>
                          <TelephoneNumber>+12106078252</TelephoneNumber>
                          <TelephoneNumber>+12106078253</TelephoneNumber>
                          <TelephoneNumber>+12106078910</TelephoneNumber>
                          <TelephoneNumber>+12106078911</TelephoneNumber>
                          <TelephoneNumber>+12106078912</TelephoneNumber>
                       </TelephoneNumbers>
                       <ProcessingStatus>MISSING_REQUIREMENTS</ProcessingStatus>
                       <MissingRequirements>
                          <MissingRequirement>
                            <Requirement>HOSTED_VOICE_DOCUMENTS</Requirement>
                            <Description>MANDAT_DE_COLLECTE</Description>
                          </MissingRequirement>
                          <MissingRequirement>
                            <Requirement>HOSTED_VOICE_DOCUMENTS</Requirement>
                            <Description>NUMBERING_CERTIFICATE</Description>
                          </MissingRequirement>
                      </MissingRequirements>
                    </ImportTnOrder>
              schema:
                $ref: '#/components/schemas/importVoiceTnOrderResponse'
          description: >-
            The information has been successfully retrieved and displayed in the
            payload. <table cellspacing="0" cellpadding="0" width="624">
                    <tbody>
                        <tr>
                            <td valign="top">
                                <p>
                                    <strong>ErrorCode</strong>
                                </p>
                            </td>
                            <td valign="top">
                                <p>
                                    <strong>Description</strong>
                                </p>
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    19014
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    Numbers cannot be imported by this account at this time.
                                </p>
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    5061
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    The SiteId submitted is invalid.
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    5023
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    SIP peer submitted is invalid.
                                </p>
                            </td>
                        </tr>            
                    </tbody>
                </table>
      summary: Fetch Import Voice Tn order status
      tags:
        - Hosted Voice
  /accounts/{accountId}/importTnOrders/voice/{orderId}/documents:
    get:
      description: >-
        List all import voice tn order documents. The results are sorted by last
        updated time in reverse chronological order by default without any query
        filters.
      operationId: listImportTnOrdersVoiceDocuments
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
        - $ref: '#/components/parameters/customReferenceQueryParam_eq_startsWith'
      responses:
        '200':
          $ref: '#/components/responses/listHostedVoiceDocumentsSuccess'
        '400':
          $ref: '#/components/responses/badRequestError'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '403':
          $ref: '#/components/responses/forbiddenError'
        '404':
          $ref: '#/components/responses/notFoundError'
        '405':
          $ref: '#/components/responses/notAllowedError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '500':
          $ref: '#/components/responses/internalServerError'
      summary: List Import Voice Tn order Documents
      tags:
        - Hosted Voice
    post:
      description: Create an import voice tn order document.
      operationId: addImportTnOrdersVoiceDocuments
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
      requestBody:
        $ref: '#/components/requestBodies/addHostedVoiceDocumentRequest'
      responses:
        '201':
          $ref: '#/components/responses/createHostedVoiceDocumentSuccess'
        '400':
          $ref: '#/components/responses/badRequestError'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '403':
          $ref: '#/components/responses/forbiddenError'
        '404':
          $ref: '#/components/responses/notFoundError'
        '405':
          $ref: '#/components/responses/notAllowedError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '500':
          $ref: '#/components/responses/internalServerError'
      summary: Add Import Voice Tn order Documents
      tags:
        - Hosted Voice
  /accounts/{accountId}/importTnOrders/voice/{orderId}/documents/{documentId}:
    delete:
      description: delete an import voice tn order documents.
      operationId: deleteImportTnOrdersVoiceDocuments
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
        - $ref: '#/components/parameters/documentIdPathParam'
      responses:
        '200':
          $ref: '#/components/responses/deleteHostedVoiceDocumentSuccess'
        '400':
          $ref: '#/components/responses/badRequestError'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '403':
          $ref: '#/components/responses/forbiddenError'
        '404':
          $ref: '#/components/responses/notFoundError'
        '405':
          $ref: '#/components/responses/notAllowedError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '500':
          $ref: '#/components/responses/internalServerError'
      summary: Delete Import Voice Tn order Documents
      tags:
        - Hosted Voice
    get:
      description: Get an import voice tn order document.
      operationId: getImportTnOrdersVoiceDocuments
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
        - $ref: '#/components/parameters/documentIdPathParam'
      responses:
        '200':
          $ref: '#/components/responses/getHostedVoiceDocumentSuccess'
        '400':
          $ref: '#/components/responses/badRequestError'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '403':
          $ref: '#/components/responses/forbiddenError'
        '404':
          $ref: '#/components/responses/notFoundError'
        '405':
          $ref: '#/components/responses/notAllowedError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '500':
          $ref: '#/components/responses/internalServerError'
      summary: Get Import Voice Tn order Documents
      tags:
        - Hosted Voice
    patch:
      description: Update an import voice tn order document attributes.
      operationId: updateImportTnOrdersVoiceDocumentAttributes
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
        - $ref: '#/components/parameters/documentIdPathParam'
      requestBody:
        $ref: '#/components/requestBodies/updateHostedVoiceDocumentRequest'
      responses:
        '200':
          $ref: '#/components/responses/updateHostedVoiceDocumentSuccess'
        '400':
          $ref: '#/components/responses/badRequestError'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '403':
          $ref: '#/components/responses/forbiddenError'
        '404':
          $ref: '#/components/responses/notFoundError'
        '405':
          $ref: '#/components/responses/notAllowedError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '500':
          $ref: '#/components/responses/internalServerError'
      summary: Update Import Voice Tn order Document Attributes
      tags:
        - Hosted Voice
    put:
      description: Update an import voice tn order document.
      operationId: updateImportTnOrdersVoiceDocuments
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
        - $ref: '#/components/parameters/documentIdPathParam'
      requestBody:
        $ref: '#/components/requestBodies/addHostedVoiceDocumentRequest'
      responses:
        '201':
          $ref: '#/components/responses/createHostedVoiceDocumentSuccess'
        '400':
          $ref: '#/components/responses/badRequestError'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '403':
          $ref: '#/components/responses/forbiddenError'
        '404':
          $ref: '#/components/responses/notFoundError'
        '405':
          $ref: '#/components/responses/notAllowedError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '500':
          $ref: '#/components/responses/internalServerError'
      summary: Update Import Voice Tn order Documents
      tags:
        - Hosted Voice
  /accounts/{accountId}/importTnOrders/voice/{orderId}/documents/{documentId}/download:
    get:
      description: Download an import voice tn order document.
      operationId: downloadImportTnOrdersVoiceDocuments
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
        - $ref: '#/components/parameters/documentIdPathParam'
      responses:
        '200':
          $ref: '#/components/responses/downloadDocumentSuccess'
        '400':
          $ref: '#/components/responses/badRequestError'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '403':
          $ref: '#/components/responses/forbiddenError'
        '404':
          $ref: '#/components/responses/notFoundError'
        '405':
          $ref: '#/components/responses/notAllowedError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '500':
          $ref: '#/components/responses/internalServerError'
      summary: Download Import Voice Tn order Documents
      tags:
        - Hosted Voice
  /accounts/{accountId}/importTnOrders/voice/{orderId}/history:
    get:
      description: Retrieves the history of the specified importVoiceTnOrder.
      operationId: ReadImportVoiceTnOrderHistory
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <OrderHistoryWrapper>
                       <OrderHistory>
                          <OrderDate>2015-06-16T14:03:10.225Z</OrderDate>
                          <Note>Import Voice TN order is received.</Note>
                          <Author>admin</Author>
                          <Status>RECEIVED</Status>
                        </OrderHistory>
                        <OrderHistory>
                          <OrderDate>2015-06-16T14:03:10.330Z</OrderDate>
                          <Note>Import TN order is processing.</Note>
                          <Author>admin</Author>
                          <Status>PROCESSING</Status>
                       </OrderHistory>
                       <OrderHistory>
                          <OrderDate>2015-06-16T14:03:10.789Z</OrderDate>
                          <Note>Import Voice TN order is partial.</Note>
                          <Author>admin</Author>
                          <Status>PARTIAL</Status>
                       </OrderHistory>
                    </OrderHistoryWrapper>
              schema:
                $ref: '#/components/schemas/orderHistoryWrapper'
          description: >-
            The history has been successfully retrieved and displayed in the
            payload.
      summary: Fetch Import Voice Tn order history
      tags:
        - Hosted Voice
  /accounts/{accountId}/lnpchecker:
    post:
      description: >-
        This API endpoint is used to check whether one or more phone numbers,
        from the United States or Canada, can be ported into the Bandwidth
        Network.

        The fullcheck query parameter values control the components of the
        response payload that is returned.

        <p>Please visit <a
        href='/docs/numbers/porting/port-ins/stand-alone-portins/lnpChecker'>Guides
        and Tutorials</a> to learn more.</p>

        <p>Please use the <a
        href='/apis/numbers-apis/numbers/#tag/Porting/operation/checkPortability'>Global
        Portability checker API</a> to check the portability of numbers from any
        supported country.</p>
      operationId: RequestPortabilityInfo
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            <p>`fullCheck` controls the components of the response payload that
            is returned</p><table>
                <tr>
                    <th>Parameter Value</th>
                    <th>Description</th>
                </tr>
                <tr>
                    <td>true</td>
                    <td>additional information will be provided on the losing carriers associated with the listed numbers</td>
                </tr>
                <tr>
                    <td>false</td>
                    <td>return only rate center information</td>
                </tr>
                <tr>
                    <td>onnetportability</td>
                    <td>Provides rate center and losing carrier information for onnet tiers only</td>
                </tr>
                <tr>
                    <td>offnetportability</td>
                    <td>in addition to on-net information return off-net port information in <i>&lt;PartnerSupportedRateCenters&gt;</i> element with Partner/Vendor that the port will be supported on. 
                    Contains a list of the TNs that are supported in partner rate centers, and for which we will execute a port if requested
                    </td>
                </tr>
            </table>

            <b>IMPORTANT:</b> If your account supports off-net telephone numbers
            (tiers other than tier zero), you <b>MUST</b> include query
            parameter fullCheck=offnetportability in your /lnpchecker request.
            Failure to do so will cause off-net telephone numbers to appear as
            though they are not portable.
          example: offnetportability
          in: query
          name: fullCheck
          required: false
          schema:
            default: 'false'
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <NumberPortabilityRequest>
                     <TnList>
                     <!-- the list of the TNs to check for Portability -->
                        <Tn>+14109255199</Tn>
                        <Tn>+14109235436</Tn>
                        <Tn>+14104685864</Tn>
                        <Tn>+14103431313</Tn>
                        <Tn>+14103154313</Tn>
                        <Tn>+14103431561</Tn>
                        <Tn>+12174101103</Tn>
                     </TnList>
                  </NumberPortabilityRequest>
            schema:
              $ref: '#/components/schemas/numberPortabilityRequest'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: >-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

                    <NumberPortabilityResponse>
                        <PortType>AUTOMATED</PortType>
                        <SupportedRateCenters/>
                        <UnsupportedRateCenters>
                            <RateCenterGroup>
                                <RateCenter>BALTIMORE</RateCenter>
                                <City>BALTIMORE</City>
                                <State>MD</State>
                                <LATA>238</LATA>
                                <TnList>
                                    <Tn>+14109255199</Tn>
                                    <Tn>+14104685864</Tn>
                                </TnList>
                            </RateCenterGroup>
                            <RateCenterGroup>
                                <RateCenter>SPARKSGLNC</RateCenter>
                                <City>SPARKS GLENCOE</City>
                                <State>MD</State>
                                <LATA>238</LATA>
                                <TnList>
                                    <Tn>+14103431313</Tn>
                                    <Tn>+14103431561</Tn>
                                </TnList>
                            </RateCenterGroup>
                        </UnsupportedRateCenters>
                        <PartnerSupportedRateCenters>
                    <!-- Only available for fullCheck=offnetportability -->
                            <RateCenterGroup>
                                <RateCenter>FT COLLINS</RateCenter>
                                <City>FORT COLLINS</City>
                                <State>CO</State>
                                <LATA>656</LATA>
                                <Tiers>
                                    <Tier>1</Tier>
                                </Tiers>
                                <TnList>
                                    <Tn>+14109235436</Tn>
                                </TnList>
                            </RateCenterGroup>
                            <RateCenterGroup>
                                <Vendor>Level 3</Vendor>
                                <AutomatedPort>true</AutomatedPort>
                    <!-- Only available when 'Automated Level 3 port-ins' is
                    enabled -->
                                <RateCenter>BEASON</RateCenter>
                                <City>BEASON</City>
                                <State>IL</State>
                                <LATA>366</LATA>
                                <Tiers>
                                    <Tier>3</Tier>
                                </Tiers>
                                <TnList>
                                    <Tn>+12174101103</Tn>
                                </TnList>
                            </RateCenterGroup>
                        </PartnerSupportedRateCenters>
                        <SupportedLosingCarriers>
                            <LosingCarrierTnList>
                                <LosingCarrierSPID>9998</LosingCarrierSPID>
                                <LosingCarrierName>Test Losing Carrier L3</LosingCarrierName>
                                <LosingCarrierIsWireless>false</LosingCarrierIsWireless>
                                <LosingCarrierAccountNumberRequired>false</LosingCarrierAccountNumberRequired>
                                <LosingCarrierMinimumPortingInterval>5</LosingCarrierMinimumPortingInterval>
                                <TnList>
                                    <Tn>+14109255199</Tn>
                                    <Tn>+14104685864</Tn>
                                    <Tn>+14103431313</Tn>
                                    <Tn>+14103431561</Tn>
                                </TnList>
                            </LosingCarrierTnList>
                            <LosingCarrierTnList>
                                <LosingCarrierSPID>7482</LosingCarrierSPID>
                                <LosingCarrierName>IntegraTelecom</LosingCarrierName>
                                <LosingCarrierIsWireless>false</LosingCarrierIsWireless>
                                <LosingCarrierAccountNumberRequired>false</LosingCarrierAccountNumberRequired>
                                <LosingCarrierMinimumPortingInterval>1</LosingCarrierMinimumPortingInterval>
                                <TnList>
                                    <Tn>+12174101103</Tn>
                                </TnList>
                            </LosingCarrierTnList>
                        </SupportedLosingCarriers>
                        <UnsupportedLosingCarriers/>
                    </NumberPortabilityResponse>
              schema:
                $ref: '#/components/schemas/numberPortabilityResponse'
          description: >-
            A successful check has been performed. Note: For users of Enterprise
            Telephony accounts SupportedLosingCarriers

            and UnsupportedLosingCarriers will be omitted from the success
            output even when query parameter

            fullCheck has values of true, onnetportability, or
            offnetportability.
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <NumberPortabilityResponse>
                        <Errors>
                            <Code>7201</Code>
                            <Description>+161746052083 is not a valid NANP telephone number.</Description>
                        </Errors>
                        <Errors>
                            <Code>7201</Code>
                            <Description>+161746052082 is not a valid NANP telephone number.</Description>
                        </Errors>
                    </NumberPortabilityResponse>
          description: >-
            Bad Response - there were errors in evaluating the body of the
            request

            Potential errors include:

            <ul>
              <li> Telephone number is not a 10-digit NANP number. </li>
              <li> Telephone number is already being processed on another order. </li>
              <li> Rate Center Not Present in Bandwidth App API. </li>
              <li> Account not enabled for LNP. </li>
            </ul>
      summary: Request portability information for a set of TNs
      tags:
        - Porting
  /accounts/{accountId}/lsrorders:
    get:
      description: >-
        Retrieves a list of LSR oders.  Various query parameters can be used to
        filter the list of LSR Orders as documented below. A maximum of 1,000
        orders can be retrieved per request. If no date range or specific query
        parameter (marked by <b class="required">*</b> below) is provided, the
        order results will be limited to the last two years. 

        Please visit <a href='/docs/numbers/porting/port-outs/lsrs'>Guides and
        Tutorials</a>
      operationId: ListLsrOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The status of the LSR order being searched for.
          example: EXCEPTION
          in: query
          name: status
          required: false
          schema:
            items:
              type: string
            type: array
        - description: A Telephone Number (TN) that is referenced in the order.
          example: '+19199918388'
          in: query
          name: tn
          required: true
          schema:
            type: string
        - description: The PON that is referenced in the LSR order.
          example: Available
          in: query
          name: pon
          required: true
          schema:
            type: string
        - description: >-
            The Customer Order ID is an ID assigned by the account owner to
            provide a reference number for the port.
          example: ABCCorp12345
          in: query
          name: customerOrderId
          required: true
          schema:
            type: string
        - description: >-
            This search parameter represents the internal Bandwidth App API ID
            that has been assigned to the LSR Order.  This parameter is the
            first few characters of the internal ID - the entire ID does not
            need to be specified.
          example: ed1c0bed-e2
          in: query
          name: orderIdFragment
          required: true
          schema:
            type: string
        - description: >
            Checks the order's creation date against this value. Orders that
            have a creation date after this date will be included. Format is
            yyyy-MM-dd
          example: '2015-10-22'
          in: query
          name: createdDateFrom
          required: false
          schema:
            format: date
            type: string
        - description: >
            Checks the order's creation date against this value. Orders that
            have a creation date before this date will be included. Format is
            yyyy-MM-dd
          example: '2015-10-25'
          in: query
          name: createdDateTo
          required: false
          schema:
            format: date
            type: string
        - description: >-
            For Date-based searches, the starting date of a date range
            (inclusive) that will be used to find LSR Orders that were modified
            within the date range. It is in the form yyyy-MM-dd.
          example: '2013-10-22'
          in: query
          name: modifiedDateFrom
          required: false
          schema:
            type: string
        - description: >-
            For Date-based searches, the ending date of a date range (inclusive)
            that will be used to find LSR Orders that were modified within the
            date range. It is in the form yyyy-MM-dd.
          example: '2013-10-25'
          in: query
          name: modifiedDateTo
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LsrOrders>
                        <TotalCount>5</TotalCount>
                        <LsrOrderSummary>
                            <accountId>9999999</accountId>
                            <CountOfTNs>2</CountOfTNs>
                            <CustomerOrderId>FineCustomerid</CustomerOrderId>
                            <userId>team_ua</userId>
                            <lastModifiedDate>2015-03-02T09:10:16.193Z</lastModifiedDate>
                            <OrderType>lsr</OrderType>
                            <OrderDate>2015-03-25T11:44:42.941Z</OrderDate>
                            <OrderStatus>PENDING</OrderStatus>
                            <ActualFocDate>2015-03-25</ActualFocDate>
                            <BillingTelephoneNumber>+12526795000</BillingTelephoneNumber>
                            <CreatedByUser>lsrOnlyUser</CreatedByUser>
                            <OrderId>7d644c88-ef23-4307-96ab-20253666d0c7</OrderId>
                            <Pon>ATT-011515-324234</Pon>
                            <PonVersion>0</PonVersion>
                            <RequestedFocDate>2015-11-15</RequestedFocDate>
                        </LsrOrderSummary>
                        <!-- SNIP -->
                        <LsrOrderSummary>
                            <accountId>9999999</accountId>
                            <CountOfTNs>2</CountOfTNs>
                            <CustomerOrderId>MyId5</CustomerOrderId>
                            <lastModifiedDate>2015-03-03T14:07:19.926Z</lastModifiedDate>
                            <OrderType>lsr</OrderType>
                            <OrderDate>2015-03-25T11:44:42.941Z</OrderDate>
                            <OrderStatus>FAILED</OrderStatus>
                            <Errors>
                                <Error>
                                    <Code>17008</Code>
                                    <Description>
                                        FOC date cannot fall on a holiday
                                    </Description>
                                </Error>
                            </Errors>
                            <ActualFocDate>2015-03-25</ActualFocDate>
                            <BillingTelephoneNumber>+12526795000</BillingTelephoneNumber>
                            <CreatedByUser>lsrOnlyUser</CreatedByUser>
                            <OrderId>00cf7e08-cab0-4515-9a77-2d0a7da09415</OrderId>
                            <Pon>testpon1002</Pon>
                            <PonVersion>0</PonVersion>
                            <RequestedFocDate>2015-11-15</RequestedFocDate>
                        </LsrOrderSummary>
                    </LsrOrders>
              schema:
                $ref: '#/components/schemas/lsrOrderHistoryResponse'
          description: >-
            The LSR orders have been successfully retrieved and displayed in the
            payload.
        '404':
          description: >-
            Not Found.  If any errors are found in the processing of the query
            string a 404 will be returned.  Note that parameters that are not
            recognized are not considered errors, and are just ignored.
      summary: List LSR orders
      tags:
        - Porting
    post:
      description: >-
        A POST creates a LSR order request to initiate a port-out action. 

        Please visit <a href='/docs/numbers/porting/port-outs/lsrs'>Guides and
        Tutorials</a>
      operationId: CreateLsrOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <LsrOrder>
                      <Pon>ATT-011515-324234</Pon>
                      <CustomerOrderId>FineCustomerid</CustomerOrderId>
                      <SPID>123C</SPID>
                      <BillingTelephoneNumber>+19192381468</BillingTelephoneNumber>
                      <RequestedFocDate>2015-11-15</RequestedFocDate>
                      <AuthorizingPerson>Jim Hopkins</AuthorizingPerson>
                      <Subscriber>
                          <SubscriberType>BUSINESS</SubscriberType>
                          <BusinessName>BusinessName</BusinessName>
                          <ServiceAddress>
                              <HouseNumber>11</HouseNumber>
                              <StreetName>Park</StreetName>
                              <StreetSuffix>Ave</StreetSuffix>
                              <City>New York</City>
                              <StateCode>NY</StateCode>
                              <Zip>90025</Zip>
                          </ServiceAddress>
                          <AccountNumber>123463</AccountNumber>
                          <PinNumber>1231</PinNumber>
                      </Subscriber>

                      <ListOfTelephoneNumbers>
                          <TelephoneNumber>+19192381468</TelephoneNumber>
                          <TelephoneNumber>+19192381467</TelephoneNumber>
                      </ListOfTelephoneNumbers>
                  </LsrOrder>
            schema:
              $ref: '#/components/schemas/lsrOrder'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LsrOrderResponse>
                        <LsrOrder>
                            <OrderId>afce454a-4e89-4753-9f58-a442ebc7b142</OrderId>
                            <CustomerOrderId>FineCustomerid</CustomerOrderId>
                            <LastModifiedBy>team_ua</LastModifiedBy>
                            <OrderCreateDate>2015-02-06T12:57:45.607Z</OrderCreateDate>
                            <PeerId>0</PeerId>
                            <AccountId>9999999</AccountId>
                            <SPID>123C</SPID>
                            <LastModifiedDate>2015-02-09T13:07:57.286Z</LastModifiedDate>
                            <SiteId>0</SiteId>
                            <CreatedByUser>team_ua</CreatedByUser>
                            <OrderStatus>PENDING</OrderStatus>
                            <BillingTelephoneNumber>+19192381468</BillingTelephoneNumber>
                            <Pon>ATT-011515-324234</Pon>
                            <PonVersion>8</PonVersion>
                            <RequestedFocDate>2015-02-25 00:00:00</RequestedFocDate>
                            <AuthorizingPerson>Jim Hopkins</AuthorizingPerson>
                            <Subscriber>
                                <SubscriberType>BUSINESS</SubscriberType>
                                <BusinessName>BusinessName</BusinessName>
                                <AccountNumber>123463</AccountNumber>
                                <PinNumber>1231</PinNumber>
                                <ServiceAddress>
                                    <HouseNumber>11</HouseNumber>
                                    <StreetName>Park</StreetName>
                                    <StreetSuffix>Ave</StreetSuffix>
                                    <City>New York</City>
                                    <StateCode>NY</StateCode>
                                    <Zip>90025</Zip>
                                    <Country>United States</Country>
                                </ServiceAddress>
                            </Subscriber>
                            <ListOfTelephoneNumbers>
                                <TelephoneNumber>+19192381468</TelephoneNumber>
                                <TelephoneNumber>+19192381467</TelephoneNumber>
                                <TelephoneNumber>+19192381469</TelephoneNumber>
                            </ListOfTelephoneNumbers>
                        </LsrOrder>
                    </LsrOrderResponse>
              schema:
                $ref: '#/components/schemas/lsrOrderResponse'
          description: >-
            The 201 response indicates that LSR order request has been
            successfully created.
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LsrOrderResponse>
                      <ResponseStatus>
                          <ErrorCode>400</ErrorCode>
                          <Description>Lsr order doesn't pass validation. Please check your input parameters.</Description>
                      </ResponseStatus>
                      <LsrOrderErrors>
                          <LsrOrderError>
                              <Code>7324</Code>
                              <Description>The business name is too long. The business name should not be longer than 25 characters.</Description>
                          </LsrOrderError>
                          <LsrOrderError>
                              <Code>7318</Code>
                              <Description>Customer order ID is invalid. Only alphanumeric values, dashes and spaces are allowed. Max length is 40 characters.</Description>
                          </LsrOrderError>
                          <LsrOrderError>
                              <Code>7203</Code>
                              <Description>The billing telephone number (BTN) is invalid</Description>
                          </LsrOrderError>
                          <LsrOrderError>
                              <Code>16005</Code>
                              <Description>Toll-free telephone numbers can be present in the lsr order.</Description>
                          </LsrOrderError>
                          <LsrOrderError>
                              <Code>16009</Code>
                              <Description>Lsr order contain duplicate telephone numbers: [+19192381468, +19192381468]</Description>
                          </LsrOrderError>
                          <LsrOrderError>
                              <Code>16002</Code>
                              <Description>Order contains invalid tns: [+18882381468].</Description>
                          </LsrOrderError>
                      </LsrOrderErrors>
                      <LsrOrder>
                          <CustomerOrderId>WrongCustomerOrderIdLogerThan40AndContains$%SpecSimbols</CustomerOrderId>
                          <LastModifiedBy>team_ua</LastModifiedBy>
                          <OrderCreateDate>2015-02-06T12:57:45.607Z</OrderCreateDate>
                          <AccountId>0</AccountId>
                          <CreatedByUser>team_ua</CreatedByUser>
                          <OrderStatus>FAILED</OrderStatus>
                          <BillingTelephoneNumber>+19192384661</BillingTelephoneNumber>
                          <Pon>ATT-011515-324234%$</Pon>
                          <AuthorizingPerson>Jim Hopkins</AuthorizingPerson>
                          <Subscriber>
                              <SubscriberType>BUSINESS</SubscriberType>
                              <BusinessName>LongerThan25CharacterBusinessName</BusinessName>
                              <AccountNumber>123463</AccountNumber>
                              <PinNumber>1231</PinNumber>
                              <ServiceAddress>
                                  <HouseNumber>11</HouseNumber>
                                  <StreetName>Park</StreetName>
                                  <StreetSuffix>Ave</StreetSuffix>
                                  <City>New York</City>
                                  <StateCode>NY</StateCode>
                                  <Zip>90025</Zip>
                                  <Country>United States</Country>
                              </ServiceAddress>
                          </Subscriber>
                          <ListOfTelephoneNumbers>
                              <TelephoneNumber>+19192381468</TelephoneNumber>
                              <TelephoneNumber>+19192381468</TelephoneNumber>
                              <TelephoneNumber>+19192381468</TelephoneNumber>
                          </ListOfTelephoneNumbers>
                      </LsrOrder>
                    </LsrOrderResponse>
              schema:
                $ref: '#/components/schemas/lsrOrderErrorResponse'
          description: >-
            Bad request shows that LSR order request does not pass validation.
            Fror more info see LsrOrderErrors section in response.
      summary: Create LSR order - initiate a port-out action
      tags:
        - Porting
  /accounts/{accountId}/lsrorders/{orderId}:
    get:
      description: >-
        Retrieves the information associated with the specified LSR ID number. 

        Please visit <a href='/docs/numbers/porting/port-outs/lsrs'>Guides and
        Tutorials</a>
      operationId: ReadLsrOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          example: 255bda29-fc57-44e8-a6c2-59b45388c6d0
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LsrOrder>
                        <CustomerOrderId>MyId5</CustomerOrderId>
                        <LastModifiedBy>System</LastModifiedBy>
                        <OrderCreateDate>2015-03-03T13:54:00.450Z</OrderCreateDate>
                        <AccountId>9999999</AccountId>
                        <OrderId>00cf7e08-cab0-4515-9a77-2d0a7da09415</OrderId>
                        <LastModifiedDate>2015-03-03T14:07:19.926Z</LastModifiedDate>
                        <OrderStatus>FAILED</OrderStatus>
                        <SPID>123C</SPID>
                        <BillingTelephoneNumber>+19192381468</BillingTelephoneNumber>
                        <Pon>testpon1002</Pon>
                        <PonVersion>0</PonVersion>
                        <RequestedFocDate>2015-11-15</RequestedFocDate>
                        <AuthorizingPerson>Jim Hopkins</AuthorizingPerson>
                        <Subscriber>
                            <SubscriberType>BUSINESS</SubscriberType>
                            <BusinessName>BusinessName</BusinessName>
                            <AccountNumber>123463</AccountNumber>
                            <PinNumber>1231</PinNumber>
                            <ServiceAddress>
                                <HouseNumber>11</HouseNumber>
                                <StreetName>Park</StreetName>
                                <StreetSuffix>Ave</StreetSuffix>
                                <City>New York</City>
                                <StateCode>NY</StateCode>
                                <Zip>90025</Zip>
                            </ServiceAddress>
                        </Subscriber>
                        <ListOfTelephoneNumbers>
                            <TelephoneNumber>+19192381467</TelephoneNumber>
                            <TelephoneNumber>+19192381468</TelephoneNumber>
                        </ListOfTelephoneNumbers>
                        <LsrOrderErrors>
                            <LsrOrderError>
                                <Code>17008</Code>
                                <Description>
                                    FOC date cannot fall on a holiday
                                </Description>
                            </LsrOrderError>
                        </LsrOrderErrors>
                        <CountOfTNs>2</CountOfTNs>
                    </LsrOrder>
              schema:
                $ref: '#/components/schemas/lsrOrderResponse'
          description: >-
            The information has been successfully retrieved and displayed in the
            payload.
      summary: Fetch LSR order status
      tags:
        - Porting
    put:
      description: >-
        Updates the information associated with the specified LSR. 

        Please visit <a href='/docs/numbers/porting/port-outs/lsrs'>Guides and
        Tutorials</a>. This is also used to cancel an order, by changing the
        order status field to cancelled.  This is the only case where the status
        can be changed, and when this is done, all other fields are left as they
        were prior to the cancellation.
      operationId: UpdateLsrOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: LSR ID
          example: '1234567'
          in: path
          name: orderId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              Canceled state Response:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <LsrOrder>
                      <OrderStatus>CANCELLED</OrderStatus>
                      <ListOfTelephoneNumbers/>
                  </LsrOrder>
              Simple response:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <LsrOrder>
                      <CustomerOrderId>FineCustomerid</CustomerOrderId>
                      <SPID>123C</SPID>
                      <BillingTelephoneNumber>+19192381468</BillingTelephoneNumber>
                      <RequestedFocDate>2015-11-15</RequestedFocDate>
                      <AuthorizingPerson>Jim Hopkins</AuthorizingPerson>
                      <Subscriber>
                          <SubscriberType>BUSINESS</SubscriberType>
                          <BusinessName>BusinessName</BusinessName>
                          <ServiceAddress>
                              <HouseNumber>11</HouseNumber>
                              <StreetName>Park</StreetName>
                              <StreetSuffix>Ave</StreetSuffix>
                              <City>New York</City>
                              <StateCode>NY</StateCode>
                              <Zip>90025</Zip>
                          </ServiceAddress>
                          <AccountNumber>123463</AccountNumber>
                          <PinNumber>1231</PinNumber>
                      </Subscriber>
                  </LsrOrder>
            schema:
              $ref: '#/components/schemas/lsrOrder'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LsrOrderResponse>
                        <LsrOrder>
                            <CustomerOrderId>FineCustomerid</CustomerOrderId>
                            <LastModifiedBy>team_ua</LastModifiedBy>
                            <OrderCreateDate>2015-03-11T10:08:23.961Z</OrderCreateDate>
                            <AccountId>9999999</AccountId>
                            <OrderId>63fb728d-421b-46ce-8c32-da30b909934d</OrderId>
                            <LastModifiedDate>2015-03-11T10:08:59.832Z</LastModifiedDate>
                            <OrderStatus>PENDING</OrderStatus>
                            <SPID>123C</SPID>
                            <BillingTelephoneNumber>+19192381468</BillingTelephoneNumber>
                            <Pon>ATT-011515-324234</Pon>
                            <PonVersion>8</PonVersion>
                            <RequestedFocDate>2015-11-15</RequestedFocDate>
                            <AuthorizingPerson>Jim Hopkins</AuthorizingPerson>
                            <Subscriber>
                                <SubscriberType>BUSINESS</SubscriberType>
                                <BusinessName>BusinessName</BusinessName>
                                <AccountNumber>123463</AccountNumber>
                                <PinNumber>1231</PinNumber>
                                <ServiceAddress>
                                    <HouseNumber>11</HouseNumber>
                                    <StreetName>Park</StreetName>
                                    <StreetSuffix>Ave</StreetSuffix>
                                    <City>New York</City>
                                    <StateCode>NY</StateCode>
                                    <Zip>90025</Zip>
                                </ServiceAddress>
                            </Subscriber>
                            <ListOfTelephoneNumbers>
                                <TelephoneNumber>+19192381468</TelephoneNumber>
                            </ListOfTelephoneNumbers>
                            <LsrOrderErrors/>
                            <CountOfTNs>1</CountOfTNs>
                        </LsrOrder>
                    </LsrOrderResponse>
              schema:
                $ref: '#/components/schemas/lsrOrderResponse'
          description: LSR has been successfully updated.
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LsrOrderResponse>
                        <ResponseStatus>
                            <ErrorCode>400</ErrorCode>
                            <Description>Lsr order doesn't pass validation. Please check your input parameters.</Description>
                        </ResponseStatus>
                        <LsrOrderErrors>
                            <LsrOrderError>
                                <Code>17023</Code>
                                <Description>The authorizing person contact is required for lsr orders.</Description>
                            </LsrOrderError>
                            <LsrOrderError>
                                <Code>17020</Code>
                                <Description>Account SPID [1234] does not match with SPID specified in the LSR order [123C].</Description>
                            </LsrOrderError>
                        </LsrOrderErrors>
                        <LsrOrder>
                            <CountOfTNs>1</CountOfTNs>
                            <OrderId>63fb728d-421b-46ce-8c32-da30b909934d</OrderId>
                            <OrderStatus>FAILED</OrderStatus>
                            <AuthorizingPerson>Jim Hopkins</AuthorizingPerson>
                            <SPID>123C</SPID>
                            <BillingTelephoneNumber>+19192381468</BillingTelephoneNumber>
                            <Pon>ATT-011515-324234</Pon>
                            <PonVersion>8</PonVersion>
                            <RequestedFocDate>2015-11-15</RequestedFocDate>
                            <Subscriber>
                                <SubscriberType>BUSINESS</SubscriberType>
                                <BusinessName>BusinessName</BusinessName>
                                <AccountNumber>123463</AccountNumber>
                                <PinNumber>1231</PinNumber>
                                <ServiceAddress>
                                    <HouseNumber>11</HouseNumber>
                                    <StreetName>Park</StreetName>
                                    <StreetSuffix>Ave</StreetSuffix>
                                    <City>New York</City>
                                    <StateCode>NY</StateCode>
                                    <Zip>90025</Zip>
                                    <Country>United States</Country>
                                    <AddressType>Service</AddressType>
                                </ServiceAddress>
                            </Subscriber>
                            <ListOfTelephoneNumbers>
                                <TelephoneNumber>+19192381468</TelephoneNumber>
                            </ListOfTelephoneNumbers>
                            <LastModifiedBy>team_ua</LastModifiedBy>
                            <OrderCreateDate>2015-03-11T10:08:23.961Z</OrderCreateDate>
                            <AccountId>9999999</AccountId>
                            <CreatedByUser>team_ua</CreatedByUser>
                            <CustomerOrderId>FineCustomerid</CustomerOrderId>
                            <LastModifiedDate>2015-03-11T10:08:59.832Z</LastModifiedDate>
                        </LsrOrder>
                    </LsrOrderResponse>
              schema:
                $ref: '#/components/schemas/lsrOrderErrorResponse'
          description: Validation error occurred.
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LsrOrderResponse>
                        <ResponseStatus>
                            <ErrorCode>5035</ErrorCode>
                            <Description>lsr order 63fb728d-421b-46ce-8c32-da30b909934s not found.</Description>
                        </ResponseStatus>
                    </LsrOrderResponse>
              schema:
                $ref: '#/components/schemas/lsrOrderNotFoundResponse'
          description: Requested LSR not found.
      summary: Update LSR order
      tags:
        - Porting
  /accounts/{accountId}/lsrorders/{orderId}/history:
    get:
      description: >-
        Retrieves the history of the specified LSR order. 

        Please visit <a href='/docs/numbers/porting/port-outs/lsrs'>Guides and
        Tutorials</a>
      operationId: ReadLsrOrderHistory
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: LSR ID
          example: 00cf7e08-cab0-4515-9a77-2d0a7da09415
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <OrderHistoryWrapper>
                        <OrderHistory>
                            <OrderDate>2015-03-02T15:36:31.835Z</OrderDate>
                            <Note>LSR has been received by the system and is being processed</Note>
                            <Author>lsrOnly</Author>
                            <Status>PENDING</Status>
                        </OrderHistory>
                        <OrderHistory>
                            <OrderDate>2015-03-02T15:37:33.457Z</OrderDate>
                            <Note>Port-out date has been set</Note>
                            <Status>FOC</Status>
                            <Difference>ActualFocDate : "" --&gt; 2015-06-27</Difference>
                        </OrderHistory>
                    </OrderHistoryWrapper>
              schema:
                $ref: '#/components/schemas/orderHistoryWrapper'
          description: >-
            The history has been successfully retrieved and displayed in the
            payload.
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LsrOrderReportResponse>
                        <ResponseStatus>
                            <Description>The resource does not exist</Description>
                        </ResponseStatus>
                    </LsrOrderReportResponse>
              schema:
                $ref: '#/components/schemas/lsrOrderNotFoundResponse'
          description: |
            NOT FOUND - the order id does not exist in the system
      summary: Fetch LSR order history
      tags:
        - Porting
  /accounts/{accountId}/lsrorders/{orderId}/notes:
    get:
      description: >-
        Retrieve all notes associated with the order. 

        Please visit <a href='/docs/numbers/porting/port-outs/lsrs'>Guides and
        Tutorials</a>
      operationId: ListLsrOrderNotes
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: LSR ID
          example: 59e69657-44d2-4e7e-90f8-777988be4aef
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <Notes>
                        <Note>
                            <Id>87037</Id>
                            <UserId>jbm</UserId>
                            <Description>This is a test note</Description>
                            <LastDateModifier>2014-11-16T04:01:10.000Z</LastDateModifier>
                        </Note>
                        <Note>
                            <Id>87039</Id>
                            <UserId>smckinnon</UserId>
                            <Description>This is a second test note</Description>
                            <LastDateModifier>2014-11-16T04:08:46.000Z</LastDateModifier>
                        </Note>
                    </Notes>
              schema:
                $ref: '#/components/schemas/notesResponse'
          description: >-
            OK - there are Notes associated with the order, and they have been
            returned in the response.
        '204':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/notesResponse'
          description: >-
            No Content - there are no Notes associated with the order.  Since
            the notes resource is an aggregate rather than addressed resource
            the generic no content response is used, rather than a 404 as would
            be used if the resource was addressed with an identifier
      summary: Fetch LSR order notes
      tags:
        - Porting
    post:
      description: >-
        Updates the Notes resource by adding a note. Adding a note to a port-in
        norder causes a notification to be sent to Bandwidth Operations, so that
        they may nassist as necessary. A note may be up to 500 characters in
        length. 

        Please visit <a href='/docs/numbers/porting/port-outs/lsrs'>Guides and
        Tutorials</a>
      operationId: CreateLsrOrderNote
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: LSR ID
          example: 59e69657-44d2-4e7e-90f8-777988be4aef
          in: path
          name: orderId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Note>
                   <UserId>userId</UserId>
                        <!-- note the userId must match the logged-in user -->
                   <Description>note text</Description>
                   </Note>
            schema:
              $ref: '#/components/schemas/note'
      responses:
        '201':
          content:
            application/xml: {}
          description: >
            CREATED - the note has been created and added to the collection of
            notes associated with the order.  A link to the note is included in
            the Location header of the response.  No body is returned
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <NoteResponse>
                        <ResponseStatus>
                            <ErrorCode>12501</ErrorCode>
                            <Description>Username is required</Description>
                        </ResponseStatus>
                    </NoteResponse>
              schema:
                $ref: '#/components/schemas/noteErrorResponse'
          description: >-
            Bad Request - the note has not been created because the payload is
            incomplete or in error.  An error payload is provided in the
            response.
      summary: Create LSR order note
      tags:
        - Porting
  /accounts/{accountId}/lsrorders/{orderId}/notes/{noteId}:
    put:
      description: >-
        Update a specified note. Notes may only be updated, not deleted. 

        Please visit <a href='/docs/numbers/porting/port-outs/lsrs'>Guides and
        Tutorials</a>
      operationId: UpdateLsrOrderNote
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: LSR ID
          example: 59e69657-44d2-4e7e-90f8-777988be4aef
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: Note ID
          example: '123'
          in: path
          name: noteId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Note>
                     <UserId>userId</UserId>
                     <Description>note text</Description>
                  </Note>
            schema:
              $ref: '#/components/schemas/note'
      responses:
        '200':
          content:
            application/xml: {}
          description: |
            OK - note has been updated. No body is returned
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <NoteResponse>
                        <ResponseStatus>
                            <ErrorCode>12501</ErrorCode>
                            <Description>Username is required</Description>
                        </ResponseStatus>
                    </NoteResponse>
              schema:
                $ref: '#/components/schemas/noteErrorResponse'
          description: >-
            Bad Request - the note has not been updated because the payload is
            incomplete or in error.  An error payload is provided in the
            response.
      summary: Update LSR order note
      tags:
        - Porting
  /accounts/{accountId}/numbersAssignment:
    get:
      description: >-
        Retrieve a list of the TelephoneNumbersAssignment orders that are
        associated with the account. A maximum of 1,000 orders can be retrieved
        per request. If no date range or specific query parameter is provided,
        the order results will be limited to the last two years.
      operationId: ReadTelephoneNumbersAssignmentOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            The status of the TelephoneNumbersAssignment order being searched
            for.  COMPLETE, PARTIAL, and FAILED are 'terminal' states indicating
            that the order has finished all processing.
          example: PARTIAL
          in: query
          name: status
          required: false
          schema:
            items:
              enum:
                - COMPLETE
                - PARTIAL
                - FAILED
              type: string
            type: array
        - description: A Telephone Number (TN) that is referenced in the order
          example: '+19199918388'
          in: query
          name: tn
          required: false
          schema:
            type: string
        - description: >-
            The Customer Order ID is an ID assigned by the account owner to
            provide a reference number for the TelephoneNumbersAssignment order.
          example: ABCCorp12345
          in: query
          name: customerOrderId
          required: false
          schema:
            type: string
        - description: >-
            Checks the order's creation date against this value. Orders that
            have a creation date after this date will be included. Format is
            yyyy-MM-dd
          example: '2013-10-22'
          in: query
          name: createdDateFrom
          required: false
          schema:
            type: string
        - description: >-
            Checks the order's creation date against this value. Orders that
            have a creation date before this date will be included. Format is
            yyyy-MM-dd
          example: '2013-10-25'
          in: query
          name: createdDateTo
          required: false
          schema:
            type: string
        - description: >-
            This search parameter represents the internal Bandwidth App API ID
            that has been assigned to the TelephoneNumbersAssignment Order. 
            This parameter is the first few characters of the internal ID - the
            entire ID does not need to be specified.
          example: ed1c0bed-e2
          in: query
          name: orderIdFragment
          required: false
          schema:
            type: string
        - description: >-
            Whether or not the results should be restricted to ASSIGNED or
            UNASSIGNED assignment actions.
          example: ASSIGNED
          in: query
          name: action
          required: false
          schema:
            enum:
              - ASSIGNED
              - UNASSIGNED
            type: string
        - description: >-
            For Date-based searches, the starting date of a date range
            (inclusive) that will be used to find TelephoneNumbersAssignment
            Orders that were modified within the date range. It is in the form
            yyyy-MM-dd.
          example: '2013-10-22'
          in: query
          name: modifiedDateFrom
          required: false
          schema:
            type: string
        - description: >-
            For Date-based searches, the ending date of a date range (inclusive)
            that will be used to find TelephoneNumbersAssignment Orders that
            were modified within the date range. It is in the form yyyy-MM-dd.
          example: '2013-10-25'
          in: query
          name: modifiedDateTo
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                application/xml:
                  description: application/xml
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<TelephoneNumbersAssignmentOrders>\n\t    <TotalCount>3</TotalCount>\n\t    <TelephoneNumbersAssignmentOrderSummary>\n\t\t        <!-- Account ID preserved for uniformity with global list -->\n\t\t        <accountId>1</accountId>\n\t\t        <TotalQuantity>4</TotalQuantity>\n\t\t        <userId>jbm</userId>\n\t\t        <OrderDate>2016-01-15T11:36:52.727Z</OrderDate>\n\t\t        <OrderType>NUMBERS_ASSIGNMENT_ORDER</OrderType>\n\t\t        <OrderStatus>COMPLETE</OrderStatus>\n\t\t        <Action>ASSIGN</Action>\n\t\t        <OrderId>65e03a35-6b97-48a5-8126-f47bad02df2a</OrderId>\n\t    </TelephoneNumbersAssignmentOrderSummary>\n\t    <TelephoneNumbersAssignmentOrderSummary>\n\t\t        <accountId>1</accountId>\n\t\t        <TotalQuantity>4</TotalQuantity>\n\t\t        <FailedQuantity>1</FailedQuantity>\n\t\t        <userId>jbm</userId>\n\t\t        <OrderDate>2016-01-15T11:36:26.633Z</OrderDate>\n\t\t        <OrderType>NUMBERS_ASSIGNMENT_ORDER</OrderType>\n\t\t        <OrderStatus>PARTIAL</OrderStatus>\n\t\t        <Action>ASSIGN</Action>\n\t\t        <OrderId>d8f5abc0-1a4c-4c36-b387-93fb5b430784</OrderId>\n\t    </TelephoneNumbersAssignmentOrderSummary>\n\t    <TelephoneNumbersAssignmentOrderSummary>\n\t\t        <accountId>1</accountId>\n\t\t        <CustomerOrderId>ICPA123ABC</CustomerOrderId>\n\t\t        <TotalQuantity>4</TotalQuantity>\n\t\t        <userId>jbm</userId>\n\t\t        <OrderDate>2016-01-15T12:36:26.633Z</OrderDate>\n\t\t       <OrderType>NUMBERS_ASSIGNMENT_ORDER</OrderType>\n\t\t        <OrderStatus>FAILED</OrderStatus>\n\t\t        <Action>ASSIGN</Action>\n\t\t        <OrderId>d8f5abc0-b387-4c36-48a5-f47bad02df2a</OrderId>\n\t    </TelephoneNumbersAssignmentOrderSummary>\n</TelephoneNumbersAssignmentOrders>"
              schema:
                $ref: >-
                  #/components/schemas/telephoneNumbersAssignmentOrderHistoryResponse
          description: >-
            The descriptive payload for the TelephoneNumbersAssignment Orders
            query provides information about the TelephoneNumbersAssignment
            Orders, including the data associated with the order, the state of
            the order, and a list of the successfully uploaded Telephone
            Numbers, and descriptions of any encountered errors.
        '400':
          description: >-
            Bad Request <br> If any errors are found in the processing of the
            query string a 400 will be returned.  Note that parameters that are
            not recognized are not considered errors, and are just ignored.
      summary: List Telephone Numbers Assignment Orders
      tags:
        - Numbers Assignment
    post:
      description: >-
        Create a TelephoneNumbersAssignment order to register the assignment
        status of a list of telephone numbers.
      operationId: CreateTelephoneNumbersAssignmentOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <TelephoneNumbersAssignmentOrder>
                      <CustomerOrderId>ICPA123ABC</CustomerOrderId>
                      <Action>[ ASSIGN | UNASSIGN ]</Action>
                      <TelephoneNumbers>
                          <TelephoneNumber>+19199918388</TelephoneNumber>
                          <TelephoneNumber>+14158714245</TelephoneNumber>
                          <TelephoneNumber>+14352154439</TelephoneNumber>
                          <TelephoneNumber>+14352154466</TelephoneNumber>
                      </TelephoneNumbers>
                  </TelephoneNumbersAssignmentOrder>
            schema:
              $ref: '#/components/schemas/telephoneNumbersAssignmentOrder'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<TelephoneNumbersAssignmentOrderResponse>\n\t <OrderCreateDate>2016-01-15T11:36:52.727Z</OrderCreateDate>\n\t <AccountId>1</AccountId>\n\t <CreatedByUser>jbm</CreatedByUser>\n\t <OrderId>65e03a35-6b97-48a5-8126-f47bad02df2a</OrderId>\n\t <ProcessingStatus>PARTIAL</ProcessingStatus>\n\t <TotalQuantity>4</TotalQuantity>\n\t <FailedQuantity>1</FailedQuantity>\n\t <TelephoneNumbersAssignmentOrder>\n\t\t <CustomerOrderId>ICPA123ABC</CustomerOrderId>\n\t\t <Action>ASSIGN</Action>\n\t\t <TelephoneNumbers>\n\t\t\t <TelephoneNumber>+19199918388</TelephoneNumber>\n\t\t\t <TelephoneNumber>+14158714245</TelephoneNumber>\n\t\t\t <TelephoneNumber>+14352154439</TelephoneNumber>\n\t\t\t <TelephoneNumber>+14352154466</TelephoneNumber>\n\t\t </TelephoneNumbers>\n\t </TelephoneNumbersAssignmentOrder>\n\t <Errors>\n\t\t <Error>\n\t\t\t <Code>5076</Code>\n\t\t\t <Description>Number does not belong to this account.</Description>\n\t\t\t <TelephoneNumbers>\n\t\t\t\t <TelephoneNumber>+19199918388</TelephoneNumber>\n\t\t\t </TelephoneNumbers>\n\t\t </Error>\n\t </Errors>\n </TelephoneNumbersAssignmentOrderResponse>"
              schema:
                $ref: '#/components/schemas/telephoneNumbersAssignmentOrderResponse'
          description: Created <br>A 201 response indicates that an order has been created.
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<TelephoneNumbersAssignmentOrderResponse>\n\t <ResponseStatus>\n\t\t <ErrorCode>13554</ErrorCode>\n\t\t <Description>Assignment action is invalid. Valid values ASSIGN, UNASSIGN</Description>\n\t </ResponseStatus>\n </TelephoneNumbersAssignmentOrderResponse>"
              schema:
                $ref: >-
                  #/components/schemas/telephoneNumbersAssignmentOrderErrorResponse
          description: >-
            Bad Request <br> A 400 response Indicates that the order could not
            be created.

            Error text and an error code will be provided in the ErrorList
            element.
      summary: Telephone Numbers Assignment Order
      tags:
        - Numbers Assignment
  /accounts/{accountId}/numbersAssignment/{orderId}:
    get:
      description: >-
        Retrieve information about a TelephoneNumbersAssignment order with
        specified ID.
      operationId: ReadTelephoneNumbersAssignmentOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Telephone Numbers Assignment order id
          example: 59e69657-44d2-4e7e-90f8-777988be4aef
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<TelephoneNumbersAssignmentOrderResponse>\n\t <OrderCreateDate>2016-01-15T11:36:52.727Z</OrderCreateDate>\n\t <AccountId>1</AccountId>\n\t <CreatedByUser>jbm</CreatedByUser>\n\t <OrderId>65e03a35-6b97-48a5-8126-f47bad02df2a</OrderId>\n\t <ProcessingStatus>PARTIAL</ProcessingStatus>\n\t <TotalQuantity>4</TotalQuantity>\n\t <FailedQuantity>1</FailedQuantity>\n\t <TelephoneNumbersAssignmentOrder>\n\t\t <CustomerOrderId>ICPA123ABC</CustomerOrderId>\n\t\t <Action>ASSIGN</Action>\n\t\t <TelephoneNumbers>\n\t\t\t <TelephoneNumber>+19199918388</TelephoneNumber>\n\t\t\t <TelephoneNumber>+14158714245</TelephoneNumber>\n\t\t\t <TelephoneNumber>+14352154439</TelephoneNumber>\n\t\t\t <TelephoneNumber>+14352154466</TelephoneNumber>\n\t\t </TelephoneNumbers>\n\t </TelephoneNumbersAssignmentOrder>\n\t <Errors>\n\t\t <Error>\n\t\t\t <Code>5076</Code>\n\t\t\t <Description>Number does not belong to this account.</Description>\n\t\t\t <TelephoneNumbers>\n\t\t\t\t <TelephoneNumber>+19199918388</TelephoneNumber>\n\t\t\t </TelephoneNumbers>\n\t\t </Error>\n\t </Errors>\n </TelephoneNumbersAssignmentOrderResponse>"
              schema:
                $ref: '#/components/schemas/telephoneNumbersAssignmentOrderResponse'
          description: >-
            The descriptive payload for the TelephoneNumbersAssignment query
            provides a broad range of information about the
            TelephoneNumbersAssignment order identified in the URL.
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<TelephoneNumbersAssignmentOrderResponse>\n\t <ResponseStatus>\n\t\t <Description>The resource does not exist</Description>\n\t </ResponseStatus>\n </TelephoneNumbersAssignmentOrderResponse>"
              schema:
                $ref: >-
                  #/components/schemas/telephoneNumbersAssignmentOrderErrorResponse
          description: NOT FOUND - the order id does not exist in the system
      summary: Fetching Telephone Numbers Assignment Order status
      tags:
        - Numbers Assignment
  /accounts/{accountId}/operators:
    get:
      description: |
        <p>Store an operator information</p>
      operationId: getOperators
      parameters:
        - $ref: '#/components/parameters/accountId'
        - $ref: '#/components/parameters/operatorCountryCodeA3QueryParam'
        - $ref: '#/components/parameters/operatorSizeQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/getOperatorsResponse'
        '400':
          $ref: '#/components/responses/operatorBadRequestError'
        '401':
          $ref: '#/components/responses/operatorUnauthorizedError'
        '403':
          $ref: '#/components/responses/operatorForbiddenError'
        '404':
          $ref: '#/components/responses/operatorNotFoundError'
        '405':
          $ref: '#/components/responses/methodNotSupportedError'
        '415':
          $ref: '#/components/responses/operatorInvalidMediaTypeError'
        '429':
          $ref: '#/components/responses/operatorTooManyRequestsError'
        '500':
          $ref: '#/components/responses/operatorsInternalServerError'
      summary: List Operators
      tags:
        - Operator Information
    post:
      description: |
        <p>Store an  operator information</p>
      operationId: createOperators
      parameters:
        - $ref: '#/components/parameters/accountId'
      requestBody:
        $ref: '#/components/requestBodies/operatorRequest'
      responses:
        '201':
          $ref: '#/components/responses/operatorSuccessfulResponse'
        '400':
          $ref: '#/components/responses/operatorBadRequestError'
        '401':
          $ref: '#/components/responses/operatorUnauthorizedError'
        '403':
          $ref: '#/components/responses/operatorForbiddenError'
        '404':
          $ref: '#/components/responses/operatorNotFoundError'
        '405':
          $ref: '#/components/responses/methodNotSupportedError'
        '415':
          $ref: '#/components/responses/operatorInvalidMediaTypeError'
        '429':
          $ref: '#/components/responses/operatorTooManyRequestsError'
        '500':
          $ref: '#/components/responses/operatorsInternalServerError'
      summary: Create Operator
      tags:
        - Operator Information
  /accounts/{accountId}/operators/{operatorId}:
    get:
      description: |
        <p>Retrieve an operator information</p>
      operationId: getOperatorsByOperatorId
      parameters:
        - $ref: '#/components/parameters/accountId'
        - $ref: '#/components/parameters/operatorId'
      responses:
        '200':
          $ref: '#/components/responses/operatorSuccessfulResponse'
        '400':
          $ref: '#/components/responses/operatorBadRequestError'
        '401':
          $ref: '#/components/responses/operatorUnauthorizedError'
        '403':
          $ref: '#/components/responses/operatorForbiddenError'
        '404':
          $ref: '#/components/responses/operatorNotFoundError'
        '405':
          $ref: '#/components/responses/methodNotSupportedError'
        '415':
          $ref: '#/components/responses/operatorInvalidMediaTypeError'
        '429':
          $ref: '#/components/responses/operatorTooManyRequestsError'
        '500':
          $ref: '#/components/responses/operatorsInternalServerError'
      summary: Get Operator
      tags:
        - Operator Information
    patch:
      description: |
        Update the name and/or routing prefixes for an operator by ID.
      operationId: updateOperatorsByOperatorId
      parameters:
        - $ref: '#/components/parameters/accountId'
        - $ref: '#/components/parameters/operatorId'
      requestBody:
        $ref: '#/components/requestBodies/operatorPatchRequest'
      responses:
        '200':
          $ref: '#/components/responses/operatorSuccessfulResponse'
        '400':
          $ref: '#/components/responses/operatorBadRequestError'
        '401':
          $ref: '#/components/responses/operatorUnauthorizedError'
        '403':
          $ref: '#/components/responses/operatorForbiddenError'
        '404':
          $ref: '#/components/responses/operatorNotFoundError'
        '405':
          $ref: '#/components/responses/methodNotSupportedError'
        '415':
          $ref: '#/components/responses/operatorInvalidMediaTypeError'
        '429':
          $ref: '#/components/responses/operatorTooManyRequestsError'
        '500':
          $ref: '#/components/responses/operatorsInternalServerError'
      summary: Update Operator
      tags:
        - Operator Information
  /accounts/{accountId}/porting/portability/phoneNumbers:
    post:
      description: >
        <p>This API checks if one or more phone numbers, from any supported
        country, can be ported to Bandwidth. It works for any type of E.164
        formatted phone number. Up to 5,000 phone numbers can be specified in
        the request body.</p>
      operationId: checkPortability
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        $ref: '#/components/requestBodies/checkPortabilityRequest'
      responses:
        '200':
          $ref: '#/components/responses/checkPortabilityResponse'
        '400':
          $ref: '#/components/responses/checkPortabilityBadRequestErrorResponse'
        '401':
          $ref: '#/components/responses/checkPortabilityUnauthorizedErrorResponse'
        '403':
          $ref: '#/components/responses/checkPortabilityForbiddenErrorResponse'
        '404':
          $ref: '#/components/responses/checkPortabilityNotFoundErrorResponse'
        '429':
          $ref: '#/components/responses/checkPortabilityTooManyRequestsErrorResponse'
        '500':
          $ref: '#/components/responses/checkPortabilityInternalServerErrorResponse'
      summary: Check Phone Number Portability
      tags:
        - Porting
  /accounts/{accountId}/porting/portinOrders/{portinOrderId}/documents:
    get:
      description: >
        <p>Retrieves a list of documents uploaded and attached to a particular
        portin.</p>
      operationId: listPortingDocuments
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/portinOrderIdPathParam'
      responses:
        '200':
          $ref: '#/components/responses/listPortingDocumentsSuccess'
        '400':
          $ref: '#/components/responses/badRequestError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '502':
          $ref: '#/components/responses/internalServerError'
      summary: List Documents for a Portin Order
      tags:
        - Porting
    post:
      consumes:
        - multipart/form-data
      description: >
        <p>Upload documents and attach them to the reference portin. Once
        uploaded, the documents will be in “PENDING_VALIDATION” state.</p>
      operationId: uploadDocument
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/portinOrderIdPathParam'
      requestBody:
        $ref: '#/components/requestBodies/addPortingDocumentRequest'
      responses:
        '201':
          $ref: '#/components/responses/createPortingDocumentSuccess'
        '400':
          $ref: '#/components/responses/badRequestError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '502':
          $ref: '#/components/responses/internalServerError'
      summary: Upload Document for a Portin Order
      tags:
        - Porting
  /accounts/{accountId}/porting/portinOrders/{portinOrderId}/documents/{documentId}:
    delete:
      description: >
        <p>This API will be called by the customer / LNP team to delete /
        replace a document for a particular portin. The UI will call this
        endpoint directly to remove a document from the portin draft / details
        page.</p>
      operationId: removePortingDocument
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/portinOrderIdPathParam'
        - $ref: '#/components/parameters/DocumentIdPathParam'
      responses:
        '204':
          description: No Content
        '400':
          $ref: '#/components/responses/badRequestError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '502':
          $ref: '#/components/responses/internalServerError'
      summary: Delete document attached to a Portin Order by Document ID
      tags:
        - Porting
    get:
      description: >
        <p>Fetch the porting document to a Portin Order by Document ID. The
        Document ID can be obtained from while uploading the document or from by
        listing all documents attached to a port-in order.</p>
      operationId: getPortingDocument
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/portinOrderIdPathParam'
        - $ref: '#/components/parameters/DocumentIdPathParam'
      responses:
        '200':
          $ref: '#/components/responses/getPortingDocumentSuccess'
        '400':
          $ref: '#/components/responses/badRequestError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '502':
          $ref: '#/components/responses/internalServerError'
      summary: Get document attached to a Portin Order by Document ID
      tags:
        - Porting
    put:
      consumes:
        - multipart/form-data
      description: >
        <p>Porting Document metadata can be updated at any time, while document
        content can be updated only when the file status is "INVALID." Updating
        a document changes its status from "INVALID" to
        "PENDING_VALIDATION".</p>
      operationId: updatePortingDocument
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/portinOrderIdPathParam'
        - $ref: '#/components/parameters/DocumentIdPathParam'
      requestBody:
        $ref: '#/components/requestBodies/addPortingDocumentRequest'
      responses:
        '204':
          description: No Content
        '400':
          $ref: '#/components/responses/badRequestError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '502':
          $ref: '#/components/responses/internalServerError'
      summary: Update Document for a Portin Order
      tags:
        - Porting
  /accounts/{accountId}/porting/portinOrders/{portinOrderId}/documents/{documentId}/fileContent:
    get:
      description: |
        <p>Download the contents of a porting document.</p>
      operationId: downloadDocument
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/portinOrderIdPathParam'
        - $ref: '#/components/parameters/DocumentIdPathParam'
      responses:
        '200':
          $ref: '#/components/responses/downloadDocumentSuccess'
        '400':
          $ref: '#/components/responses/badRequestError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '502':
          $ref: '#/components/responses/internalServerError'
      summary: Download porting document
      tags:
        - Porting
  /accounts/{accountId}/portins:
    get:
      description: >-
        Retrieves the port-in requests for the given account ID. <p>A maximum of
        1,000 orders can be retrieved per request. If no date range or specific
        query parameter (marked by <b class="required">*</b> below) is provided,
        the order results will be limited to the last two years.</p>
      operationId: ListPortins
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            The port-in ID of the first order of the page. Value "1" is used as
            a convention for the first port-in in the account ID (Use it to get
            a first page of orders list).
          example: ca8065d1-ec1a-43da-af40-1dcee43becb5
          in: query
          name: page
          required: true
          schema:
            default: '1'
            type: string
        - description: The number of port-ins retrieved.
          example: 30
          in: query
          name: size
          required: true
          schema:
            default: 300
            type: integer
        - description: >
            <p>Displays the port-in orders with the specified status (possible
            values: draft, pending<em>documents, submitted, exception,
            requested</em>supp, foc, requested_cancel, cancelled, complete). 
            Note: draft status orders are NOT included unless status=draft is
            included in the query parameters (along with page and size).</p>
          example: complete
          in: query
          name: status
          required: false
          schema:
            type: string
        - description: >
            <p>The earliest date that the order was last modified. <strong>NOTE:
            </strong> startdate and enddate must be simultaneously declared.</p>
          example: '2014-08-05'
          in: query
          name: startdate
          required: false
          schema:
            format: date
            type: string
        - description: >
            <p>The latest date that the order was last modified. <strong>NOTE:
            </strong> startdate and enddate must be simultaneously declared.</p>
          example: '2014-08-05'
          in: query
          name: enddate
          required: false
          schema:
            format: date
            type: string
        - description: >
            <p><b class="required">*</b> The billing telephone number associated
            with the port-in(s).  Note that tn cannot be combined with any of
            the date-based query parameters (date, startdate, or enddate).</p>
          example: 19191234567
          in: query
          name: tn
          required: false
          schema:
            type: integer
        - description: >
            <p><b class="required">*</b> A telephone number included in the
            ListOfPhoneNumbers in a port-in order.  Note that order tn cannot be
            combined with any of the date-based query parameters (date,
            startdate, or enddate).</p>
          example: 19143982871
          in: query
          name: orderTn
          required: false
          schema:
            type: integer
        - $ref: '#/components/parameters/countryCodeA3QueryParam'
        - $ref: '#/components/parameters/phoneNumberTypeQueryParam'
        - description: >
            <p><b class="required">*</b> Search for a specified customer order
            ID.  No quotes are necessary.  Note that customer order ID cannot be
            combined with any of the date-based query parameters (date,
            startdate, or enddate).</p>
          example: PO-58472159
          in: query
          name: customerOrderId
          required: false
          schema:
            type: string
        - description: >
            <p><b class="required">*</b> The port order number.  Note that pon
            cannot be combined

            with any of the date-based query parameters (date, startdate, or
            enddate).</p>
          example: '`979E019287CDF6A1` or `4c129d8e-57fc-4ccb-a37d-7f21aca8b32d`'
          in: query
          name: pon
          required: false
          schema:
            type: string
        - description: >-
            The date when orders were modified.  Note that this differs from the
            last modified date of an order.

            For example, if an order reached FOC on 2020-01-15, and completed on
            2020-01-16, searching by

            date 2020-01-15 will return an entry for the order in FOC state with
            last modified date of 1/15.

            Searching by date 2020-01-16 will return an entry for the SAME order
            in COMPLETE state with the

            last modified date of 1/16.  BUT, if you search by date range with
            startdate=2020-01-15 and

            enddate=2020-01-16, you will only see the latest of the entries for
            the same order.
          example: '2020-01-15'
          in: query
          name: date
          required: false
          schema:
            format: date
            type: string
        - description: |
            <p>Search only for hosted TN port-in orders.</p>
          example: true
          in: query
          name: hostedTN
          required: false
          schema:
            type: boolean
      responses:
        '200':
          content:
            application/xml:
              examples:
                Port-In containing Hosted Number:
                  description: >-
                    List containing a single port-in order after passing the
                    HostedTN parameter
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LNPResponseWrapper>
                        <TotalCount>1</TotalCount>
                        <Links>
                            <first>Link=&lt;https://localhost:8443/api/v2/accounts/14/portins?page=1&amp;hostedTN=true&amp;size=5&gt;;rel="first";</first>
                        </Links>
                        <lnpPortInfoForGivenStatus>
                            <accountId>14</accountId>
                            <CountOfTNs>1</CountOfTNs>
                            <userId>systemUser</userId>
                            <lastModifiedDate>2024-07-29T09:47:02.548Z</lastModifiedDate>
                            <OrderDate>2024-07-29T09:46:43.272Z</OrderDate>
                            <OrderId>a4cad653-9f8d-4f22-b515-7bd16b465006</OrderId>
                            <OrderType>port_in</OrderType>
                            <CompanyName>CWI Hosting</CompanyName>
                            <CountryCodeA3>FRA</CountryCodeA3>
                            <LNPLosingCarrierName>VortexNet Global</LNPLosingCarrierName>
                            <OperatorCode>OPR1</OperatorCode>
                            <OperatorRoutingPrefix>RPC1</OperatorRoutingPrefix>
                            <ProcessingStatus>SUBMITTED</ProcessingStatus>
                            <RequestedFOCDate>2024-08-05T00:00:00.000+05:30</RequestedFOCDate>
                            <PhoneNumberType>GEOGRAPHIC</PhoneNumberType>
                            <VendorId>70</VendorId>
                            <VendorName>International porting vendor</VendorName>
                            <PON>979E02421101708A</PON>
                        </lnpPortInfoForGivenStatus>
                    </LNPResponseWrapper>
                Portins containing NANP numbers:
                  description: List of portin orders with FOC processing status
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LNPResponseWrapper>
                        <TotalCount>2</TotalCount>
                        <Links>
                            <first>Link=&lt;https://test.api.bandwidth.com:443/v1.0/accounts/9900012/portins?page=1&amp;size=10&amp;date=2020-01-15&amp;status=foc&gt;;rel="first";</first>
                        </Links>
                        <lnpPortInfoForGivenStatus>
                            <accountId>9900012</accountId>
                            <CountOfTNs>1</CountOfTNs>
                            <userId>System</userId>
                            <lastModifiedDate>2020-01-15T19:08:57.626Z</lastModifiedDate>
                            <OrderDate>2020-01-15T19:08:10.488Z</OrderDate>
                            <OrderId>ab03375f-e0a9-47f8-bd31-6d8435454a6b</OrderId>
                            <OrderType>port_in</OrderType>
                            <ActualFOCDate>2020-01-16T16:30:00.000Z</ActualFOCDate>
                            <BillingTelephoneNumber>+19196247209</BillingTelephoneNumber>
                            <CompanyName>WandEDemo</CompanyName>
                            <LNPLosingCarrierId>1163</LNPLosingCarrierId>
                            <LNPLosingCarrierName>Bandwidth</LNPLosingCarrierName>
                            <ProcessingStatus>FOC</ProcessingStatus>
                            <RequestedFOCDate>2020-01-16T16:30:00.000Z</RequestedFOCDate>
                            <VendorId>49</VendorId>
                            <VendorName>Bandwidth CLEC</VendorName>
                            <PON>4c129d8e-57fc-4ccb-a37d-7f21aca8b32d</PON>
                        </lnpPortInfoForGivenStatus>
                        <lnpPortInfoForGivenStatus>
                            <accountId>9900012</accountId>
                            <CountOfTNs>1</CountOfTNs>
                            <userId>gforrest</userId>
                            <lastModifiedDate>2020-01-15T19:06:10.085Z</lastModifiedDate>
                            <OrderDate>2019-10-14T17:16:41.949Z</OrderDate>
                            <OrderId>b2190bcc-0272-4a51-ba56-7c3d628e8706</OrderId>
                            <OrderType>port_in</OrderType>
                            <ActualFOCDate>2020-01-16T01:00:00.000Z</ActualFOCDate>
                            <BillingTelephoneNumber>+12174101100</BillingTelephoneNumber>
                            <CompanyName>WandEDemo</CompanyName>
                            <LNPLosingCarrierId>1290</LNPLosingCarrierId>
                            <LNPLosingCarrierName>IntegraTelecom</LNPLosingCarrierName>
                            <ProcessingStatus>FOC</ProcessingStatus>
                            <RequestedFOCDate>2020-01-21T17:30:00.000Z</RequestedFOCDate>
                            <VendorId>57</VendorId>
                            <VendorName>Level 3</VendorName>
                            <PON>979E019287CDF6A1</PON>
                        </lnpPortInfoForGivenStatus>
                    </LNPResponseWrapper>
                Portins containing non-NANP numbers:
                  description: List containing a single portin order with global numbers
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LNPResponseWrapper>
                        <TotalCount>2</TotalCount>
                        <Links>
                            <first>Link=&lt;https://test.api.bandwidth.com:443/v1.0/accounts/9900012/portins?page=1&amp;size=10&amp;date=2020-01-15&amp;status=foc&gt;;rel="first";</first>
                        </Links>
                        <lnpPortInfoForGivenStatus>
                            <accountId>9900012</accountId>
                            <CountOfTNs>1</CountOfTNs>
                            <userId>gforrest</userId>
                            <lastModifiedDate>2023-03-29T19:06:10.085Z</lastModifiedDate>
                            <OrderDate>2023-03-29T19:06:10.085Z</OrderDate>
                            <OrderId>b2190bcc-0272-4a51-ba56-7c3d628e8706</OrderId>
                            <OrderType>port_in</OrderType>
                            <ActualFOCDate>2023-04-01T01:00:00.000Z</ActualFOCDate>
                            <CompanyName>WandEDemo</CompanyName>
                            <LNPLosingCarrierId>1290</LNPLosingCarrierId>
                            <LNPLosingCarrierName>SFR</LNPLosingCarrierName>
                            <ProcessingStatus>SUBMITTED</ProcessingStatus>
                            <RequestedFOCDate>2023-03-29</RequestedFOCDate>
                            <VendorId>??</VendorId>
                            <VendorName>??</VendorName>
                            <PON>979E019287CDF6A1</PON>
                        </lnpPortInfoForGivenStatus>
                    </LNPResponseWrapper>
                RespOrg exception toll-free order containing NANP numbers:
                  description: >-
                    List containing a single RespOrg exception toll-free portin
                    order
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LNPResponseWrapper>
                        <TotalCount>1</TotalCount>
                        <Links>
                            <first>Link=&lt;https://test.api.bandwidth.com:443/v1.0/accounts/9900012/portins?page=1&amp;size=10&amp;date=2020-01-15&amp;&gt;;rel="first";</first>
                        </Links>
                        <lnpPortInfoForGivenStatus>
                            <accountId>9900012</accountId>
                            <CountOfTNs>5</CountOfTNs>
                            <CustomerOrderId>RE Portin</CustomerOrderId>
                            <userId>jg_eng_customer</userId>
                            <lastModifiedDate>2022-11-15T18:39:12.948Z</lastModifiedDate>
                            <OrderDate>2022-11-15T18:23:15.291Z</OrderDate>
                            <OrderId>167aa53b-f715-459c-b740-70c3a32351cd</OrderId>
                            <OrderType>port_in</OrderType>
                            <CompanyName>JohnsAccount</CompanyName>
                            <Internal>false</Internal>
                            <ProcessingStatus>SUBMITTED</ProcessingStatus>
                            <RequestedFOCDate>2022-11-18T16:30:00.000Z</RequestedFOCDate>
                            <RespOrgException>true</RespOrgException>
                            <!--ControllingRespOrgId is hidden if not owned by customer-->
                            <ControllingRespOrgId>TST52</ControllingRespOrgId>
                            <TargetRespOrgId>TST52</TargetRespOrgId>
                        </lnpPortInfoForGivenStatus>
                    </LNPResponseWrapper>
              schema:
                $ref: '#/components/schemas/lnpResponseWrapper'
          description: The port-ins have been successfully retrieved.
      summary: List port-in orders
      tags:
        - Porting
    post:
      description: >
        Creates a port-in order for the specified telephone number(s) and
        account number. <br/> Please visit <a
        href='/docs/numbers/porting/port-ins/stand-alone-port-ins'>How to Create
        Port in</a> guide. Also you can find more information about port types
        and numbers portability on <a
        href='/docs/numbers/porting/port-ins/stand-alone-portins/lnpChecker'>How
        to check numbers portability</a> guide
      operationId: CreatePortin
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/json:
            examples:
              Automated NANP Toll-Free Port-in:
                value:
                  customerOrderId: My order id
                  loaAuthorizingPerson: The Authgal
                  locationId: 23432
                  phoneNumbers:
                    - '+18774809871'
                  requestedFocDate: '2021-06-16T15:30:00Z'
                  subAccountId: 2439
                  targetRespOrgId: JYT01
              Global Port-In with Hosted Number:
                value:
                  loaAuthorizingPerson: User Name
                  locationId: 500020
                  losingCarrierName: VortexNet Global
                  operatorCode: OPR1
                  phoneNumbers:
                    - '+33109753125'
                  requestedFocDate: '2024-08-05T00:00:00Z'
                  subAccountId: 5
                  subscriber:
                    addressId: ae8782b9-0324-4917-a773-6ee0e8d9146e
                    firstName: User
                    lastName: Name
                    subscriberType: RESIDENTIAL
              Global Port-in with KYC:
                value:
                  customerOrderId: myOrder
                  locationId: 553906
                  losingCarrierName: British Telecom
                  phoneNumbers:
                    - '+441171261486'
                    - '+441171261487'
                    - '+441171261488'
                    - '+441171261489'
                    - '+441171261580'
                  requestedFocDate: '2023-09-01T00:00:00Z'
                  requirementsPackageId: 8c5ec953-bc03-43c0-95f3-841cc24ecaf3
                  subAccountId: 13078
                  subscriber:
                    addressId: ba4bb1f3-4358-4a46-883f-6376539ff94e
                    firstName: Jane
                    lastName: Doe
                    middleInitial: M
                    subscriberType: RESIDENTIAL
                  voicePackageConfigurationId: c7951e4f-6285-4b75-83e5-392558f59067
              Global Port-in with UK Numbers (Beta), Business Subscriber:
                value:
                  customerOrderId: myOrder
                  locationId: 553906
                  losingCarrierName: British Telecom
                  phoneNumbers:
                    - '+441171261486'
                    - '+441171261487'
                    - '+441171261488'
                    - '+441171261489'
                    - '+441171261580'
                  requestedFocDate: '2023-09-01T00:00:00Z'
                  subAccountId: 13078
                  subscriber:
                    addressId: ba4bb1f3-4358-4a46-883f-6376539ff94e
                    companyName: Acme, Inc.
                    subscriberType: BUSINESS
                    vatNumber: IE1234567T
              Global Port-in with UK Numbers (Beta), Draft:
                value:
                  phoneNumbers:
                    - '+441171261486'
                    - '+441171261487'
                    - '+441171261488'
                    - '+441171261489'
                    - '+441171261580'
                  processingStatus: DRAFT
              Global Port-in with UK Numbers (Beta), Residential Subscriber:
                value:
                  customerOrderId: myOrder
                  locationId: 553906
                  losingCarrierName: British Telecom
                  phoneNumbers:
                    - '+441171261486'
                    - '+441171261487'
                    - '+441171261488'
                    - '+441171261489'
                    - '+441171261580'
                  requestedFocDate: '2023-09-01T00:00:00Z'
                  subAccountId: 13078
                  subscriber:
                    addressId: ba4bb1f3-4358-4a46-883f-6376539ff94e
                    firstName: Jane
                    lastName: Doe
                    subscriberType: RESIDENTIAL
              Global Port-in without KYC:
                value:
                  customerOrderId: myOrder
                  locationId: 553906
                  losingCarrierName: British Telecom
                  phoneNumbers:
                    - '+441171261486'
                    - '+441171261487'
                    - '+441171261488'
                    - '+441171261489'
                    - '+441171261580'
                  requestedFocDate: '2023-09-01T00:00:00Z'
                  subAccountId: 13078
                  subscriber:
                    addressId: ba4bb1f3-4358-4a46-883f-6376539ff94e
                    firstName: Jane
                    lastName: Doe
                    subscriberType: RESIDENTIAL
                  voicePackageConfigurationId: c7951e4f-6285-4b75-83e5-392558f59067
              On-net NANP Port-in:
                value:
                  alternateSpid: X455
                  billingTelephoneNumber: '+19195551234'
                  billingType:
                    internal: true
                    value: PORTIN
                  comments:
                    internal: true
                    value: PRI Circuit ID 1234
                  customerOrderId: myOrder
                  immediately:
                    internal: true
                    value: false
                  loaAuthorizingPerson: The Authguy
                  locationId: 23432
                  losingResellerName: My Current Provider Name
                  newBillingTelephoneNumber: '+19175131245'
                  partialPort: 'true'
                  phoneNumberAttributes:
                    - Protected
                  phoneNumbers:
                    - '+19194809871'
                  processingStatus: DRAFT
                  requestedFocDate: '2016-03-25T21:15:00Z'
                  subAccountId: 2439
                  subscriber:
                    firstName: First
                    lastName: Last
                    serviceAddress:
                      city: Denver
                      county: Canyon
                      houseNumber: 11235
                      stateCode: CO
                      streetName: Back
                      zip: 27541
                    subscriberType: BUSINESS
                  triggered: true
                  wirelessInfo:
                    accountNumber: 771297665AABC
                    pinNumber: '1234'
            schema:
              oneOf:
                - $ref: '#/components/schemas/onNetNANPLnpOrderRequestJson'
                - $ref: '#/components/schemas/manualNANPTollFreeLnpOrderRequestJson'
                - $ref: >-
                    #/components/schemas/automatedNANPTollFreeLnpOrderRequestJson
                - $ref: '#/components/schemas/offNetNANPLnpOrderRequestJson'
                - $ref: '#/components/schemas/internalNANPLnpOrderRequestJson'
                - $ref: '#/components/schemas/manualGlobalBetaLnpOrderRequestJson'
                - $ref: '#/components/schemas/manualGlobalLarLnpOrderRequestJson'
                - $ref: '#/components/schemas/manualGlobalDraftLnpOrderRequestJson'
                - $ref: '#/components/schemas/hostedTNLnpOrderRequestJson'
          application/xml:
            examples:
              Automated NANP Toll-Free Port-in:
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<LnpOrder>\n\t<CustomerOrderId>My order id</CustomerOrderId>\n\t<RequestedFocDate>2021-06-16Z</RequestedFocDate>\n\t<SiteId>2439</SiteId>\n\t<PeerId>23432</PeerId>\n\t<LoaAuthorizingPerson>The Authgal</LoaAuthorizingPerson>\n\t<TargetRespOrgId>JYT01</TargetRespOrgId>\n\t<ListOfPhoneNumbers>\n\t\t<PhoneNumber>+18774809871</PhoneNumber>\n\t</ListOfPhoneNumbers>\n</LnpOrder>"
              Global Port-In with Hosted Number:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <LnpOrder>
                    <RequestedFocDate>2024-08-5</RequestedFocDate>
                    <LoaAuthorizingPerson>User Name</LoaAuthorizingPerson>
                    <LosingCarrierName>VortexNet Global</LosingCarrierName>
                    <ListOfPhoneNumbers>
                      <PhoneNumber>+33109753125</PhoneNumber>
                    </ListOfPhoneNumbers>
                    <SiteId>5</SiteId>
                    <PeerId>500020</PeerId>
                    <Subscriber>
                        <SubscriberType>RESIDENTIAL</SubscriberType>
                        <FirstName>User</FirstName>
                        <LastName>Name</LastName>
                        <AddressId>ae8782b9-0324-4917-a773-6ee0e8d9146e</AddressId>
                    </Subscriber>
                    <OperatorCode>OPR1</OperatorCode>
                  </LnpOrder>
              Global Port-in with KYC:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <LnpOrder>
                    <RequestedFocDate>2023-09-01</RequestedFocDate>
                    <SiteId>13078</SiteId>
                    <PeerId>553906</PeerId>
                    <VoicePackageConfigurationId>c7951e4f-6285-4b75-83e5-392558f59067</VoicePackageConfigurationId>
                    <RequirementsPackageId>8c5ec953-bc03-43c0-95f3-841cc24ecaf3</RequirementsPackageId>
                    <LosingCarrierName>British Telecom</LosingCarrierName>
                    <Subscriber>
                      <SubscriberType>RESIDENTIAL</SubscriberType>
                      <FirstName>Jane</FirstName>
                      <LastName>Doe</LastName>
                      <MiddleInitial>M</MiddleInitial>
                      <AddressId>ba4bb1f3-4358-4a46-883f-6376539ff94e</AddressId>
                    </Subscriber>
                    <ListOfPhoneNumbers>
                      <PhoneNumber>+441171261486</PhoneNumber>
                      <PhoneNumber>+441171261487</PhoneNumber>
                      <PhoneNumber>+441171261488</PhoneNumber>
                      <PhoneNumber>+441171261489</PhoneNumber>
                      <PhoneNumber>+441171261580</PhoneNumber>
                    </ListOfPhoneNumbers>
                    <CustomerOrderId>myOrder</CustomerOrderId>
                  </LnpOrder>
              Global Port-in with UK Numbers (Beta), Business Subscriber:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <LnpOrder>
                    <RequestedFocDate>2023-09-01</RequestedFocDate>
                    <SiteId>13078</SiteId>
                    <PeerId>553906</PeerId>
                    <LosingCarrierName>British Telecom</LosingCarrierName>
                    <Subscriber>
                      <SubscriberType>BUSINESS</SubscriberType>
                      <CompanyName>Acme, Inc.</CompanyName>
                      <VatNumber>IE1234567T</VatNumber>
                      <AddressId>ba4bb1f3-4358-4a46-883f-6376539ff94e</AddressId>
                    </Subscriber>
                    <ListOfPhoneNumbers>
                      <PhoneNumber>+441171261486</PhoneNumber>
                      <PhoneNumber>+441171261487</PhoneNumber>
                      <PhoneNumber>+441171261488</PhoneNumber>
                      <PhoneNumber>+441171261489</PhoneNumber>
                      <PhoneNumber>+441171261580</PhoneNumber>
                    </ListOfPhoneNumbers>
                    <CustomerOrderId>myOrder</CustomerOrderId>
                  </LnpOrder>
              Global Port-in with UK Numbers (Beta), Draft:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <LnpOrder>
                    <ListOfPhoneNumbers>
                      <PhoneNumber>+441171261486</PhoneNumber>
                      <PhoneNumber>+441171261487</PhoneNumber>
                      <PhoneNumber>+441171261488</PhoneNumber>
                      <PhoneNumber>+441171261489</PhoneNumber>
                      <PhoneNumber>+441171261580</PhoneNumber>
                    </ListOfPhoneNumbers>
                    <ProcessingStatus>DRAFT</ProcessingStatus>
                  </LnpOrder>
              Global Port-in with UK Numbers (Beta), Residential Subscriber:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <LnpOrder>
                    <RequestedFocDate>2023-09-01</RequestedFocDate>
                    <SiteId>13078</SiteId>
                    <PeerId>553906</PeerId>
                    <LosingCarrierName>British Telecom</LosingCarrierName>
                    <Subscriber>
                      <SubscriberType>RESIDENTIAL</SubscriberType>
                      <FirstName>Jane</FirstName>
                      <LastName>Doe</LastName>
                      <AddressId>ba4bb1f3-4358-4a46-883f-6376539ff94e</AddressId>
                    </Subscriber>
                    <ListOfPhoneNumbers>
                      <PhoneNumber>+441171261486</PhoneNumber>
                      <PhoneNumber>+441171261487</PhoneNumber>
                      <PhoneNumber>+441171261488</PhoneNumber>
                      <PhoneNumber>+441171261489</PhoneNumber>
                      <PhoneNumber>+441171261580</PhoneNumber>
                    </ListOfPhoneNumbers>
                    <CustomerOrderId>myOrder</CustomerOrderId>
                  </LnpOrder>
              Global Port-in without KYC:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <LnpOrder>
                    <RequestedFocDate>2023-09-01</RequestedFocDate>
                    <SiteId>13078</SiteId>
                    <PeerId>553906</PeerId>
                    <VoicePackageConfigurationId>c7951e4f-6285-4b75-83e5-392558f59067</VoicePackageConfigurationId>
                    <LosingCarrierName>British Telecom</LosingCarrierName>
                    <Subscriber>
                      <SubscriberType>RESIDENTIAL</SubscriberType>
                      <FirstName>Jane</FirstName>
                      <LastName>Doe</LastName>
                      <AddressId>ba4bb1f3-4358-4a46-883f-6376539ff94e</AddressId>
                    </Subscriber>
                    <ListOfPhoneNumbers>
                      <PhoneNumber>+441171261486</PhoneNumber>
                      <PhoneNumber>+441171261487</PhoneNumber>
                      <PhoneNumber>+441171261488</PhoneNumber>
                      <PhoneNumber>+441171261489</PhoneNumber>
                      <PhoneNumber>+441171261580</PhoneNumber>
                    </ListOfPhoneNumbers>
                    <CustomerOrderId>myOrder</CustomerOrderId>
                  </LnpOrder>
              On-net NANP Port-in:
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<LnpOrder>\n\t<RequestedFocDate>2016-03-25T21:15:00.000Z</RequestedFocDate>\n\t<AlternateSpid>X455</AlternateSpid>\n\t<BillingTelephoneNumber>+19195551234</BillingTelephoneNumber>\n\t<NewBillingTelephoneNumber>+19175131245</NewBillingTelephoneNumber>\n\t<SiteId>2439</SiteId>\n\t<PeerId>23432</PeerId>\n\t<Subscriber>\n\t\t<SubscriberType>BUSINESS</SubscriberType>\n\t\t<FirstName>First</FirstName>\n\t\t<LastName>Last</LastName>\n\t\t<ServiceAddress>\n\t\t\t<HouseNumber>11235</HouseNumber>\n\t\t\t<StreetName>Back</StreetName>\n\t\t\t<City>Denver</City>\n\t\t\t<StateCode>CO</StateCode>\n\t\t\t<Zip>27541</Zip>\n\t\t\t<County>Canyon</County>\n\t\t</ServiceAddress>\n\t</Subscriber>\n\t<LoaAuthorizingPerson>The Authguy</LoaAuthorizingPerson>\n        <LosingResellerName>My Current Provider Name</LosingResellerName>\n        <WirelessInfo>\n\t\t<AccountNumber>771297665AABC</AccountNumber>\n\t\t<PinNumber>1234</PinNumber>\n\t</WirelessInfo>\n\t<TnAttributes>\n\t\t<TnAttribute>Protected</TnAttribute>\n\t</TnAttributes>\n\t<ListOfPhoneNumbers>\n\t\t<PhoneNumber>+19194809871</PhoneNumber>\n\t</ListOfPhoneNumbers>\n\t<CustomerOrderId>myOrder</CustomerOrderId>\n\t<Triggered>true</Triggered>\n\t<PartialPort>true</PartialPort>\n\t<ProcessingStatus>DRAFT</ProcessingStatus>\n</LnpOrder>"
            schema:
              oneOf:
                - $ref: '#/components/schemas/onNetNANPLnpOrderRequest'
                - $ref: '#/components/schemas/manualNANPTollFreeLnpOrderRequest'
                - $ref: '#/components/schemas/automatedNANPTollFreeLnpOrderRequest'
                - $ref: '#/components/schemas/offNetNANPLnpOrderRequest'
                - $ref: '#/components/schemas/internalNANPLnpOrderRequest'
                - $ref: '#/components/schemas/manualGlobalBetaLnpOrderRequest'
                - $ref: '#/components/schemas/manualGlobalLarLnpOrderRequest'
                - $ref: '#/components/schemas/manualGlobalDraftLnpOrderRequest'
                - $ref: '#/components/schemas/hostedTNLnpOrderRequest'
      responses:
        '201':
          content:
            application/json:
              examples:
                Automated NANP Toll-Free Port-in Order Response:
                  value:
                    loaAuthorizingPerson: The Authguy
                    orderId: 03f194d5-3932-4e9f-8ba1-03ef767985e5
                    phoneNumbers:
                      - '+18774809871'
                    processingStatus: VALIDATE_TFNS
                    requestedFocDate: '2016-03-25T21:15:00Z'
                    status:
                      code: 201
                      description: >-
                        Order request received. Please use the order id to check
                        the status of your order later.
                    targetRespOrgId: JYT01
                    tollFreePortType: PHASE_1_TOLLFREE
                    tollFreeValidationStatus: PROCESSING
                Global Hosted Number Port-In Order response:
                  value:
                    locationId: 500020
                    losingCarrierName: VortexNet Global
                    operatorCode: OPR1
                    operatorRoutingPrefix: RPC1
                    orderId: e0b23b68-9533-4d35-83c7-25fcdc57ec69
                    partialPort: 'false'
                    phoneNumbers:
                      - '+33109753127'
                    processingStatus: SUBMITTED
                    requestedFocDate: '2024-08-05T00:00:00Z'
                    status:
                      code: 201
                      description: >-
                        Order request received. Please use the order id to check
                        the status of your order later.
                    subAccountId: 5
                    subscriber:
                      addressId: 0500a0ee-c124-4f49-b126-0bb2c4a89264
                      firstName: Syed
                      lastName: Haris
                      subscriberType: RESIDENTIAL
                Global Port-in Order Response with UK Numbers (Beta):
                  value:
                    customerOrderId: myOrder
                    locationId: 553906
                    losingCarrierName: British Telecom
                    orderId: 03f194d5-3932-4e9f-8ba1-03ef767985e5
                    phoneNumbers:
                      - '+441171261486'
                      - '+441171261487'
                      - '+441171261488'
                      - '+441171261489'
                      - '+441171261580'
                    processingStatus: MISSING_REQUIREMENTS
                    requestedFocDate: '2023-09-01T00:00:00Z'
                    status:
                      code: 201
                      description: >-
                        Order request received. Please use the order id to check
                        the status of your order later.
                    subAccountId: 13078
                    subscriber:
                      addressId: ba4bb1f3-4358-4a46-883f-6376539ff94e
                      firstName: Jane
                      lastName: Doe
                      subscriberType: RESIDENTIAL
                Global Port-in Order Response, Business Subscriber, without KYC:
                  value:
                    customerOrderId: myOrder
                    locationId: 553906
                    losingCarrierName: British Telecom
                    orderId: 03f194d5-3932-4e9f-8ba1-03ef767985e5
                    phoneNumbers:
                      - '+441171261486'
                      - '+441171261487'
                      - '+441171261488'
                      - '+441171261489'
                      - '+441171261580'
                    processingStatus: MISSING_REQUIREMENTS
                    requestedFocDate: '2023-09-01T00:00:00Z'
                    status:
                      code: 201
                      description: >-
                        Order request received. Please use the order id to check
                        the status of your order later.
                    subAccountId: 13078
                    subscriber:
                      addressId: ba4bb1f3-4358-4a46-883f-6376539ff94e
                      firstName: Jane
                      lastName: Doe
                      subscriberType: RESIDENTIAL
                    voicePackageConfigurationId: c7951e4f-6285-4b75-83e5-392558f59067
                Global Port-in Order Response, Residential Subscriber, with KYC:
                  value:
                    customerOrderId: myOrder
                    locationId: 553906
                    losingCarrierName: British Telecom
                    orderId: 03f194d5-3932-4e9f-8ba1-03ef767985e5
                    phoneNumbers:
                      - '+441171261486'
                      - '+441171261487'
                      - '+441171261488'
                      - '+441171261489'
                      - '+441171261580'
                    processingStatus: MISSING_REQUIREMENTS
                    requestedFocDate: '2023-09-01T00:00:00Z'
                    requirementsPackageId: 8c5ec953-bc03-43c0-95f3-841cc24ecaf3
                    status:
                      code: 201
                      description: >-
                        Order request received. Please use the order id to check
                        the status of your order later.
                    subAccountId: 13078
                    subscriber:
                      addressId: ba4bb1f3-4358-4a46-883f-6376539ff94e
                      firstName: Jane
                      lastName: Doe
                      subscriberType: RESIDENTIAL
                    voicePackageConfigurationId: c7951e4f-6285-4b75-83e5-392558f59067
                On-net NANP Port-in Order Response:
                  value:
                    billingTelephoneNumber: '+19195551234'
                    billingType: PORTIN
                    comments: PRI Circuit ID 1234
                    customerOrderId: myOrder
                    immediately: true
                    loaAuthorizingPerson: The Authguy
                    locationId: '512345'
                    losingResellerName: My Current Provider Name
                    newBillingTelephoneNumber: '+19175131245'
                    orderId: 03f194d5-3932-4e9f-8ba1-03ef767985e5
                    overrideValidation: false
                    partialPort: 'true'
                    phoneNumberAttributes:
                      - Protected
                    phoneNumbers:
                      - '+19194809871'
                    processingStatus: PENDING_DOCUMENTS
                    requestedFocDate: '2016-03-25T21:15:00Z'
                    status:
                      code: 201
                      description: >-
                        Order request received. Please use the order id to check
                        the status of your order later.
                    subAccountId: '881'
                    subscriber:
                      firstName: First
                      lastName: Last
                      serviceAddress:
                        city: Denver
                        country: United States
                        county: Canyon
                        houseNumber: 11235
                        stateCode: CO
                        streetName: Back
                        zip: 27541
                      subscriberType: BUSINESS
                    triggered: true
                    wirelessInfo:
                      accountNumber: 771297665AABC
                      pinNumber: '1234'
              schema:
                oneOf:
                  - $ref: '#/components/schemas/lnpOrderResponseJson'
                  - $ref: '#/components/schemas/manualGlobalLnpOrderResponseJson'
            application/xml:
              examples:
                Automated NANP Toll-Free Port-in Order Response:
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<LnpOrderResponse>\n\t<OrderId>03f194d5-3932-4e9f-8ba1-03ef767985e5</OrderId>\n\t<Status>\n\t\t<Code>201</Code>\n\t\t<Description>Order request received. Please use the order id to check the status of your order later.</Description>\n\t</Status>\n\t<ProcessingStatus>VALIDATE_TFNS</ProcessingStatus>\n\t<RequestedFocDate>2016-03-25T21:15:00.000Z</RequestedFocDate>\n\t<LoaAuthorizingPerson>The Authguy</LoaAuthorizingPerson>\n\t<ListOfPhoneNumbers>\n\t\t<PhoneNumber>+18774809871</PhoneNumber>\n\t</ListOfPhoneNumbers>\n\t<TollFreeValidationStatus>PROCESSING</TollFreeValidationStatus>\n\t<TollFreePortType>PHASE_1_TOLLFREE</TollFreePortType>\n\t<TargetRespOrgId>JYT01</TargetRespOrgId>\n</LnpOrderResponse>"
                Global Hosted Number Port-In Order response:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <OrderId>e0b23b68-9533-4d35-83c7-25fcdc57ec69</OrderId>
                      <Status>
                          <Code>201</Code>
                          <Description>Order request received. Please use the order id to check the status of your order later.</Description>
                      </Status>
                      <ProcessingStatus>SUBMITTED</ProcessingStatus>
                      <RequestedFocDate>2024-08-05T00:00:00Z</RequestedFocDate>
                      <Subscriber>
                          <SubscriberType>RESIDENTIAL</SubscriberType>
                          <FirstName>Syed</FirstName>
                          <LastName>Haris</LastName>
                          <AddressId>0500a0ee-c124-4f49-b126-0bb2c4a89264</AddressId>
                      </Subscriber>
                      <ListOfPhoneNumbers>
                          <PhoneNumber>+33109753127</PhoneNumber>
                      </ListOfPhoneNumbers>
                      <SiteId>5</SiteId>
                      <PeerId>500020</PeerId>
                      <LosingCarrierName>VortexNet Global</LosingCarrierName>
                      <PartialPort>false</PartialPort>
                      <OperatorCode>OPR1</OperatorCode>
                      <OperatorRoutingPrefix>RPC1</OperatorRoutingPrefix>
                    </LnpOrderResponse>
                Global Port-in Order Response with UK Numbers (Beta):
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <OrderId>03f194d5-3932-4e9f-8ba1-03ef767985e5</OrderId>
                      <Status>
                        <Code>201</Code>
                        <Description>Order request received. Please use the order id to check the status of your order later.</Description>
                      </Status>
                      <ProcessingStatus>MISSING_REQUIREMENTS</ProcessingStatus>
                      <RequestedFocDate>2023-09-01T00:00:00Z</RequestedFocDate>
                      <Subscriber>
                        <SubscriberType>RESIDENTIAL</SubscriberType>
                        <FirstName>Jane</FirstName>
                        <LastName>Doe</LastName>
                        <AddressId>ba4bb1f3-4358-4a46-883f-6376539ff94e</AddressId>
                      </Subscriber>
                      <SiteId>13078</SiteId>
                      <PeerId>553906</PeerId>
                      <LosingCarrierName>British Telecom</LosingCarrierName>
                      <ListOfPhoneNumbers>
                        <PhoneNumber>+441171261486</PhoneNumber>
                        <PhoneNumber>+441171261487</PhoneNumber>
                        <PhoneNumber>+441171261488</PhoneNumber>
                        <PhoneNumber>+441171261489</PhoneNumber>
                        <PhoneNumber>+441171261580</PhoneNumber>
                      </ListOfPhoneNumbers>
                      <CustomerOrderId>myOrder</CustomerOrderId>
                    </LnpOrderResponse>
                Global Port-in Order Response, Business Subscriber, without KYC:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <OrderId>03f194d5-3932-4e9f-8ba1-03ef767985e5</OrderId>
                      <Status>
                        <Code>201</Code>
                        <Description>Order request received. Please use the order id to check the status of your order later.</Description>
                      </Status>
                      <ProcessingStatus>MISSING_REQUIREMENTS</ProcessingStatus>
                      <RequestedFocDate>2023-09-01T00:00:00Z</RequestedFocDate>
                      <Subscriber>
                        <SubscriberType>RESIDENTIAL</SubscriberType>
                        <FirstName>Jane</FirstName>
                        <LastName>Doe</LastName>
                        <AddressId>ba4bb1f3-4358-4a46-883f-6376539ff94e</AddressId>
                      </Subscriber>
                      <SiteId>13078</SiteId>
                      <PeerId>553906</PeerId>
                      <VoicePackageConfigurationId>c7951e4f-6285-4b75-83e5-392558f59067</VoicePackageConfigurationId>
                      <LosingCarrierName>British Telecom</LosingCarrierName>
                      <ListOfPhoneNumbers>
                        <PhoneNumber>+441171261486</PhoneNumber>
                        <PhoneNumber>+441171261487</PhoneNumber>
                        <PhoneNumber>+441171261488</PhoneNumber>
                        <PhoneNumber>+441171261489</PhoneNumber>
                        <PhoneNumber>+441171261580</PhoneNumber>
                      </ListOfPhoneNumbers>
                      <CustomerOrderId>myOrder</CustomerOrderId>
                    </LnpOrderResponse>
                Global Port-in Order Response, Residential Subscriber, with KYC:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <OrderId>03f194d5-3932-4e9f-8ba1-03ef767985e5</OrderId>
                      <Status>
                        <Code>201</Code>
                        <Description>Order request received. Please use the order id to check the status of your order later.</Description>
                      </Status>
                      <ProcessingStatus>MISSING_REQUIREMENTS</ProcessingStatus>
                      <RequestedFocDate>2023-09-01T00:00:00Z</RequestedFocDate>
                      <Subscriber>
                        <SubscriberType>RESIDENTIAL</SubscriberType>
                        <FirstName>Jane</FirstName>
                        <LastName>Doe</LastName>
                        <AddressId>ba4bb1f3-4358-4a46-883f-6376539ff94e</AddressId>
                      </Subscriber>
                      <SiteId>13078</SiteId>
                      <PeerId>553906</PeerId>
                      <VoicePackageConfigurationId>c7951e4f-6285-4b75-83e5-392558f59067</VoicePackageConfigurationId>
                      <RequirementsPackageId>8c5ec953-bc03-43c0-95f3-841cc24ecaf3</RequirementsPackageId>
                      <LosingCarrierName>British Telecom</LosingCarrierName>
                      <ListOfPhoneNumbers>
                        <PhoneNumber>+441171261486</PhoneNumber>
                        <PhoneNumber>+441171261487</PhoneNumber>
                        <PhoneNumber>+441171261488</PhoneNumber>
                        <PhoneNumber>+441171261489</PhoneNumber>
                        <PhoneNumber>+441171261580</PhoneNumber>
                      </ListOfPhoneNumbers>
                      <CustomerOrderId>myOrder</CustomerOrderId>
                    </LnpOrderResponse>
                On-net NANP Port-in Order Response:
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<LnpOrderResponse>\n\t<OrderId>03f194d5-3932-4e9f-8ba1-03ef767985e5</OrderId>\n\t<Status>\n\t\t<Code>201</Code>\n\t\t<Description>Order request received. Please use the order id to check the status of your order later.</Description>\n\t</Status>\n\t<ProcessingStatus>PENDING_DOCUMENTS</ProcessingStatus>\n\t<RequestedFocDate>2016-03-25T21:15:00.000Z</RequestedFocDate>\n\t<LoaAuthorizingPerson>The Authguy</LoaAuthorizingPerson>\n\t<Subscriber>\n\t\t<SubscriberType>BUSINESS</SubscriberType>\n\t\t<FirstName>First</FirstName>\n\t\t<LastName>Last</LastName>\n\t\t<ServiceAddress>\n\t\t\t<HouseNumber>11235</HouseNumber>\n\t\t\t<StreetName>Back</StreetName>\n\t\t\t<City>Denver</City>\n\t\t\t<StateCode>CO</StateCode>\n\t\t\t<Zip>27541</Zip>\n\t\t\t<County>Canyon</County>\n\t\t\t<Country>United States</Country>\n\t\t</ServiceAddress>\n\t</Subscriber>\n\t<WirelessInfo>\n\t\t<AccountNumber>771297665AABC</AccountNumber>\n\t\t<PinNumber>1234</PinNumber>\n\t</WirelessInfo>\n\t<TnAttributes>\n\t\t<TnAttribute>Protected</TnAttribute>\n\t</TnAttributes>\n\t<BillingTelephoneNumber>+19195551234</BillingTelephoneNumber>\n\t<NewBillingTelephoneNumber>+19175131245</NewBillingTelephoneNumber>\n\t<SiteId>    SITE ID     </SiteId>\n\t<PeerId>  SIPPEER ID    </PeerId>\n\t<ListOfPhoneNumbers>\n\t\t<PhoneNumber>+19194809871</PhoneNumber>\n\t</ListOfPhoneNumbers>\n\t<CustomerOrderId>myOrder</CustomerOrderId>\n\t<Triggered>true</Triggered>\n\t<PartialPort>true</PartialPort>\n\t<LosingResellerName>My Current Provider Name</LosingResellerName>\n</LnpOrderResponse>"
              schema:
                oneOf:
                  - $ref: '#/components/schemas/lnpOrderResponse'
                  - $ref: '#/components/schemas/manualGlobalLnpOrderResponse'
          description: >-
            The order has been created and an order ID is specified in the
            payload and in the header.

            Use the OrderId value with GET /portins/orderId to fetch the status
            of the order.
        '400':
          content:
            application/json:
              example:
                billingTelephoneNumber: '+19195551234'
                billingType: PORTIN
                errors:
                  - code: 7309
                    description: The subAccount id was not supplied or is invalid.
                  - code: 7312
                    description: The sippeer id is invalid.
                  - code: 7398
                    description: >-
                      Protected status is not available for numbers in off-net
                      rate centers.
                loaAuthorizingPerson: The Authguy
                newBillingTelephoneNumber: '+19175131245'
                overrideValidation: false
                phoneNumberAttributes:
                  - Protected
                phoneNumbers:
                  - '+19194809871'
                processingStatus: EXCEPTION
                status:
                  code: 400
                  description: Validation Failed. Please check your input parameters.
                subscriber:
                  firstName: First
                  lastName: Last
                  serviceAddress:
                    city: Denver
                    country: United States
                    county: Canyon
                    houseNumber: 11235
                    stateCode: CO
                    streetName: Back
                    zip: 27541
                  subscriberType: BUSINESS
                triggered: true
                wirelessInfo:
                  accountNumber: 771297665AABC
                  pinNumber: '1234'
              schema:
                $ref: '#/components/schemas/lnpOrderResponseJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <Status>
                        <Code>400</Code>
                        <Description>Validation Failed. Please check your input parameters.</Description>
                      </Status>
                      <Errors>
                        <Code>7309</Code>
                        <Description>The site id was not supplied or is invalid.</Description>
                      </Errors>
                      <Errors>
                        <Code>7312</Code>
                        <Description>The sippeer id is invalid.</Description>
                      </Errors>
                      <Errors>
                        <Code>7398</Code>
                        <Description>Protected status is not available for numbers in off-net rate centers.</Description>
                      </Errors>
                      <ProcessingStatus>EXCEPTION</ProcessingStatus>
                      <LoaAuthorizingPerson>The Authguy</LoaAuthorizingPerson>
                      <Subscriber>
                        <SubscriberType>BUSINESS</SubscriberType>
                        <FirstName>First</FirstName>
                        <LastName>Last</LastName>
                        <ServiceAddress>
                          <HouseNumber>11235</HouseNumber>
                          <StreetName>Back</StreetName>
                          <City>Denver</City>
                          <StateCode>CO</StateCode>
                          <Zip>27541</Zip>
                          <County>Canyon</County>
                          <Country>United States</Country>
                        </ServiceAddress>
                      </Subscriber>
                      <WirelessInfo>
                        <AccountNumber>771297665AABC</AccountNumber>
                        <PinNumber>1234</PinNumber>
                      </WirelessInfo>
                      <TnAttributes>
                        <TnAttribute>Protected</TnAttribute>
                      </TnAttributes>
                      <BillingTelephoneNumber>+19195551234</BillingTelephoneNumber>
                      <NewBillingTelephoneNumber>+19175131245</NewBillingTelephoneNumber>
                      <ListOfPhoneNumbers>
                        <PhoneNumber>+19194809871</PhoneNumber>
                      </ListOfPhoneNumbers>
                      <Triggered>true</Triggered>
                    </LnpOrderResponse>
              schema:
                $ref: '#/components/schemas/lnpOrderResponse'
          description: The order failed; one of the input parameters is invalid.
      summary: Create port-in order
      tags:
        - Porting
  /accounts/{accountId}/portins/statistics:
    get:
      description: >-
        Fetches the statistics of port-in orders for a specific account ID,
        including status counts and total orders.
      operationId: GetPortinStatistics
      parameters:
        - description: The account ID for which port-in statistics are being fetched.
          in: path
          name: accountId
          required: true
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/getStatisticsResponse'
        '400':
          $ref: '#/components/responses/badRequestError'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '403':
          $ref: '#/components/responses/forbiddenError'
        '404':
          $ref: '#/components/responses/notFoundError'
        '405':
          $ref: '#/components/responses/notAllowedError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '500':
          $ref: '#/components/responses/internalServerError'
        '502':
          $ref: '#/components/responses/internalServerError'
      summary: Retrieve port-in order statistics
      tags:
        - Porting
  /accounts/{accountId}/portins/status:
    get:
      description: Gets Port In orders which were last modified in the specified date range
      operationId: GetAllPortsByAccountIdAndRange
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - in: query
          name: startdate
          schema:
            type: string
        - in: query
          name: enddate
          schema:
            type: string
        - in: query
          name: page
          schema:
            type: string
        - in: query
          name: size
          schema:
            format: int32
            type: integer
      responses:
        '200':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/lnpResponseWrapper'
          description: ''
      summary: Get Port In Range
      tags:
        - Porting
  /accounts/{accountId}/portins/statusHistory:
    get:
      description: >-
        Retrieves the status history of an order based upon PON or OrderId for
        an accountId.
      operationId: portinOrderHistory
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/ponQueryParam'
        - $ref: '#/components/parameters/orderIdQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/statusHistoryResponseSuccess'
        '400':
          $ref: '#/components/responses/badRequestError'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '403':
          $ref: '#/components/responses/forbiddenError'
        '404':
          $ref: '#/components/responses/notFoundError'
        '405':
          $ref: '#/components/responses/notAllowedError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '500':
          $ref: '#/components/responses/internalServerError'
        '502':
          $ref: '#/components/responses/internalServerError'
      summary: Retrieve port-in order status history
      tags:
        - Porting
  /accounts/{accountId}/portins/totals:
    get:
      description: Retrieves the total count of port-ins.
      operationId: RetrievePortinTotals
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The current status of the port-in.
          example: complete
          in: query
          name: status
          required: false
          schema:
            type: string
        - description: The vendor ID of the port-in.
          in: query
          name: vendorId
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <Quantity>
                        <Count>1</Count>
                    </Quantity>
              schema:
                $ref: '#/components/schemas/portinsTotal'
          description: >-
            The total has been successfully calculated and displayed in the
            payload.
      summary: Retrieve total count of port-in orders
      tags:
        - Porting
  /accounts/{accountId}/portins/{orderId}:
    delete:
      description: >-
        If port-in order is in DRAFT state the order will be deleted.  Otherwise
        the call simply

        places the existing order in a requested_cancel state.  The order will
        transition to CANCELLED

        as soon as the cancellation is conveyed to our porting vendor.  For
        non-draft orders, DELETE

        does not actually remove the order, but cancels it.  DELETE has no
        effect on orders already

        in a terminal state (i.e. COMPLETE, CANCELLED).
      operationId: DeletePortin
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                errors:
                  - code: 2811
                    description: >-
                      The porting of international phone numbers is not
                      supported by the current API version.
                orderId: fcd05cd2-d5f2-4ff8-8c9f-34b828fcc456
                processingStatus: REQUESTED_CANCEL
                status:
                  code: 200
                  description: >-
                    Cancellation request received. Please use the order id to
                    check the status of your order later.
              schema:
                $ref: '#/components/schemas/lnpOrderResponseCancelJson'
          description: |
            The port-in order has been successfully deleted/cancelled.
            For requests expecting XML, a 200 response will provide no content.
        '400':
          content:
            application/json:
              examples:
                example:
                  value:
                    billingTelephoneNumber: '+14352154438'
                    errors:
                      - code: 7331
                        description: Rate Center Not Present in Bandwidth App
                        phoneNumbers:
                          - '+17138391156'
                      - code: 7495
                        description: >-
                          Unable to change the TNs on this port. Please ensure
                          that the new TNs are from the same losing carrier as
                          the current TNs.
                        phoneNumbers:
                          - '+12024551000'
                          - '+12018391156'
                          - '+12018391157'
                    orderId: c58fed09-a3fc-49b8-b461-2286146b73c1
                    processingStatus: EXCEPTION
                    status:
                      code: 400
                      description: Validation Failed. Please check your input parameters.
              schema:
                $ref: '#/components/schemas/lnpOrderPutResponseJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                        <OrderId>2ffd0af4-7c54-40dc-9bfe-40f08b57e63a</OrderId>
                        <Status>
                            <Code>400</Code>
                            <Description>Validation Failed. Please check your input parameters.</Description>
                        </Status>
                        <Errors>
                            <Code>7304</Code>
                            <Description>The order is already complete and cannot be modified or cancelled</Description>
                        </Errors>
                        <ProcessingStatus>EXCEPTION</ProcessingStatus>
                    </LnpOrderResponse>
              schema:
                $ref: '#/components/schemas/lnpOrderResponse'
          description: >-
            Order id is invalid, order does not exist or the port-in order is
            already processed, and therefore cannot be deleted.
      summary: Delete port-in order
      tags:
        - Porting
    get:
      description: >-
        Retrieves the information associated with the specified port-in ID
        number. Note: For users of Enterprise Telephony accounts, AlternateSpid,
        LosingCarrierSPID, LosingCarrierName, and LosingCarrierIsWireless, are
        omitted from the success output.
      operationId: RetrievePortin
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              examples:
                Global Port-In for Hosted Number:
                  value:
                    accountId: 14
                    countryCodeA3: FRA
                    earliestEstimate: '2024-07-31T00:00:00Z'
                    immediately: false
                    lastModifiedBy: systemUser
                    lastModifiedDate: '2024-07-30T07:32:45.421Z'
                    locationId: 500020
                    losingCarrierName: VortexNet Global
                    operatorCode: OPR1
                    operatorRoutingPrefix: RPC1
                    orderCreateDate: '2024-07-30T07:32:45.226Z'
                    overrideValidation: false
                    partialPort: 'false'
                    phoneNumberType: GEOGRAPHIC
                    phoneNumbers:
                      - '+33109753127'
                    portType: MANUAL
                    processingStatus: DRAFT
                    requestedFocDate: '2024-08-05T00:00:00Z'
                    subAccountId: 5
                    subscriber:
                      addressId: 0500a0ee-c124-4f49-b126-0bb2c4a89264
                      firstName: Syed
                      lastName: Haris
                      subscriberType: RESIDENTIAL
                    triggered: false
                    userId: systemUser
                    vendorName: International porting vendor
                Manual Global Port-in with KYC in MISSING_REQUIREMENTS state:
                  value:
                    accountId: 9912829
                    billingType: PORTIN
                    countryCodeA3: GBR
                    customerOrderId: port-001
                    lastModifiedBy: systemUser
                    lastModifiedDate: '2023-06-23T20:02:21.000Z'
                    locationId: 553906
                    losingCarrierName: British Telecom
                    missingRequirements:
                      - description: LOA
                        requirement: PORTING_DOCUMENTS
                      - description: COB
                        requirement: PORTING_DOCUMENTS
                    orderCreateDate: '2023-06-23T20:02:20.042Z'
                    phoneNumberType: GEOGRAPHIC
                    phoneNumbers:
                      - '+441171261486'
                      - '+441171261487'
                      - '+441171261488'
                      - '+441171261489'
                      - '+441171261580'
                    portType: MANUAL
                    processingStatus: MISSING_REQUIREMENTS
                    requestedFocDate: '2023-06-30T00:00:00Z'
                    requirementsPackageId: 8c5ec953-bc03-43c0-95f3-841cc24ecaf3
                    subAccountId: 13078
                    subscriber:
                      addressId: ba4bb1f3-4358-4a46-883f-6376539ff94e
                      businessName: Acme, Inc
                      subscriberType: BUSINESS
                      vatNumber: IE1234567T
                    userId: systemUser
                    vendorName: International porting vendor
                    voiceConfigurationPackageId: c7951e4f-6285-4b75-83e5-392558f59067
                Manual Global Port-in with UK Numbers in MISSING_REQUIREMENTS state (Beta):
                  value:
                    accountId: 9912829
                    billingType: PORTIN
                    countryCodeA3: GBR
                    customerOrderId: port-001
                    lastModifiedBy: systemUser
                    lastModifiedDate: '2023-06-23T20:02:21.000Z'
                    locationId: 553906
                    losingCarrierName: British Telecom
                    missingRequirements:
                      - description: LOA
                        requirement: PORTING_DOCUMENTS
                      - description: COB
                        requirement: PORTING_DOCUMENTS
                    orderCreateDate: '2023-06-23T20:02:20.042Z'
                    phoneNumberType: GEOGRAPHIC
                    phoneNumbers:
                      - '+441171261486'
                      - '+441171261487'
                      - '+441171261488'
                      - '+441171261489'
                      - '+441171261580'
                    portType: MANUAL
                    processingStatus: MISSING_REQUIREMENTS
                    requestedFocDate: '2023-06-30T00:00:00Z'
                    subAccountId: 13078
                    subscriber:
                      addressId: ba4bb1f3-4358-4a46-883f-6376539ff94e
                      businessName: Acme, Inc
                      subscriberType: BUSINESS
                      vatNumber: IE1234567T
                    userId: systemUser
                    vendorName: International porting vendor
                Manual Global Port-in with UK Numbers in SUBMITTED state (Beta):
                  value:
                    accountId: 9912829
                    billingType: PORTIN
                    countryCodeA3: GBR
                    customerOrderId: port-001
                    lastModifiedBy: systemUser
                    lastModifiedDate: '2023-06-23T20:02:21.000Z'
                    locationId: 553906
                    losingCarrierName: British Telecom
                    orderCreateDate: '2023-06-23T20:02:20.042Z'
                    phoneNumberType: GEOGRAPHIC
                    phoneNumbers:
                      - '+441171261486'
                      - '+441171261487'
                      - '+441171261488'
                      - '+441171261489'
                      - '+441171261580'
                    portType: MANUAL
                    processingStatus: SUBMITTED
                    requestedFocDate: '2023-06-30T00:00:00Z'
                    subAccountId: 13078
                    subscriber:
                      addressId: ba4bb1f3-4358-4a46-883f-6376539ff94e
                      businessName: Acme, Inc
                      subscriberType: BUSINESS
                      vatNumber: IE1234567T
                    userId: systemUser
                    vendorName: International porting vendor
                Manual Global Port-in without KYC in SUBMITTED state:
                  value:
                    accountId: 9912829
                    billingType: PORTIN
                    countryCodeA3: GBR
                    customerOrderId: port-001
                    lastModifiedBy: systemUser
                    lastModifiedDate: '2023-06-23T20:02:21.000Z'
                    locationId: 553906
                    losingCarrierName: British Telecom
                    orderCreateDate: '2023-06-23T20:02:20.042Z'
                    phoneNumberType: GEOGRAPHIC
                    phoneNumbers:
                      - '+441171261486'
                      - '+441171261487'
                      - '+441171261488'
                      - '+441171261489'
                      - '+441171261580'
                    portType: MANUAL
                    processingStatus: SUBMITTED
                    requestedFocDate: '2023-06-30T00:00:00Z'
                    subAccountId: 13078
                    subscriber:
                      addressId: ba4bb1f3-4358-4a46-883f-6376539ff94e
                      businessName: Acme, Inc
                      subscriberType: BUSINESS
                      vatNumber: IE1234567T
                    userId: systemUser
                    vendorName: International porting vendor
                    voiceConfigurationPackageId: c7951e4f-6285-4b75-83e5-392558f59067
                Port-in in CANCELLED state:
                  value:
                    accountId: 20
                    alternateSpid: Foo
                    billingTelephoneNumber: '+19195551234'
                    bulkPortinOrderId: b4e227b3-2caf-4546-9af7-849c60dce942
                    customerOrderId: SJM00002
                    earliestEstimate: '2016-03-25T21:15:00.000Z'
                    errors:
                      code: 7205
                      description: >-
                        Telephone number is already being processed on another
                        order
                    lastModifiedBy: jbm
                    lastModifiedDate: '2014-08-04T13:37:08.676Z'
                    loaAuthorizingPerson: The Authguy
                    locationId: 317771
                    losingCarrierIsWireless: 'true'
                    losingCarrierName: Mock Carrier
                    losingCarrierSPID: '9998'
                    losingResellerName: My Current Provider Name
                    newBillingTelephoneNumber: '+19175131245'
                    orderCreateDate: '2014-08-04T13:37:06.323Z'
                    partialPort: 'false'
                    phoneNumberAttributes:
                      - Protected
                    phoneNumbers:
                      - '+19194809871'
                    portType: AUTOMATED
                    processingStatus: CANCELLED
                    requestedFocDate: '2016-03-25T21:15:00.000Z'
                    subAccountId: 2857
                    subscriber:
                      firstName: First
                      lastName: Last
                      serviceAddress:
                        addressType: Service
                        city: Denver
                        country: United States
                        county: Canyon
                        houseNumber: '11235'
                        stateCode: CO
                        streetName: Back
                        zip: '27541'
                      subscriberType: BUSINESS
                    triggered: false
                    userId: jbm
                    vendorName: Bandwidth CLEC
                    wirelessInfo:
                      accountNumber: 771297665AABC
                      pinNumber: '1234'
                Toll Free INVALID_DRAFT_TFNS state, non-portable Phone Numberss:
                  value:
                    accountId: 9900572
                    customerOrderId: MyTestOrder
                    earliestEstimate: '2021-06-23T15:30:00Z'
                    lastModifiedBy: testuser
                    lastModifiedDate: '2021-06-16T21:03:42.085Z'
                    loaAuthorizingPerson: Jane Doe
                    locationId: 521434
                    orderCreateDate: '2021-06-16T21:00:43.694Z'
                    phoneNumbers:
                      - '+18336521001'
                      - '+18336522001'
                    portType: MANUAL_TOLLFREE
                    processingStatus: INVALID_DRAFT_TFNS
                    requestedFocDate: '2021-06-23T15:30:00Z'
                    subAccountId: 14020
                    tollFreePortType: PHASE_1_TOLLFREE
                    tollFreeValidationErrors:
                      errors:
                        - code: 7642
                          description: >-
                            Phone Number list contains at least one toll free
                            number that cannot be ported due to spare status.
                          phoneNumbers:
                            - '+18336521001'
                        - code: 7643
                          description: >-
                            Phone Number list contains at least one toll free
                            number that cannot be ported due to unavailable
                            status.
                          phoneNumbers:
                            - '+18336522001'
                    tollFreeValidationStatus: FAILED
                    triggered: false
                    userId: testuser
                Toll Free INVALID_DRAFT_TFNS state, vendor error:
                  value:
                    accountId: 9900572
                    customerOrderId: MyTestOrder
                    earliestEstimate: '2021-06-23T15:30:00Z'
                    lastModifiedBy: testuser
                    lastModifiedDate: '2021-06-16T21:03:42.085Z'
                    loaAuthorizingPerson: Jane Doe
                    locationId: 521434
                    orderCreateDate: '2021-06-16T21:00:43.694Z'
                    phoneNumbers:
                      - '+18336000001'
                    portType: MANUAL_TOLLFREE
                    processingStatus: INVALID_DRAFT_TFNS
                    requestedFocDate: '2021-06-23T15:30:00Z'
                    subAccountId: 14020
                    tollFreePortType: PHASE_1_TOLLFREE
                    tollFreeValidationErrors:
                      errorList:
                        - code: 7617
                          description: >-
                            Batch Number Query received vendor error: Service
                            unavailable. If this condition persists, please
                            contact Bandwidth for support.
                          phoneNumbers:
                            - '+18336000001'
                    tollFreeValidationStatus: FAILED
                    triggered: false
                    userId: testuser
                Toll Free VALID_DRAFT_TFNS state:
                  value:
                    accountId: 9900572
                    customerOrderId: MyTestOrder
                    earliestEstimate: '2021-06-23T15:30:00Z'
                    internal: false
                    lastModifiedBy: testuser
                    lastModifiedDate: '2021-06-16T19:51:06.244Z'
                    loaAuthorizingPerson: Jane Doe
                    locationId: 521434
                    orderCreateDate: '2021-06-16T18:51:42.161Z'
                    phoneNumbers:
                      - '+18336532112'
                      - '+18336532113'
                      - '+18336532114'
                    portType: MANUAL_TOLLFREE
                    processingStatus: VALID_DRAFT_TFNS
                    requestedFocDate: '2021-06-23T15:30:00Z'
                    respOrgException: true
                    rocRequired: false
                    subAccountId: 14020
                    targetRespOrgId: TST52
                    tollFreePortType: PHASE_1_TOLLFREE
                    tollFreeValidationStatus: COMPLETE
                    triggered: false
                    userId: testuser
              schema:
                oneOf:
                  - $ref: '#/components/schemas/lnpOrderResponseJson'
                  - $ref: '#/components/schemas/lnpOrderResponseAutomatedTollFreeJson'
                  - $ref: '#/components/schemas/manualGlobalLnpOrderResponseJson'
            application/xml:
              examples:
                Global Port-In for Hosted Number:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                        <ProcessingStatus>DRAFT</ProcessingStatus>
                        <RequestedFocDate>2024-08-05T00:00:00Z</RequestedFocDate>
                        <EarliestEstimate>2024-07-31T00:00:00Z</EarliestEstimate>
                        <Subscriber>
                            <SubscriberType>RESIDENTIAL</SubscriberType>
                            <FirstName>Syed</FirstName>
                            <LastName>Haris</LastName>
                            <AddressId>0500a0ee-c124-4f49-b126-0bb2c4a89264</AddressId>
                        </Subscriber>
                        <ListOfPhoneNumbers>
                            <PhoneNumber>+33109753127</PhoneNumber>
                        </ListOfPhoneNumbers>
                        <AccountId>14</AccountId>
                        <SiteId>5</SiteId>
                        <PeerId>500020</PeerId>
                        <LosingCarrierName>VortexNet Global</LosingCarrierName>
                        <VendorName>International porting vendor</VendorName>
                        <OrderCreateDate>2024-07-30T07:32:45.226Z</OrderCreateDate>
                        <LastModifiedDate>2024-07-30T07:32:45.421Z</LastModifiedDate>
                        <userId>systemUser</userId>
                        <LastModifiedBy>systemUser</LastModifiedBy>
                        <PartialPort>false</PartialPort>
                        <Immediately>false</Immediately>
                        <Triggered>false</Triggered>
                        <PortType>MANUAL</PortType>
                        <OverrideValidation>false</OverrideValidation>
                        <CountryCodeA3>FRA</CountryCodeA3>
                        <PhoneNumberType>GEOGRAPHIC</PhoneNumberType>
                        <OperatorCode>OPR1</OperatorCode>
                        <OperatorRoutingPrefix>RPC1</OperatorRoutingPrefix>
                    </LnpOrderResponse>
                Manual Global Port-in with KYC in MISSING_REQUIREMENTS state:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <ProcessingStatus>MISSING_REQUIREMENTS</ProcessingStatus>
                      <RequestedFocDate>2023-06-30T00:00:00Z</RequestedFocDate>
                      <Subscriber>
                        <SubscriberType>BUSINESS</SubscriberType>
                        <BusinessName>Acme, Inc</BusinessName>
                        <VatNumber>IE1234567T</VatNumber>
                        <AddressId>ba4bb1f3-4358-4a46-883f-6376539ff94e</AddressId>
                      </Subscriber>
                      <ListOfPhoneNumbers>
                        <PhoneNumber>+441171261486</PhoneNumber>
                        <PhoneNumber>+441171261487</PhoneNumber>
                        <PhoneNumber>+441171261488</PhoneNumber>
                        <PhoneNumber>+441171261489</PhoneNumber>
                        <PhoneNumber>+441171261580</PhoneNumber>
                      </ListOfPhoneNumbers>
                      <AccountId>9912829</AccountId>
                      <SiteId>13078</SiteId>
                      <PeerId>553906</PeerId>
                      <VoicePackageConfigurationId>c7951e4f-6285-4b75-83e5-392558f59067</VoicePackageConfigurationId>
                      <RequirementsPackageId>8c5ec953-bc03-43c0-95f3-841cc24ecaf3</RequirementsPackageId>
                      <LosingCarrierName>British Telecom</LosingCarrierName>
                      <VendorName>International porting vendor</VendorName>
                      <OrderCreateDate>2023-06-23T20:02:20.042Z</OrderCreateDate>
                      <LastModifiedDate>2023-06-23T20:02:21.000Z</LastModifiedDate>
                      <userId>systemUser</userId>
                      <LastModifiedBy>systemUser</LastModifiedBy>
                      <CustomerOrderId>port-001</CustomerOrderId>
                      <BillingType>PORTIN</BillingType>
                      <PortType>MANUAL</PortType>
                      <CountryCodeA3>GBR</CountryCodeA3>
                      <PhoneNumberType>GEOGRAPHIC</PhoneNumberType>
                      <MissingRequirements>
                        <MissingRequirement>
                          <Requirement>PORTING_DOCUMENTS</Requirement>
                          <Description>LOA</Description>
                        </MissingRequirement>
                        <MissingRequirement>
                          <Requirement>PORTING_DOCUMENTS</Requirement>
                          <Description>COB</Description>
                        </MissingRequirement>
                      </MissingRequirements>
                    </LnpOrderResponse>
                Manual Global Port-in with UK Numbers in MISSING_REQUIREMENTS state (Beta):
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <ProcessingStatus>MISSING_REQUIREMENTS</ProcessingStatus>
                      <RequestedFocDate>2023-06-30T00:00:00Z</RequestedFocDate>
                      <Subscriber>
                        <SubscriberType>BUSINESS</SubscriberType>
                        <BusinessName>Acme, Inc</BusinessName>
                        <VatNumber>IE1234567T</VatNumber>
                        <AddressId>ba4bb1f3-4358-4a46-883f-6376539ff94e</AddressId>
                      </Subscriber>
                      <ListOfPhoneNumbers>
                        <PhoneNumber>+441171261486</PhoneNumber>
                        <PhoneNumber>+441171261487</PhoneNumber>
                        <PhoneNumber>+441171261488</PhoneNumber>
                        <PhoneNumber>+441171261489</PhoneNumber>
                        <PhoneNumber>+441171261580</PhoneNumber>
                      </ListOfPhoneNumbers>
                      <AccountId>9912829</AccountId>
                      <SiteId>13078</SiteId>
                      <PeerId>553906</PeerId>
                      <LosingCarrierName>British Telecom</LosingCarrierName>
                      <VendorName>International porting vendor</VendorName>
                      <OrderCreateDate>2023-06-23T20:02:20.042Z</OrderCreateDate>
                      <LastModifiedDate>2023-06-23T20:02:21.000Z</LastModifiedDate>
                      <userId>systemUser</userId>
                      <LastModifiedBy>systemUser</LastModifiedBy>
                      <CustomerOrderId>port-001</CustomerOrderId>
                      <BillingType>PORTIN</BillingType>
                      <PortType>MANUAL</PortType>
                      <CountryCodeA3>GBR</CountryCodeA3>
                      <PhoneNumberType>GEOGRAPHIC</PhoneNumberType>
                      <MissingRequirements>
                        <MissingRequirement>
                          <Requirement>PORTING_DOCUMENTS</Requirement>
                          <Description>LOA</Description>
                        </MissingRequirement>
                        <MissingRequirement>
                          <Requirement>PORTING_DOCUMENTS</Requirement>
                          <Description>COB</Description>
                        </MissingRequirement>
                      </MissingRequirements>
                    </LnpOrderResponse>
                Manual Global Port-in with UK Numbers in SUBMITTED state (Beta):
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <ProcessingStatus>SUBMITTED</ProcessingStatus>
                      <RequestedFocDate>2023-06-30T00:00:00Z</RequestedFocDate>
                      <Subscriber>
                        <SubscriberType>BUSINESS</SubscriberType>
                        <BusinessName>Acme, Inc</BusinessName>
                        <VatNumber>IE1234567T</VatNumber>
                        <AddressId>ba4bb1f3-4358-4a46-883f-6376539ff94e</AddressId>
                      </Subscriber>
                      <ListOfPhoneNumbers>
                        <PhoneNumber>+441171261486</PhoneNumber>
                        <PhoneNumber>+441171261487</PhoneNumber>
                        <PhoneNumber>+441171261488</PhoneNumber>
                        <PhoneNumber>+441171261489</PhoneNumber>
                        <PhoneNumber>+441171261580</PhoneNumber>
                      </ListOfPhoneNumbers>
                      <AccountId>9912829</AccountId>
                      <SiteId>13078</SiteId>
                      <PeerId>553906</PeerId>
                      <LosingCarrierName>British Telecom</LosingCarrierName>
                      <VendorName>International porting vendor</VendorName>
                      <OrderCreateDate>2023-06-23T20:02:20.042Z</OrderCreateDate>
                      <LastModifiedDate>2023-06-23T20:02:21.000Z</LastModifiedDate>
                      <userId>systemUser</userId>
                      <LastModifiedBy>systemUser</LastModifiedBy>
                      <CustomerOrderId>port-001</CustomerOrderId>
                      <BillingType>PORTIN</BillingType>
                      <PortType>MANUAL</PortType>
                      <CountryCodeA3>GBR</CountryCodeA3>
                      <PhoneNumberType>GEOGRAPHIC</PhoneNumberType>
                    </LnpOrderResponse>
                Manual Global Port-in without KYC in SUBMITTED state:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <ProcessingStatus>SUBMITTED</ProcessingStatus>
                      <RequestedFocDate>2023-06-30T00:00:00Z</RequestedFocDate>
                      <Subscriber>
                        <SubscriberType>BUSINESS</SubscriberType>
                        <BusinessName>Acme, Inc</BusinessName>
                        <VatNumber>IE1234567T</VatNumber>
                        <AddressId>ba4bb1f3-4358-4a46-883f-6376539ff94e</AddressId>
                      </Subscriber>
                      <ListOfPhoneNumbers>
                        <PhoneNumber>+441171261486</PhoneNumber>
                        <PhoneNumber>+441171261487</PhoneNumber>
                        <PhoneNumber>+441171261488</PhoneNumber>
                        <PhoneNumber>+441171261489</PhoneNumber>
                        <PhoneNumber>+441171261580</PhoneNumber>
                      </ListOfPhoneNumbers>
                      <AccountId>9912829</AccountId>
                      <SiteId>13078</SiteId>
                      <PeerId>553906</PeerId>
                      <VoicePackageConfigurationId>c7951e4f-6285-4b75-83e5-392558f59067</VoicePackageConfigurationId>
                      <LosingCarrierName>British Telecom</LosingCarrierName>
                      <VendorName>International porting vendor</VendorName>
                      <OrderCreateDate>2023-06-23T20:02:20.042Z</OrderCreateDate>
                      <LastModifiedDate>2023-06-23T20:02:21.000Z</LastModifiedDate>
                      <userId>systemUser</userId>
                      <LastModifiedBy>systemUser</LastModifiedBy>
                      <CustomerOrderId>port-001</CustomerOrderId>
                      <BillingType>PORTIN</BillingType>
                      <PortType>MANUAL</PortType>
                      <CountryCodeA3>GBR</CountryCodeA3>
                      <PhoneNumberType>GEOGRAPHIC</PhoneNumberType>
                    </LnpOrderResponse>
                Port-in in CANCELLED state:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                        <Errors>
                            <Code>7205</Code>
                            <Description>Telephone number is already being processed on another order</Description>
                        </Errors>
                        <ProcessingStatus>CANCELLED</ProcessingStatus>
                        <BulkPortinOrderId>b4e227b3-2caf-4546-9af7-849c60dce942</BulkPortinOrderId>
                        <RequestedFocDate>2016-03-25T21:15:00.000Z</RequestedFocDate>
                        <!-- Is set by system for draft portins only -->
                        <EarliestEstimate>2016-03-25T21:15:00.000Z</EarliestEstimate>
                        <CustomerOrderId>SJM00002</CustomerOrderId>
                        <LoaAuthorizingPerson>The Authguy</LoaAuthorizingPerson>
                        <Subscriber>
                            <SubscriberType>BUSINESS</SubscriberType>
                            <FirstName>First</FirstName>
                            <LastName>Last</LastName>
                            <ServiceAddress>
                                <HouseNumber>11235</HouseNumber>
                                <StreetName>Back</StreetName>
                                <City>Denver</City>
                                <StateCode>CO</StateCode>
                                <Zip>27541</Zip>
                                <County>Canyon</County>
                                <Country>United States</Country>
                                <AddressType>Service</AddressType>
                            </ServiceAddress>
                        </Subscriber>
                        <WirelessInfo>
                            <AccountNumber>771297665AABC</AccountNumber>
                            <PinNumber>1234</PinNumber>
                        </WirelessInfo>
                        <TnAttributes>
                            <TnAttribute>Protected</TnAttribute>
                        </TnAttributes>
                        <BillingTelephoneNumber>+19195551234</BillingTelephoneNumber>
                        <NewBillingTelephoneNumber>+19175131245</NewBillingTelephoneNumber>
                        <ListOfPhoneNumbers>
                            <PhoneNumber>+19194809871</PhoneNumber>
                        </ListOfPhoneNumbers>
                        <AlternateSpid>Foo</AlternateSpid>
                        <AccountId>20</AccountId>
                        <SiteId>2857</SiteId>
                        <PeerId>317771</PeerId>
                        <LosingCarrierSPID>9998</LosingCarrierSPID>
                        <LosingCarrierName>Mock Carrier</LosingCarrierName>
                        <LosingCarrierIsWireless>true</LosingCarrierIsWireless>
                        <VendorName>Bandwidth CLEC</VendorName>
                        <OrderCreateDate>2014-08-04T13:37:06.323Z</OrderCreateDate>
                        <LastModifiedDate>2014-08-04T13:37:08.676Z</LastModifiedDate>
                        <userId>jbm</userId>
                        <LastModifiedBy>jbm</LastModifiedBy>
                        <PartialPort>false</PartialPort>
                        <Triggered>false</Triggered>
                        <LosingResellerName>My Current Provider Name</LosingResellerName>
                        <PortType>AUTOMATED</PortType>
                    </LnpOrderResponse>
                Toll Free INVALID_DRAFT_TFNS state, non-portable TNs:
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<LnpOrderResponse>\n\t<ProcessingStatus>INVALID_DRAFT_TFNS</ProcessingStatus>\n\t<RequestedFocDate>2021-06-23T15:30:00Z</RequestedFocDate>\n\t<EarliestEstimate>2021-06-23T15:30:00Z</EarliestEstimate>\n\t<LoaAuthorizingPerson>Jane Doe</LoaAuthorizingPerson>\n\t<ListOfPhoneNumbers>\n\t\t<PhoneNumber>+18336521001</PhoneNumber>\n\t\t<PhoneNumber>+18336522001</PhoneNumber>\n\t</ListOfPhoneNumbers>\n\t<AccountId>9900572</AccountId>\n\t<SiteId>14020</SiteId>\n\t<PeerId>521434</PeerId>\n\t<OrderCreateDate>2021-06-16T21:00:43.694Z</OrderCreateDate>\n\t<LastModifiedDate>2021-06-16T21:03:42.085Z</LastModifiedDate>\n\t<userId>testuser</userId>\n\t<LastModifiedBy>testuser</LastModifiedBy>\n\t<CustomerOrderId>MyTestOrder</CustomerOrderId>\n\t<Triggered>false</Triggered>\n\t<PortType>MANUAL_TOLLFREE</PortType>\n\t<TollFreeValidationStatus>FAILED</TollFreeValidationStatus>\n\t<TollFreeValidationErrors>\n\t\t<ErrorList>\n\t\t\t<Error>\n\t\t\t\t<Code>7642</Code>\n\t\t\t\t<Description>TN list contains at least one toll free number that cannot be ported due to spare status.</Description>\n\t\t\t\t<TelephoneNumbers>\n\t\t\t\t\t<Tn>+18336521001</Tn>\n\t\t\t\t</TelephoneNumbers>\n\t\t\t</Error>\n\t\t\t<Error>\n\t\t\t\t<Code>7643</Code>\n\t\t\t\t<Description>TN list contains at least one toll free number that cannot be ported due to unavailable status.</Description>\n\t\t\t\t<TelephoneNumbers>\n\t\t\t\t\t<Tn>+18336522001</Tn>\n\t\t\t\t</TelephoneNumbers>\n\t\t\t</Error>\n\t\t</ErrorList>\n\t</TollFreeValidationErrors>\n\t<TollFreePortType>PHASE_1_TOLLFREE</TollFreePortType>\n</LnpOrderResponse>"
                Toll Free INVALID_DRAFT_TFNS state, vendor error:
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<LnpOrderResponse>\n\t<ProcessingStatus>INVALID_DRAFT_TFNS</ProcessingStatus>\n\t<RequestedFocDate>2021-06-23T15:30:00Z</RequestedFocDate>\n\t<EarliestEstimate>2021-06-23T15:30:00Z</EarliestEstimate>\n\t<LoaAuthorizingPerson>Jane Doe</LoaAuthorizingPerson>\n\t<ListOfPhoneNumbers>\n\t\t<PhoneNumber>+18336000001</PhoneNumber>\n\t</ListOfPhoneNumbers>\n\t<AccountId>9900572</AccountId>\n\t<SiteId>14020</SiteId>\n\t<PeerId>521434</PeerId>\n\t<OrderCreateDate>2021-06-16T21:00:43.694Z</OrderCreateDate>\n\t<LastModifiedDate>2021-06-16T21:03:42.085Z</LastModifiedDate>\n\t<userId>testuser</userId>\n\t<LastModifiedBy>testuser</LastModifiedBy>\n\t<CustomerOrderId>MyTestOrder</CustomerOrderId>\n\t<Triggered>false</Triggered>\n\t<PortType>MANUAL_TOLLFREE</PortType>\n\t<TollFreeValidationStatus>FAILED</TollFreeValidationStatus>\n\t<TollFreeValidationErrors>\n\t\t<ErrorList>\n\t\t\t<Error>\n\t\t\t\t<Code>7617</Code>\n\t\t\t\t<Description>Batch Number Query received vendor error: Service unavailable. If this condition persists, please contact Bandwidth for support.</Description>\n\t\t\t\t<TelephoneNumbers>\n\t\t\t\t\t<Tn>+18336000001</Tn>\n\t\t\t\t</TelephoneNumbers>\n\t\t\t</Error>\n\t\t</ErrorList>\n\t</TollFreeValidationErrors>\n\t<TollFreePortType>PHASE_1_TOLLFREE</TollFreePortType>\n</LnpOrderResponse>"
                Toll Free VALID_DRAFT_TFNS state:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <ProcessingStatus>VALID_DRAFT_TFNS</ProcessingStatus>
                      <RequestedFocDate>2021-06-23T15:30:00Z</RequestedFocDate>
                      <EarliestEstimate>2021-06-23T15:30:00Z</EarliestEstimate>
                      <LoaAuthorizingPerson>Jane Doe</LoaAuthorizingPerson>
                      <ListOfPhoneNumbers>
                        <PhoneNumber>+18336532112</PhoneNumber>
                        <PhoneNumber>+18336532113</PhoneNumber>
                        <PhoneNumber>+18336532114</PhoneNumber>
                      </ListOfPhoneNumbers>
                      <AccountId>9900572</AccountId>
                      <SiteId>14020</SiteId>
                      <PeerId>521434</PeerId>
                      <OrderCreateDate>2021-06-16T18:51:42.161Z</OrderCreateDate>
                      <LastModifiedDate>2021-06-16T19:51:06.244Z</LastModifiedDate>
                      <userId>testuser</userId>
                      <LastModifiedBy>testuser</LastModifiedBy>
                      <CustomerOrderId>MyTestOrder</CustomerOrderId>
                      <Triggered>false</Triggered>
                      <PortType>MANUAL_TOLLFREE</PortType>
                      <TollFreeValidationStatus>COMPLETE</TollFreeValidationStatus>
                      <TollFreePortType>PHASE_1_TOLLFREE</TollFreePortType>
                      <TargetRespOrgId>TST52</TargetRespOrgId>
                      <RespOrgException>true</RespOrgException>
                      <Internal>false</Internal>
                      <RocRequired>false</RocRequired>
                    </LnpOrderResponse>
              schema:
                oneOf:
                  - $ref: '#/components/schemas/lnpOrderResponse'
                  - $ref: '#/components/schemas/lnpOrderResponseAutomatedTollFree'
                  - $ref: '#/components/schemas/manualGlobalLnpOrderResponse'
          description: >-
            The information has been successfully retrieved and displayed in the
            payload.
      summary: Retrieve port-in order
      tags:
        - Porting
    put:
      description: >
        <p>It is possible to change ("SUPP" in LNP terms) an existing LNP order.
        This is done via a PUT on the existing order-id.  If a field is present
        in the PUT /portins/{orderId} payload, the value of the field will be
        updated for the order, subject to existing rules about the field. If a
        field is NOT present in the PUT /portins/{orderId} payload, behavior
        varies as to whether the missing field is removed from the port-in, set
        to a default value, or left unchanged. Therefore, the LnpOrderSupp
        request payload must include all the fields specified in the schema. We
        strongly recommend performing a GET request on the order first and
        copying the values for all elements that you do not intend to change.
        Please note that some fields returned in the GET response are not part
        of the schema and cannot be included in the request
        payload.</p><p><b>Note:</b> <ul><li> If the order ProcessingStatus is
        DRAFT, the rules about what can be changed are much more relaxed. Most
        of the validation is performed when the ProcessingStatus is changed from
        DRAFT to SUBMITTED.  If SUPP is performed on a draft portin, no
        validations are applied except validation of the ListOfPhoneNumbers, if
        at least 1 PhoneNumber is provided.</li> <li>Submitting the parent bulk
        port-in will trigger the submission of child port-in orders.</li></ul>
        </p>Please visit <a
        href='/docs/numbers/porting/port-ins/stand-alone-port-ins'>How to Manage
        Port in</a> guide. Also you can find more information about port types
        on <a
        href='/docs/numbers/porting/port-ins/stand-alone-portins/lnpChecker'>Port
        Types section of this </a> guide
      operationId: UpdatePortin
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            examples:
              Automated Toll-Free Request:
                value:
                  customerOrderId: SJM00002
                  loaAuthorizingPerson: TestName TestLastName
                  locationId: 28845
                  phoneNumbers:
                    - '+12019721004'
                    - '+12019721005'
                  requestedFocDate: '2022-12-04T11:30:00-04:00'
                  subAccountId: 743
                  targetRespOrgId: JYT01
              Hosted Number Request:
                value:
                  operatorCode: OPR1
                  requestedFocDate: '2023-09-01'
                  subscriber:
                    addressId: ba4bb1f3-4358-4a46-883f-6376539ff94e
                    companyName: Acme, Inc.
                    subscriberType: BUSINESS
                    vatNumber: IE1234567T
              Manual Global Request:
                value:
                  customerOrderId: port-001
                  locationId: 553906
                  losingCarrierName: British Telecom
                  phoneNumbers:
                    - '+441171261486'
                    - '+441171261487'
                    - '+441171261488'
                  requestedFocDate: '2023-09-01'
                  subAccountId: 13078
                  subscriber:
                    addressId: ba4bb1f3-4358-4a46-883f-6376539ff94e
                    companyName: Acme, Inc.
                    subscriberType: BUSINESS
                    vatNumber: IE1234567T
              Regular Request:
                value:
                  alternateSpid: Foo
                  billingTelephoneNumber: '+18045030092'
                  comments:
                    internal: true
                    value: PRI Circuit ID 1234
                  customerOrderId: SJM00002
                  immediately:
                    internal: true
                    value: false
                  loaAuthorizingPerson: TestName TestLastName
                  losingResellerName: My Current Provider Name
                  newBillingTelephoneNumber: '+19175131245'
                  overrideValidation:
                    internal: true
                    value: false
                  partialPort: 'true'
                  phoneNumberAttributes:
                    - Protected
                  phoneNumbers:
                    - '+12019721004'
                    - '+12019721005'
                  requestedFocDate: '2014-12-04T13:00:00.000Z'
                  subAccountId: 743
                  subscriber:
                    firstName: TestName
                    lastName: TestLastName
                    serviceAddress:
                      city: Cary
                      houseNumber: 115
                      resetAddressFields: true
                      stateCode: NC
                      streetName: Monarch Way
                      zip: 27518
                    subscriberType: RESIDENTIAL
                  wirelessInfo:
                    accountNumber: '23453245'
                    pinNumber: '1111'
            schema:
              oneOf:
                - $ref: '#/components/schemas/lnpOrderSuppAutomatedOffNetJson'
                - $ref: '#/components/schemas/lnpOrderSuppManualTollFreeJson'
                - $ref: '#/components/schemas/lnpOrderSuppAutomatedTollFreeJson'
                - $ref: '#/components/schemas/lnpOrderSuppManualOnNetOffNetJson'
                - $ref: '#/components/schemas/lnpOrderSuppAutomatedOnNetJson'
                - $ref: '#/components/schemas/lnpOrderSuppAutomatedOnNetWirelessJson'
                - $ref: '#/components/schemas/lnpOrderSuppInternalJson'
                - $ref: '#/components/schemas/lnpOrderSuppGlobalManualJson'
                - $ref: '#/components/schemas/lnpOrderSuppHostedTNJson'
          application/xml:
            examples:
              Automated Toll-Free Request:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <LnpOrderSupp>
                    <CustomerOrderId>SJM00002</CustomerOrderId>
                    <RequestedFocDate>2022-12-04T11:30:00-04:00</RequestedFocDate>
                    <SiteId>743</SiteId>
                    <PeerId>28845</PeerId>
                    <ListOfPhoneNumbers>
                      <PhoneNumber>+12019721004</PhoneNumber>
                      <PhoneNumber>+12019721005</PhoneNumber>
                    </ListOfPhoneNumbers>
                    <LoaAuthorizingPerson>TestName TestLastName</LoaAuthorizingPerson>
                    <TargetRespOrgId>JYT01</TargetRespOrgId>
                  </LnpOrderSupp>
              Hosted Number Request:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <LnpOrderSupp>
                    <RequestedFocDate>2023-09-01</RequestedFocDate>
                    <Subscriber>
                      <SubscriberType>BUSINESS</SubscriberType>
                      <BusinessName>Acme, Inc.</BusinessName>
                      <VatNumber>IE1234567T</VatNumber>
                      <AddressId>ba4bb1f3-4358-4a46-883f-6376539ff94e</AddressId>
                    </Subscriber>
                    <OperatorCode>OPR1</OperatorCode>
                  </LnpOrderSupp>
              Manual Global Request:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <LnpOrderSupp>
                    <CustomerOrderId>port-001</CustomerOrderId>
                    <RequestedFocDate>2023-09-01</RequestedFocDate>
                    <SiteId>13078</SiteId>
                    <PeerId>553906</PeerId>
                    <ListOfPhoneNumbers>
                      <PhoneNumber>+441171261486</PhoneNumber>
                      <PhoneNumber>+441171261487</PhoneNumber>
                      <PhoneNumber>+441171261488</PhoneNumber>
                    </ListOfPhoneNumbers>
                    <LosingCarrierName>British Telecom</LosingCarrierName>
                    <Subscriber>
                      <SubscriberType>BUSINESS</SubscriberType>
                      <BusinessName>Acme, Inc.</BusinessName>
                      <VatNumber>IE1234567T</VatNumber>
                      <AddressId>ba4bb1f3-4358-4a46-883f-6376539ff94e</AddressId>
                    </Subscriber>
                  </LnpOrderSupp>
              Regular Request:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <LnpOrderSupp>
                    <CustomerOrderId>SJM00002</CustomerOrderId>
                    <RequestedFocDate>2014-12-04T13:00:00.000Z</RequestedFocDate>
                    <BillingTelephoneNumber>+18045030092</BillingTelephoneNumber>
                    <NewBillingTelephoneNumber>+19175131245</NewBillingTelephoneNumber>
                    <WirelessInfo>
                      <AccountNumber>23453245</AccountNumber>
                      <PinNumber>1111</PinNumber>
                    </WirelessInfo>
                    <TnAttributes>
                      <TnAttribute>Protected</TnAttribute>
                    </TnAttributes>
                    <Subscriber>
                      <SubscriberType>RESIDENTIAL</SubscriberType>
                      <FirstName>TestName</FirstName>
                      <LastName>TestLastName</LastName>
                      <ServiceAddress>
                        <!-- If true will overwrite all address fields,
                             those which should be required remain required.
                             Affect only supp. Default false. -->
                        <ResetAddressFields>true</ResetAddressFields>
                        <HouseNumber>115</HouseNumber>
                        <StreetName>Monarch Way</StreetName>
                        <City>Cary</City>
                        <StateCode>NC</StateCode>
                        <Zip>27518</Zip>
                      </ServiceAddress>
                    </Subscriber>
                    <SiteId>743</SiteId>
                    <PartialPort>true</PartialPort>
                    <ListOfPhoneNumbers>
                      <PhoneNumber>+12019721004</PhoneNumber>
                      <PhoneNumber>+12019721005</PhoneNumber>
                    </ListOfPhoneNumbers>
                    <LoaAuthorizingPerson>TestName TestLastName</LoaAuthorizingPerson>
                    <!-- Can only be modified if the port-in order is in DRAFT state -->
                    <AlternateSpid>Foo</AlternateSpid>
                    <LosingResellerName>My Current Provider Name</LosingResellerName>
                  </LnpOrderSupp>
            schema:
              oneOf:
                - properties:
                    LnpOrderSupp:
                      $ref: '#/components/schemas/lnpOrderSuppAutomatedOffNet'
                  title: Automated Off-Net
                  type: object
                - properties:
                    LnpOrderSupp:
                      $ref: '#/components/schemas/lnpOrderSuppManualTollFree'
                  title: Manual Toll-Free
                  type: object
                - properties:
                    LnpOrderSupp:
                      $ref: '#/components/schemas/lnpOrderSuppAutomatedTollFree'
                  title: Automated Toll-Free
                  type: object
                - properties:
                    LnpOrderSupp:
                      $ref: '#/components/schemas/lnpOrderSuppManualOnNetOffNet'
                  title: Manual Off/On Net
                  type: object
                - properties:
                    LnpOrderSupp:
                      $ref: '#/components/schemas/lnpOrderSuppAutomatedOnNet'
                  title: Automated On-Net
                  type: object
                - properties:
                    LnpOrderSupp:
                      $ref: '#/components/schemas/lnpOrderSuppAutomatedOnNetWireless'
                  title: Automated On-Net (wireless to wireless)
                  type: object
                - properties:
                    LnpOrderSupp:
                      $ref: '#/components/schemas/lnpOrderSuppInternal'
                  title: Internal
                  type: object
                - properties:
                    LnpOrderSupp:
                      $ref: '#/components/schemas/lnpOrderSuppGlobalManual'
                  title: Manual Global
                  type: object
                - properties:
                    LnpOrderSupp:
                      $ref: '#/components/schemas/lnpOrderSuppHostedTN'
                  title: Hosted Number Supp Request
                  type: object
      responses:
        '200':
          content:
            application/json:
              examples:
                Automated Toll-Free Response:
                  value:
                    customerOrderId: SJM00002
                    loaAuthorizingPerson: TestName TestLastName
                    locationId: 28845
                    orderId: b6080e4c-7ddf-4faa-bbd8-328a72de9297
                    phoneNumbers:
                      - '+12019721004'
                      - '+12019721005'
                    processingStatus: REQUESTED_SUPP
                    requestedFocDate: '2022-12-04T11:30:00-04:00'
                    status:
                      code: 200
                      description: >-
                        Supp request received. Please use the order id to check
                        the status of your order later.
                    subAccountId: 743
                    targetRespOrgId: JYT01
                Hosted Number Order Response:
                  value:
                    operatorCode: OPR1
                    orderId: de654fe7-d4ba-4d67-9064-5caa2292b25b
                    processingStatus: REQUESTED_SUPP
                    status:
                      code: 200
                      description: >-
                        Supp request received. Please use the order id to check
                        the status of your order later.
                Manual Global Response:
                  value:
                    orderId: de654fe7-d4ba-4d67-9064-5caa2292b25b
                    processingStatus: REQUESTED_SUPP
                    status:
                      code: 200
                      description: >-
                        Supp request received. Please use the order id to check
                        the status of your order later.
                Simple Order Response:
                  value:
                    billingTelephoneNumber: '+18045030092'
                    comments: PRI Circuit ID 1234
                    losingResellerName: My Current Provider Name
                    newBillingTelephoneNumber: '+19175131245'
                    orderId: b6080e4c-7ddf-4faa-bbd8-328a72de9297
                    overrideValidation: false
                    processingStatus: REQUESTED_SUPP
                    requestedFocDate: '2014-12-04T13:00:00Z'
                    status:
                      code: 200
                      description: >-
                        Supp request received. Please use the order id to check
                        the status of your order later.
                    triggered: false
              schema:
                oneOf:
                  - $ref: '#/components/schemas/lnpOrderPutResponseJson'
                  - $ref: '#/components/schemas/manualGlobalLnpOrderPutResponseJson'
                  - $ref: '#/components/schemas/lnpOrderSuppResponseHostedTNJson'
            application/xml:
              examples:
                Automated Toll-Free Response:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <OrderId>b6080e4c-7ddf-4faa-bbd8-328a72de9297</OrderId>
                      <Status>
                        <Code>200</Code>
                        <Description>Supp request received. Please use the order id to check the status of your order later.</Description>
                      </Status>
                      <ProcessingStatus>REQUESTED_SUPP</ProcessingStatus>
                      <CustomerOrderId>SJM00002</CustomerOrderId>
                      <RequestedFocDate>2022-12-04T11:30:00-04:00</RequestedFocDate>
                      <SiteId>743</SiteId>
                      <PeerId>28845</PeerId>
                      <ListOfPhoneNumbers>
                        <PhoneNumber>+12019721004</PhoneNumber>
                        <PhoneNumber>+12019721005</PhoneNumber>
                      </ListOfPhoneNumbers>
                      <LoaAuthorizingPerson>TestName TestLastName</LoaAuthorizingPerson>
                      <TargetRespOrgId>JYT01</TargetRespOrgId>
                    </LnpOrderResponse>
                Hosted Number Order Response:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <OrderId>de654fe7-d4ba-4d67-9064-5caa2292b25b</OrderId>
                      <Status>
                        <Code>200</Code>
                        <Description>Supp request received. Please use the order id to check the status of your order later.
                        </Description>
                      </Status>
                      <ProcessingStatus>REQUESTED_SUPP</ProcessingStatus>
                      <OperatorCode>OPR1</OperatorCode>
                    </LnpOrderResponse>
                Manual Global Response:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <OrderId>de654fe7-d4ba-4d67-9064-5caa2292b25b</OrderId>
                      <Status>
                        <Code>200</Code>
                        <Description>Supp request received. Please use the order id to check the status of your order later.
                        </Description>
                      </Status>
                      <ProcessingStatus>REQUESTED_SUPP</ProcessingStatus>
                    </LnpOrderResponse>
                Simple Order Response:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <OrderId>b6080e4c-7ddf-4faa-bbd8-328a72de9297</OrderId>
                      <Status>
                        <Code>200</Code>
                        <Description>Supp request received. Please use the order id to check the status of your order later.</Description>
                      </Status>
                      <ProcessingStatus>REQUESTED_SUPP</ProcessingStatus>
                      <RequestedFocDate>2014-12-04T13:00:00Z</RequestedFocDate>
                      <BillingTelephoneNumber>+18045030092</BillingTelephoneNumber>
                      <NewBillingTelephoneNumber>+19175131245</NewBillingTelephoneNumber>
                      <Triggered>false</Triggered>
                      <LosingResellerName>My Current Provider Name</LosingResellerName>
                    </LnpOrderResponse>
              schema:
                oneOf:
                  - $ref: '#/components/schemas/lnpOrderPutResponse'
                  - $ref: '#/components/schemas/manualGlobalLnpOrderPutResponse'
                  - $ref: '#/components/schemas/lnpOrderSuppResponseHostedTN'
          description: >-
            The order has been successfully updated.  The payload includes the
            fields that were included

            in the PUT request payload and a ProcessingStatus.  <b>Because some
            aspects of the order

            update processing are not entirely synchronous, you should NOT rely
            on the ProcessingStatus

            in the synchronous response to a PUT operation on a port-in order. 
            Instead, always perform

            a GET on the order to see the actual processing status of the order.
        '400':
          content:
            application/json:
              examples:
                example:
                  value:
                    billingTelephoneNumber: '+14352154438'
                    errors:
                      - code: 7331
                        description: Rate Center Not Present in Bandwidth App
                        phoneNumbers:
                          - '+17138391156'
                      - code: 7495
                        description: >-
                          Unable to change the TNs on this port. Please ensure
                          that the new TNs are from the same losing carrier as
                          the current TNs.
                        phoneNumbers:
                          - '+12024551000'
                          - '+12018391156'
                          - '+12018391157'
                    orderId: c58fed09-a3fc-49b8-b461-2286146b73c1
                    processingStatus: EXCEPTION
                    status:
                      code: 400
                      description: Validation Failed. Please check your input parameters.
              schema:
                $ref: '#/components/schemas/lnpOrderPutResponseJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <OrderId>c58fed09-a3fc-49b8-b461-2286146b73c1</OrderId>
                      <Status>
                        <Code>400</Code>
                        <Description>Validation Failed. Please check your input parameters.</Description>
                      </Status>
                      <Errors>
                        <Code>7331</Code>
                        <Description>Rate Center Not Present in Bandwidth App</Description>
                        <TelephoneNumbers>
                          <Tn>+17138391156</Tn>
                        </TelephoneNumbers>
                      </Errors>
                      <Errors>
                        <Code>7495</Code>
                        <Description>Unable to change the TNs on this port. Please ensure that the new TNs are from the same losing carrier as the current TNs.</Description>
                        <TelephoneNumbers>
                          <Tn>+12024551000</Tn>
                          <Tn>+12018391156</Tn>
                          <Tn>+12018391157</Tn>
                        </TelephoneNumbers>
                      </Errors>
                      <ProcessingStatus>EXCEPTION</ProcessingStatus>
                      <BillingTelephoneNumber>+14352154438</BillingTelephoneNumber>
                    </LnpOrderResponse>
              schema:
                $ref: '#/components/schemas/lnpOrderPutResponse'
          description: >-
            List of telephone numbers cannot be changed due to validation
            errors.
        '409':
          content:
            application/json:
              examples:
                example:
                  value:
                    alternateSpid: '1234'
                    billingTelephoneNumber: '+12019721103'
                    billingType: PORTIN
                    errors:
                      - code: 7717
                        description: >-
                          This port-in order is associated with a draft bulk
                          port-in order. Either submit the bulk port-in order,
                          or detach this order from the bulk port-in prior to
                          submitting it.
                    loaAuthorizingPerson: Super Man
                    orderId: 969a26eb-3bc4-4db3-ab77-56808accb9b2
                    phoneNumbers:
                      - '+12019721103'
                    processingStatus: EXCEPTION
                    status:
                      code: 409
                      description: Validation Failed. Please check your input parameters.
                    subscriber:
                      firstName: John
                      lastName: Doe
                      serviceAddress:
                        addressType: Service
                        city: NewBern
                        country: United States
                        houseNumber: 10
                        stateCode: NC
                        streetName: Awesome Lane
                        zip: 99999
                      subscriberType: RESIDENTIAL
                    triggered: false
                    wirelessInfo:
                      accountNumber: 771297665AABC
                      pinNumber: 1234ab
              schema:
                $ref: '#/components/schemas/lnpOrderPutResponseJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                      <OrderId>969a26eb-3bc4-4db3-ab77-56808accb9b2</OrderId>
                      <Status>
                        <Code>409</Code>
                        <Description>Validation Failed. Please check your input parameters.</Description>
                      </Status>
                      <Errors>
                        <Code>7717</Code>
                        <Description>This port-in order is associated with a draft bulk port-in order. Either submit the bulk port-in order, or detach this order from the bulk port-in prior to submitting it.</Description>
                      </Errors>
                      <ProcessingStatus>EXCEPTION</ProcessingStatus>
                      <AlternateSpid>1234</AlternateSpid>
                      <LoaAuthorizingPerson>Super Man</LoaAuthorizingPerson>
                      <Subscriber>
                        <SubscriberType>RESIDENTIAL</SubscriberType>
                        <FirstName>John</FirstName>
                        <LastName>Doe</LastName>
                        <ServiceAddress>
                          <HouseNumber>10</HouseNumber>
                          <StreetName>Awesome Lane</StreetName>
                          <City>NewBern</City>
                          <StateCode>NC</StateCode>
                          <Zip>99999</Zip>
                          <Country>United States</Country>
                          <AddressType>Service</AddressType>
                        </ServiceAddress>
                      </Subscriber>
                      <WirelessInfo>
                        <AccountNumber>771297665AABC</AccountNumber>
                        <PinNumber>1234ab</PinNumber>
                      </WirelessInfo>
                      <BillingTelephoneNumber>+12019721103</BillingTelephoneNumber>
                      <ListOfPhoneNumbers>
                        <PhoneNumber>+12019721103</PhoneNumber>
                      </ListOfPhoneNumbers>
                      <Triggered>false</Triggered>
                    </LnpOrderResponse>
              schema:
                $ref: '#/components/schemas/lnpOrderPutResponse'
          description: >-
            The port-in is associated with a bulk port-in in DRAFT state. To
            submit this port-in detach it from the parent bulk port-in.
      summary: Update port-in order
      tags:
        - Porting
  /accounts/{accountId}/portins/{orderId}/areaCodes:
    get:
      description: >-
        Retrieves a list of area codes associated with the specified port-in
        number and displays them in the payload.
      operationId: ListPortinAreaCodes
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneDetailsReports>
                        <TelephoneDetailsReport>
                            <AreaCode>919</AreaCode>
                            <Count>1</Count>
                        </TelephoneDetailsReport>
                    </TelephoneDetailsReports>
              schema:
                $ref: '#/components/schemas/telephoneDetailsReports'
          description: >-
            The area codes have been successfully retrieved and displayed in the
            payload.
      summary: List port-in area codes
      tags:
        - Porting
  /accounts/{accountId}/portins/{orderId}/history:
    get:
      description: >-
        Retrieves the history of the specified port-in order. Obtaining history
        for a draft port-in is not supported.<br>Note: The order history may be
        updated several seconds after an operation that should cause a history
        record update. As a consequence, this endpoint should never be used to
        fetch the current order status. To fetch the current order status,
        please use GET /accounts/{accountId}/portins/{orderId}.
      operationId: RetrievePortinHistory
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                DRAFT state response:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <OrderHistoryWrapper>
                        <IrisStatus>
                            <Code>7710</Code>
                            <Description>History is not supported for bulk port-ins or individual port-ins in draft status.</Description>
                        </IrisStatus>
                    </OrderHistoryWrapper>
                Simple response:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <OrderHistoryWrapper>
                        <OrderHistory>
                            <OrderDate>2014-07-29T17:12:29.495Z</OrderDate>
                            <Note>LOA required</Note>
                            <Author>jbm</Author>
                            <Status>PENDING_DOCUMENTS</Status>
                        </OrderHistory>
                        <OrderHistory>
                            <OrderDate>2014-07-29T17:12:32.121Z</OrderDate>
                            <Note>Order has been created</Note>
                            <Author>System</Author>
                            <Status>SUBMITTED</Status>
                            <Difference>LoaDate : "" --&gt; Tue Jul 29 17:12:29 UTC 2014</Difference>
                        </OrderHistory>
                        <OrderHistory>
                            <OrderDate>2014-07-29T17:15:31.241Z</OrderDate>
                            <Note>7999: E37 TN not found in PPS (PPS)</Note>
                            <Author>System</Author>
                            <Status>EXCEPTION</Status>
                        </OrderHistory>
                        <OrderHistory>
                            <OrderDate>2014-07-29T17:15:40.836Z</OrderDate>
                            <Note>Order waiting for activation</Note>
                            <Author>System</Author>
                            <Status>FOC</Status>
                        </OrderHistory>
                        <OrderHistory>
                            <OrderDate>2014-07-29T17:16:20.347Z</OrderDate>
                            <Note>Order is complete</Note>
                            <Author>System</Author>
                            <Status>COMPLETE</Status>
                        </OrderHistory>
                    </OrderHistoryWrapper>
              schema:
                $ref: '#/components/schemas/orderHistoryWrapper'
          description: >-
            The history has been successfully retrieved and displayed in the
            payload.
        '404':
          description: NOT FOUND - the order id does not exist in the system
      summary: Retrieve port-in order history
      tags:
        - Porting
  /accounts/{accountId}/portins/{orderId}/loas:
    get:
      description: >-
        Retrieves the list of the loa (and other) files associated with the
        order
      operationId: ListPortinLoas
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: >-
            if true it will return meta-data associated with the file used to
            describe the file.
          example: true
          in: query
          name: metadata
          required: false
          schema:
            default: false
            type: boolean
      responses:
        '200':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    fileCount: 1
                    fileData:
                      fileMetaData:
                        documentType: LOA
                      fileName: eeceff88-c11e-4bd8-86f3-8e3482888500-1624044440058.pdf
                    resultCode: 0
                    resultMessage: LOA file list successfully returned
              schema:
                $ref: '#/components/schemas/fileListResponseJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <fileListResponse>
                        <fileCount>1</fileCount>
                        <fileData>
                            <FileName>eeceff88-c11e-4bd8-86f3-8e3482888500-1624044440058.pdf</FileName>
                            <FileMetaData>
                                <DocumentType>LOA</DocumentType>
                            </FileMetaData>
                        </fileData>
                        <resultCode>0</resultCode>
                        <resultMessage>LOA file list successfully returned</resultMessage>
                    </fileListResponse>
              schema:
                $ref: '#/components/schemas/fileListResponse'
          description: >-
            The list of all files is being returned.  This response includes the
            case where the list is empty.
      summary: List port-in loa files
      tags:
        - Porting
    post:
      description: >-
        POSTing to the /loas resource will enable the upload of the file.  The
        key attribute to the POST is ensuring that the headers are correctly set
        to support the file upload.<br>

        You may use either the documentType query parameter or the documentType
        header parameter to specify the type of document you are uploading.
        Possible values for documentType are: LOA, INVOICE, CSR, OTHER.
            <br>
        Document sizes are restricted to 3 mega-bytes.<br>

        Header settings typical of a valid upload are...<br>
            <br>
        <code>

        Host: api.bandwidth.com <br>

        Authorization: Basic xxxxxxxxxxxxxxxxxxxx== <br>

        Content-Type: application/pdf <br>

        documentType: [LOA | INVOICE | CSR | OTHER] <br>

        Accept: <em>/</em> <br>

        Accept-Encoding: gzip, deflate <br>

        Accept-Language: en-US,en;q=0.8 <br>

        Cache-Control: no-cache <br>
            <br>
        ----WebKitFormBoundaryE19zNvXGzXaLvS5C <br>

        Content-Disposition: form-data; name="george"; filename="Bandwidth
        App.pdf" <br>

        Content-Type: application/pdf <br>
            <br>
            <br>
        ----WebKitFormBoundaryE19zNvXGzXaLvS5C <br>

        </code>

        <p>When uploading documents using the /loas resource, you must specify
        the MIME type of the document being upload using the Content-Type HTTP
        header.</p>

        <p><b>Information for non-toll free port-in customers:</b></p>

        <p>The LOA document must be uploaded using one of the following MIME
        types:</p>

        <ul>

        <li>application/pdf</li>

        <li>text/plain</li>

        <li>image/jpeg</li>

        <li>image/png</li>

        <li>image/tiff</li>

        <li>text/csv</li>

        <li>application/vnd.ms-excel</li>

        <li>application/vnd.openxmlformats-officedocument.spreadsheetml.sheet</li>

        <li>application/msword</li>

        <li>application/vnd.openxmlformats-officedocument.wordprocessingml.document</li>

        </ul>

        <p><b>Information for toll free port-in customers:</b></p>

        <p>If you are porting toll free numbers and either of the following are
        true, the port-in order requires a LOA document.</p>

        <ul>

        <li>The controlling and target RespOrg IDs have different entity values
        (i.e. the first two characters are different).</li>

        <li>The toll free port-in will cause toll free telephone numbers to move
        from one Bandwidth account to another Bandwidth account.</li>

        </ul>

        <p>If a LOA is required, the LOA document must adhere to these
        rules:</p>

        <ul>

        <li>The LOA document must be uploaded using MIME type "application/pdf",
        or "image/tiff", as these are the only formats supported by our toll
        free porting vendor.</li>

        <li>The LOA document must be annotated as a LOA document using the
        documentType query parameter or header value.</li>

        </ul>

        <p>If a LOA is required but a compliant LOA document has not been
        uploaded, the toll free port-in order will remain in the Pending
        Documents state until a valid LOA is provided.</p>
      operationId: UploadPortinLoaFile
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: >-
            This query parameter allows you to include the document type
            metadata

            at the same time you upload the file.  The value may be one of: LOA,
            INVOICE, CSR, or OTHER.
          example: documentType=LOA
          in: query
          name: documentType
          required: false
          schema:
            type: string
      requestBody:
        content:
          '*/*':
            schema:
              format: binary
              type: string
      responses:
        '201':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    fileName: 55049625-a4ea-4a3e-b01e-f5780a944007-1765985060968.pdf
                    resultCode: 0
                    resultMessage: >-
                      LOA file uploaded successfully for order
                      55049625-a4ea-4a3e-b01e-f5780a944007
              schema:
                $ref: '#/components/schemas/fileUploadResponseForJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <fileUploadResponse>
                        <filename>63097af1-37ae-432f-8a0d-9b0e6517a35b-1429550165581.pdf</filename>
                        <resultCode>0</resultCode>
                        <resultMessage>LOA file uploaded successfully for order 63097af1-37ae-432f-8a0d-9b0e6517a35b</resultMessage>
                    </fileUploadResponse>
              schema:
                $ref: '#/components/schemas/fileUploadResponse'
          description: >-
            The 201 response indicates the successful creation of a file
            resource containing the uploaded content.

            The response header will include a link to the created file as a GET
            on the identified resource.
        '400':
          description: |
            Supported values for documentType are: LOA, INVOICE, CSR, or OTHER.
        '409':
          description: >
            <p>Conflicting values specified for documentType query parameter and
            documentType header.</p>

            <p>This order requires specification of the documentType using
            either the query parameter or the header.</p>

            <p>Document uploads for toll free port-ins must use the
            application/pdf or image/tiff formats.</p>
        '415':
          description: Unsupported content type provided in http header or uploaded file.
      summary: Upload port-in loa file
      tags:
        - Porting
  /accounts/{accountId}/portins/{orderId}/loas/{fileid}:
    delete:
      description: Deletes the file associated with the order
      operationId: DeletePortinLoaFile
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: ''
          in: path
          name: fileid
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    fileName: 55049625-a4ea-4a3e-b01e-f5780a944007-1765985060968.pdf
                    resultCode: 0
                    resultMessage: File successfully deleted
              schema:
                $ref: '#/components/schemas/fileUploadResponseForJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <fileUploadResponse>
                        <filename>63097af1-37ae-432f-8a0d-9b0e6517a35b-1429550165581.pdf</filename>
                        <resultCode>0</resultCode>
                        <resultMessage>File successfully deleted</resultMessage>
                    </fileUploadResponse>
              schema:
                $ref: '#/components/schemas/fileUploadResponse'
          description: The 200 OK  indicates a successful deletion of the identified file.
        '404':
          description: >-
            A 404 indicates that the indicated file was not found in conjunction
            with the order id.
      summary: Delete port-in loa file
      tags:
        - Porting
    get:
      description: Retrieves the file associated with the order
      operationId: RetrievePortinLoaFile
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: ''
          in: path
          name: fileid
          required: true
          schema:
            type: string
      responses:
        '200':
          description: >-
            The 200 OK  indicates a successful download request.<br>

            The response to the get on a filename will result in the file being
            prepared and delivered in a manner consistent with browser
            download.  The Response headers include the content-disposition
            header describing the file download.<br>

            Headers:

            <code>

            Content-Type → application/octet-stream<br>

            Date → Mon, 20 Apr 2015 17:19:26 GMT<br>

            Server → Apache-Coyote/1.1<br>

            Transfer-Encoding → <br>

            content-disposition → attachment;
            filename=63097af1-37ae-432f-8a0d-9b0e6517a35b-1429550165581.pdf<br>

            </code>
        '404':
          description: >-
            A 404 indicates that the indicated file was not found in conjunction
            with the order id.
      summary: Retrieve port-in loa file
      tags:
        - Porting
    put:
      description: >-
        A PUT on the filename will update / replace the identified file id.  The
        format of the PUT is identical to that of the POST.<br>

        Header settings typical of a valid upload are...<br>

        <code>

        Host: api.bandwidth.com <br>

        Authorization: Basic xxxxxxxxxxxxxxxxxxxx== <br>

        Content-Type: application/pdf <br>

        Accept: <em>/</em> <br>

        Accept-Encoding: gzip, deflate <br>

        Accept-Language: en-US,en;q=0.8 <br>

        Cache-Control: no-cache <br>
            <br>
        ----WebKitFormBoundaryE19zNvXGzXaLvS5C <br>

        Content-Disposition: form-data; name="george"; filename="Bandwidth
        App.pdf" <br>

        Content-Type: application/pdf <br>
            <br>
            <br>
        ----WebKitFormBoundaryE19zNvXGzXaLvS5C <br>

        </code>
      operationId: UpdatePortinLoaFile
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: ''
          in: path
          name: fileid
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    fileName: 63097af1-37ae-432f-8a0d-9b0e6517a35b-1429550165581.pdf
                    resultCode: 0
                    resultMessage: >-
                      LOA file updated successfully for order
                      63097af1-37ae-432f-8a0d-9b0e6517a35b
              schema:
                $ref: '#/components/schemas/fileUploadResponseForJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <fileUploadResponse>
                        <filename>63097af1-37ae-432f-8a0d-9b0e6517a35b-1429550165581.pdf</filename>
                        <resultCode>0</resultCode>
                        <resultMessage>LOA file updated successfully for order 63097af1-37ae-432f-8a0d-9b0e6517a35b</resultMessage>
                    </fileUploadResponse>
              schema:
                $ref: '#/components/schemas/fileUploadResponse'
          description: >-
            The 200 response indicates the successful replacement of a file
            resource containing the uploaded content.

            The response header will include a link to the created file as a GET
            on the identified resource.
        '400':
          description: A 400 indicates that the requested upload failed.
        '404':
          description: A 404 indicates that the file was not available for replacement.
        '415':
          description: Unsupported content type provided in http header or uploaded file.
      summary: Update port-in loa file
      tags:
        - Porting
  /accounts/{accountId}/portins/{orderId}/loas/{fileid}/metadata:
    delete:
      description: Deletes the metadata previously associated with the identified file.
      operationId: DeletePortinLoaMetadata
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: ''
          in: path
          name: fileid
          required: true
          schema:
            type: string
      responses:
        '200':
          description: >-
            The 200 OK  indicates a successful deletion of the identified
            metadata.
        '404':
          description: >-
            A 404 indicates that the indicated file was not found in conjunction
            with the order id.
      summary: Delete port-in loa file metadata
      tags:
        - Porting
    get:
      description: Retrieves the metadata associated with the file.
      operationId: RetrievePortinLoaMetadata
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: ''
          in: path
          name: fileid
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    documentName: string
                    documentType: LOA
              schema:
                $ref: '#/components/schemas/fileMetaDataJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <FileMetaData>
                       <DocumentName> [string] </DocumentName>
                       <DocumentType> [LOA | INVOICE | CSR | OTHER] </DocumentType>
                    </FileMetaData>
              schema:
                $ref: '#/components/schemas/fileMetaData'
          description: The Metadata has been successfully retrieved.
        '404':
          description: >-
            A 404 indicates that the indicated file was not found in conjunction
            with the order id.
      summary: Retrieve port-in loa file metadata
      tags:
        - Porting
    put:
      description: >-
        Associate metadata with the file named in the resource path.  This will
        describe the file, and declare the data that is contained in the file,
        selected from a list of [LOA | INVOICE | CSR | OTHER].
      operationId: UpdatePortinLoadMetadata
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: ''
          in: path
          name: fileid
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            examples:
              example:
                description: example
                value:
                  documentName: string
                  documentType: LOA
            schema:
              $ref: '#/components/schemas/fileMetaDataJson'
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <FileMetaData>
                     <DocumentName> [string] </DocumentName>
                     <DocumentType> [LOA | INVOICE | CSR | OTHER] </DocumentType>
                  </FileMetaData>
            schema:
              $ref: '#/components/schemas/fileMetaData'
      responses:
        '200':
          description: >-
            Successful update of the metadata associated with the identified
            file.
        '400':
          description: Some error has occured as a result of the attempt.
      summary: Update port-in loa file metadata
      tags:
        - Porting
  /accounts/{accountId}/portins/{orderId}/notes:
    get:
      description: Retrieve all notes associated with the order. <br>
      operationId: getPortinNotes
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    notes:
                      description: This is a test note
                      id: 87037
                      lastDateModifier: '2014-11-16T04:01:10Z'
                      userId: jbm
              schema:
                $ref: '#/components/schemas/notesForJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <Notes>
                        <Note>
                            <Id>87037</Id>
                            <UserId>jbm</UserId>
                            <Description>This is a test note</Description>
                            <LastDateModifier>2014-11-16T04:01:10.000Z</LastDateModifier>
                        </Note>
                        <Note>
                            <Id>87039</Id>
                            <UserId>smckinnon</UserId>
                            <Description>This is a second test note</Description>
                            <LastDateModifier>2014-11-16T04:08:46.000Z</LastDateModifier>
                        </Note>
                    </Notes>
              schema:
                $ref: '#/components/schemas/notes'
          description: >-
            OK - there are Notes associated with the order, and they have been
            returned in the response.
        '204':
          content:
            application/json: {}
            application/xml: {}
          description: >-
            No Content - there are no Notes associated with the order.  Since
            the notes resource is an aggregate rather than addressed resource
            the generic no content response is used, rather than a 404 as would
            be used if the resource was addressed with an identifier
      summary: List port-in order notes
      tags:
        - Porting
    post:
      description: >-
        Updates the Notes resource by adding a note. Adding a note to a port-in

        order causes a notification to be sent to Bandwidth Operations, so that
        they may assist as necessary. A note may be up to 500 characters in
        length.
      operationId: CreatePortinNote
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            examples:
              example:
                description: example
                value:
                  description: note text
                  userId: Username
            schema:
              $ref: '#/components/schemas/note'
          application/xml:
            examples:
              example:
                description: example
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<Note>\n\t<UserId>userId</UserId>\n\t<!-- note the userId must match the logged-in user -->\n\t<Description>note text</Description>\n</Note>"
            schema:
              $ref: '#/components/schemas/note'
      responses:
        '201':
          content:
            application/json: {}
            application/xml: {}
          description: >-
            CREATED - the note has been created and added to the collection of
            notes associated with the order.  A link to the note is included in
            the Location header of the response.  No body is returned
        '400':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    description: UserId value 'Username' is invalid
                    errorCode: 5217
              schema:
                $ref: '#/components/schemas/responseStatus'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <NoteResponse>
                        <ResponseStatus>
                            <ErrorCode>12501</ErrorCode>
                            <Description>Username is required</Description>
                        </ResponseStatus>
                    </NoteResponse>
              schema:
                $ref: '#/components/schemas/noteErrorResponse'
          description: >-
            Bad Request - the note has not been created because the payload is
            incomplete or in error.  An error payload is provided in the
            response.
      summary: Create port-in order note
      tags:
        - Porting
  /accounts/{accountId}/portins/{orderId}/notes/{noteId}:
    put:
      description: Update a specified note.  Notes may only be updated, not deleted.
      operationId: UpdatePortinNote
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: Note ID
          example: '123'
          in: path
          name: noteId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            examples:
              example:
                description: example
                value:
                  description: note text
                  userId: Username
            schema:
              $ref: '#/components/schemas/note'
          application/xml:
            examples:
              example:
                description: example
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<Note>\n\t<UserId>userId</UserId>\n\t<Description>note text</Description>\n</Note>"
            schema:
              $ref: '#/components/schemas/note'
      responses:
        '200':
          description: OK - note has been updated.  No body is returned
        '400':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    description: UserId value 'Username' is invalid
                    errorCode: 5217
              schema:
                $ref: '#/components/schemas/responseStatus'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <NoteResponse>
                        <ResponseStatus>
                            <ErrorCode>12501</ErrorCode>
                            <Description>Username is required</Description>
                        </ResponseStatus>
                    </NoteResponse>
              schema:
                $ref: '#/components/schemas/noteErrorResponse'
          description: >-
            Bad Request - the note has not been updated because the payload is
            incomplete or in error.  An error payload is provided in the
            response.
      summary: Update port-in order note
      tags:
        - Porting
  /accounts/{accountId}/portins/{orderId}/npaNxx:
    get:
      description: >-
        Retrieves a list of Npa-Nxx associated with the specified port-in number
        and displays them in the payload.
      operationId: ListPortinNpaNxx
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneDetailsReports>
                        <TelephoneDetailsReport>
                            <NPA-NXX>919280</NPA-NXX>
                            <Count>1</Count>
                        </TelephoneDetailsReport>
                    </TelephoneDetailsReports>
              schema:
                $ref: '#/components/schemas/telephoneDetailsReportsNPAXX'
          description: >-
            The Npa-Nxx have been successfully retrieved and displayed in the
            payload.
      summary: List port-in npaNxx
      tags:
        - Porting
  /accounts/{accountId}/portins/{orderId}/tns:
    get:
      description: >-
        Retrieves a list of telephone numbers associated with the specified
        port-in number and displays them in the payload.
      operationId: ListPortinTns
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumbers>
                        <Count>1</Count>
                        <TelephoneNumber>+19192809870</TelephoneNumber>
                    </TelephoneNumbers>
              schema:
                $ref: '#/components/schemas/telephoneNumbers'
          description: >-
            The telephone numbers have been successfully retrieved and displayed
            in the payload.
      summary: List port-in tns
      tags:
        - Porting
  /accounts/{accountId}/portins/{orderId}/totals:
    get:
      description: >-
        Retrieves a total count of telephone numbers associated with the
        specified port-in number and displays them in the payload.
      operationId: RetrievePortinTnTotals
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <Quantity>
                        <Count>1</Count>
                    </Quantity>
              schema:
                $ref: '#/components/schemas/quantity'
          description: >-
            The total count of telephone numbers have been successfully
            retrieved and displayed in the payload.
      summary: Retrieve port-in total count of tns
      tags:
        - Porting
  /accounts/{accountId}/portouts:
    get:
      description: >-
        Retrieves a list of port-out requests for the given account ID. A
        maximum of 1,000 orders can be retrieved per request. If no date range
        or specific query parameter (marked by <b class="required">*</b> below)
        is provided, the order results will be limited to the last two years.
      operationId: ListPortOuts
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            The port-out ID of the first order of the page. "1" is used as a
            convention for the first port-out in the account ID.
          example: ca8065d1-ec1a-43da-af40-1dcee43becb5
          in: query
          name: page
          required: true
          schema:
            default: '1'
            type: string
        - description: The number of port-outs retrieved.
          example: 30
          in: query
          name: size
          required: true
          schema:
            default: 300
            type: integer
        - description: Displays the port-outs with the given status.
          example: complete
          in: query
          name: status
          required: false
          schema:
            type: string
        - description: The date of when the order was placed.
          example: '2014-08-01'
          in: query
          name: date
          required: false
          schema:
            type: string
        - description: >-
            The earliest date that the order was last modified. <strong>NOTE:
            </strong> startdate and enddate must be simultaneously declared.
          example: '2014-08-05'
          in: query
          name: startdate
          required: false
          schema:
            type: string
        - description: >-
            The latest date that the order was last modified. <strong>NOTE:
            </strong> startdate and enddate must be simultaneously declared.
          example: '2014-08-05'
          in: query
          name: enddate
          required: false
          schema:
            type: string
        - $ref: '#/components/parameters/countryCodeA3QueryParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LNPResponseWrapper>
                        <TotalCount>3</TotalCount>
                        <Links/>
                        <lnpPortInfoForGivenStatus>
                            <CountOfTNs>0</CountOfTNs>
                            <userId>System</userId>
                            <OrderId>4299b1ad-aa08-433e-a316-f9219b3450d2</OrderId>
                            <OrderType>port_out</OrderType>
                            <lastModifiedDate>2014-07-31T16:34:37.530Z</lastModifiedDate>
                            <ErrorCode>201</ErrorCode>
                            <ErrorMessage>Order request received. Please use the order id to check the status of your order later.</ErrorMessage>
                            <OrderDate>2014-07-31T16:34:37.480Z</OrderDate>
                            <ProcessingStatus>NEW</ProcessingStatus>
                            <RequestedFOCDate>2014-08-02T12:34:37.000Z</RequestedFOCDate>
                            <VendorId>512E</VendorId>
                            <CountryCodeA3>GBR</CountryCodeA3>
                        </lnpPortInfoForGivenStatus>
                    </LNPResponseWrapper>
              schema:
                $ref: '#/components/schemas/lnpResponseWrapper'
          description: >-
            The port-outs have been successfully retrieved and displayed in the
            payload. Note: For users of Enterprise Telephony accounts, VendorId
            is omitted from the success output.
      summary: List port-out requests
      tags:
        - Porting
  /accounts/{accountId}/portouts/status:
    get:
      description: >-
        Gets Port Out orders which were last modified in the specified date
        range
      operationId: GetAllPortOutsByAccountIdAndRange
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The earliest date that the order was last modified.
          example: '2014-08-05'
          in: query
          name: startdate
          required: false
          schema:
            type: string
        - description: The latest date that the order was last modified.
          example: '2014-08-05'
          in: query
          name: enddate
          required: false
          schema:
            type: string
        - description: >-
            The port-out ID of the first order of the page. "1" is used as a
            convention for the first port-out in the account ID.
          example: ca8065d1-ec1a-43da-af40-1dcee43becb5
          in: query
          name: page
          required: true
          schema:
            default: '1'
            type: string
        - description: The number of port-outs retrieved.
          example: 30
          in: query
          name: size
          required: true
          schema:
            default: 300
            type: integer
      responses:
        '200':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/lnpResponseWrapper'
          description: ''
      summary: Get Port Out Range
      tags:
        - Porting
  /accounts/{accountId}/portouts/totals:
    get:
      description: Retrieves the total count of port-uts.
      operationId: RetrievePortOutTotals
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The current status of the port-out.
          example: complete
          in: query
          name: status
          required: false
          schema:
            type: string
        - description: The vendor ID of the port-out.
          in: query
          name: vendorId
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <Quantity>
                        <Count>1</Count>
                    </Quantity>
              schema:
                $ref: '#/components/schemas/quantity'
          description: >-
            The total has been successfully calculated and displayed in the
            payload.
      summary: Retrieve total count of port-in orders
      tags:
        - Porting
  /accounts/{accountId}/portouts/{orderId}:
    get:
      description: >-
        Retrieves the information associated with the specified port-out ID
        number.
      operationId: ReadPortOut
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Port-out order id
          example: ca8065d1-ec1a-43da-af40-1dcee43becb5
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example1:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LnpOrderResponse>
                        <RequestedFocDate>2014-08-02T12:34:37Z</RequestedFocDate>
                        <ActualFocDate>2014-08-02T12:34:37Z</ActualFocDate>
                        <PON>8a89dea8-a145-4796-8e73-0d859fc74cad</PON>
                        <AccountId>20</AccountId>
                        <OrderCreateDate>2014-07-31T16:34:37.480Z</OrderCreateDate>
                        <LastModifiedDate>2014-07-31T16:34:37.530Z</LastModifiedDate>
                        <userId>System</userId>
                        <PortOutStatus>NEW</PortOutStatus>
                        <SPID>512E</SPID>
                    </LnpOrderResponse>
              schema:
                $ref: '#/components/schemas/lnpOrderPortoutResponse'
          description: >-
            The information has been successfully retrieved and displayed out to
            the payload. Note: For users of Enterprise Telephony accounts, SPID
            is omitted from the success output.
      summary: Fetch port-out request status
      tags:
        - Porting
  /accounts/{accountId}/portouts/{orderId}/notes:
    get:
      description: Retrieve all notes associated with the order. <br>
      operationId: getPortoutsNotes
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
      responses:
        '200':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    notes:
                      description: This is a test note
                      id: 87037
                      lastDateModifier: '2014-11-16T04:01:10Z'
                      userId: jbm
              schema:
                $ref: '#/components/schemas/notesForJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <Notes>
                        <Note>
                            <Id>87037</Id>
                            <UserId>jbm</UserId>
                            <Description>This is a test note</Description>
                            <LastDateModifier>2014-11-16T04:01:10.000Z</LastDateModifier>
                        </Note>
                        <Note>
                            <Id>87039</Id>
                            <UserId>smckinnon</UserId>
                            <Description>This is a second test note</Description>
                            <LastDateModifier>2014-11-16T04:08:46.000Z</LastDateModifier>
                        </Note>
                    </Notes>
              schema:
                $ref: '#/components/schemas/notes'
          description: OK
        '204':
          content:
            application/json: {}
            application/xml: {}
          description: No Content
      summary: List port-out order notes
      tags:
        - Porting
    post:
      description: >-
        Updates the Notes resource by adding a note. Adding a note to a port-out

        order causes a notification to be sent to Bandwidth Operations, so that
        they may assist as necessary. A note may be up to 500 characters in
        length.
      operationId: createPortoutNote
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
      requestBody:
        content:
          application/json:
            examples:
              example:
                description: example
                value:
                  description: note text
                  userId: Username
            schema:
              $ref: '#/components/schemas/note'
          application/xml:
            examples:
              example:
                description: example
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<Note>\n\t<UserId>userId</UserId>\n\t<!-- note the userId must match the logged-in user -->\n\t<Description>note text</Description>\n</Note>"
            schema:
              $ref: '#/components/schemas/note'
      responses:
        '201':
          content:
            application/json: {}
            application/xml: {}
          description: Created
        '400':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    description: UserId value 'Username' is invalid
                    errorCode: 5217
              schema:
                $ref: '#/components/schemas/responseStatus'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <NoteResponse>
                        <ResponseStatus>
                            <ErrorCode>12501</ErrorCode>
                            <Description>Username is required</Description>
                        </ResponseStatus>
                    </NoteResponse>
              schema:
                $ref: '#/components/schemas/noteErrorResponse'
          description: Bad Request
      summary: Create port-out order note
      tags:
        - Porting
  /accounts/{accountId}/portouts/{orderId}/notes/{noteId}:
    put:
      description: Update a specified note.  Notes may only be updated, not deleted.
      operationId: updatePortoutNote
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
        - description: Note ID
          example: '123'
          in: path
          name: noteId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            examples:
              example:
                description: example
                value:
                  description: note text
                  userId: Username
            schema:
              $ref: '#/components/schemas/note'
          application/xml:
            examples:
              example:
                description: example
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<Note>\n\t<UserId>userId</UserId>\n\t<Description>note text</Description>\n</Note>"
            schema:
              $ref: '#/components/schemas/note'
      responses:
        '200':
          description: OK
        '400':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    description: UserId value 'Username' is invalid
                    errorCode: 5217
              schema:
                $ref: '#/components/schemas/responseStatus'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <NoteResponse>
                        <ResponseStatus>
                            <ErrorCode>12501</ErrorCode>
                            <Description>Username is required</Description>
                        </ResponseStatus>
                    </NoteResponse>
              schema:
                $ref: '#/components/schemas/noteErrorResponse'
          description: Bad Request
      summary: Update port-out order note
      tags:
        - Porting
  /accounts/{accountId}/products:
    get:
      description: |
        Discover what is currently enabled on the account
      operationId: ListProducts
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/json:
              examples:
                example:
                  value: |-
                    {
                      "products": [
                        {
                          "name": "Termination",
                          "features": [
                            "TermHttpVoice"
                          ]
                        },
                        {
                          "name": "TollFree"
                        },
                        {
                          "name": "Origination",
                          "features": [
                            "CallForwarding",
                            "DlDa",
                            "CNAM"
                          ]
                        },
                        {
                          "name": "MESSAGING",
                          "features": [
                            "SMS",
                            "MMS",
                            "HTTPV2",
                            "TollFree"
                          ]
                        },
                        {
                          "name": "NumberManagement",
                          "features": [
                            "Ordering",
                            "LNP",
                            "HostedTNS",
                            "IMPORT_TNS",
                            "HostedVoice",
                            "TN_ASSIGNMENT",
                            "RESERVATION",
                            "LSR"
                          ]
                          "countrySettings": [
                            {
                              "countryCodeA3": "FRA",
                              "phoneNumberType": "GEOGRAPHIC",
                              "notifiedOperator": true,
                              "features": [
                                {
                                  "featureName": "LNP",
                                  "isDisabled": true
                                },
                                {
                                  "featureName": "Ordering",
                                  "isDisabled": true
                                }
                              ]
                            },
                            {̥
                              "countryCodeA3": "DEU",
                              "phoneNumberType": "NATIONAL",
                              "notifiedOperator": false,
                              "features": [
                                {
                                  "featureName": "HostedTNS",
                                  "isDisabled": true
                                },
                                {
                                  "featureName": "IMPORT_TNS",
                                  "isDisabled": true
                                },
                                {
                                  "featureName": "HostedVoice",
                                  "isDisabled": true
                                },
                                {
                                  "featureName": "Ordering",
                                  "isDisabled": false
                                }
                              ]
                            }
                          ]
                        }
                      ]
                    }
              schema:
                $ref: '#/components/schemas/accountProductsResponse'
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AccountProductsResponse>
                        <Products>
                            <Product>
                                <Name>Termination</Name>
                                <Features>
                                    <Feature>TermHttpVoice</Feature>
                                </Features>
                            </Product>
                            <Product>
                                <Name>TollFree</Name>
                            </Product>
                            <Product>
                                <Name>Origination</Name>
                                <Features>
                                    <Feature>CallForwarding</Feature>
                                    <Feature>DlDa</Feature>
                                    <Feature>CNAM</Feature>
                                </Features>
                            </Product>
                            <Product>
                                <Name>MESSAGING</Name>
                                <Features>
                                  <Feature>SMS</Feature>
                                  <Feature>MMS</Feature>
                                  <Feature>HTTPV2</Feature>
                                  <Feature>TollFree</Feature>
                                </Features>
                            </Product>
                            <Product>
                                <Name>NumberManagement</Name>
                                <Features>
                                  <Feature>Ordering</Feature>
                                  <Feature>LNP</Feature>
                                  <Feature>HostedTNS</Feature>
                                  <Feature>IMPORT_TNS</Feature>
                                  <Feature>HostedVoice</Feature>
                                  <Feature>TN_ASSIGNMENT</Feature>
                                  <Feature>RESERVATION</Feature>
                                  <Feature>LSR</Feature>
                                </Features>
                                <CountrySettings>
                                  <CountrySetting>
                                    <CountryCodeA3>FRA</CountryCodeA3>
                                    <PhoneNumberType>GEOGRAPHIC</PhoneNumberType>
                                    <NotifiedOperator>true</NotifiedOperator>
                                    <Features>
                                      <Feature>
                                        <FeatureName>LNP</FeatureName>
                                        <IsDisabled>true</IsDisabled>
                                      </Feature>
                                      <Feature>
                                        <FeatureName>Ordering</FeatureName>
                                        <IsDisabled>true</IsDisabled>
                                      </Feature>
                                    </Features>
                                  </CountrySetting>
                                  <CountrySetting>
                                    <CountryCodeA3>DEU</CountryCodeA3>
                                    <PhoneNumberType>NATIONAL</PhoneNumberType>
                                    <NotifiedOperator>false</NotifiedOperator>
                                    <Features>
                                      <Feature>
                                        <FeatureName>HostedTNS</FeatureName>
                                        <IsDisabled>true</IsDisabled>
                                      </Feature>
                                      <Feature>
                                        <FeatureName>IMPORT_TNS</FeatureName>
                                        <IsDisabled>true</IsDisabled>
                                      </Feature>
                                      <Feature>
                                        <FeatureName>HostedVoice</FeatureName>
                                        <IsDisabled>true</IsDisabled>
                                      </Feature>
                                      <Feature>
                                        <FeatureName>Ordering</FeatureName>
                                        <IsDisabled>true</IsDisabled>
                                      </Feature>
                                    </Features>
                                  </CountrySetting>
                                </CountrySettings>
                            </Product>
                        </Products>
                    </AccountProductsResponse>
              schema:
                $ref: '#/components/schemas/accountProductsResponse'
          description: ''
      summary: List products on account
      tags:
        - Account
  /accounts/{accountId}/products/e911/settings:
    get:
      description: >-
        Retrieve the current host and EVS credentials settings that are used
        only for e911 traffic. This includes host details, EVS account ID
        information (including accounts where the Dashboard ID differs from the
        EVS ID), and the EVS route type
      operationId: GetAccountE911ProductSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <E911SettingsResponse>
                        <E911Settings>
                          <Hosts>
                            <Host>
                              <HostName>12.34.56.78</HostName>
                              <Port>0</Port>
                            </Host>
                          </Hosts>
                          <EVSCredentials>
                            <EVSCredential>
                               <EVSAccountId>1234567</EVSAccountId>
                               <RouteType>STANDARD</RouteType>
                            </EVSCredential>
                            <EVSCredential>
                               <EVSAccountId>6123619</EVSAccountId>
                               <RouteType>AEUI</RouteType>
                            </EVSCredential>
                          </EVSCredentials>
                        </E911Settings>
                      </E911SettingsResponse>
              schema:
                $ref: '#/components/schemas/e911SettingsResponse'
          description: ''
      summary: Retrieve e911 product settings
      tags:
        - Account
  /accounts/{accountId}/products/edgemanagement/settings:
    get:
      description: >-
        Retrieve settings that are provided as part of the Edge Management
        product: The SBC settings that are associated with the account and
        ProductSpecificAccessRestrictions.
      operationId: GetAccountEdgemanagementProductSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          $ref: '#/components/responses/getEdgeManagementSettingsResponse'
      summary: Retrieve edgemanagement product settings
      tags:
        - Account
  /accounts/{accountId}/products/messaging/a2pCampaigns:
    get:
      description: Retrieve existing a2pCampaigns configuration on account.
      operationId: GetAccountMessagingProductA2pCampaings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <MessagingA2pCampaignsResponse>
                        <MessagingA2pCampaigns>
                            <MessagingA2pCampaign>
                                <CampaignId>C3der</CampaignId>
                                <Description>test</Description>
                                <AccountId>1234567</AccountId>
                                <MessageClass>Campaign-A</MessageClass>
                                <Imported>true</Imported>
                                <CreatedDate>2020-08-10T02:58:04.615Z</CreatedDate>
                                <Status>Active</Status>
                            </MessagingA2pCampaign>
                        </MessagingA2pCampaigns>
                    </MessagingA2pCampaignsResponse>
              schema:
                $ref: '#/components/schemas/messagingA2pCampaignsResponse'
          description: ''
      summary: Retrieve messaging a2pCampaigns settings
      tags:
        - Account
  /accounts/{accountId}/products/messaging/features/http:
    get:
      description: Retrieve existing messaging http configuration on account.
      operationId: GetAccountMessagingProductFeatureHttp
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AccountHttpFeatureResponse>
                        <AccountHttpFeature>
                            <DefaultProxyPeerId>500031</DefaultProxyPeerId>
                        </AccountHttpFeature>
                    </AccountHttpFeatureResponse>
              schema:
                $ref: '#/components/schemas/accountHttpFeatureResponse'
          description: ''
      summary: Retrieve messaging product http feature settings
      tags:
        - Account
  /accounts/{accountId}/products/messaging/features/mms:
    get:
      description: Retrieve existing messaging mms configuration on account.
      operationId: GetAccountMessagingProductFeatureMms
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AccountMmsFeatureResponse>
                        <MmsFeature>
                            <MmsSettings>
                                <MM4Enabled>true</MM4Enabled>
                                <TollFreeMMSAllowed>true</TollFreeMMSAllowed>
                                <DefaultProvider>1</DefaultProvider>
                            </MmsSettings>
                            <MM4Settings>
                                <ConnValidWindow>5</ConnValidWindow>
                                <MaxConn>10</MaxConn>
                                <PersistentConn>false</PersistentConn>
                                <KeepAliveNoop>false</KeepAliveNoop>
                                <SkipAck>true</SkipAck>
                                <AllowMultiRecepient>false</AllowMultiRecepient>
                                <ConnMessageRatio>1.5</ConnMessageRatio>
                                <ConnSentTimeout>10</ConnSentTimeout>
                                <GenDlr>false</GenDlr>
                                <GenReadReply>false</GenReadReply>
                                <MaxMessagesInQueue>100</MaxMessagesInQueue>
                                <LoopAllowed>false</LoopAllowed>
                                <ForceAck>false</ForceAck>
                                <AsyncMessageFlowSupported>false</AsyncMessageFlowSupported>
                            </MM4Settings>
                        </MmsFeature>
                    </AccountMmsFeatureResponse>
              schema:
                $ref: '#/components/schemas/accountMmsFeatureResponse'
          description: ''
      summary: Retrieve messaging product mms feature settings
      tags:
        - Account
  /accounts/{accountId}/products/messaging/features/mms/mm4settings:
    get:
      description: Retrieve existing messaging mm4settings configuration on account.
      operationId: GetAccountMessagingProductFeatureMm4settings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <MmsFeatureMm4AdminSettingsResponse>
                        <mm4Settings>
                            <ConnValidWindow>6</ConnValidWindow>
                            <MaxConn>11</MaxConn>
                            <PersistentConn>true</PersistentConn>
                            <KeepAliveNoop>true</KeepAliveNoop>
                            <SkipAck>true</SkipAck>
                            <AllowMultiRecepient>true</AllowMultiRecepient>
                            <ConnMessageRatio>2.5</ConnMessageRatio>
                            <ConnSentTimeout>11</ConnSentTimeout>
                            <GenDlr>true</GenDlr>
                            <GenReadReply>true</GenReadReply>
                            <MaxMessagesInQueue>101</MaxMessagesInQueue>
                            <LoopAllowed>true</LoopAllowed>
                            <ForceAck>true</ForceAck>
                            <AsyncMessageFlowSupported>false</AsyncMessageFlowSupported>
                        </mm4Settings>
                    </MmsFeatureMm4AdminSettingsResponse>
              schema:
                $ref: '#/components/schemas/mmsFeatureMm4AdminSettingsResponse'
          description: ''
      summary: Retrieve messaging product mms feature mm4 settings
      tags:
        - Account
  /accounts/{accountId}/products/messaging/features/mms/settings:
    get:
      description: Retrieve existing messaging mms feature settings on account.
      operationId: GetAccountMessagingProductFeatureMmsSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AccountMmsFeatureSettingsResponse>
                        <mmsSettings>
                            <MM4Enabled>true</MM4Enabled>
                            <TollFreeMMSAllowed>true</TollFreeMMSAllowed>
                            <DefaultProvider>1</DefaultProvider>
                        </mmsSettings>
                    </AccountMmsFeatureSettingsResponse>
              schema:
                $ref: '#/components/schemas/accountMmsFeatureSettingsResponse'
          description: ''
      summary: Retrieve messaging product mms feature settings
      tags:
        - Account
  /accounts/{accountId}/products/messaging/features/sms:
    get:
      description: Retrieve existing messaging sms configuration on account.
      operationId: GetAccountMessagingProductFeatureSms
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AccountSmsFeatureResponse>
                        <AccountSmsFeature>
                            <AccountSmsFeatureSettings>
                                <TollFree>true</TollFree>
                                <ShortCode>true</ShortCode>
                                <Zone1>true</Zone1>
                                <Zone2>true</Zone2>
                                <Zone3>true</Zone3>
                                <Zone4>true</Zone4>
                                <Zone5>true</Zone5>
                                <SmppEnabled>true</SmppEnabled>
                                <DefaultProvider>0</DefaultProvider>
                            </AccountSmsFeatureSettings>
                            <SmppSettings>
                                <SmppUsername>testUser</SmppUsername>
                                <Password>secret</Password>
                                <Dlr>FINAL</Dlr>
                                <DlrCarrier>false</DlrCarrier>
                                <MaxPendingSubmits>100</MaxPendingSubmits>
                                <ForceTon>false</ForceTon>
                                <AllowThirdPartyTN>false</AllowThirdPartyTN>
                                <ConnectionTypeDefault>RECEIVER_ONLY</ConnectionTypeDefault>
                                <MaxConnections>5</MaxConnections>
                                <SrcTon>DEFAULT</SrcTon>
                                <SrcNpi>DEFAULT</SrcNpi>
                                <DstTon>DEFAULT</DstTon>
                                <DstNpi>DEFAULT</DstNpi>
                            </SmppSettings>
                        </AccountSmsFeature>
                    </AccountSmsFeatureResponse>
              schema:
                $ref: '#/components/schemas/accountSmsFeatureResponse'
          description: ''
      summary: Retrieve messaging product sms feature settings
      tags:
        - Account
  /accounts/{accountId}/products/messaging/routes:
    get:
      description: >-
        Retrieve the current list of routes associated with the various types of
        TNs that can be assigned messaging routes. Zero or more routes can be
        returned for each type of TN; each one of these routes is identified by
        an NNID, or an ESPID while we transition from ESPIDs to NNIDs.
      operationId: GetAccountMessagingProductRoutes
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AccountMessagingRoutesResponse>
                        <MessagingRoutes>
                            <MessagingRoute>
                                <NNID>123456</NNID>
                                <TNType>ExternalCanadianTns</TNType>
                                <Default>true</Default>
                                <Details>
                                    <NNRoute>
                                        <Nnid>123456</Nnid>
                                        <Espid>E830</Espid>
                                        <DeliveryNetwork>Bandwidth</DeliveryNetwork>
                                        <ProvisionerIds/>
                                    </NNRoute>
                                </Details>
                            </MessagingRoute>
                            <MessagingRoute>
                                <NNID>123456</NNID>
                                <TNType>ExternalCustomerOwnedTns</TNType>
                                <Default>true</Default>
                                <Details>
                                    <NNRoute>
                                        <Nnid>123456</Nnid>
                                        <Espid>E830</Espid>
                                        <DeliveryNetwork>Bandwidth</DeliveryNetwork>
                                        <ProvisionerIds/>
                                    </NNRoute>
                                </Details>
                            </MessagingRoute>
                        </MessagingRoutes>
                    </AccountMessagingRoutesResponse>
              schema:
                $ref: '#/components/schemas/accountMessagingRoutesResponse'
          description: ''
      summary: Retrieve messaging routes
      tags:
        - Account
  /accounts/{accountId}/products/messaging/settings:
    get:
      description: >-
        Retrieve the current settings, indicating is Messaging product enabled
        now and if yes will Messaging feature be enabled on each new telephone
        number.
      operationId: GetAccountMessagingProductSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <MessagingSettingsResponse>
                        <MessagingSettings>
                            <Enabled>true</Enabled>
                            <EnabledOnNewTN>true</EnabledOnNewTN>
                            <SupportedOnImportedTns>false</SupportedOnImportedTns>
                            <EnableOnNetMessageRoutes>true</EnableOnNetMessageRoutes>
                            <EnableOffNetMessageRoutes>false</EnableOffNetMessageRoutes>
                            <PreventUpdatingNetNumber>false</PreventUpdatingNetNumber>
                            <ProxyPeersOwner>true</ProxyPeersOwner>
                            <BreakOutCountries>
                                <Country>CAN</Country>
                                <Country>GBR</Country>
                            </BreakOutCountries>
                        </MessagingSettings>
                    </MessagingSettingsResponse>
              schema:
                $ref: '#/components/schemas/messagingSettingsResponse'
          description: ''
      summary: Retrieve messaging product settings
      tags:
        - Account
  /accounts/{accountId}/products/tollfree/settings:
    get:
      description: Retrieve existing tollfree settings on account.
      operationId: GetAccountTollFreeProductSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreeSettingsResponse>
                        <TollFreeSettings>
                            <RespOrgException>true</RespOrgException>
                            <RespOrgIdList>
                                <RespOrgId>SFD01</RespOrgId>
                                <RespOrgId>WER01</RespOrgId>
                                <RespOrgId>WER02</RespOrgId>
                                <RespOrgId>XMD01</RespOrgId>
                                <RespOrgId>PIU02</RespOrgId>
                            </RespOrgIdList>
                            <TargetBandwidthRespOrgId>JYT50</TargetBandwidthRespOrgId>
                            <TollFreeTemplateAssignmentsSearch>true</TollFreeTemplateAssignmentsSearch>
                        </TollFreeSettings>
                    </TollFreeSettingsResponse>
              schema:
                $ref: '#/components/schemas/tollFreeSettingsResponse'
          description: ''
      summary: Retrieve tollfree product settings
      tags:
        - Account
  /accounts/{accountId}/products/uctrunking/features/hosted/settings:
    get:
      description: Retrieve existing uctrunking hosted settings on account.
      operationId: GetAccountUcTrunkingHostedFeatureSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <UcTrunkingCloudSettingsResponse>
                        <UcTrunkingCloudSettings>
                            <BiDirectionalTrunks>200</BiDirectionalTrunks>
                        </UcTrunkingCloudSettings>
                    </UcTrunkingCloudSettingsResponse>
              schema:
                $ref: '#/components/schemas/ucTrunkingCloudSettingsResponse'
          description: ''
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <UcTrunkingCloudSettingsResponse>
                       <ResponseStatus>
                          <ErrorCode>12034</ErrorCode>
                          <Description>UcTrunking product has not been configured</Description>
                       </ResponseStatus>
                    </UcTrunkingCloudSettingsResponse>
          description: Not Found - if UcTrunking product has not been configured on account
      summary: Retrieve uctrunking product hosted feature settings
      tags:
        - Account
    post:
      description: Creates a UC Trunking hosted (cloud) configuration.
      operationId: CreateAccountUcTrunkingHostedSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <UcTrunkingCloudSettings>
                      <BiDirectionalTrunks>200</BiDirectionalTrunks>
                  </UcTrunkingCloudSettings>
            schema:
              $ref: '#/components/schemas/ucTrunkingCloudSettingsPayload'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <UcTrunkingCloudSettingsResponse>
                        <UcTrunkingCloudSettings>
                            <BiDirectionalTrunks>200</BiDirectionalTrunks>
                        </UcTrunkingCloudSettings>
                    </UcTrunkingCloudSettingsResponse>
              schema:
                $ref: '#/components/schemas/ucTrunkingCloudSettingsResponse'
          description: ''
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <UcTrunkingCloudSettingsResponse>
                       <ResponseStatus>
                          <ErrorCode>12609</ErrorCode>
                          <Description>The supplied value of 201 is more than the allowed max value of 200</Description>
                       </ResponseStatus>
                    </UcTrunkingCloudSettingsResponse>
          description: Bad Request - The supplied value is more than the allowed max value
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <UcTrunkingCloudSettingsResponse>
                       <ResponseStatus>
                          <ErrorCode>12034</ErrorCode>
                          <Description>UcTrunking product has not been configured</Description>
                       </ResponseStatus>
                    </UcTrunkingCloudSettingsResponse>
          description: Not Found - if UcTrunking product has not been configured on account
      summary: Add uctrunking product hosted feature settings
      tags:
        - Account
    put:
      description: Updates uctrunking hosted feature settings on account.
      operationId: UpdateAccountUcTrunkingHostedSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <UcTrunkingCloudSettings>
                      <BiDirectionalTrunks>200</BiDirectionalTrunks>
                  </UcTrunkingCloudSettings>
            schema:
              $ref: '#/components/schemas/ucTrunkingCloudSettingsPayload'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <UcTrunkingCloudSettingsResponse>
                        <UcTrunkingCloudSettings>
                            <BiDirectionalTrunks>200</BiDirectionalTrunks>
                        </UcTrunkingCloudSettings>
                    </UcTrunkingCloudSettingsResponse>
              schema:
                $ref: '#/components/schemas/ucTrunkingCloudSettingsResponse'
          description: ''
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <UcTrunkingCloudSettingsResponse>
                       <ResponseStatus>
                          <ErrorCode>12609</ErrorCode>
                          <Description>The supplied value of 201 is more than the allowed max value of 200</Description>
                       </ResponseStatus>
                    </UcTrunkingCloudSettingsResponse>
          description: Bad Request - The supplied value is more than the allowed max value
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <UcTrunkingCloudSettingsResponse>
                       <ResponseStatus>
                          <ErrorCode>12034</ErrorCode>
                          <Description>UcTrunking product has not been configured</Description>
                       </ResponseStatus>
                    </UcTrunkingCloudSettingsResponse>
          description: Not Found - if UcTrunking product has not been configured on account
      summary: Update uctrunking product hosted feature settings
      tags:
        - Account
  /accounts/{accountId}/products/uctrunking/settings:
    get:
      description: Retrieve existing uctrunking settings on account.
      operationId: GetAccountUcTrunkingProductSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <UcTrunkingSettingsResponse>
                        <UcTrunkingSettings>
                            <PartnerType>AGENT</PartnerType>
                            <MaxUcTrunks>40</MaxUcTrunks>
                            <BillingType>DNIS</BillingType>
                            <CustomerTrafficAllowed>ALL</CustomerTrafficAllowed>
                            <UsageCategory>UC500</UsageCategory>
                            <TrunkAllocationRules>
                                <TrunkAllocationRule>
                                    <LowerBound>1</LowerBound>
                                    <Ratio>1</Ratio>
                                </TrunkAllocationRule>
                                <TrunkAllocationRule>
                                    <LowerBound>10</LowerBound>
                                    <Ratio>2</Ratio>
                                </TrunkAllocationRule>
                                <TrunkAllocationRule>
                                    <LowerBound>15</LowerBound>
                                    <Ratio>5</Ratio>
                                </TrunkAllocationRule>
                            </TrunkAllocationRules>
                        </UcTrunkingSettings>
                    </UcTrunkingSettingsResponse>
              schema:
                $ref: '#/components/schemas/ucTrunkingSettingsResponse'
          description: ''
      summary: Retrieve uctrunking product settings
      tags:
        - Account
  /accounts/{accountId}/realms:
    get:
      description: Retrieve all Realms for the account
      operationId: RetrieveRealms
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The realm fragment
          example: myrealm
          in: query
          name: realmfragment
          required: false
          schema:
            minLength: 3
            type: string
      responses:
        '200':
          $ref: '#/components/responses/listRealmsResponse'
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmsResponse>
                       <ResponseStatus>
                          <ErrorCode>33011</ErrorCode>
                          <Description>realmfragment should contain at least 3 characters.</Description>
                       </ResponseStatus>
                    </RealmsResponse>
          description: Bad Request - realmfragment should contain at least 3 characters
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmsResponse>
                       <ResponseStatus>
                          <ErrorCode>4022</ErrorCode>
                          <Description>Account '2' does not exist or is locked</Description>
                       </ResponseStatus>
                    </RealmsResponse>
          description: >-
            Not Found - if the account specified does not exist or is locked
            this will result in a not found
      summary: List Realms
      tags:
        - Sip Registrar
    post:
      description: Create a Realm
      operationId: CreateRealm
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                $ref: '#/components/examples/createRealmRequestExample'
            schema:
              $ref: '#/components/schemas/realmCreateRequest'
      responses:
        '201':
          $ref: '#/components/responses/createRealm201Response'
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmResponse>
                       <ResponseStatus>
                          <ErrorCode>33003</ErrorCode>
                          <Description>Realm 'realmmmmmmmmmmmmmmmmmmmmmmmmmmm' is too long (30 characters max)</Description>
                       </ResponseStatus>
                    </RealmResponse>
          description: Bad Request - the Realm was not created
        '503':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmResponse>
                       <ResponseStatus>
                          <Description>Service is Unavailable</Description>
                       </ResponseStatus>
                    </RealmResponse>
          description: Service Unavailable
      summary: Create Realm
      tags:
        - Sip Registrar
  /accounts/{accountId}/realms/{realmId}/sipcredentials:
    get:
      description: Retrieve all SIP credentials for the account ID and realm ID specified
      operationId: ListSipCredentialsOnRealm
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ID of Realm to retrieve all SIP Credentials
          example: '22'
          in: path
          name: realmId
          required: true
          schema:
            type: string
        - description: >-
            An ID of the first element in a page.  This value will indicate the
            first value, not the count, of the initial entry in the page being
            requested. It can be an index of SIP credential or a combination of
            user name and domain in form {userName}@{domain}. The initial page
            is tagged with the ID '1'
          example: 3, user321@bw.com
          in: query
          name: page
          required: false
          schema:
            default: '1'
            type: string
        - description: The number of items to include in a page
          example: 5000
          in: query
          name: size
          required: false
          schema:
            default: 500
            type: integer
        - description: The user name fragment
          example: user32
          in: query
          name: userNamefragment
          required: false
          schema:
            maxLength: 64
            minLength: 3
            type: string
        - description: The application name fragment
          example: myapp
          in: query
          name: applicationNameFragment
          required: false
          schema:
            maxLength: 64
            minLength: 3
            type: string
        - description: The realm fragment
          example: myrealm
          in: query
          name: realmFragment
          required: false
          schema:
            maxLength: 64
            minLength: 3
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialsResponse>
                       <Links>
                          <first>Link=&lt;http://api.bandwidth.com/iris/accounts/14/realms/3/sipcredentials?size=500&amp;page=1&gt;;rel="first";</first>
                       </Links>
                       <SipCredentials>
                          <SipCredential>
                             <Id>11</Id>
                             <RealmId>3</RealmId>
                             <UserName>John@bw.com</UserName>
                             <Hash1>1g32gadgs433dd4</Hash1>
                             <Hash1b>1g32gadgs433d24</Hash1b>
                             <Realm>realm1.abc123.auth.bandwidth.com</Realm>
                             <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                          </SipCredential>
                          <SipCredential>
                             <Id>45</Id>
                             <RealmId>3</RealmId>
                             <UserName>Mathew@bw.com</UserName>
                             <Hash1>43543gggs43g324</Hash1>
                             <Realm>realm1.abc123.auth.bandwidth.com</Realm>
                             <HttpVoiceV2AppId>7a1626ea-6a3e-11eb-9439-0242ac130002</HttpVoiceV2AppId>
                          </SipCredential>
                       </SipCredentials>
                    </SipCredentialsResponse>
              schema:
                $ref: '#/components/schemas/accountSipCredentials'
          description: >-
            OK - the SIP credentials retrieval request will return a list of the
            SIP credentials that are created on this account
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialsResponse>
                       <ResponseStatus>
                          <ErrorCode>23008</ErrorCode>
                          <Description>There are no Sip credentials associated with the account with ID = 41</Description>
                       </ResponseStatus>
                    </SipCredentialsResponse>
          description: >-
            Not Found - if the account specified does not exist or is locked or
            there are no SIP credentials associated with specified account it
            will result in a not found
      summary: List SIP Credentials On Realm
      tags:
        - Sip Registrar
    post:
      description: Create SIP credentials on the Realm
      operationId: CreateSipCredentialsOnRealm
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ID of Realm to create SIP Credentials
          example: '22'
          in: path
          name: realmId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipCredentials>
                     <SipCredential>
                        <UserName>John@bw.com</UserName>
                        <Hash1>1g32gadgs433dd4</Hash1>
                        <Hash1b>1g32gadgs433d24</Hash1b>
                        <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                     </SipCredential>
                     <SipCredential>
                        <UserName>Mathew@bw.com</UserName>
                        <Hash1>43543gggs43g324</Hash1>
                        <Hash1b>1g32gadgs433a34</Hash1b>
                        <HttpVoiceV2AppId>7a1626ea-6a3e-11eb-9439-0242ac130002</HttpVoiceV2AppId>
                     </SipCredential>
                  </SipCredentials>
            schema:
              $ref: '#/components/schemas/accountSipCredentialsRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialsResponse>
                       <Errors>
                          <Error>
                             <ErrorCode>1003</ErrorCode>
                             <Description>UserName is required</Description>
                             <SipCredential>
                                <Hash1>1g32gadgs433dd4</Hash1>
                                <Hash1b>1g32gadgs433d24</Hash1b>
                                <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                             </SipCredential>
                          </Error>
                       </Errors>
                       <ValidSipCredentials>
                          <SipCredential>
                             <Id>39</Id>
                             <RealmId>4</RealmId>
                             <UserName>Bill@bw.com</UserName>
                             <Hash1>43543gggs43g324</Hash1>
                             <Hash1b>4562gadgs433454</Hash1b>
                             <Realm>realm2.abc123.auth.bandwidth.com</Realm>
                             <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                          </SipCredential>
                          <SipCredential>
                             <Id>40</Id>
                             <RealmId>4</RealmId>
                             <UserName>Jane@bw.com</UserName>
                             <Hash1>af7b8bd23a2b65b</Hash1>
                             <Hash1b>af7b8bd23a2b65c</Hash1b>
                             <Realm>realm2.abc123.auth.bandwidth.com</Realm>
                             <HttpVoiceV2AppId>7a1626ea-6a3e-11eb-9439-0242ac130002</HttpVoiceV2AppId>
                          </SipCredential>
                       </ValidSipCredentials>
                    </SipCredentialsResponse>
              schema:
                $ref: '#/components/schemas/sipCredentialsResponse'
          description: >-
            Created - If there was at least one valid credential entry in
            specified list then such response will be returned
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialsResponse>
                       <ResponseStatus>
                          <Description>Please check your input parameters.</Description>
                       </ResponseStatus>
                       <Errors>
                          <Error>
                             <ErrorCode>1003</ErrorCode>
                             <Description>UserName is required</Description>
                             <SipCredential>
                                <Hash1>1g32gadgs433dd4</Hash1>
                                <Hash1b>1g32gadgs433d24</Hash1b>
                                <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                             </SipCredential>
                          </Error>
                          <Error>
                             <ErrorCode>23026</ErrorCode>
                             <Description>Sip credential Bill@bw.com does already exist on realm with ID = 3 and account with ID = 41</Description>
                             <SipCredential>
                                <UserName>Bill@bw.com</UserName>
                                <Hash1>43543gggs43g324</Hash1>
                                <Hash1b>4562gadgs433454</Hash1b>
                                <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                             </SipCredential>
                          </Error>
                          <Error>
                             <ErrorCode>23018</ErrorCode>
                             <Description>Realm 'realm2.abc123.auth.bandwidth.com' does not correspond to the realm with ID = 3. Please remove this field from the Sip credential body.</Description>
                             <SipCredential>
                                <UserName>Jane@bw.com</UserName>
                                <Hash1>af7b8bd23a2b65b</Hash1>
                                <Hash1b>af7b8bd23a2b65c</Hash1b>
                                <Realm>realm2.abc123.auth.bandwidth.com</Realm>
                                <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                             </SipCredential>
                          </Error>
                          <Error>
                             <ErrorCode>23019</ErrorCode>
                             <Description>Application with ID 7a1626ea-6a3e-11eb-9439-0242ac130002 was not found on the account with ID = 41</Description>
                             <SipCredential>
                                <UserName>Abe@bw.com</UserName>
                                <Hash1>9a1ee5b3fa64ba0</Hash1>
                                <Hash1b>279de633c5f7aff</Hash1b>
                                <HttpVoiceV2AppId>7a1626ea-6a3e-11eb-9439-0242ac130002</HttpVoiceV2AppId>
                             </SipCredential>
                          </Error>
                       </Errors>
                    </SipCredentialsResponse>
          description: >-
            Bad Request - If all credential entries in specified list are
            invalid it will result in bad request with list of errors
        '503':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmResponse>
                       <ResponseStatus>
                          <Description>Service is Unavailable</Description>
                       </ResponseStatus>
                    </RealmResponse>
          description: Service Unavailable
      summary: Create SIP Credentials On Realm
      tags:
        - Sip Registrar
  /accounts/{accountId}/realms/{realmId}/sipcredentials/{credentialId}:
    delete:
      description: Delete SIP credential on the Realm
      operationId: DeleteSipCredentialOnRealm
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Realm's ID of SIP Credential
          example: '22'
          in: path
          name: realmId
          required: true
          schema:
            type: string
        - description: ID of SIP Credential to delete
          example: '11'
          in: path
          name: credentialId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK - the SIP credential was deleted successfully
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialResponse>
                       <ResponseStatus>
                          <ErrorCode>23025</ErrorCode>
                          <Description>Sip credential with ID 14 was not found on realm with ID = 2 and account with ID = 41</Description>
                       </ResponseStatus>
                    </SipCredentialResponse>
          description: >-
            Not Found - the SIP credential was not found on the account for the
            specified ID
        '503':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmResponse>
                       <ResponseStatus>
                          <Description>Service is Unavailable</Description>
                       </ResponseStatus>
                    </RealmResponse>
          description: Service Unavailable
      summary: Delete SIP Credential On Realm
      tags:
        - Sip Registrar
    get:
      description: >-
        Retrieve a SIP credential for the account and realm specified by its
        assigned ID
      operationId: RetrieveSipCredentialOnRealm
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Realm's ID of SIP Credential
          example: '22'
          in: path
          name: realmId
          required: true
          schema:
            type: string
        - description: ID of SIP Credential to retrieve
          example: '11'
          in: path
          name: credentialId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialResponse>
                       <SipCredential>
                          <Id>11</Id>
                          <RealmId>3</RealmId>
                          <UserName>John@bw.com</UserName>
                          <Hash1>1g32gadgs433dd4</Hash1>
                          <Hash1b>1g32gadgs433d24</Hash1b>
                          <Realm>realm1.abc123.auth.bandwidth.com</Realm>
                          <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                       </SipCredential>
                    </SipCredentialResponse>
              schema:
                $ref: '#/components/schemas/sipCredentialResponse'
          description: >-
            OK - will return full information about the SIP credential on this
            account for the specified ID
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialResponse>
                       <ResponseStatus>
                          <ErrorCode>23025</ErrorCode>
                          <Description>Sip credential with ID 42 was not found on realm with ID = 5 and account with ID = 41</Description>
                       </ResponseStatus>
                    </SipCredentialResponse>
          description: >-
            Not Found - if the account specified does not exist or is locked or
            if there is no SIP credential that corresponds to the specified Id
            it will result in a not found
      summary: Retrieve SIP Credential On Realm
      tags:
        - Sip Registrar
    put:
      description: Update single SIP credential on the Realm
      operationId: UpdateSipCredentialOnRealm
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Realm's ID of SIP Credential
          example: '22'
          in: path
          name: realmId
          required: true
          schema:
            type: string
        - description: ID of SIP Credential to update
          example: '11'
          in: path
          name: credentialId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipCredential>
                     <Hash1>1g32gadgs433dd4</Hash1>
                     <Hash1b>1g32gadgs433d24</Hash1b>
                     <RealmId>3</RealmId>
                     <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                  </SipCredential>
            schema:
              $ref: '#/components/schemas/sipCredentialUpdateRequest'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialResponse>
                       <SipCredential>
                          <Id>451</Id>
                          <RealmId>3</RealmId>
                          <UserName>Mathew@bw.com</UserName>
                          <Hash1>43533gggs43g324</Hash1>
                          <Hash1b>4562gadgs423454</Hash1b>
                          <Realm>realm1.abc123.auth.bandwidth.com</Realm>
                          <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                       </SipCredential>
                    </SipCredentialResponse>
              schema:
                $ref: '#/components/schemas/sipCredentialResponse'
          description: OK - the SIP credential was successfully updated
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialResponse>
                       <ResponseStatus>
                          <ErrorCode>23004</ErrorCode>
                          <Description>Unable to change the UserName associated with the Hash Values. To do so requires deletion of one set of credentials and addition of a new set of credentials.</Description>
                       </ResponseStatus>
                    </SipCredentialResponse>
          description: Bad Request - the SIP credential was not updated
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialResponse>
                       <ResponseStatus>
                          <ErrorCode>23025</ErrorCode>
                          <Description>Sip credential with ID 11 was not found on realm with ID = 5 and account with ID = 41</Description>
                       </ResponseStatus>
                    </SipCredentialResponse>
          description: >-
            Not Found - the SIP credential was not found on the account for the
            specified ID
        '503':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmResponse>
                       <ResponseStatus>
                          <Description>Service is Unavailable</Description>
                       </ResponseStatus>
                    </RealmResponse>
          description: Service Unavailable
      summary: Update SIP Credential On Realm
      tags:
        - Sip Registrar
  /accounts/{accountId}/realms/{realm}:
    delete:
      description: Delete a Realm
      operationId: DeleteRealm
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Name and ID of the realm to delete
          example: '22'
          in: path
          name: realm
          required: true
          schema:
            type: string
      responses:
        '202':
          description: Accepted - the Realm is pending deletion
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmResponse>
                       <ResponseStatus>
                          <ErrorCode>33006</ErrorCode>
                          <Description>Cannot delete default Realm. Please assign a new Realm to be the default.</Description>
                       </ResponseStatus>
                    </RealmResponse>
          description: >-
            Bad Request - the Realm could not be deleted. Cannot delete default
            realm
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmResponse>
                       <ResponseStatus>
                          <ErrorCode>33001</ErrorCode>
                          <Description>Realm 'realmxyz' was not found</Description>
                       </ResponseStatus>
                    </RealmResponse>
          description: Not Found - the Realm was not found on the account
        '503':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmResponse>
                       <ResponseStatus>
                          <Description>Service is Unavailable</Description>
                       </ResponseStatus>
                    </RealmResponse>
          description: Service Unavailable
      summary: Delete Realm
      tags:
        - Sip Registrar
    get:
      description: Retrieve a Realm associated with the account
      operationId: RetrieveRealm
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Name or ID of the realm to retrieve
          example: '22'
          in: path
          name: realm
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmResponse>
                       <Realm>
                          <Id>22</Id>
                          <Realm>realm123.abc123.auth.bandwidth.com</Realm>
                          <Description>This is realm #123</Description>
                          <Default>false</Default>
                          <SipCredentialCount>15</SipCredentialCount>
                          <Status>ACTIVE</Status>
                          <TrunkInfo>
                             <TrunkId>66b4d27e68cc01462d6f0e6f</TrunkId>
                             <CapabilityPipeId>33d864f7-37e9-46c3-aeb1-40702719ff5c</CapabilityPipeId>
                          </TrunkInfo>
                       </Realm>
                    </RealmResponse>
              schema:
                $ref: '#/components/schemas/realmResponse'
          description: OK - will return full information about a Realm on this account
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmResponse>
                       <ResponseStatus>
                          <Description>The resource does not exist</Description>
                       </ResponseStatus>
                    </RealmResponse>
          description: >-
            Not Found - if the account specified does not exist, is locked or
            there is no Realm, it will result in a not found
        '503':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmResponse>
                       <ResponseStatus>
                          <Description>Service is Unavailable</Description>
                       </ResponseStatus>
                    </RealmResponse>
          description: Service Unavailable
      summary: Retrieve Realm
      tags:
        - Sip Registrar
    put:
      description: Update a Realm
      operationId: UpdateRealm
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Name or ID of the realm to update
          example: '22'
          in: path
          name: realm
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Realm>
                     <Default>true</Default>
                     <Description>This is realm has been updated.</Description>
                     <TrunkInfo>
                        <TrunkId>66b4d27e68cc01462d6f0e6f</TrunkId>
                        <CapabilityPipeId>33d864f7-37e9-46c3-aeb1-40702719ff5c</CapabilityPipeId>
                     </TrunkInfo>
                  </Realm>
            schema:
              $ref: '#/components/schemas/realmUpdateRequest'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmResponse>
                       <Realm>
                          <Id>22</Id>
                          <Realm>realm123.abc123.auth.bandwidth.com</Realm>
                          <Default>true</Default>
                          <Description>This is realm has been updated.</Description>
                          <SipCredentialCount>0</SipCredentialCount>
                          <Status>ACTIVE</Status>
                          <TrunkInfo>
                             <TrunkId>66b4d27e68cc01462d6f0e6f</TrunkId>
                             <CapabilityPipeId>33d864f7-37e9-46c3-aeb1-40702719ff5c</CapabilityPipeId>
                          </TrunkInfo>
                       </Realm>
                    </RealmResponse>
              schema:
                $ref: '#/components/schemas/realmResponse'
          description: OK - the Realm was successfully updated
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmResponse>
                       <ResponseStatus>
                          <ErrorCode>33005</ErrorCode>
                          <Description>Cannot update Realm value. Instead, you must delete and recreate it.</Description>
                       </ResponseStatus>
                    </RealmResponse>
          description: Bad Request - cannot update Realm value
        '503':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RealmResponse>
                       <ResponseStatus>
                          <Description>Service is Unavailable</Description>
                       </ResponseStatus>
                    </RealmResponse>
          description: Service Unavailable
      summary: Update Realm
      tags:
        - Sip Registrar
  /accounts/{accountId}/removeImportedTnOrders/messaging/{orderId}/history:
    get:
      description: >-
        Retrieves the history of the specified Remove Imported Messaging Tn
        Order
      operationId: RetrieveRemoveImportedTnOrderHistory
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ID of `RemoveImportedTnOrder` to retrieve history
          example: bf1305b8-8998-1111-2222-51ba3ce52d4e
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <OrderHistoryWrapper>
                       <OrderHistory>
                          <OrderDate>2015-06-16T14:03:10.225Z</OrderDate>
                          <Note>Remove Imported TN order is received.</Note>
                          <Author>admin</Author>
                          <Status>RECEIVED</Status>
                       </OrderHistory>
                       <OrderHistory>
                          <OrderDate>2015-06-16T14:03:10.330Z</OrderDate>
                          <Note>Remove Imported TN order is processing.</Note>
                          <Author>admin</Author>
                          <Status>PROCESSING</Status>
                       </OrderHistory>
                       <OrderHistory>
                          <OrderDate>2015-06-16T14:03:10.789Z</OrderDate>
                          <Note>Remove Imported TN order is partial.</Note>
                          <Author>admin</Author>
                          <Status>PARTIAL</Status>
                       </OrderHistory>
                    </OrderHistoryWrapper>
              schema:
                $ref: '#/components/schemas/orderHistoryWrapper'
          description: >-
            The history has been successfully retrieved and displayed in the
            payload
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RemoveImportedTnOrdersReportResponse>
                       <ResponseStatus>
                          <ErrorCode>1008</ErrorCode>
                          <Description>'some_invalid_uuid' is not a valid UUID</Description>
                       </ResponseStatus>
                    </RemoveImportedTnOrdersReportResponse>
              schema:
                $ref: '#/components/schemas/removeImportedTnOrdersHistoryResponse'
          description: Order id is not valid
      summary: Retrieve Remove Imported Messaging Tn Order history
      tags:
        - Hosted Messaging
  /accounts/{accountId}/removeImportedTnOrders/voice:
    get:
      description: >-
        Retrieves the Remove Imported Voice Tn Orders requests for the given
        account ID.

        A maximum of 1,000 orders can be retrieved per request. If no date range
        or specific query parameter as required is provided, the order results
        will be limited to the last two years.
      operationId: ListRemoveImportedVoiceTnOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/StatusQueryParam'
        - $ref: '#/components/parameters/TnQueryParam'
        - $ref: '#/components/parameters/CustomerOrderIdQueryParam'
        - $ref: '#/components/parameters/CreatedDateFromQueryParam'
        - $ref: '#/components/parameters/CreatedDateToQueryParam'
        - $ref: '#/components/parameters/ModifiedDateFromQueryParam'
        - $ref: '#/components/parameters/ModifiedDateToQueryParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RemoveImportedVoiceTnOrders>
                       <TotalCount>2</TotalCount>
                       <RemoveImportedVoiceTnOrderSummary>
                          <accountId>14</accountId>
                          <CountOfTNs>1</CountOfTNs>
                          <CustomerOrderId>DemoOrder</CustomerOrderId>
                          <userId>systemUser</userId>
                          <lastModifiedDate>2019-01-24T10:40:12.908Z</lastModifiedDate>
                          <OrderDate>2019-01-24T10:40:12.907Z</OrderDate>
                          <OrderType>remove_imported_voice_tn_orders</OrderType>
                          <OrderStatus>COMPLETE</OrderStatus>
                          <OrderId>4f2d090b-ece7-49ab-9c40-06d1425c39c3</OrderId>
                       </RemoveImportedVoiceTnOrderSummary>
                       <RemoveImportedVoiceTnOrderSummary>
                          <accountId>14</accountId>
                          <CountOfTNs>1</CountOfTNs>
                          <CustomerOrderId>DemoOrder</CustomerOrderId>
                          <userId>systemUser</userId>
                          <lastModifiedDate>2019-01-24T09:38:24.028Z</lastModifiedDate>
                          <OrderDate>2019-01-24T09:38:24.028Z</OrderDate>
                          <OrderType>remove_imported_voice_tn_orders</OrderType>
                          <OrderStatus>PARTIAL</OrderStatus>
                          <OrderId>ca30ea6a-018a-4cae-9d49-3d419fefdbe3</OrderId>
                       </RemoveImportedVoiceTnOrderSummary>
                    </RemoveImportedVoiceTnOrders>
              schema:
                $ref: '#/components/schemas/removeImportedVoiceTnOrders'
          description: >-
            The descriptive payload for the Remove Imported Voice Tn Orders
            query provides information about the orders found by the query,
            including the data associated with the order, the state of the
            order, and a list of the successfully removed Telephone Numbers, and
            descriptions of any encountered errors
      summary: List Remove Imported Voice Tn Orders
      tags:
        - Hosted Voice
    post:
      description: >-
        Creates a Remove Imported Voice Tn Orders request to remove imported
        telephone numbers from the given site ID and sippeer ID as specified in
        the body. A successfully submitted order will have a status of
        "PROCESSING". A successfully completed order will have a status of
        "COMPLETE" if all of the telephone numbers were successfully removed
        and  "PARTIAL" if some of the telephone numbers were removed. A failed
        order with will have a status of "FAILED" and no telephone numbers would
        have been removed
      operationId: CreateRemoveImportedVoiceTnOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <RemoveImportedVoiceTnOrder>
                     <CustomerOrderId>ICPA123ABC</CustomerOrderId>
                     <TelephoneNumbers>
                        <TelephoneNumber>+19199918388</TelephoneNumber>
                        <TelephoneNumber>+14158714245</TelephoneNumber>
                        <TelephoneNumber>+14352154439</TelephoneNumber>
                        <TelephoneNumber>+14352154466</TelephoneNumber>
                     </TelephoneNumbers>
                  </RemoveImportedVoiceTnOrder>
            schema:
              $ref: '#/components/schemas/removeImportedVoiceTnOrderRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RemoveImportedVoiceTnOrderResponse>
                       <RemoveImportedVoiceTnOrder>
                          <CustomerOrderId>SJM000001</CustomerOrderId>
                          <OrderCreateDate>2018-01-20T02:59:54.000Z</OrderCreateDate>
                          <AccountId>9900012</AccountId>
                          <CreatedByUser>smckinnon</CreatedByUser>
                          <OrderId>b05de7e6-0cab-4c83-81bb-9379cba8efd0</OrderId>
                          <LastModifiedDate>2018-01-20T02:59:54.000Z</LastModifiedDate>
                          <TelephoneNumbers>
                             <TelephoneNumber>+19199918388</TelephoneNumber>
                             <TelephoneNumber>+14158714245</TelephoneNumber>
                             <TelephoneNumber>+14352154439</TelephoneNumber>
                             <TelephoneNumber>+14352154466</TelephoneNumber>
                          </TelephoneNumbers>
                          <ProcessingStatus>PROCESSING</ProcessingStatus>
                          <Errors/>
                       </RemoveImportedVoiceTnOrder>
                    </RemoveImportedVoiceTnOrderResponse>
              schema:
                $ref: '#/components/schemas/removeImportedVoiceTnOrderResponse'
          description: >-
            The order has been created and an order ID will be specified in the
            payload and in the header
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RemoveImportedVoiceTnOrderResponse>
                       <ProcessingStatus>FAILED</ProcessingStatus>
                       <Errors>
                          <Code>1234</Code>
                          <Description>The customer order id is invalid.</Description>
                       </Errors>
                    </RemoveImportedVoiceTnOrderResponse>
          description: >+
            The order failed. One of the input parameters is invalid. The error
            text and an error code will be provided in the ErrorList element.
            <table cellspacing="0" cellpadding="0" width="624">
                    <tbody>
                        <tr>
                            <td valign="top">
                                <p>
                                    <strong>ErrorCode</strong>
                                </p>
                            </td>
                            <td valign="top">
                                <p>
                                    <strong>Description</strong>
                                </p>
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    25010
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    The account does not have permission to use the endpoint requested, please contact support if you believe you should have permission.
                                </p>
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    5052
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    Customer order ID is invalid. Only alphanumeric values, dashes and spaces are allowed. Max length is 255 characters.
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    5073
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    Telephone number is required.
                                </p>
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    5095
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    The count of telephone numbers in order exceeds the maximum size of 5000.
                                </p>
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    1003
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    TelephoneNumbers is required.
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    5070
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    Telephone number is invalid.
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    5093
                                </p>
                            </td>
                            <td valign="top">
                                <p align="left">
                                    Order cannot contain duplicate telephone numbers.
                            </td>
                        </tr>            
                    </tbody>
                </table>

      summary: Create Remove Imported Voice Tn Order
      tags:
        - Hosted Voice
  /accounts/{accountId}/removeImportedTnOrders/voice/{orderId}:
    get:
      description: >-
        Retrieve information about a removeImportedVoiceTnOrder with specified
        ID
      operationId: RetrieveRemoveImportedVoiceTnOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RemoveImportedVoiceTnOrder>
                       <OrderCreateDate>2018-01-09T02:58:04.615Z</OrderCreateDate>
                       <AccountId>9900012</AccountId>
                       <CreatedByUser>sjm</CreatedByUser>
                       <OrderId>bf1305b8-8998-1111-2222-51ba3ce52d4e</OrderId>
                       <LastModifiedDate>2018-01-09T02:58:05.298Z</LastModifiedDate>
                       <TelephoneNumbers>
                          <TelephoneNumber>+12106078250</TelephoneNumber>
                          <TelephoneNumber>+12109678273</TelephoneNumber>
                          <TelephoneNumber>+12109678331</TelephoneNumber>
                          <TelephoneNumber>+12109678337</TelephoneNumber>
                          <TelephoneNumber>+12266401468</TelephoneNumber>
                       </TelephoneNumbers>
                       <ProcessingStatus>PARTIAL</ProcessingStatus>
                       <Errors>
                          <Error>
                             <Code>7518</Code>
                             <Description>Telephone Number Not Active.</Description>
                             <TelephoneNumbers>
                                <TelephoneNumber>+12262665583</TelephoneNumber>
                             </TelephoneNumbers>
                          </Error>
                       </Errors>
                    </RemoveImportedVoiceTnOrder>
              schema:
                $ref: '#/components/schemas/removeImportedVoiceTnOrderResponse'
          description: >
            The information has been successfully retrieved and displayed in the
            payload. <table cellspacing="0" cellpadding="0" width="624">
                    <tbody>
                        <tr>
                            <td valign="top">
                                <p>
                                    <strong>ErrorCode</strong>
                                </p>
                            </td>
                            <td valign="top">
                                <p>
                                    <strong>Description</strong>
                                </p>
                            </td>
                        </tr>
                        <tr>
                            <td valign="top">
                                <p>
                                    5158
                                </p>
                            </td>
                            <td valign="left">
                                <p align="">
                                    Telephone number hasn't been previously imported.
                                </p>
                            </td>
                        </tr>           
                    </tbody>
                </table>
      summary: Retrieve Remove Imported Voice Tn Order
      tags:
        - Hosted Voice
  /accounts/{accountId}/removeImportedTnOrders/voice/{orderId}/history:
    get:
      description: Retrieves the history of the specified Remove Imported Voice Tn Order
      operationId: RetrieveRemoveImportedVoiceTnOrderHistory
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <OrderHistoryWrapper>
                       <OrderHistory>
                          <OrderDate>2015-06-16T14:03:10.225Z</OrderDate>
                          <Note>Remove Imported Voice TN order is received.</Note>
                          <Author>admin</Author>
                          <Status>RECEIVED</Status>
                       </OrderHistory>
                       <OrderHistory>
                          <OrderDate>2015-06-16T14:03:10.330Z</OrderDate>
                          <Note>Remove Imported TN order is processing.</Note>
                          <Author>admin</Author>
                          <Status>PROCESSING</Status>
                       </OrderHistory>
                       <OrderHistory>
                          <OrderDate>2015-06-16T14:03:10.789Z</OrderDate>
                          <Note>Remove Imported Voice TN order is partial.</Note>
                          <Author>admin</Author>
                          <Status>PARTIAL</Status>
                       </OrderHistory>
                    </OrderHistoryWrapper>
              schema:
                $ref: '#/components/schemas/orderHistoryWrapper'
          description: >-
            The history has been successfully retrieved and displayed in the
            payload
      summary: Retrieve Remove Imported Voice Tn Order history
      tags:
        - Hosted Voice
  /accounts/{accountId}/reports:
    get:
      description: >-
        Retrieves a list of the report templates available for use within the
        Bandwidth App API. This list contains the basic description of the
        reports, including a report ID that can be used to access further
        details about the report, and thus facilitating the subsequent choice
        and creation of an instance of the report. Items of this list are sorted
        by display priority in ascending order and alphabetically by name within
        priority groups (display priority is displayed only for admin endpoint)


        In this table are presented valid report types. Some are applicable
        universally, and some are only applicable for numbers of specific
        region.

        <table style="text-align: left; width: 80%;" border="1" cellpadding="2"
        cellspacing="0">
          <thead>
            <tr><th>Report Type</th><th>Report ID</th><th>Report Name</th><th>Description</th><th>Number Region</th></tr>
          </thead>
          <tbody>
            <tr><td>Numbers</td><td>37</td><td>Bandwidth Phone Number Inventory</td><td>A list of all telephone numbers in 'Available' status at the time that the report was compiled</td><td>NANP</td></tr>
            <tr><td>Numbers</td><td>4</td><td>Phone Number Inventory</td><td>A list of all phone numbers associated with an account</td><td></td></tr>
            <tr><td>Numbers</td><td>34</td><td>End-User Phone Number Assignment</td><td>A list of phone numbers and their end-user assignment statuses</td><td>NANP</td></tr>
            <tr><td>Numbers</td><td>50</td><td>Protected Phone Numbers</td><td>This report will provide a simple report that lists all of the protected TNs on an account, as well as their status.</td><td>NANP</td></tr>
            <tr><td>Voice Enabled Numbers</td><td>2</td><td>Voice Phone Number Details</td><td>Complete information about all phone numbers within the report’s scope</td><td></td></tr>
            <tr><td>Voice Enabled Numbers</td><td>65</td><td>Phone Number Route Plan</td><td>This report lists all of the route plans that are active for the indicated account</td><td>NANP</td></tr>
            <tr><td>Voice Enabled Numbers</td><td>48</td><td>Phone Number Utilization</td><td>This account report will provide insight into the current utilization and assignment data associated with the Bandwidth App TN inventory</td><td>NANP</td></tr>
            <tr><td>Voice Enabled Numbers</td><td>47</td><td>Under-Utilized and Unassigned Phone Numbers</td><td>This report will list all of the Telephone Numbers that appear to be under-utilized and unassigned.</td><td>NANP</td></tr>
            <tr><td>Messaging Enabled Numbers</td><td>67</td><td>Messaging Phone Number Details</td><td>Details of phone numbers with active messaging for particular snapshot date</td><td></td></tr>
            <tr><td>Messaging Enabled Numbers</td><td>31</td><td>External Phone Number Details</td><td>Complete information about customer provided phone numbers within the report’s scope</td><td>NANP</td></tr>
            <tr><td>Emergency Enabled Numbers</td><td>6</td><td>Emergency Services Phone Number Details</td><td>Emergency Service information associated with phone numbers within the report’s scope<td>NANP</td></tr>
            <tr><td>Emergency Enabled Numbers</td><td>36</td><td>Alternate Caller ID E911 Report</td><td>E911 detail information for accounts that use an alternative identifier for the end user</td><td>NANP</td></tr>
            <tr><td>Emergency Enabled Numbers</td><td>42</td><td>E911 Dynamic Location Routing Addresses</td><td>A list of all E911 addresses provisioned to an account. The list of addresses shown are only for Dynamic Location Routing-enabled accounts.</td><td>NANP</td></tr>
            <tr><td>Orders</td><td>59</td><td>New Number Orders</td><td>Phone number details for historic or current new number orders</td><td></td></tr>
            <tr><td>Orders</td><td>30</td><td>Disconnect Orders</td><td>Information about all phone numbers that have been disconnected from the account</td><td></td></tr>
            <tr><td>Orders</td><td>14</td><td>Port-in Orders</td><td>Phone number details for historic or current port-in orders</td><td></td></tr>
            <tr><td>Orders</td><td>8</td><td>Port-out Orders</td><td>Phone number details for historic or current port-out orders</td><td></td></tr>
            <tr><td>Account</td><td>16</td><td>UC Account Summary</td><td>Detailed account information for a given UC account</td><td>NANP</td></tr>
            <tr><td>Users</td><td>24</td><td>User Information</td><td>Information about all active and inactive users for a given account</td><td></td></tr>
          </tbody>
        </table>


        When reports tagged NANP in table above are retrieved, only the North
        American Numbering Plan phone numbers from are returned in the report.
      operationId: ListReports
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ReportsResponse>
                       <Reports>
                          <Report>
                             <Name>Sample Report 1</Name>
                             <Id>100020</Id>
                             <Description>Sample Report 1 Description</Description>
                          </Report>
                          <Report>
                             <Name>Sample Report 2</Name>
                             <Id>100021</Id>
                             <Description>Sample Report 2 Description</Description>
                          </Report>
                          <Report>
                             <Name>Sample Report 3</Name>
                             <Id>100022</Id>
                             <Description>Sample Report 3 Description</Description>
                          </Report>
                       </Reports>
                    </ReportsResponse>
              schema:
                $ref: '#/components/schemas/reportsResponse'
          description: >-
            The information has been successfully retrieved and displayed in the
            payload
      summary: List Reports
      tags:
        - Reports
  /accounts/{accountId}/reports/instances:
    get:
      description: >-
        Retrieve report instances within the account scope, regardless of the
        report of which the instance is an instance of, including the up-to-date
        report generation status.  This is a convenience API call to make it
        easier to examine all Instances in scope
      operationId: RetrieveReportInstancesOnAccount
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ReportInstancesResponse>
                       <Instances>
                          <Instance>
                             <Id>100090</Id>
                             <ReportId>100020</ReportId>
                             <ReportName>Sample Report</ReportName>
                             <OutputFormat>pdf</OutputFormat>
                             <RequestedByUserName>jbm</RequestedByUserName>
                             <RequestedAt>2015-05-18 14:03:04</RequestedAt>
                             <Parameters>
                                <Parameter>
                                   <Name>AccountId</Name>
                                   <Value>1</Value>
                                </Parameter>
                             </Parameters>
                             <Status>Expired</Status>
                          </Instance>
                          <Instance>
                             <Id>100098</Id>
                             <ReportId>100020</ReportId>
                             <ReportName>Sample Report</ReportName>
                             <OutputFormat>html</OutputFormat>
                             <RequestedByUserName>jbm</RequestedByUserName>
                             <RequestedAt>2015-05-19 09:18:40</RequestedAt>
                             <Parameters>
                                <Parameter>
                                   <Name>AccountId</Name>
                                   <Value>1</Value>
                                </Parameter>
                                <Parameter>
                                   <Name>SiteId</Name>
                                   <Value>1</Value>
                                </Parameter>
                             </Parameters>
                             <Status>Expired</Status>
                          </Instance>
                          <Instance>
                             <Id>100102</Id>
                             <ReportId>100020</ReportId>
                             <ReportName>Sample Report</ReportName>
                             <OutputFormat>pdf</OutputFormat>
                             <RequestedByUserName>jbm</RequestedByUserName>
                             <RequestedAt>2015-05-19 11:05:12</RequestedAt>
                             <Parameters>
                                <Parameter>
                                   <Name>AccountId</Name>
                                   <Value>1</Value>
                                </Parameter>
                             </Parameters>
                             <Status>Ready</Status>
                             <ExpiresAt>2015-06-15</ExpiresAt>
                          </Instance>
                       </Instances>
                    </ReportInstancesResponse>
              schema:
                $ref: '#/components/schemas/reportInstancesResponse'
          description: A valid list of instances is available
      summary: Retrieve Report Instances on Account
      tags:
        - Reports
  /accounts/{accountId}/reports/{reportId}:
    get:
      description: >-
        Retrieve a specific report with all of the details. Allowing to create
        an instance of that report
      operationId: RetrieveReport
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ID of Report to retrieve
          example: '123'
          in: path
          name: reportId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ReportResponse>
                       <Report>
                          <Id>123</Id>
                          <Name>Sample Report 1</Name>
                          <Parameters>
                             <Parameter>
                                <Name>Report Parameter 1</Name>
                                <Type>String</Type>
                                <Required>true</Required>
                                <Description>Report Parameter 1 Description</Description>
                                <MultiSelectAllowed>false</MultiSelectAllowed>
                                <HelpInformation>Report Parameter 1 Help Text</HelpInformation>
                             </Parameter>
                             <Parameter>
                                <Name>Report Parameter 2</Name>
                                <Type>Enum</Type>
                                <Required>false</Required>
                                <ValueFilter>Value1;Value2;Value3</ValueFilter>
                                <Values>
                                   <Value>
                                      <InternalName>Value1</InternalName>
                                      <DisplayName>Display Value2</DisplayName>
                                   </Value>
                                   <Value>
                                      <InternalName>Value2</InternalName>
                                      <DisplayName>Value2</DisplayName>
                                   </Value>
                                   <Value>
                                      <InternalName>Value3</InternalName>
                                      <DisplayName>Display Value3</DisplayName>
                                   </Value>
                                </Values>
                                <Description>Report Parameter 2 Description</Description>
                                <MultiSelectAllowed>true</MultiSelectAllowed>
                                <HelpInformation>Report Parameter 2 Help Text</HelpInformation>
                             </Parameter>
                          </Parameters>
                       </Report>
                    </ReportResponse>
              schema:
                $ref: '#/components/schemas/reportResponse'
          description: Successful retrieval of report template details
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ReportResponse>
                       <ResponseStatus>
                          <ErrorCode>19000</ErrorCode>
                          <Description>No report found with report ID of '123'</Description>
                       </ResponseStatus>
                    </ReportResponse>
          description: A report template matching the provided ID could not be found
      summary: Retrieve Report
      tags:
        - Reports
  /accounts/{accountId}/reports/{reportId}/instances:
    get:
      description: >-
        Retrieve report instances associated with a specific report, including
        the up-to-date report generation status
      operationId: RetrieveReportInstances
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ID of the report to retrieve it instances
          example: '123'
          in: path
          name: reportId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ReportInstancesResponse>
                       <Instances>
                          <Instance>
                             <Id>100090</Id>
                             <ReportId>100020</ReportId>
                             <ReportName>Sample Report</ReportName>
                             <OutputFormat>pdf</OutputFormat>
                             <RequestedByUserName>jbm</RequestedByUserName>
                             <RequestedAt>2015-05-18 14:03:04</RequestedAt>
                             <Parameters>
                                <Parameter>
                                   <Name>AccountId</Name>
                                   <Value>1</Value>
                                </Parameter>
                             </Parameters>
                             <Status>Expired</Status>
                          </Instance>
                          <Instance>
                             <Id>100098</Id>
                             <ReportId>100020</ReportId>
                             <ReportName>Sample Report</ReportName>
                             <OutputFormat>html</OutputFormat>
                             <RequestedByUserName>jbm</RequestedByUserName>
                             <RequestedAt>2015-05-19 09:18:40</RequestedAt>
                             <Parameters>
                                <Parameter>
                                   <Name>AccountId</Name>
                                   <Value>1</Value>
                                </Parameter>
                                <Parameter>
                                   <Name>SiteId</Name>
                                   <Value>1</Value>
                                </Parameter>
                             </Parameters>
                             <Status>Expired</Status>
                          </Instance>
                          <Instance>
                             <Id>100102</Id>
                             <ReportId>100020</ReportId>
                             <ReportName>Sample Report</ReportName>
                             <OutputFormat>pdf</OutputFormat>
                             <RequestedByUserName>jbm</RequestedByUserName>
                             <RequestedAt>2015-05-19 11:05:12</RequestedAt>
                             <Parameters>
                                <Parameter>
                                   <Name>AccountId</Name>
                                   <Value>1</Value>
                                </Parameter>
                             </Parameters>
                             <Status>Ready</Status>
                             <ExpiresAt>2015-06-15</ExpiresAt>
                          </Instance>
                       </Instances>
                    </ReportInstancesResponse>
              schema:
                $ref: '#/components/schemas/reportInstancesResponse'
          description: Successful retrieval of report instances
      summary: Retrieve Report Instances
      tags:
        - Reports
    post:
      description: >-
        Create an instance of that report that pulls from data that is filtered
        by the supplied parameters. Those parameter values must match the
        parameters that are required as defined by the report, as provided by
        issuing a GET on the report.

        The sequence of events is essentially to...

        <ol><li>issue a GET on the desired report/report-id to retrieve the
        parameter and other details of the report</li><li>issue a POST on the
        /report/report-id/instances resource, using the parameter information
        retrieved in the initial call to define the data that is
        needed</li></ol>

        The Location header will provide a link to the created report instance. 
        Note that the report instance itself contains only the metadata
        describing the instance.  A subsequent call to
        /report/report-id/instances/instance-id/file must be made to actually
        download the file
      operationId: CreateReportInstance
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ID of the report to create an instance
          example: '123'
          in: path
          name: reportId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Instance>
                     <OutputFormat>pdf</OutputFormat>
                     <Parameters>
                        <Parameter>
                           <Name>Account</Name>
                           <Value>1</Value>
                        </Parameter>
                        <Parameter>
                           <Name>Sub-account</Name>
                           <Value>1</Value>
                        </Parameter>
                        <Parameter>
                           <Name>MultiValueEnum</Name>
                           <Value>value1</Value>
                           <Value>value2</Value>
                        </Parameter>
                     </Parameters>
                     <ExpiresAt>2016-11-25</ExpiresAt>
                  </Instance>
            schema:
              $ref: '#/components/schemas/reportInstance'
      responses:
        '201':
          description: Successful creation of report instance
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ReportInstanceResponse>
                       <ResponseStatus>
                          <ErrorCode>19032</ErrorCode>
                          <Description>Missing one or more required report parameters: AccountId</Description>
                       </ResponseStatus>
                    </ReportInstanceResponse>
          description: Missing one or more required report parameters
        '503':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ReportInstanceResponse>
                       <ResponseStatus>
                          <ErrorCode>19031</ErrorCode>
                          <Description>Error encountered processing request via external reporting service.  Please contact Bandwidth support for further assistance.</Description>
                       </ResponseStatus>
                    </ReportInstanceResponse>
          description: An external report service error
      summary: Create Report Instance
      tags:
        - Reports
  /accounts/{accountId}/reports/{reportId}/instances/{instanceId}:
    get:
      description: >-
        Retrieve report instance details, including the current report instance
        status.  All of the information required to understand the nature and
        limits of the reported data are contained in the payload, including the
        general description information as well as the list of parameters and
        the values assigned to those parameters
      operationId: RetrieveReportInstance
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Report's ID of the instance
          example: '123'
          in: path
          name: reportId
          required: true
          schema:
            type: string
        - description: ID of the instance to retrieve
          example: '100102'
          in: path
          name: instanceId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ReportInstanceResponse>
                       <Instance>
                          <Id>100102</Id>
                          <ReportId>100020</ReportId>
                          <ReportName>Sample Report</ReportName>
                          <OutputFormat>pdf</OutputFormat>
                          <RequestedByUserName>jbm</RequestedByUserName>
                          <RequestedAt>2015-05-19 11:05:12</RequestedAt>
                          <Parameters>
                             <Parameter>
                                <Name>AccountId</Name>
                                <Value>1</Value>
                             </Parameter>
                          </Parameters>
                          <Status>Ready</Status>
                          <ExpiresAt>2016-06-15</ExpiresAt>
                       </Instance>
                    </ReportInstanceResponse>
              schema:
                $ref: '#/components/schemas/reportInstanceResponse'
          description: Successful retrieval of the report instance
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ReportInstanceResponse>
                       <ResponseStatus>
                          <ErrorCode>19019</ErrorCode>
                          <Description>No report instance found for report 100020 with Id of '100103'</Description>
                       </ResponseStatus>
                    </ReportInstanceResponse>
          description: Instance was not found for the report
      summary: Retrieve Report Instance
      tags:
        - Reports
    put:
      description: Update report instance
      operationId: UpdateAcctReportInstance
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Report's ID of the instance
          example: '123'
          in: path
          name: reportId
          required: true
          schema:
            type: string
        - description: ID of the instance to retrieve
          example: '100102'
          in: path
          name: instanceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            schema:
              $ref: '#/components/schemas/reportInstance'
      responses:
        '200':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/reportInstanceResponse'
          description: Instance was successfully updated
      summary: Update report instance
      tags:
        - Reports
  /accounts/{accountId}/reports/{reportId}/instances/{instanceId}/file:
    get:
      description: Download report instance output file, if output is available
      operationId: DownloadReportInstanceFile
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Report's ID of the instance
          example: '123'
          in: path
          name: reportId
          required: true
          schema:
            type: string
        - description: ID of the instance to retrieve file
          example: '100102'
          in: path
          name: instanceId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Successful retrieval of report output
        '202':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ReportInstanceFileResponse>
                       <ResponseStatus>
                          <ErrorCode>19048</ErrorCode>
                          <Description>Report generation in progress; Output not yet available</Description>
                       </ResponseStatus>
                    </ReportInstanceFileResponse>
          description: >-
            Report generation is still in progress.  Check the status of the
            report instance, and When the report instance status becomes `Ready`
        '307':
          description: >-
            Successful retrieval of report output. Link to download the file
            provided in the Location header
          headers:
            Location:
              description: The URL for downloading the file
              schema:
                type: string
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ReportInstanceFileResponse>
                       <ResponseStatus>
                          <ErrorCode>19019</ErrorCode>
                          <Description>No report instance found for report 123 with Id of '456'</Description>
                       </ResponseStatus>
                    </ReportInstanceFileResponse>
          description: >-
            A report instance matching the supplied identification information
            could not be found
      summary: Download Report Instance File
      tags:
        - Reports
  /accounts/{accountId}/sipcredentials:
    get:
      description: Retrieve all SIP credentials for the account
      operationId: RetrieveSipCredentials
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            An ID of the first element in a page.  This value will indicate the
            first value, not the count, of the initial entry in the page being
            requested. It can be an index of SIP credential or a combination of
            user name and domain in form {userName}@{domain}. The initial page
            is tagged with the ID '1'
          example: 3, user321@bw.com
          in: query
          name: page
          required: false
          schema:
            default: '1'
            type: string
        - description: The number of items to include in a page
          example: 5000
          in: query
          name: size
          required: false
          schema:
            default: 500
            type: integer
        - description: The user name fragment
          example: user32
          in: query
          name: userNamefragment
          required: false
          schema:
            maxLength: 64
            minLength: 3
            type: string
        - description: The domain fragment
          example: bw.
          in: query
          name: domainfragment
          required: false
          schema:
            maxLength: 64
            minLength: 3
            type: string
        - description: The application name fragment
          example: myapp
          in: query
          name: applicationNameFragment
          required: false
          schema:
            maxLength: 64
            minLength: 3
            type: string
        - description: The realm fragment
          example: myrealm
          in: query
          name: realmFragment
          required: false
          schema:
            maxLength: 64
            minLength: 3
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialsResponse>
                       <Links>
                          <first>Link=&lt;http://api.bandwidth.com/iris/accounts/14/sipcredentials?size=500&amp;page=1&gt;;rel="first";</first>
                       </Links>
                       <SipCredentials>
                          <SipCredential>
                             <Id>11</Id>
                             <RealmId>3</RealmId>
                             <UserName>John</UserName>
                             <Domain>bw.com</Domain>
                             <Hash1>1g32gadgs433dd4</Hash1>
                             <Hash1b>1g32gadgs433d24</Hash1b>
                             <Realm>realm1.abc123.auth.bandwidth.com</Realm>
                             <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                          </SipCredential>
                          <SipCredential>
                             <Id>45</Id>
                             <RealmId>4</RealmId>
                             <UserName>Mathew@bw.com</UserName>
                             <Hash1>43543gggs43g324</Hash1>
                             <Realm>realm2.abc123.auth.bandwidth.com</Realm>
                             <HttpVoiceV2AppId>7a1626ea-6a3e-11eb-9439-0242ac130002</HttpVoiceV2AppId>
                          </SipCredential>
                       </SipCredentials>
                    </SipCredentialsResponse>
              schema:
                $ref: '#/components/schemas/accountSipCredentials'
          description: >-
            OK - the SIP credentials retrieval request will return a list of the
            SIP credentials that are created on this account
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialsResponse>
                       <ResponseStatus>
                          <ErrorCode>23008</ErrorCode>
                          <Description>There are no Sip credentials associated with the account with ID = 41</Description>
                       </ResponseStatus>
                    </SipCredentialsResponse>
          description: >-
            Not Found - if the account specified does not exist or is locked or
            there are no SIP credentials associated with specified account it
            will result in a not found
      summary: Retrieve SIP Credentials
      tags:
        - Sip Registrar
    post:
      description: Create SIP credentials and associate them with the account
      operationId: CreateSipCredentials
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipCredentials>
                     <SipCredential>
                        <UserName>John</UserName>
                        <Domain>bw.com</Domain>
                        <Hash1>1g32gadgs433dd4</Hash1>
                        <Hash1b>1g32gadgs433d24</Hash1b>
                        <Realm>realm1.abc123.auth.bandwidth.com</Realm>
                        <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                     </SipCredential>
                     <SipCredential>
                        <UserName>Mathew@bw.com</UserName>
                        <Hash1>43543gggs43g324</Hash1>
                        <Hash1b>1g32gadgs433a34</Hash1b>
                        <Realm>realm2.abc123.auth.bandwidth.com</Realm>
                        <HttpVoiceV2AppId>7a1626ea-6a3e-11eb-9439-0242ac130002</HttpVoiceV2AppId>
                     </SipCredential>
                  </SipCredentials>
            schema:
              $ref: '#/components/schemas/accountSipCredentialsRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialsResponse>
                       <Errors>
                          <Error>
                             <ErrorCode>1003</ErrorCode>
                             <Description>UserName is required</Description>
                             <SipCredential>
                                <Domain>bw.com</Domain>
                                <Hash1>1g32gadgs433dd4</Hash1>
                                <Hash1b>1g32gadgs433d24</Hash1b>
                                <Realm>realm1.abc123.auth.bandwidth.com</Realm>
                                <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                             </SipCredential>
                          </Error>
                       </Errors>
                       <ValidSipCredentials>
                          <SipCredential>
                             <Id>39</Id>
                             <RealmId>4</RealmId>
                             <UserName>Bill</UserName>
                             <Domain>bw.com</Domain>
                             <Hash1>43543gggs43g324</Hash1>
                             <Hash1b>4562gadgs433454</Hash1b>
                             <Realm>realm2.abc123.auth.bandwidth.com</Realm>
                             <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                          </SipCredential>
                          <SipCredential>
                             <Id>940</Id>
                             <RealmId>5</RealmId>
                             <UserName>Jane</UserName>
                             <Domain>bw.com</Domain>
                             <Hash1>af7b8bd23a2b65b</Hash1>
                             <Hash1b>af7b8bd23a2b65c</Hash1b>
                             <Realm>realm3.abc123.auth.bandwidth.com</Realm>
                             <HttpVoiceV2AppId>7a1626ea-6a3e-11eb-9439-0242ac130002</HttpVoiceV2AppId>
                          </SipCredential>
                       </ValidSipCredentials>
                    </SipCredentialsResponse>
              schema:
                $ref: '#/components/schemas/sipCredentialsResponse'
          description: >-
            Created - If there was at least one valid credential entry in
            specified list then such response will be returned
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialsResponse>
                       <ResponseStatus>
                          <Description>Please check your input parameters.</Description>
                       </ResponseStatus>
                       <Errors>
                          <Error>
                             <ErrorCode>1003</ErrorCode>
                             <Description>UserName is required</Description>
                             <SipCredential>
                                <Domain>bw.com</Domain>
                                <Hash1>1g32gadgs433dd4</Hash1>
                                <Hash1b>1g32gadgs433d24</Hash1b>
                                <Realm>realm1.abc123.auth.bandwidth.com</Realm>
                                <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                             </SipCredential>
                          </Error>
                          <Error>
                             <ErrorCode>23009</ErrorCode>
                             <Description>Sip credential Bill@bw.com does already exist on the account with ID = 41</Description>
                             <SipCredential>
                                <UserName>Bill</UserName>
                                <Domain>bw.com</Domain>
                                <Hash1>43543gggs43g324</Hash1>
                                <Hash1b>4562gadgs433454</Hash1b>
                                <Realm>realm2.abc123.auth.bandwidth.com</Realm>
                                <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                             </SipCredential>
                          </Error>
                          <Error>
                             <ErrorCode>23018</ErrorCode>
                             <Description>Realm 'realm3.abc123.auth.bandwidth.com' was not found on the account with ID = 41.</Description>
                             <SipCredential>
                                <UserName>Jane</UserName>
                                <Domain>bw.com</Domain>
                                <Hash1>af7b8bd23a2b65b</Hash1>
                                <Hash1b>af7b8bd23a2b65c</Hash1b>
                                <Realm>realm3.abc123.auth.bandwidth.com</Realm>
                                <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                             </SipCredential>
                          </Error>
                          <Error>
                             <ErrorCode>23019</ErrorCode>
                             <Description>Application with ID 7a1626ea-6a3e-11eb-9439-0242ac130002 was not found on the account with ID = 41</Description>
                             <SipCredential>
                                <UserName>Abe</UserName>
                                <Domain>bw.com</Domain>
                                <Hash1>9a1ee5b3fa64ba0</Hash1>
                                <Hash1b>279de633c5f7aff</Hash1b>
                                <Realm>realm2.abc123.auth.bandwidth.com</Realm>
                                <HttpVoiceV2AppId>7a1626ea-6a3e-11eb-9439-0242ac130002</HttpVoiceV2AppId>
                             </SipCredential>
                          </Error>
                       </Errors>
                    </SipCredentialsResponse>
          description: >-
            Bad Request - If all credential entries in specified list are
            invalid it will result in bad request with list of errors
        '503':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerResponse>
                       <ResponseStatus>
                          <ErrorCode>13566</ErrorCode>
                          <Description>Our E911 service is unavaliable</Description>
                       </ResponseStatus>
                    </SipPeerResponse>
          description: Service unavailable
      summary: Create SIP Credentials
      tags:
        - Sip Registrar
  /accounts/{accountId}/sipcredentials/{compositeUserName}:
    delete:
      description: Delete SIP credential
      operationId: DeleteSipCredentials
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            Is comprised of the `UserName`, and, if there is a `Domain` part, an
            @ followed by the `Domain`
          example: '`user` or `user@domain`'
          in: path
          name: compositeUserName
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK - the SIP credential was deleted successfully
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialResponse>
                       <ResponseStatus>
                          <ErrorCode>23007</ErrorCode>
                          <Description>Sip credential Jim@bw.com was not found on the account with ID = 41</Description>
                       </ResponseStatus>
                    </SipCredentialResponse>
          description: >-
            Not Found - the SIP credential was not found on the account for the
            specified combination of user name and domain
        '503':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerResponse>
                       <ResponseStatus>
                          <ErrorCode>13566</ErrorCode>
                          <Description>Our E911 service is unavaliable</Description>
                       </ResponseStatus>
                    </SipPeerResponse>
          description: Service unavailable
      summary: Delete SIP Credentials
      tags:
        - Sip Registrar
    get:
      description: >-
        Retrieve a SIP credential for the account by unique combination of user
        name and domain
      operationId: RetrieveSipCredential
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            Is comprised of the `UserName`, and, if there is a `Domain` part, an
            @ followed by the `Domain`
          example: '`user` or `user@domain`'
          in: path
          name: compositeUserName
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                With aggregated UserName and Domain:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialResponse>
                       <SipCredential>
                          <Id>39</Id>
                          <RealmId>4</RealmId>
                          <UserName>Bill@bw.com</UserName>
                          <Hash1>1g32gadgs433dd4</Hash1>
                          <Realm>realm2.abc123.auth.bandwidth.com</Realm>
                          <HttpVoiceV2AppId>7a1626ea-6a3e-11eb-9439-0242ac130002</HttpVoiceV2AppId>
                       </SipCredential>
                    </SipCredentialResponse>
                With separated UserName and Domain:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialResponse>
                       <SipCredential>
                          <Id>11</Id>
                          <RealmId>3</RealmId>
                          <UserName>John</UserName>
                          <Domain>bw.com</Domain>
                          <Hash1>1g32gadgs433dd4</Hash1>
                          <Hash1b>1g32gadgs433d24</Hash1b>
                          <Realm>realm1.abc123.auth.bandwidth.com</Realm>
                          <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                       </SipCredential>
                    </SipCredentialResponse>
              schema:
                $ref: '#/components/schemas/sipCredentialResponse'
          description: >-
            OK - will return full information about the SIP credential on this
            account for the specified user name and domain
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialResponse>
                       <ResponseStatus>
                          <ErrorCode>23007</ErrorCode>
                          <Description>Sip credential Jack@bw.com was not found on the account with ID = 41</Description>
                       </ResponseStatus>
                    </SipCredentialResponse>
          description: >-
            Not Found - if the account specified does not exist or is locked or
            if there is no SIP credential that corresponds to the specified
            combination of user name and domain it will result in a not found
      summary: Retrieve SIP Credential
      tags:
        - Sip Registrar
    put:
      description: >-
        Update single SIP credential

        It is not possible to change the UserName or the Domain associated with
        the Hash Values. To do so requires deletion of one set of credentials
        and addition of a new set of credentials
      operationId: UpdateSipCredentials
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            Is comprised of the `UserName`, and, if there is a `Domain` part, an
            @ followed by the `Domain`
          example: '`user` or `user@domain`'
          in: path
          name: compositeUserName
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipCredential>
                     <Hash1>1g32gadgs433dd4</Hash1>
                     <Hash1b>1g32gadgs433d24</Hash1b>
                     <Realm>realm1.abc123.auth.bandwidth.com</Realm>
                     <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                  </SipCredential>
            schema:
              $ref: '#/components/schemas/sipCredentialUpdateRequest'
      responses:
        '200':
          content:
            application/xml:
              examples:
                With aggregated UserName and Domain:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialResponse>
                       <SipCredential>
                          <Id>80</Id>
                          <RealmId>3</RealmId>
                          <UserName>Mathew@bw.com</UserName>
                          <Hash1>43533gggs43g324</Hash1>
                          <Realm>realm1.abc123.auth.bandwidth.com</Realm>
                          <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                       </SipCredential>
                    </SipCredentialResponse>
                With separated UserName and Domain:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialResponse>
                       <SipCredential>
                          <Id>451</Id>
                          <RealmId>3</RealmId>
                          <UserName>Mathew</UserName>
                          <Domain>bw.com</Domain>
                          <Hash1>43533gggs43g324</Hash1>
                          <Hash1b>4562gadgs423454</Hash1b>
                          <Realm>realm1.abc123.auth.bandwidth.com</Realm>
                          <HttpVoiceV2AppId>5ba6761d-36bd-4307-8f7b-a6f806c35abf</HttpVoiceV2AppId>
                       </SipCredential>
                    </SipCredentialResponse>
              schema:
                $ref: '#/components/schemas/sipCredentialResponse'
          description: OK - the SIP credential was successfully updated
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialResponse>
                       <ResponseStatus>
                          <ErrorCode>23004</ErrorCode>
                          <Description>Unable to change the UserName or the Domain associated with the Hash Values. To do so requires deletion of one set of credentials and addition of a new set of credentials.</Description>
                       </ResponseStatus>
                    </SipCredentialResponse>
          description: Bad Request - the SIP credential was not updated
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipCredentialResponse>
                       <ResponseStatus>
                          <ErrorCode>23007</ErrorCode>
                          <Description>Sip credential Ross@bw.com was not found on the account with ID = 41</Description>
                       </ResponseStatus>
                    </SipCredentialResponse>
          description: >-
            Not Found - the SIP credential was not found on the account for the
            specified combination of user name and domain
        '503':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerResponse>
                       <ResponseStatus>
                          <ErrorCode>13566</ErrorCode>
                          <Description>Our E911 service is unavaliable</Description>
                       </ResponseStatus>
                    </SipPeerResponse>
          description: Service unavailable
      summary: Update SIP Credentials
      tags:
        - Sip Registrar
  /accounts/{accountId}/sites/{siteId}/portins:
    get:
      description: Retrieves Port-in orders associated with the given Site
      operationId: RetrieveSitePortins
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Site ID of Port-In orders
          example: '407'
          in: path
          name: siteId
          required: true
          schema:
            type: string
        - description: >-
            The port-in ID of the first order of the page. "1" is used as a
            convention for the first port-in in the Site ID
          example: ca8065d1-ec1a-43da-af40-1dcee43becb5
          in: query
          name: page
          required: true
          schema:
            default: '1'
            type: string
        - description: The number of port-ins retrieved
          example: 30
          in: query
          name: size
          required: true
          schema:
            default: 300
            type: integer
        - description: Displays the port-ins with the given status
          example: completed
          in: query
          name: status
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LNPResponseWrapper>
                       <TotalCount>7</TotalCount>
                       <Links>
                          <first>
                             <!-- SNIP -->
                          </first>
                          <next>
                             <!-- SNIP -->
                          </next>
                       </Links>
                       <lnpPortInfoForGivenStatus>
                          <CountOfTNs>1</CountOfTNs>
                          <userId>jbm</userId>
                          <OrderId>ca8065d1-ec1a-43da-af40-1dcee43becb5</OrderId>
                          <OrderType>port_in</OrderType>
                          <BillingTelephoneNumber>+19192803466</BillingTelephoneNumber>
                          <lastModifiedDate>2014-05-20T14:43:19.222Z</lastModifiedDate>
                          <LNPLosingCarrierId>1537</LNPLosingCarrierId>
                          <LNPLosingCarrierName>Mock Carrier</LNPLosingCarrierName>
                          <OrderDate>2014-05-20T14:43:32.828Z</OrderDate>
                          <ProcessingStatus>CANCELLED</ProcessingStatus>
                          <RequestedFOCDate>2015-05-15T20:00:00.000Z</RequestedFOCDate>
                          <VendorId>49</VendorId>
                          <VendorName>Bandwidth CLEC</VendorName>
                       </lnpPortInfoForGivenStatus>
                    </LNPResponseWrapper>
              schema:
                $ref: '#/components/schemas/lnpResponseWrapper'
          description: The port-ins have been successfully retrieved.
      summary: Retrieve Site Port-In orders
      tags:
        - Porting
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/products:
    get:
      description: A list of products associated with a Sip Peer
      operationId: RetrieveSipPeerProducts
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to retrieve a list of products
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerProductResponse>
                       <Products>
                          <Product>
                             <Name>Termination</Name>
                          </Product>
                          <Product>
                             <Name>EdgeManagement</Name>
                          </Product>
                          <Product>
                             <Name>Messaging</Name>
                          </Product>
                          <Product>
                             <Name>Origination</Name>
                          </Product>
                       </Products>
                    </SipPeerProductResponse>
              schema:
                $ref: '#/components/schemas/sipPeerProductsResponse'
          description: >-
            There is at least one product associated with the SIP Peer. If there
            is no products associated with Sip Peer, empty list will be
            displayed
      summary: Retrieve Sip Peer products
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/products/messaging/applicationSettings:
    get:
      description: Retrieve Sip Peer Application settings
      operationId: RetrieveSipPeerApplicationSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to retrieve Application settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ApplicationsSettingsResponse>
                       <ApplicationsSettings>
                          <HttpMessagingV2AppId>4a4ca6c1-156b-4fca-84e9-34e35e2afc32</HttpMessagingV2AppId>
                       </ApplicationsSettings>
                    </ApplicationsSettingsResponse>
              schema:
                $ref: '#/components/schemas/applicationsSettingsResponse'
          description: A successful result that contains the response data
      summary: Retrieve Sip Peer Application setting
      tags:
        - SipPeer Management
    put:
      description: >-
        Create/update/delete Sip Peer's application settings<br>Set the
        ApplicationsSettings value to 'REMOVE' to unassign application
      operationId: UpdateSipPeerApplicationSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to update Application settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              Delete:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <ApplicationsSettings>REMOVE</ApplicationsSettings>
              Update:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <ApplicationsSettings>
                     <HttpMessagingV2AppId>c3b0f805-06ab-4d36-8bf4-8baff7623398</HttpMessagingV2AppId>
                  </ApplicationsSettings>
            schema:
              $ref: '#/components/schemas/applicationsSettings'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ApplicationsSettingsResponse>
                       <ApplicationsSettings>
                          <HttpMessagingV2AppId>c3b0f805-06ab-4d36-8bf4-8baff7623398</HttpMessagingV2AppId>
                       </ApplicationsSettings>
                    </ApplicationsSettingsResponse>
              schema:
                $ref: '#/components/schemas/applicationsSettingsResponse'
          description: Settings were successfully updated
      summary: Update Sip Peer Application setting
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/products/messaging/features/mms:
    delete:
      description: Delete Sip Peer MMS settings
      operationId: DeleteSipPeerMmsSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to delete MMS settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Settings were deleted
        '404':
          description: MMS settings were not found
      summary: Delete Sip Peer MMS setting
      tags:
        - SipPeer Management
    get:
      description: Retrieve Sip Peer MMS settings
      operationId: RetrieveSipPeerMmsSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to retrieve MMS settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <MmsFeatureResponse>
                       <MmsFeature>
                          <MmsSettings>
                             <protocol>HTTP</protocol>
                          </MmsSettings>
                          <Protocols>
                             <HTTP>
                                <HttpSettings>
                                   <proxyPeerId>500017</proxyPeerId>
                                </HttpSettings>
                             </HTTP>
                          </Protocols>
                       </MmsFeature>
                    </MmsFeatureResponse>
              schema:
                $ref: '#/components/schemas/mmsFeatureResponse'
          description: A successful result that contains the response data
      summary: Retrieve Sip Peer MMS setting
      tags:
        - SipPeer Management
    post:
      description: Create Sip Peer MMS settings
      operationId: CreateSipPeerMmsSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to create MMS settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <MmsFeature>
                     <MmsSettings>
                        <Protocol>MM4</Protocol>
                     </MmsSettings>
                     <Protocols>
                        <MM4>
                           <!--Tls element is optional. If not included default value OFF will be used.-->
                           <Tls>OFF</Tls>
                           <MmsMM4TermHosts>
                              <TermHosts>
                                 <TermHost>
                                    <HostName>206.107.248.58</HostName>
                                 </TermHost>
                              </TermHosts>
                           </MmsMM4TermHosts>
                           <MmsMM4OrigHosts>
                              <OrigHosts>
                                 <OrigHost>
                                    <!--If Tls is ON you can pass only FQDN as hostname. If Tls is OFF you can send either FQDN or IP address.-->
                                    <HostName>30.239.72.55</HostName>
                                    <!--Port element is optional. If not included port will be set based on TLS value (25 for OFF and 587 for ON).-->
                                    <Port>8726</Port>
                                    <Priority>0</Priority>
                                 </OrigHost>
                                 <OrigHost>
                                    <HostName>25.231.123.32</HostName>
                                    <Priority>0</Priority>
                                 </OrigHost>
                              </OrigHosts>
                           </MmsMM4OrigHosts>
                        </MM4>
                     </Protocols>
                  </MmsFeature>
            schema:
              $ref: '#/components/schemas/sipPeerMmsFeature'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <MmsFeatureResponse>
                       <MmsFeature>
                          <MmsSettings>
                             <Protocol>MM4</Protocol>
                          </MmsSettings>
                          <Protocols>
                             <MM4>
                                <Tls>OFF</Tls>
                                <MmsMM4TermHosts>
                                   <TermHosts>
                                      <TermHost>
                                         <HostId>1</HostId>
                                         <HostName>206.107.248.58</HostName>
                                      </TermHost>
                                   </TermHosts>
                                </MmsMM4TermHosts>
                                <MmsMM4OrigHosts>
                                   <OrigHosts>
                                      <OrigHost>
                                         <HostName>30.239.72.55</HostName>
                                         <!--If port wasn't set explicitly it will not be included in response payload.-->
                                         <Port>8726</Port>
                                         <HostId>1</HostId>
                                         <Priority>0</Priority>
                                      </OrigHost>
                                      <OrigHost>
                                         <HostName>25.231.123.32</HostName>
                                         <HostId>2</HostId>
                                         <Priority>0</Priority>
                                      </OrigHost>
                                   </OrigHosts>
                                </MmsMM4OrigHosts>
                             </MM4>
                          </Protocols>
                       </MmsFeature>
                    </MmsFeatureResponse>
              schema:
                $ref: '#/components/schemas/mmsFeatureResponse'
          description: Setting was successfully added
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <MmsFeatureResponse>
                       <ResponseStatus>
                          <ErrorCode>13606</ErrorCode>
                          <Description>Messaging feature may have only one protocol assigned.</Description>
                       </ResponseStatus>
                    </MmsFeatureResponse>
          description: |-
            Bad Request. Possible errors in response:
            <ul><li>Pauload contains two protocol</li></ul>
      summary: Create Sip Peer MMS setting
      tags:
        - SipPeer Management
    put:
      description: Update Sip Peer MMS settings
      operationId: UpdateSipPeerMmsSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to update MMS settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <MmsFeature>
                     <MmsSettings>
                        <protocol>HTTP</protocol>
                     </MmsSettings>
                     <Protocols>
                        <HTTP>
                           <HttpSettings>
                              <proxyPeerId>500017</proxyPeerId>
                           </HttpSettings>
                        </HTTP>
                     </Protocols>
                  </MmsFeature>
            schema:
              $ref: '#/components/schemas/sipPeerMmsFeature'
      responses:
        '200':
          description: Settings were successfully updated
      summary: Update Sip Peer MMS setting
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/products/messaging/features/mms/settings:
    get:
      description: Retrieve Sip Peer MMS feature settings
      operationId: RetrieveSipPeerMmsFeatureSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to retrieve MMS feature settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <MmsFeatureMmsSettingsResponse>
                       <MmsSettings>
                          <Protocol>MM4</Protocol>
                       </MmsSettings>
                    </MmsFeatureMmsSettingsResponse>
              schema:
                $ref: '#/components/schemas/mmsFeatureMmsSettingsResponse'
          description: A successful result that contains the response data
      summary: Retrieve Sip Peer MMS feature setting
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/products/messaging/features/sms:
    delete:
      description: Delete Sip Peer SMS settings
      operationId: DeleteSipPeerSmsSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to delete SMS settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Settings have been deleted
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerSmsFeatureResponse>
                       <ResponseStatus>
                          <ErrorCode>13673</ErrorCode>
                          <Description>Can not disable SMS feature on Sip Peer because it has telephone numbers with messaging enabled.</Description>
                       </ResponseStatus>
                    </SipPeerSmsFeatureResponse>
          description: >-
            Bad Request. Possible errors in response:

            <ul><li>SMS feature can't be removed because MMS feature is present,
            remove it first.</li><li>Can not disable SMS feature on Sip Peer
            because it has telephone numbers with messaging enabled.</li></ul>
        '404':
          description: SMS settings do not exist
      summary: Delete Sip Peer SMS setting
      tags:
        - SipPeer Management
    get:
      description: Retrieve Sip Peer SMS settings
      operationId: RetrieveSipPeerSmsSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to retrieve SMS settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerSmsFeatureResponse>
                       <SipPeerSmsFeature>
                          <SipPeerSmsFeatureSettings>
                             <TollFree>true</TollFree>
                             <ShortCode>true</ShortCode>
                             <A2pLongCode>DefaultOff</A2pLongCode>
                             <A2pMessageClass>SomeMessageClass</A2pMessageClass>
                             <A2pCampaignId>SomeCampaignId</A2pCampaignId>
                             <Protocol>SMPP</Protocol>
                             <Zone1>true</Zone1>
                             <Zone2>true</Zone2>
                             <Zone3>true</Zone3>
                             <Zone4>true</Zone4>
                             <Zone5>true</Zone5>
                          </SipPeerSmsFeatureSettings>
                          <SmppHosts>
                             <SmppHost>
                                <HostName>54.10.88.146</HostName>
                                <HostId>18</HostId>
                                <Priority>0</Priority>
                                <ConnectionType>RECEIVER_ONLY</ConnectionType>
                             </SmppHost>
                          </SmppHosts>
                       </SipPeerSmsFeature>
                    </SipPeerSmsFeatureResponse>
              schema:
                $ref: '#/components/schemas/sipPeerSmsFeatureResponse'
          description: Payload contains sms feature settings for sip peer
      summary: Retrieve Sip Peer SMS setting
      tags:
        - SipPeer Management
    post:
      description: >-
        Create Sip Peer SMS settings<br/>

        <b>Warning</b>: settings A2pLongCode as 'ON' or 'OFF' will enforce this
        value for all tns under target sippeer <br/>

        <b>Note</b>: In case of using SMPP protocol, it may be not possible to
        add or delete hosts with large subnet masks. <br/>

        Host address may or may not include the subnet mask (/32 is assumed if
        not specified)

        Regular users can only specify subnets not larger then /20. Updating

        subnet values larger than /20 requires Bandwidth staff intervention
        (Bandwidth staff may define subnets upto /14)

        Also, host address should not intersect with addresses used by other
        services or other accounts,

        otherwise a validation error will occur
      operationId: CreateSipPeerSmsSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to create SMS settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipPeerSmsFeature>
                     <SipPeerSmsFeatureSettings>
                        <TollFree>true</TollFree>
                        <ShortCode>true</ShortCode>
                        <A2pLongCode>DefaultOff</A2pLongCode>
                        <A2pMessageClass>SomeMessageClass</A2pMessageClass>
                        <A2pCampaignId>SomeCampaignId</A2pCampaignId>
                        <Protocol>SMPP</Protocol>
                        <Zone1>true</Zone1>
                        <Zone2>true</Zone2>
                        <Zone3>true</Zone3>
                        <Zone4>true</Zone4>
                        <Zone5>true</Zone5>
                     </SipPeerSmsFeatureSettings>
                     <SmppHosts>
                        <SmppHost>
                           <HostName>54.10.88.146</HostName>
                           <Priority>0</Priority>
                           <ConnectionType>RECEIVER_ONLY</ConnectionType>
                        </SmppHost>
                        <SmppHost>
                           <HostName>47.123.17.16/30</HostName>
                           <Priority>0</Priority>
                           <ConnectionType>RECEIVER_ONLY</ConnectionType>
                        </SmppHost>
                     </SmppHosts>
                  </SipPeerSmsFeature>
            schema:
              $ref: '#/components/schemas/sipPeerSmsFeature'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerSmsFeatureResponse>
                       <SipPeerSmsFeature>
                          <SipPeerSmsFeatureSettings>
                             <TollFree>true</TollFree>
                             <ShortCode>true</ShortCode>
                             <A2pLongCode>DefaultOff</A2pLongCode>
                             <A2pMessageClass>SomeMessageClass</A2pMessageClass>
                             <A2pCampaignId>SomeCampaignId</A2pCampaignId>
                             <Protocol>SMPP</Protocol>
                             <Zone1>true</Zone1>
                             <Zone2>true</Zone2>
                             <Zone3>true</Zone3>
                             <Zone4>true</Zone4>
                             <Zone5>true</Zone5>
                          </SipPeerSmsFeatureSettings>
                          <SmppHosts>
                             <SmppHost>
                                <HostName>54.10.88.146</HostName>
                                <HostId>18</HostId>
                                <Priority>0</Priority>
                                <ConnectionType>RECEIVER_ONLY</ConnectionType>
                             </SmppHost>
                             <SmppHost>
                                <HostName>47.123.17.16/30</HostName>
                                <HostId>18</HostId>
                                <Priority>0</Priority>
                                <ConnectionType>RECEIVER_ONLY</ConnectionType>
                             </SmppHost>
                          </SmppHosts>
                       </SipPeerSmsFeature>
                    </SipPeerSmsFeatureResponse>
              schema:
                $ref: '#/components/schemas/sipPeerSmsFeatureResponse'
          description: Settings has been successfully created
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerSmsFeatureResponse>
                       <ResponseStatus>
                          <ErrorCode>13609</ErrorCode>
                          <Description>Can't create sip peer http protocol sms feature without account level http settings.</Description>
                       </ResponseStatus>
                    </SipPeerSmsFeatureResponse>
          description: >-
            Bad Request. Possible errors in response:

            <ul><li>Account level settings don`t exist</li><li>CampaignID
            shouldn't be present if all of features 'A2pLongCode', 'TollFree'
            and 'ShortCode' are disabled</li><li>CampaignID is required if at
            least one of features 'A2pLongCode', 'TollFree' and 'ShortCode' is
            enabled</li><li>Campaign ID '%s' was not found in list of authorized
            Campaign IDs.</li><li>A2P Campaign ID '%s' is not valid. Needs to be
            between 1 and 64 characters. Only alphanumeric characters,
            whitespaces, dashes, underscores and dots are allowed.</li><li>A2P
            Message Class '%s' is not valid.</li><li>A2P Message Class is
            required if at least one of features 'A2pLongCode', 'TollFree' and
            'ShortCode' is enabled</li><li>A2P Message Class shouldn't be
            present if all of features 'A2pLongCode', 'TollFree' and 'ShortCode'
            are disabled</li><li>A2P Message Class '%s' was not found in list of
            authorized Message Classes.</li><li>A2P Message Class is required if
            'A2pLongCode' is enabled.</li><li>A2P Message Class shouldn't be
            present if 'A2pLongCode' is disabled.</li><li>A2pLongCode value is
            invalid. Valid values are: 'ON', 'OFF', 'DefaultOn',
            'DefaultOff'.</li><li>Host ip or mask can't be
            changed</li><li>47.0.0.0/12 has invalid mask. Valid mask values:
            14-32</li><li>Termination IP 47.123.17.16/30 overlaps with an
            address that is already in use</li><li>Termination IP
            47.123.17.16/30 overlaps with addresses that are already in use:
            47.123.17.18</li><li>The IP address provided: &lt;47.123.17.17&gt;
            contains a non zero subnet portion. An equivalent IP address such as
            &lt;47.123.17.16&gt; with a zero subnet value must be
            provided</li><li>Account '%s' has no '%s' product
            feature</li><li>Can't create sip peer http protocol sms feature
            without account level http settings.</li></ul>
        '403':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerSmsFeatureResponse>
                       <ResponseStatus>
                          <ErrorCode>13674</ErrorCode>
                          <Description>Configuring subnet values larger than /20 requires Bandwidth staff intervention</Description>
                       </ResponseStatus>
                    </SipPeerSmsFeatureResponse>
          description: >-
            Access denied. Possible errors in response:

            <ul><li>Configuring subnet values larger than /20 requires Bandwidth
            staff intervention</li></ul>
      summary: Create Sip Peer SMS setting
      tags:
        - SipPeer Management
    put:
      description: >-
        Update Sip Peer SMS settings<br/>

        <b>Warning</b>: settings A2pLongCode as 'ON' or 'OFF' will enforce this
        value for all tns under target sippeer <br/>

        <b>Note</b>: In case of using SMPP protocol, it may be not possible to
        add or delete hosts with large subnet masks. <br/>

        Update smpp host. Host address may or may not include the subnet mask
        (/32 is assumed if not specified)

        Regular users can only specify subnets not larger then /20. Updating
        subnet values larger than

        /20 requires Bandwidth staff intervention (Bandwidth staff may define
        subnets upto /14)

        Also, host address should not intersect with addresses used by other
        services or other accounts, otherwise a validation error will occur
      operationId: UpdateSipPeerSmsSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to update SMS settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipPeerSmsFeature>
                     <SipPeerSmsFeatureSettings>
                        <TollFree>false</TollFree>
                        <ShortCode>true</ShortCode>
                        <A2pLongCode>DefaultOff</A2pLongCode>
                        <A2pMessageClass>SomeMessageClass</A2pMessageClass>
                        <A2pCampaignId>SomeCampaignId</A2pCampaignId>
                        <Protocol>SMPP</Protocol>
                        <Zone1>true</Zone1>
                        <Zone2>false</Zone2>
                        <Zone3>false</Zone3>
                        <Zone4>false</Zone4>
                        <Zone5>false</Zone5>
                     </SipPeerSmsFeatureSettings>
                     <SmppHosts>
                        <SmppHost>
                           <HostName>235.133.23.79</HostName>
                           <HostId>6</HostId>
                           <Priority>0</Priority>
                           <ConnectionType>TRANSCEIVER</ConnectionType>
                        </SmppHost>
                        <SmppHost>
                           <HostName>47.123.17.16/30</HostName>
                           <HostId>18</HostId>
                           <Priority>0</Priority>
                           <ConnectionType>TRANSCEIVER</ConnectionType>
                        </SmppHost>
                     </SmppHosts>
                  </SipPeerSmsFeature>
            schema:
              $ref: '#/components/schemas/sipPeerSmsFeature'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerSmsFeatureResponse>
                       <SipPeerSmsFeature>
                          <SipPeerSmsFeatureSettings>
                             <TollFree>false</TollFree>
                             <ShortCode>true</ShortCode>
                             <A2pLongCode>DefaultOff</A2pLongCode>
                             <A2pMessageClass>SomeMessageClass</A2pMessageClass>
                             <A2pCampaignId>NewCampaignId</A2pCampaignId>
                             <Protocol>SMPP</Protocol>
                             <Zone1>true</Zone1>
                             <Zone2>false</Zone2>
                             <Zone3>false</Zone3>
                             <Zone4>false</Zone4>
                             <Zone5>false</Zone5>
                          </SipPeerSmsFeatureSettings>
                          <SmppHosts>
                             <SmppHost>
                                <HostName>235.133.23.79</HostName>
                                <HostId>6</HostId>
                                <Priority>0</Priority>
                                <ConnectionType>TRANSCEIVER</ConnectionType>
                             </SmppHost>
                             <SmppHost>
                                <HostName>47.123.17.16/30</HostName>
                                <HostId>18</HostId>
                                <Priority>0</Priority>
                                <ConnectionType>TRANSCEIVER</ConnectionType>
                             </SmppHost>
                          </SmppHosts>
                       </SipPeerSmsFeature>
                    </SipPeerSmsFeatureResponse>
              schema:
                $ref: '#/components/schemas/sipPeerSmsFeatureResponse'
          description: Settings have been successfully updated
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerSmsFeatureResponse>
                       <ResponseStatus>
                          <ErrorCode>13637</ErrorCode>
                          <Description>CampaignID shouldn't be present if all of features 'A2pLongCode', 'TollFree' and 'ShortCode' are disabled.</Description>
                       </ResponseStatus>
                    </SipPeerSmsFeatureResponse>
          description: >-
            Bad Request. Possible errors in response:

            <ul><li>CampaignID shouldn't be present if all of features
            'A2pLongCode', 'TollFree' and 'ShortCode' are
            disabled</li><li>CampaignID is required if at least one of features
            'A2pLongCode', 'TollFree' and 'ShortCode' is
            enabled</li><li>Campaign ID '%s' was not found in list of authorized
            Campaign IDs.</li><li>A2P Campaign ID '%s' is not valid. Needs to be
            between 1 and 64 characters. Only alphanumeric
            characters,whitespaces, dashes, underscores and dots are
            allowed.</li><li>A2P Message Class '%s' is not valid.</li><li>A2P
            Message Class is required if at least one of features 'A2pLongCode',
            'TollFree' and 'ShortCode' is enabled</li><li>A2P Message Class
            shouldn't be present if all of features 'A2pLongCode', 'TollFree'
            and 'ShortCode' are disabled</li><li>A2P Message Class '%s' was not
            found in list of authorized Message Classes.</li><li>A2P Message
            Class is required if 'A2pLongCode' is enabled.</li><li>A2P Message
            Class shouldn't be present if 'A2pLongCode' is
            disabled.</li><li>A2pLongCode value is invalid. Valid values are:
            'ON', 'OFF', 'DefaultOn', 'DefaultOff'.</li><li>Host ip or mask
            can't be changed</li><li>47.0.0.0/12 has invalid mask. Valid mask
            values: 14-32</li><li>Termination IP 47.123.17.16/30 overlaps with
            an address that is already in use</li><li>Termination IP
            47.123.17.16/30 overlaps with addresses that are already in use:
            47.123.17.18</li><li>The IP address provided: &lt;47.123.17.17&gt;
            contains a non zero subnet portion. An equivalent IP address such as
            &lt;47.123.17.16&gt; with a zero subnet value must be
            provided</li><li>Can not disable shortcode sms settings for a
            SipPeer if shortcode numbers with messaging enabled are present on
            this SipPeer</li><li>A2pOnly account %s required A2P enabled on
            location. Valid values are: 'ON', 'DefaultOn'</li></ul>
        '403':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerSmsFeatureResponse>
                       <ResponseStatus>
                          <ErrorCode>13674</ErrorCode>
                          <Description>Configuring subnet values larger than /20 requires Bandwidth staff intervention</Description>
                       </ResponseStatus>
                    </SipPeerSmsFeatureResponse>
          description: >-
            Access denied. Possible errors in response:

            <ul><li>Configuring subnet values larger than /20 requires Bandwidth
            staff intervention</li></ul>
      summary: Update Sip Peer SMS setting
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/products/messaging/settings:
    get:
      description: Retrieve Sip Peer Messaging settings
      operationId: RetrieveSipPeerMessagingSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to retrieve Messaging settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerMessagingSettingsResponse>
                       <SipPeerMessagingSettings>
                          <BreakOutCountries>
                             <Country>CAN</Country>
                             <Country>GBR</Country>
                          </BreakOutCountries>
                       </SipPeerMessagingSettings>
                    </SipPeerMessagingSettingsResponse>
              schema:
                $ref: '#/components/schemas/sipPeerMessagingSettingsResponse'
          description: A successful result that contains the response data
      summary: Retrieve Sip Peer Messaging setting
      tags:
        - SipPeer Management
    put:
      description: Create/update/delete Sip Peer's Messaging settings
      operationId: UpdateSipPeerMessagingSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to update Messaging settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipPeerMessagingSettings>
                     <BreakOutCountries>
                        <Country>CAN</Country>
                        <Country>GBR</Country>
                     </BreakOutCountries>
                  </SipPeerMessagingSettings>
            schema:
              $ref: '#/components/schemas/sipPeerMessagingSettings'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerMessagingSettingsResponse>
                       <SipPeerMessagingSettings>
                          <BreakOutCountries>
                             <Country>CAN</Country>
                             <Country>GBR</Country>
                          </BreakOutCountries>
                       </SipPeerMessagingSettings>
                    </SipPeerMessagingSettingsResponse>
              schema:
                $ref: '#/components/schemas/sipPeerMessagingSettingsResponse'
          description: Messaging settings were successfully updated
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerMessagingSettingsResponse>
                       <ResponseStatus>
                          <ErrorCode>13654</ErrorCode>
                          <Description>The country values '[GBR]' do not match a 3-character country code that has been approved for this account.</Description>
                       </ResponseStatus>
                    </SipPeerMessagingSettingsResponse>
          description: Bad request. Messaging settings were not successfully updated
      summary: Update Sip Peer Messaging setting
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/products/origination/settings:
    get:
      description: Retrieve Sip Peer Origination settings
      operationId: RetrieveSipPeerOriginationSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to retrieve origination settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                HTTP Voice protocol:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerOriginationSettingsResponse>
                       <SipPeerOriginationSettings>
                          <VoiceProtocol>HTTP</VoiceProtocol>
                          <HttpSettings>
                             <HttpVoiceV2AppId>469ebbac-4459-4d98-bc19-a038960e787f</HttpVoiceV2AppId>
                          </HttpSettings>
                       </SipPeerOriginationSettings>
                    </SipPeerOriginationSettingsResponse>
                SIP Voice protocol:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerOriginationSettingsResponse>
                       <SipPeerOriginationSettings>
                          <VoiceProtocol>SIP</VoiceProtocol>
                       </SipPeerOriginationSettings>
                    </SipPeerOriginationSettingsResponse>
              schema:
                $ref: '#/components/schemas/sipPeerOriginationSettingsResponse'
          description: A successful result that contains the response data
      summary: Retrieve Sip Peer Origination setting
      tags:
        - SipPeer Management
    post:
      description: Create Sip Peer Origination settings
      operationId: CreateSipPeerOriginationSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to update origination settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              HTTP Voice protocol:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipPeerOriginationSettings>
                     <VoiceProtocol>HTTP</VoiceProtocol>
                     <HttpSettings>
                        <HttpVoiceV2AppId>469ebbac-4459-4d98-bc19-a038960e787f</HttpVoiceV2AppId>
                     </HttpSettings>
                  </SipPeerOriginationSettings>
              SIP Voice protocol:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipPeerOriginationSettings>
                     <VoiceProtocol>SIP</VoiceProtocol>
                  </SipPeerOriginationSettings>
            schema:
              $ref: '#/components/schemas/sipPeerOriginationSettingsRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerOriginationSettingsResponse>
                       <SipPeerOriginationSettings>
                          <VoiceProtocol>HTTP</VoiceProtocol>
                          <HttpSettings>
                             <HttpVoiceV2AppId>469ebbac-4459-4d98-bc19-a038960e787f</HttpVoiceV2AppId>
                          </HttpSettings>
                       </SipPeerOriginationSettings>
                    </SipPeerOriginationSettingsResponse>
              schema:
                $ref: '#/components/schemas/sipPeerOriginationSettingsResponse'
          description: Settings were successfully added
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerSmsFeatureResponse>
                       <ResponseStatus>
                          <ErrorCode>13609</ErrorCode>
                          <Description>Can't create sip peer http protocol sms feature without account level http settings.</Description>
                       </ResponseStatus>
                    </SipPeerSmsFeatureResponse>
          description: >-
            Bad Request. Possible errors in response:

            <ul><li>Account level settings don`t exist</li><li>Can't create sip
            peer http protocol sms feature without account level http
            settings</li></ul>
      summary: Create Sip Peer Origination setting
      tags:
        - SipPeer Management
    put:
      description: >-
        Update Sip Peer Origination settings<p>Note: Changing the Voice Protocol
        from SIP to HTTP will remove Voice Hosts or Voice Host Groups and
        Termination Hosts, which are configured using API
        /accounts/{accountId}/sites/{siteId}/sippeers/{sippeerId}.</p>
      operationId: UpdateSipPeerOriginationSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to update origination settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              HTTP Voice protocol:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipPeerOriginationSettings>
                     <VoiceProtocol>HTTP</VoiceProtocol>
                     <HttpSettings>
                        <HttpVoiceV2AppId>867b923b-8a92-4579-b29b-405f165b8124</HttpVoiceV2AppId>
                     </HttpSettings>
                  </SipPeerOriginationSettings>
              SIP Voice protocol:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipPeerOriginationSettings>
                     <VoiceProtocol>SIP</VoiceProtocol>
                  </SipPeerOriginationSettings>
            schema:
              $ref: '#/components/schemas/sipPeerOriginationSettingsRequest'
      responses:
        '200':
          description: Settings were successfully updated
      summary: Update Sip Peer Origination setting
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/products/termination:
    get:
      description: Get all sip peer gateway IPs and subnets
      operationId: GetSipPeerTerminationProducts
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - $ref: '#/components/parameters/SipPeerIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TerminationResponse>
                       <TerminationProduct>
                          <TerminationSettings>
                             <VoiceProtocol>SIP</VoiceProtocol>
                          </TerminationSettings>
                          <TerminationHosts>
                             <TerminationHost>
                                <HostName>188.219.64.2</HostName>
                                <Port>0</Port>
                                <id>20</id>
                             </TerminationHost>
                             <TerminationHost>
                                <HostName>87.67.71.16/30</HostName>
                                <Port>0</Port>
                                <id>21</id>
                             </TerminationHost>
                          </TerminationHosts>
                       </TerminationProduct>
                    </TerminationResponse>
              schema:
                $ref: '#/components/schemas/sipPeerTerminationProductsResponse'
          description: A successful result that contains the response data
        '500':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerGatewayIpsResponse>
                       <ResponseStatus>
                          <Description>Some error description</Description>
                       </ResponseStatus>
                    </SipPeerGatewayIpsResponse>
              schema:
                properties:
                  TerminationResponse:
                    $ref: '#/components/schemas/responseStatus'
                title: TerminationResponse
                type: object
          description: Server Error
      summary: Get sip peer termination products
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/products/termination/hosts:
    get:
      description: Get all sip peer gateway IPs and subnets
      operationId: GetSipPeerTerminationGateways
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - $ref: '#/components/parameters/SipPeerIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TerminationHosts>
                       <TerminationHost>
                          <HostName>212.240.169.208</HostName>
                          <Port>0</Port>
                          <id>21</id>
                       </TerminationHost>
                       <TerminationHost>
                          <HostName>87.67.71.16/30</HostName>
                          <Port>0</Port>
                          <id>22</id>
                       </TerminationHost>
                    </TerminationHosts>
              schema:
                $ref: '#/components/schemas/sipPeerGatewayIpsResponse'
          description: A successful result that contains the response data
      summary: Get sip peer termination gateways
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/products/termination/hosts/{gatewayId}:
    get:
      description: Get sip peer gateway IP or subnet by id
      operationId: GetSipPeerTerminationGateway
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - $ref: '#/components/parameters/SipPeerIdPathParam'
        - $ref: '#/components/parameters/GatewayIdIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerGatewayIpResponse>
                       <SipPeerGatewayIp>
                          <HostName>87.67.71.16/30</HostName>
                          <Port>0</Port>
                          <id>23</id>
                       </SipPeerGatewayIp>
                    </SipPeerGatewayIpResponse>
              schema:
                $ref: '#/components/schemas/sipPeerGatewayIpResponse'
          description: A successful result that contains the response data
        '404':
          content:
            application/xml:
              schema:
                properties:
                  SipPeerGatewayIpResponse:
                    $ref: '#/components/schemas/responseStatus'
                title: SipPeerGatewayIpResponse
                type: object
          description: Sip peer gateway ip was not found
      summary: Get sip peer termination gateway
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/products/termination/hosts/{gatewayId}/settings:
    get:
      description: Get all gateway attributes
      operationId: GetSipPeerTerminationGatewayAttributes
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - $ref: '#/components/parameters/SipPeerIdPathParam'
        - $ref: '#/components/parameters/GatewayIdIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerGatewayAttributesResponse>
                       <SipPeerGatewayAttributes>
                          <GatewayId>10</GatewayId>
                          <GatewayAttributes>
                             <GatewayAttribute>
                                <id>8</id>
                                <type>TRACE</type>
                                <value>true</value>
                                <effectiveDate>2014-11-13T17:48:33</effectiveDate>
                                <inEffectiveDate>2014-12-13T17:48:33</inEffectiveDate>
                             </GatewayAttribute>
                          </GatewayAttributes>
                       </SipPeerGatewayAttributes>
                    </SipPeerGatewayAttributesResponse>
              schema:
                $ref: '#/components/schemas/sipPeerGatewayAttributesResponse'
          description: OK
      summary: Get sip peer termination gateway attributes
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/products/termination/hosts/{gatewayId}/settings/{attributeId}:
    get:
      description: Get gateway attribute by id
      operationId: GetSipPeerTerminationGatewayAttribute
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - $ref: '#/components/parameters/SipPeerIdPathParam'
        - $ref: '#/components/parameters/GatewayIdIdPathParam'
        - in: path
          name: attributeId
          required: true
          schema:
            format: int64
            type: integer
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerGatewayAttributeResponse>
                       <SipPeerGatewayAttribute>
                          <GatewayId>25</GatewayId>
                          <GatewayAttribute>
                             <id>21</id>
                             <type>TRACE</type>
                             <value>true</value>
                             <effectiveDate>2014-11-13T17:48:33</effectiveDate>
                             <inEffectiveDate>2014-12-13T17:48:33</inEffectiveDate>
                          </GatewayAttribute>
                       </SipPeerGatewayAttribute>
                    </SipPeerGatewayAttributeResponse>
              schema:
                $ref: '#/components/schemas/sipPeerGatewayAttributeResponse'
          description: OK
      summary: Get sip peer termination gateway attribute
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/products/termination/settings:
    get:
      description: Retrieve Sip Peer Termination settings
      operationId: RetrieveSipPeerTerminationSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to retrieve termination settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                HTTP Voice protocol:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerTerminationSettingsResponse>
                       <SipPeerTerminationSettings>
                          <VoiceProtocol>HTTP</VoiceProtocol>
                          <HttpSettings>
                             <HttpVoiceV2AppId>469ebbac-4459-4d98-bc19-a038960e787f</HttpVoiceV2AppId>
                          </HttpSettings>
                       </SipPeerTerminationSettings>
                    </SipPeerTerminationSettingsResponse>
                SIP Voice protocol:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerOriginationSettingsResponse>
                       <SipPeerOriginationSettings>
                          <VoiceProtocol>SIP</VoiceProtocol>
                       </SipPeerOriginationSettings>
                    </SipPeerOriginationSettingsResponse>
              schema:
                $ref: '#/components/schemas/sipPeerTerminationSettingsResponse'
          description: A successful result that contains the response data
      summary: Retrieve Sip Peer Termination setting
      tags:
        - SipPeer Management
    post:
      description: Create Sip Peer Termination settings
      operationId: CreateSipPeerTerminationSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to create termination settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              HTTP Voice protocol:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipPeerTerminationSettings>
                     <VoiceProtocol>HTTP</VoiceProtocol>
                     <HttpSettings>
                        <HttpVoiceV2AppId>469ebbac-4459-4d98-bc19-a038960e787f</HttpVoiceV2AppId>
                     </HttpSettings>
                  </SipPeerTerminationSettings>
              SIP Voice protocol:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipPeerTerminationSettings>
                     <VoiceProtocol>SIP</VoiceProtocol>
                  </SipPeerTerminationSettings>
            schema:
              $ref: '#/components/schemas/sipPeerTerminationSettingsRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerTerminationSettingsResponse>
                       <SipPeerTerminationSettings>
                          <VoiceProtocol>HTTP</VoiceProtocol>
                          <HttpSettings>
                             <HttpVoiceV2AppId>469ebbac-4459-4d98-bc19-a038960e787f</HttpVoiceV2AppId>
                          </HttpSettings>
                       </SipPeerTerminationSettings>
                    </SipPeerTerminationSettingsResponse>
              schema:
                $ref: '#/components/schemas/sipPeerTerminationSettingsResponse'
          description: Setting were successfully added
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerSmsFeatureResponse>
                       <ResponseStatus>
                          <ErrorCode>13609</ErrorCode>
                          <Description>Can't create sip peer http protocol sms feature without account level http settings.</Description>
                       </ResponseStatus>
                    </SipPeerSmsFeatureResponse>
          description: >-
            Bad Request. Possible errors in response:

            <ul><li>Account level settings don`t exist</li><li>Can't create sip
            peer http protocol sms feature without account level http
            settings</li></ul>
      summary: Create Sip Peer Termination setting
      tags:
        - SipPeer Management
    put:
      description: >-
        Update Sip Peer Termination settings<p>Note: Changing the Voice Protocol
        from SIP to HTTP will remove Voice Hosts or Voice Host Groups and
        Termination Hosts, which are configured using API
        /accounts/{accountId}/sites/{siteId}/sippeers/{sippeerId}.</p>
      operationId: UpdateSipPeerTerminationSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to update termination settings
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              HTTP Voice protocol:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipPeerTerminationSettings>
                     <VoiceProtocol>HTTP</VoiceProtocol>
                     <HttpSettings>
                        <HttpVoiceV2AppId>867b923b-8a92-4579-b29b-405f165b8124</HttpVoiceV2AppId>
                     </HttpSettings>
                  </SipPeerTerminationSettings>
              SIP Voice protocol:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipPeerTerminationSettings>
                     <VoiceProtocol>SIP</VoiceProtocol>
                  </SipPeerTerminationSettings>
            schema:
              $ref: '#/components/schemas/sipPeerTerminationSettingsRequest'
      responses:
        '200':
          description: Settings were successfully updated
      summary: Update Sip Peer Termination setting
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/uctrunks:
    get:
      description: Get sip peer premise trunks
      operationId: GetSipPeerPremiseTrunks
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - $ref: '#/components/parameters/SipPeerIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/ucTrunkingPremiseTrunksResponse'
          description: Information was successfully retrieved
      summary: Get SipPeer Premise Trunks
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sippeerId}/tns/{tn}:
    put:
      description: >-
        Update settings for a TN allocated to their account.  


        In this table are presented capabilities that are not universally
        available. The following request body parameters are only allowed for
        numbers from specific region/country:

        | Number Region | Request Query Parameter |

        |:--------------|:------------------------|

        |NANP|TnAttributes|

        |NANP|CallingNameDisplay|


        When these request body parameters are provided, only North American
        Numbering Plan phone numbers are allowed and updated.
      operationId: UpdateSipPeerTnSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to update TN information
          example: '500017'
          in: path
          name: sippeerId
          required: true
          schema:
            type: string
        - description: A E.164 Telephone Number
          example: '+15209072451'
          in: path
          name: tn
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipPeerTelephoneNumber>
                     <FullNumber>+12052160156</FullNumber>
                     <RPIDFormat>10digit</RPIDFormat>
                     <RewriteUser>false</RewriteUser>
                     <CallForward>+17042661720</CallForward>
                     <CallingNameDisplay>true</CallingNameDisplay>
                     <TnAttributes>
                        <TnAttribute>Protected</TnAttribute>
                        <TnAttribute>External</TnAttribute>
                        <TnAttribute>Imported</TnAttribute>
                     </TnAttributes>
                     <MessagingSettings>
                        <SmsEnabled>true</SmsEnabled>
                     </MessagingSettings>
                  </SipPeerTelephoneNumber>
            schema:
              $ref: '#/components/schemas/sipPeerTelephoneNumber'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerTelephoneNumberResponse>
                       <SipPeerTelephoneNumber>
                          <Warnings>
                             <Warning>
                                <TelephoneNumber>+12174101601</TelephoneNumber>
                                <Description>SMS is already Enabled or number is in processing.</Description>
                             </Warning>
                          </Warnings>
                       </SipPeerTelephoneNumber>
                    </SipPeerTelephoneNumberResponse>
              schema:
                $ref: '#/components/schemas/sipPeerTelephoneNumberResponse'
          description: >-
            There is no body response when request is successful or with
            warnings list
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerTelephoneNumberResponse>
                       <ResponseStatus>
                          <ErrorCode>13576</ErrorCode>
                          <Description>Account '9999999' has no 'CallForwarding' product feature</Description>
                       </ResponseStatus>
                    </SipPeerTelephoneNumberResponse>
              schema:
                $ref: '#/components/schemas/sipPeerTelephoneNumberResponseBadRequest'
          description: >-
            Bad Request. Possible errors in response:

            <ul><li>13513 - Call Forwarding number '%s' is not a valid 10-digit
            telephone number</li><li>13514 - Number Format '%s' is invalid for
            telephone number '%s'</li><li>13515 - Rewrite User '%s' is invalid
            for telephone number '%s'</li><li>13516 - RPID Format '%s' is
            invalid for telephone number '%s'</li><li>13517 - Telephone number
            '%s' is not available</li><li>13518 - Telephone number '%s' is not
            available</li><li>13519 - There is an issue with telephone number
            '%s'. Please contact Customer Service</li><li>13575 -
            CallingNameDisplay '%s' is invalid. Valid values are: 'true',
            'false'</li><li>13576 - Account '%s' has no [CallForwarding|CNAM]
            product feature</li><li>13583 - CNAM for '%s' is applied at the
            Location level and it is not applicable at the TN
            level.</li><li>13536 - Telephone number +17206083492 does not exist
            on Account 9999999, Site 45, and Sip Peer 305610</li></ul>
        '409':
          description: >-
            Conflict. Due to the asynchronous nature of TN settings, a potential
            conflict has been identified.<p>This is typically a result of
            updating the settings of a TN without changing the messaging
            settings. For updating a TN's properties without changing the
            messaging settings, consider using the POST
            accounts/{accountId}/tnOptions endpoint</p>
      summary: Update Sip Peer TN settings
      tags:
        - Tns
  /accounts/{accountId}/subscriptions:
    get:
      description: >-
        GET is used to retrieve all subscriptions for the account (including
        email and callback subscriptions). The returned information reflects the
        subscription as it has been defined, and for callback subscriptions will
        reflect the status of the latest attempt to place the callback. The
        `Status` element will indicate if an error is being encountered when the
        Bandwidth App API attempts to place the callback.
      operationId: GetSubscriptions
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SubscriptionsResponse>
                      <Subscriptions>
                        <Subscription>
                          <SubscriptionId>0b3aa54d-0ce5-4f5b-bd75-1c30967b197f</SubscriptionId>
                          <OrderType>orders</OrderType>
                          <EmailSubscription>
                            <Email>bwtest@gmail.com</Email>
                            <DigestRequested>NONE</DigestRequested>
                          </EmailSubscription>
                        </Subscription>
                        <Subscription>
                          <SubscriptionId>ddf05927-780f-4f8f-89ab-e581f52f5f20</SubscriptionId>
                          <CallbackSubscription>
                            <URL>https://company.com/iriscallback</URL>
                            <Expiry>30000</Expiry>
                            <Status>some message containing status code and response body of last callback</Status>
                            <CallbackCredentials>
                              <BasicAuthentication>
                                <Username>iris</Username>
                              </BasicAuthentication>
                            </CallbackCredentials>
                            <NumberFormat>E164</NumberFormat>
                          </CallbackSubscription>
                        </Subscription>
                        <Subscription>
                          <SubscriptionId>1b2av54d-0ce5-4f5b-bd75-1c30967b197f</SubscriptionId>
                          <EventType>MESSAGING_LOST</EventType>
                          <EmailSubscription>
                            <Email>bwtest@gmail.com</Email>
                            <DigestRequested>DAILY</DigestRequested>
                          </EmailSubscription>
                        </Subscription>
                        <Subscription>
                          <SubscriptionId>1cf05927-780f-4f8f-89ab-e581f52f5e12</SubscriptionId>
                          <EventType>MESSAGING_LOST</EventType>
                          <CallbackSubscription>
                            <URL>https://company.com/iriscallback</URL>
                            <Expiry>30000</Expiry>
                            <Status>some message containing status code and response body of last callback</Status>
                            <CallbackCredentials>
                              <BasicAuthentication>
                                <Username>iris</Username>
                              </BasicAuthentication>
                            </CallbackCredentials>
                            <NumberFormat>E164</NumberFormat>
                            </CallbackSubscription>
                        </Subscription>
                      </Subscriptions>
                    </SubscriptionsResponse>
              schema:
                $ref: '#/components/schemas/subscriptionsResponse'
          description: >-
            The subscriptions retrieval request will return a list of the
            subscriptions that are created on this account.
        '400':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/subscriptionsErrorResponse'
          description: >-
            If the account specified does not exist or is locked it will result
            in a bad request.
      summary: Retrieve all subscriptions
      tags:
        - Subscriptions
    post:
      callbacks:
        byEvent:
          your_url.com/webhookService:
            post:
              description: See more details <a href='/docs/numbers/webhooks'>Webhhoks</a>
              requestBody:
                content:
                  application/xml:
                    schema:
                      properties:
                        CompletedTelephoneNumbers:
                          properties:
                            TelephoneNumbers:
                              items:
                                type: string
                              type: array
                          type: object
                        EventType:
                          enum:
                            - MESSAGING_LOST
                          type: string
                        SubscriptionId:
                          format: uuid
                          type: string
                      type: object
              responses:
                '201':
                  description: Receive callback.
              summary: The notification callback by event.
        byOrderType:
          your_url.com/webhookService:
            post:
              description: See more details <a href='/docs/numbers/webhooks'>Webhhoks</a>
              requestBody:
                content:
                  application/xml:
                    schema:
                      properties:
                        CompletedTelephoneNumbers:
                          properties:
                            TelephoneNumbers:
                              items:
                                type: string
                              type: array
                          type: object
                        Message:
                          type: string
                        Note:
                          type: string
                        OrderId:
                          format: uuid
                          type: string
                        OrderType:
                          $ref: '#/components/schemas/subscriptionOrderType'
                        Status:
                          enum:
                            - COMPLETE
                            - FAILED
                            - PARTIAL
                            - EXCEPTION
                          type: string
                        SubscriptionId:
                          format: uuid
                          type: string
                      type: object
              responses:
                '201':
                  description: Receive callback.
              summary: The notification callback by order type.
      description: >
        A POST on the /subscriptions resource is used to request a new
        subscriptions for an account. The POST creates a new e-mail or callback
        subscription. 


        A well-formed POST will create a subscription resource, and return a
        subscription ID as part of the location header. The ID is used to
        uniquely identify the subscription. The user should submit the desired
        e-mail address for notifications and the frequency with which he wants
        to get the updates: DAILY (for daily digests) or NONE (immediately after
        events). OrderId is optional. If OrderId is specified, only
        notifications will be sent for events related to that order. If OrderId
        is omitted, notifications will be sent related to events of all orders
        of the specified type.


        The credentials used to impose security on the callbacks are defined in
        the <CallbackCredentials> element. The Basic authentication is
        straightforward, but the <PublicKey> requires a little more explanation.
        Please see the document to the left on Mutual Authentication for
        CallBacks. <CallbackCredentials> can be omitted if the url is http, but
        using https is recommended for security. Starting on January 10, 2025,
        stricter certificate validation will be applied to https urls: when
        using an https CallBack url, the certificate associated with the domain
        needs to be valid. It cannot be expired, self-signed, or use an
        Unauthorized CA. 


        When status changes on an order that had been subscribed to with a
        callback subscription (order update, note added to order), the following
        payload will be POSTed to the URL of the callback subscription.
      operationId: CreateSubscriptions
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              eventCallbackSubscription:
                summary: callback subscription on event type
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Subscription>
                    <EventType>MESSAGING_LOST</EventType>
                    <CallbackSubscription>
                      <URL>http://yourhost:8080/path/to/resource</URL>
                      <Expiry>12000</Expiry>
                      <CallbackCredentials>
                        <BasicAuthentication>
                          <Username>superuser</Username>
                          <Password>s3cure</Password>
                        </BasicAuthentication>
                        <PublicKey>LS0tLS1CRUdJTiBDRVJUSU [...] kQgQ0VSVElGSUNBVEUtLS0tLQ0K</PublicKey>
                      </CallbackCredentials>
                      <NumberFormat>E164</NumberFormat>
                    </CallbackSubscription>
                  </Subscription>
              eventEmailSubscription:
                summary: email subscription on event type
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Subscription>
                    <EventType>MESSAGING_LOST</EventType>
                    <EmailSubscription>
                      <Email>newtest@gmail.com</Email>
                      <DigestRequested>DAILY</DigestRequested>
                    </EmailSubscription>
                  </Subscription>
              orderCallbackSubscription:
                summary: callback subscription on order type
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Subscription>
                    <OrderType>orders</OrderType>
                    <CallbackSubscription>
                      <URL>http://yourhost:8080/path/to/resource</URL>
                      <Expiry>12000</Expiry>
                      <CallbackCredentials>
                        <BasicAuthentication>
                          <Username>superuser</Username>
                          <Password>s3cure</Password>
                        </BasicAuthentication>
                        <PublicKey>LS0tLS1CRUdJTiBDRVJUSU [...] kQgQ0VSVElGSUNBVEUtLS0tLQ0K</PublicKey>
                      </CallbackCredentials>
                      <NumberFormat>E164</NumberFormat>
                    </CallbackSubscription>
                  </Subscription>
              orderEmailSubscription:
                summary: email subscription on order type
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Subscription>
                    <OrderType>portins</OrderType>
                    <OrderId>e75dc861-95ed-427e-8688-976132a69549</OrderId>
                    <EmailSubscription>
                      <Email>newtest@gmail.com</Email>
                      <DigestRequested>DAILY</DigestRequested>
                    </EmailSubscription>
                  </Subscription>
            schema:
              oneOf:
                - $ref: '#/components/schemas/emailSubscriptionByOrderTypeRequest'
                - $ref: '#/components/schemas/emailSubscriptionByEventTypeRequest'
                - $ref: '#/components/schemas/callBackSubscriptionByOrderTypeRequest'
                - $ref: '#/components/schemas/callBackSubscriptionByEventTypeRequest'
      responses:
        '201':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/subscriptionResponse'
          description: >-
            If the subscription is successfully created a CREATED response code
            will be returned. Response has no payload. The subscription id is
            returned in the response Location header.
        '400':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/subscriptionsErrorResponse'
          description: >-
            If the account specified does not exist or is locked it will result
            in a bad request.
        '404':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/subscriptionsErrorResponse'
          description: >-
            If the subscription validation failed (e.g. invalid URL, invalid
            expiration date, invalid public key).
        '409':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/subscriptionsErrorResponse'
          description: >-
            If the subscription for this subscription target already exits it
            will result in a CONFLICT response.
      summary: Create subscriptions
      tags:
        - Subscriptions
  /accounts/{accountId}/subscriptions/{subscriptionid}:
    delete:
      description: >-
        Deletes the specified subscription. Note that deleting subscriptions is
        only supported on a one-by-one basis. Deleting all subscriptions
        associated with an order requires GETting all of those subscriptions,
        then deleting them one by one.
      operationId: DeleteSubscription
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: subscriptionid
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/subscriptionResponse'
          description: Subscription has been successfully deleted.
        '404':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/subscriptionsErrorResponse'
          description: Subscription does not exist.
      summary: Delete subscription
      tags:
        - Subscriptions
    get:
      description: >
        <p>Retrieves the information associated with the subscription ID.

        The returned information reflects the subscription as it has been
        defined, and for callback subscriptions will reflect the status of the
        latest attempt to place the callback.  The <status> element will
        indicate if an error is being encountered when the Bandwidth App API
        attempts to place the callback.

        &lt;Expiry&gt; in the GET response payload, shows how many seconds are
        remaining before expiration of the subscription.</p>
      operationId: GetSubscription
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: subscriptionid
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                eventCallbackSubscription:
                  summary: callback subscription on event type
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SubscriptionsResponse>
                      <Subscription>
                        <SubscriptionId>091a60d7-a612-48a5-a86e-326b51997cad</SubscriptionId>
                          <EventType>MESSAGING_LOST</EventType>
                          <CallbackSubscription>
                            <URL>http://customer.com:8087/path/BandwidthHandler</URL>
                            <Expiry>+14283455101</Expiry>
                            <Status>200 OK</Status>
                            <NumberFormat>E164</NumberFormat>
                          </CallbackSubscription>
                      </Subscription>
                    </SubscriptionsResponse>
                eventEmailSubscription:
                  summary: email subscription on event type
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SubscriptionsResponse>
                      <Subscriptions>
                        <Subscription>
                          <SubscriptionId>957f9be6-2e81-47bb-afd9-b8c184e9e247</SubscriptionId>
                          <EventType>MESSAGING_LOST</EventType>
                          <EmailSubscription>
                            <Email>newtest@gmail.com</Email>
                            <DigestRequested>DAILY</DigestRequested>
                          </EmailSubscription>
                        </Subscription>
                      </Subscriptions>
                    </SubscriptionsResponse>
                orderCallbackSubscription:
                  summary: callback subscription on order type
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SubscriptionsResponse>
                      <Subscription>
                        <SubscriptionId>991a60d7-a612-48a5-a86e-326b51997cac</SubscriptionId>
                          <OrderType>portins</OrderType>
                          <CallbackSubscription>
                            <URL>http://customer.com:8087/path/BandwidthHandler</URL>
                            <Expiry>+14283455101</Expiry>
                            <Status>200 OK</Status>
                            <NumberFormat>E164</NumberFormat>
                          </CallbackSubscription>
                      </Subscription>
                    </SubscriptionsResponse>
                orderEmailSubscription:
                  summary: email subscription on order type
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SubscriptionsResponse>
                      <Subscriptions>
                        <Subscription>
                          <SubscriptionId>257f9be6-2e81-47bb-afd9-b8c184e9e246</SubscriptionId>
                          <OrderType>portouts</OrderType>
                          <EmailSubscription>
                            <Email>newtest@gmail.com</Email>
                            <DigestRequested>DAILY</DigestRequested>
                          </EmailSubscription>
                        </Subscription>
                      </Subscriptions>
                    </SubscriptionsResponse>
              schema:
                $ref: '#/components/schemas/subscriptionsResponse'
          description: A subscription has been retrieved. The information is returned.
      summary: Retrieve subscription
      tags:
        - Subscriptions
    put:
      description: >-
        Updates the subscription. This can be used to update various values
        (expiry, email address, url, credentials...). Note that the initial
        state changes for an order may happen very quickly, so subscribing to an
        order once the system creates it needs to account for the fact that the
        initial state may be different based on timing factors. It is
        recommended that the application creating the subscription check the
        order status after the subscription is created to ensure the correct
        initial condition. The same rules around valid or possible values as for
        POSTs apply.
      operationId: UpdateSubscription
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: subscriptionid
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              eventCallbackSubscription:
                summary: callback subscription on event type
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Subscription>
                    <EventType>MESSAGING_LOST</EventType>
                    <CallbackSubscription>
                      <URL>"http://yourhost:8080/path/to/resource"</URL>
                      <Expiry>12000</Expiry>
                      <CallbackCredentials>
                        <BasicAuthentication>
                          <Username>superuser</Username>
                          <Password>s3cure</Password>
                        </BasicAuthentication>
                        <PublicKey>LS0tLS1CRUdJTiBDRVJUSU [...] kQgQ0VSVElGSUNBVEUtLS0tLQ0K</PublicKey>
                      </CallbackCredentials>
                      <NumberFormat>E164</NumberFormat>
                    </CallbackSubscription>
                  </Subscription>
              eventEmailSubscription:
                summary: email subscription on event type
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Subscription>
                    <EventType>MESSAGING_LOST</EventType>
                    <EmailSubscription>
                      <Email>newtest@gmail.com</Email>
                      <DigestRequested>DAILY</DigestRequested>
                    </EmailSubscription>
                  </Subscription>
              orderCallbackSubscription:
                summary: callback subscription on order type
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Subscription>
                    <OrderType>orders</OrderType>
                    <CallbackSubscription>
                      <URL>"http://yourhost:8080/path/to/resource"</URL>
                      <Expiry>12000</Expiry>
                      <CallbackCredentials>
                        <BasicAuthentication>
                          <Username>superuser</Username>
                          <Password>s3cure</Password>
                        </BasicAuthentication>
                        <PublicKey>LS0tLS1CRUdJTiBDRVJUSU [...] kQgQ0VSVElGSUNBVEUtLS0tLQ0K</PublicKey>
                      </CallbackCredentials>
                      <NumberFormat>E164</NumberFormat>
                    </CallbackSubscription>
                  </Subscription>
              orderEmailSubscription:
                summary: email subscription on order type
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Subscription>
                    <OrderType>portins</OrderType>
                    <OrderId>e75dc861-95ed-427e-8688-976132a69549</OrderId>
                    <EmailSubscription>
                      <Email>newtest@gmail.com</Email>
                      <DigestRequested>DAILY</DigestRequested>
                    </EmailSubscription>
                  </Subscription>
            schema:
              oneOf:
                - $ref: '#/components/schemas/emailSubscriptionByOrderTypeRequest'
                - $ref: '#/components/schemas/emailSubscriptionByEventTypeRequest'
                - $ref: '#/components/schemas/callBackSubscriptionByOrderTypeRequest'
                - $ref: '#/components/schemas/callBackSubscriptionByEventTypeRequest'
      responses:
        '200':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/subscriptionResponse'
          description: |
            <p>Subscription was successfully updated</p>
        '400':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/subscriptionsErrorResponse'
          description: |
            <p>Subscription values failed validation</p>
        '404':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/subscriptionsErrorResponse'
          description: |
            <p>Subscription does not exist</p>
      summary: Update subscription
      tags:
        - Subscriptions
  /accounts/{accountId}/tnreservation:
    post:
      description: >-
        Reserves a telephone number for a default time of 4 hours. A successful
        reservation returns a location header that can be used to retrieve the
        reservation at a later time.
      operationId: ReserveTn
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/json:
            example:
              phoneNumber: '+14354770625'
            schema:
              $ref: '#/components/schemas/reservationRequestJson'
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Reservation>
                    <ReservedTn>+14354770625</ReservedTn>
                  </Reservation>
            schema:
              $ref: '#/components/schemas/reservationRequest'
      responses:
        '201':
          $ref: '#/components/responses/reserveTn201Response'
        '400':
          content:
            application/json:
              example:
                description: >-
                  Reservation failed: telephone number +14354776010 is not
                  available.
                errorCode: 5041
              schema:
                $ref: '#/components/schemas/responseStatusJson'
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ReservationResponse>
                      <ResponseStatus>
                        <ErrorCode>5041</ErrorCode>
                        <Description>Reservation failed: telephone number +14354776010 is not available.</Description>
                      </ResponseStatus>
                    </ReservationResponse>
              schema:
                $ref: '#/components/schemas/reservationErrorResponse'
          description: The Telephone Number requested is not available.
      summary: Reserve tn
      tags:
        - Tn Reservation
  /accounts/{accountId}/tnreservation/{reservationid}:
    delete:
      description: Deletes a TN reservation.
      operationId: DeleteTnReservation
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: reservationid
          required: true
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/deleteTnReservation200Response'
        '400':
          $ref: '#/components/responses/deleteTnReservation400Response'
      summary: Delete tn reservation
      tags:
        - Tn Reservation
    get:
      description: Retrieves a TN reservation's information.
      operationId: GetTnReservation
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: reservationid
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                accountId: 12346099
                phoneNumber: '+14354776010'
                reservationExpires: 1492
                reservationId: f342904f-b03a-4499-bac0-e8f43a2664a1
              schema:
                $ref: '#/components/schemas/reservationResponseJson'
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ReservationResponse>
                      <Reservation>
                        <ReservationId>f342904f-b03a-4499-bac0-e8f43a2664a1</ReservationId>
                        <AccountId>12346099</AccountId>
                        <ReservationExpires>1492</ReservationExpires>
                        <ReservedTn>+14354776010</ReservedTn>
                      </Reservation>
                    </ReservationResponse>
              schema:
                $ref: '#/components/schemas/reservationResponse'
          description: A reservation's information has been successfully retrieved.
      summary: Retrieve tn reservation's information
      tags:
        - Tn Reservation
  /accounts/{accountId}/tollFreePortingValidations:
    get:
      description: >
        Fetch toll free porting validation orders associated with this account. 
        The get operation on /accounts/{accountId}/tollFreePortingValidations
        allows you to find recent toll free porting validation orders.  This
        might be useful if, for example, you lose the order id that was returned
        in the 201 response to the POST operation that created the
        order.<br><br>

        With no query parameters, the results include all recent toll free
        porting validation orders associated with the account specified in the
        URI parameter.  A query parameter called tollFreeNumber can be
        optionally specified to narrow the results to only orders that included
        the specified toll free telephone number.
      operationId: GetTollFreePortingValidations
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            This optional query parameter may be specified in order to retrieve
            only toll free porting validation orders that include the specified
            toll free telephone number.
          example: '+18442948899'
          in: query
          name: tollFreeNumber
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                orderIsCanceled:
                  summary: Order is canceled
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponses>
                      <TollFreePortingValidationResponse>
                        <TollFreePortingValidation>
                          <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                          <ProcessingStatus>CANCELLED</ProcessingStatus>
                          <AccountId>9900572</AccountId>
                          <CreatedByUser>testuser</CreatedByUser>
                          <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                          <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                          <TollFreeNumberList>
                            <TollFreeNumber>+18442948899</TollFreeNumber>
                            <TollFreeNumber>+18774024485</TollFreeNumber>
                          </TollFreeNumberList>
                        </TollFreePortingValidation>
                      </TollFreePortingValidationResponse>
                    </TollFreePortingValidationResponses>
                orderIsCompleted:
                  summary: Order is completed
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponses>
                      <TollFreePortingValidationResponse>
                        <TollFreePortingValidation>
                          <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                          <ProcessingStatus>COMPLETE</ProcessingStatus>
                          <AccountId>9900572</AccountId>
                          <CreatedByUser>testuser</CreatedByUser>
                          <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                          <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                          <TollFreeNumberList>
                            <TollFreeNumber>+18442948899</TollFreeNumber>
                            <TollFreeNumber>+18774024485</TollFreeNumber>
                          </TollFreeNumberList>
                          <Breakdown>
                            <PortableTollFreeNumberList>
                              <RespOrgList>
                                <RespOrg>
                                  <Id>RespOrg1</Id>
                                  <RespOrgException>true</RespOrgException>
                                  <TollFreeNumberList>
                                    <TollFreeNumber>+18442948899</TollFreeNumber>
                                    <TollFreeNumber>+18774024485</TollFreeNumber>
                                  </TollFreeNumberList>
                                </RespOrg>
                              </RespOrgList>
                            </PortableTollFreeNumberList>
                          </Breakdown>
                        </TollFreePortingValidation>
                      </TollFreePortingValidationResponse>
                    </TollFreePortingValidationResponses>
                orderIsFailed:
                  summary: Order is failed
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponses>
                      <TollFreePortingValidationResponse>
                        <TollFreePortingValidation>
                          <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                          <ProcessingStatus>FAILED</ProcessingStatus>
                          <AccountId>9900572</AccountId>
                          <CreatedByUser>testuser</CreatedByUser>
                          <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                          <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                          <TollFreeNumberList>
                            <TollFreeNumber>+18442948899</TollFreeNumber>
                            <TollFreeNumber>+18774024485</TollFreeNumber>
                            <TollFreeNumber>+18662894621</TollFreeNumber>
                            <TollFreeNumber>+18773732047</TollFreeNumber>
                            <TollFreeNumber>+18449978331</TollFreeNumber>
                            <TollFreeNumber>+18003985992</TollFreeNumber>
                          </TollFreeNumberList>
                          <ErrorList>
                            <Error>
                              <Code>7859</Code>
                              <Description>Description for error 7859</Description>
                            </Error>
                            <Error>
                              <Code>9877</Code>
                              <Description>Description for error 9877</Description>
                            </Error>
                          </ErrorList>
                          <Breakdown>
                            <PortableTollFreeNumberList>
                              <RespOrgList>
                                <RespOrg>
                                  <Id>RespOrg1</Id>
                                  <RespOrgException>false</RespOrgException>
                                  <TollFreeNumberList>
                                    <TollFreeNumber>+18662894621</TollFreeNumber>
                                  </TollFreeNumberList>
                                </RespOrg>
                              </RespOrgList>
                            </PortableTollFreeNumberList>
                            <ManuallyPortableTollFreeNumberList>
                              <DisconnectedTollFreeNumberList>
                                <TollFreeNumber>+18449978331</TollFreeNumber>
                              </DisconnectedTollFreeNumberList>
                              <TransitionalTollFreeNumberList>
                                <TollFreeNumber>+18003985992</TollFreeNumber>
                              </TransitionalTollFreeNumberList>
                            </ManuallyPortableTollFreeNumberList>
                            <NonPortableTollFreeNumberList>
                              <SpareTollFreeNumberList>
                                <TollFreeNumber>+18442948899</TollFreeNumber>
                              </SpareTollFreeNumberList>
                              <UnavailableTollFreeNumberList>
                                <TollFreeNumber>+18774024485</TollFreeNumber>
                              </UnavailableTollFreeNumberList>
                              <DeniedTollFreeNumberList>
                                <DeniedTollFreeNumber>
                                  <TollFreeNumber>+18773732047</TollFreeNumber>
                                  <SomosErrorCode>07</SomosErrorCode>
                                  <SomosErrorDescription>NXX CLOSED</SomosErrorDescription>
                                </DeniedTollFreeNumber>
                              </DeniedTollFreeNumberList>
                            </NonPortableTollFreeNumberList>
                          </Breakdown>
                        </TollFreePortingValidation>
                      </TollFreePortingValidationResponse>
                    </TollFreePortingValidationResponses>
                orderIsStillProcessing:
                  summary: Order is still processing
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponses>
                      <TollFreePortingValidationResponse>
                        <TollFreePortingValidation>
                          <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                          <ProcessingStatus>PROCESSING</ProcessingStatus>
                          <AccountId>9900572</AccountId>
                          <CreatedByUser>testuser</CreatedByUser>
                          <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                          <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                          <TollFreeNumberList>
                            <TollFreeNumber>+18442948899</TollFreeNumber>
                            <TollFreeNumber>+18774024485</TollFreeNumber>
                          </TollFreeNumberList>
                        </TollFreePortingValidation>
                      </TollFreePortingValidationResponse>
                    </TollFreePortingValidationResponses>
              schema:
                $ref: '#/components/schemas/tollFreePortingValidationOrdersResponse'
          description: >-
            A successful response to the GET could include different statuses:
            COMPLETED, PROCESSING, FAILED, CANCELED.
        '401':
          content:
            application/xml: {}
          description: >-
            The request must be authenticated with a valid username and password
            using basic authentication.
        '403':
          content:
            application/xml: {}
          description: >-
            The specified account does not have the toll free product -OR- The
            user does not have permission to fetch toll free porting validation
            orders.
        '404':
          content:
            application/xml: {}
          description: The accountId specified in the request URI is not found.
      summary: Retrieve toll-free porting validations
      tags:
        - Porting
    post:
      description: >-
        A list of toll free telephone numbers submitted to this endpoint will
        result in that list being broken down as follows: <ul><li>A list of
        SPARE toll free telephone numbers.  These are numbers that are not
        associated with any RespOrg, and therefore could be ordered by a
        RespOrg.  Note that only toll free numbers associated with Bandwidth's
        RespOrg can be ordered from Bandwidth.</li><li>A list of UNAVAILABLE
        toll free telephone numbers.  These are numbers that are reserved or
        otherwise not available for ordering by any RespOrg.</li><li>A list of
        DENIED toll free telephone numbers.  These are toll free telephone
        numbers that are malformed or in a state that makes them unavailable for
        use.</li><li>A list of toll free telephone numbers that are currently
        associated with RespOrgs.  The list will be broken down by RespOrg
        Identifier.</li><li>A list of DISCONNECTED toll free telephone numbers. 
        These are numbers that have been disconnected by the controlling RespOrg
        and must be manually ported with Bandwidth's assistance.</li><li>A list
        of TRANSITIONAL toll free telephone numbers.  These are numbers that
        have been disconnected by the controlling RespOrg and are transitioning
        to SPARE. They must be manually ported with Bandwidth's
        assistance.</li><li>Any of these lists may be empty, but at least one
        will include toll free telephone numbers that you supplied.  All of the
        toll free telephone numbers that you supply will be accounted for in the
        results.</li><li>So why do I need this information, you may be asking:
        Toll Free port-in requests sent to Bandwidth must be broken down into
        one port-in request for each losing RespOrg.  This means you cannot
        include toll free telephone numbers that are SPARE, UNAVAILABLE, or
        DENIED, and you cannot include toll free telephone numbers associated
        with more than one RespOrgId in the same port-in request.  Port-in
        requests that do not conform to these rules will be rejected by
        Bandwidth.  This API endpoint gives you the information needed to avoid
        these rejections.</li><li>You may also provide a CustomerOrderId string
        that will be included in responses and status notifications for the
        order.  But the CustomerOrderId is optional.</li></ul>
      operationId: CreateTollFreePortingValidation
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <TollFreePortingValidation>
                    <!-- The CustomerOrderId is an optional string that may be associated with the order.  -->
                    <!-- It will be included in all responses and notifications related to the order, and may be used to correlate with an order in a customer system. -->
                    <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                    <!-- The TollFreeNumberList is a list of toll free telephone numbers for which you want information about the status and RespOrg from SOMOS. -->
                    <!-- The list may consist of up to 5,000 toll free telephone numbers in one order.  The more numbers in the order, the longer it will take the order to complete. -->
                    <TollFreeNumberList>
                      <TollFreeNumber>+18442948899</TollFreeNumber>
                      <TollFreeNumber>+18774024485</TollFreeNumber>
                    </TollFreeNumberList>
                  </TollFreePortingValidation>
            schema:
              $ref: '#/components/schemas/tollFreePortingValidationRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                orderIsCanceled:
                  summary: Order is canceled
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponse>
                      <TollFreePortingValidation>
                        <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                        <ProcessingStatus>CANCELLED</ProcessingStatus>
                        <AccountId>9900572</AccountId>
                        <CreatedByUser>testuser</CreatedByUser>
                        <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                        <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                        <TollFreeNumberList>
                          <TollFreeNumber>+18442948899</TollFreeNumber>
                          <TollFreeNumber>+18774024485</TollFreeNumber>
                        </TollFreeNumberList>
                      </TollFreePortingValidation>
                    </TollFreePortingValidationResponse>
                orderIsCompleted:
                  summary: Order is completed
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponse>
                      <TollFreePortingValidation>
                        <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                        <ProcessingStatus>COMPLETE</ProcessingStatus>
                        <AccountId>9900572</AccountId>
                        <CreatedByUser>testuser</CreatedByUser>
                        <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                        <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                        <TollFreeNumberList>
                          <TollFreeNumber>+18442948899</TollFreeNumber>
                          <TollFreeNumber>+18774024485</TollFreeNumber>
                        </TollFreeNumberList>
                        <Breakdown>
                          <PortableTollFreeNumberList>
                            <RespOrgList>
                              <RespOrg>
                                <Id>RespOrg1</Id>
                                <RespOrgException>true</RespOrgException>
                                <TollFreeNumberList>
                                  <TollFreeNumber>+18442948899</TollFreeNumber>
                                  <TollFreeNumber>+18774024485</TollFreeNumber>
                                </TollFreeNumberList>
                              </RespOrg>
                            </RespOrgList>
                          </PortableTollFreeNumberList>
                        </Breakdown>
                      </TollFreePortingValidation>
                    </TollFreePortingValidationResponse>
                orderIsFailed:
                  summary: Order is failed
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponse>
                      <TollFreePortingValidation>
                        <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                        <ProcessingStatus>FAILED</ProcessingStatus>
                        <AccountId>9900572</AccountId>
                        <CreatedByUser>testuser</CreatedByUser>
                        <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                        <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                        <TollFreeNumberList>
                          <TollFreeNumber>+18442948899</TollFreeNumber>
                          <TollFreeNumber>+18774024485</TollFreeNumber>
                          <TollFreeNumber>+18662894621</TollFreeNumber>
                          <TollFreeNumber>+18773732047</TollFreeNumber>
                          <TollFreeNumber>+18449978331</TollFreeNumber>
                          <TollFreeNumber>+18003985992</TollFreeNumber>
                        </TollFreeNumberList>
                        <ErrorList>
                          <Error>
                            <Code>7859</Code>
                            <Description>Description for error 7859</Description>
                          </Error>
                          <Error>
                            <Code>9877</Code>
                            <Description>Description for error 9877</Description>
                          </Error>
                        </ErrorList>
                        <Breakdown>
                          <PortableTollFreeNumberList>
                            <RespOrgList>
                              <RespOrg>
                                <Id>RespOrg1</Id>
                                <RespOrgException>false</RespOrgException>
                                <TollFreeNumberList>
                                  <TollFreeNumber>+18662894621</TollFreeNumber>
                                </TollFreeNumberList>
                              </RespOrg>
                            </RespOrgList>
                          </PortableTollFreeNumberList>
                          <ManuallyPortableTollFreeNumberList>
                            <DisconnectedTollFreeNumberList>
                              <TollFreeNumber>+18449978331</TollFreeNumber>
                            </DisconnectedTollFreeNumberList>
                            <TransitionalTollFreeNumberList>
                              <TollFreeNumber>+18003985992</TollFreeNumber>
                            </TransitionalTollFreeNumberList>
                          </ManuallyPortableTollFreeNumberList>
                          <NonPortableTollFreeNumberList>
                            <SpareTollFreeNumberList>
                              <TollFreeNumber>+18442948899</TollFreeNumber>
                            </SpareTollFreeNumberList>
                            <UnavailableTollFreeNumberList>
                              <TollFreeNumber>+18774024485</TollFreeNumber>
                            </UnavailableTollFreeNumberList>
                            <DeniedTollFreeNumberList>
                              <DeniedTollFreeNumber>
                                <TollFreeNumber>+18773732047</TollFreeNumber>
                                <SomosErrorCode>07</SomosErrorCode>
                                <SomosErrorDescription>NXX CLOSED</SomosErrorDescription>
                              </DeniedTollFreeNumber>
                            </DeniedTollFreeNumberList>
                          </NonPortableTollFreeNumberList>
                        </Breakdown>
                      </TollFreePortingValidation>
                    </TollFreePortingValidationResponse>
                orderIsStillProcessing:
                  summary: Order is still processing
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponse>
                      <TollFreePortingValidation>
                        <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                        <ProcessingStatus>PROCESSING</ProcessingStatus>
                        <AccountId>9900572</AccountId>
                        <CreatedByUser>testuser</CreatedByUser>
                        <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                        <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                        <TollFreeNumberList>
                          <TollFreeNumber>+18442948899</TollFreeNumber>
                          <TollFreeNumber>+18774024485</TollFreeNumber>
                        </TollFreeNumberList>
                      </TollFreePortingValidation>
                    </TollFreePortingValidationResponse>
              schema:
                $ref: '#/components/schemas/tollFreePortingValidationResponse'
          description: >-
            The success response to a POST operation on the
            /tollFreePortingValidations endpoint looks like the
            following.<br>The CustomerOrderId is copied from the request.<br>The
            ProcessingStatus may be one of:<br><ul><li>SUBMITTED - The order has
            been submitted to SOMOS, but we have not yet received an
            acknowledgement that they've received the order.</li><li>PROCESSING
            - The order is still awaiting a response from SOMOS.  If no errors
            are present in the request, the status of a newly created order is
            almost always PROCESSING.</li><li>COMPLETED - The order has
            completed and the toll free numbers are broken down as described
            above.</li><li>FAILED - The order has failed and the reasons for the
            failure are included.</li><li>CANCELLED - The order was cancelled
            prior to completion.  No results are available.</li></ul>
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponse>
                        <ErrorList>
                            <Error>
                                <ErrorCode>nnnn</ErrorCode>
                                <Description>Description of condition nnnn</Description>
                            </Error>
                            <Error>
                                <ErrorCode>nnnn</ErrorCode>
                                <Description>Description of condition nnnn</Description>
                            </Error>
                        </ErrorList>
                        <TollFreePortingValidation>
                            <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                            <ProcessingStatus>FAILED</ProcessingStatus>
                            <AccountId>9900572</AccountId>
                            <CreatedByUser>testuser</CreatedByUser>
                            <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                            <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                            <TollFreeNumberList>
                                <TollFreeNumber>+18442948899</TollFreeNumber>
                                <TollFreeNumber>+18774024485</TollFreeNumber>
                            </TollFreeNumberList>
                        </TollFreePortingValidation>
                    </TollFreePortingValidationResponse>
          description: >-
            Toll free telephone number is malformed -OR- Missing mandatory
            element TollFreeNumberList -OR- Empty TollFreeNumberList.
        '401':
          content:
            application/xml: {}
          description: >-
            The request must be authenticated with a valid username and password
            using basic authentication.
        '403':
          content:
            application/xml: {}
          description: >-
            The specified account does not have the toll free product -OR- The
            user does not have permission to create toll free porting validation
            orders.
        '404':
          content:
            application/xml: {}
          description: The accountId specified in the request URI is not found.
        '405':
          content:
            application/xml: {}
          description: >-
            An unsupported method was attempted on the
            tollFreePortingValidations endpoint.
        '409':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponse>
                        <ErrorList>
                            <Error>
                                <ErrorCode>nnnn</ErrorCode>
                                <Description>Description of condition nnnn</Description>
                            </Error>
                            <Error>
                                <ErrorCode>nnnn</ErrorCode>
                                <Description>Description of condition nnnn</Description>
                            </Error>
                        </ErrorList>
                        <TollFreePortingValidation>
                            <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                            <ProcessingStatus>FAILED</ProcessingStatus>
                            <AccountId>9900572</AccountId>
                            <CreatedByUser>testuser</CreatedByUser>
                            <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                            <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                            <TollFreeNumberList>
                                <TollFreeNumber>+18442948899</TollFreeNumber>
                                <TollFreeNumber>+18774024485</TollFreeNumber>
                            </TollFreeNumberList>
                        </TollFreePortingValidation>
                    </TollFreePortingValidationResponse>
          description: Request includes more than 500 toll free numbers.
        '429':
          description: >-
            Too Many Requests, the maximum rate of API requests for this
            operation, endpoint and account has been exceeded, causing your
            request to be rejected.  Please send requests at a lower rate.  If
            you are sure that your software is functioning properly and you are
            still bumping into the rate limits, please contact Bandwidth to
            discuss options.
        '502':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponse>
                        <ErrorList>
                            <Error>
                                <ErrorCode>nnnn</ErrorCode>
                                <Description>Description of condition nnnn</Description>
                            </Error>
                            <Error>
                                <ErrorCode>nnnn</ErrorCode>
                                <Description>Description of condition nnnn</Description>
                            </Error>
                        </ErrorList>
                        <TollFreePortingValidation>
                            <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                            <ProcessingStatus>FAILED</ProcessingStatus>
                            <AccountId>9900572</AccountId>
                            <CreatedByUser>testuser</CreatedByUser>
                            <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                            <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                            <TollFreeNumberList>
                                <TollFreeNumber>+18442948899</TollFreeNumber>
                                <TollFreeNumber>+18774024485</TollFreeNumber>
                            </TollFreeNumberList>
                        </TollFreePortingValidation>
                    </TollFreePortingValidationResponse>
          description: >-
            Batch Number Query received vendor error: xxx -OR- Batch Number
            Query received vendor http response: xxx
      summary: Create toll-free porting validation
      tags:
        - Porting
  /accounts/{accountId}/tollFreePortingValidations/{orderId}:
    get:
      description: Fetch a specified toll free porting validation order.
      operationId: GetTollFreePortingValidation
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                orderIsCanceled:
                  summary: Order is canceled
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponse>
                      <TollFreePortingValidation>
                        <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                        <ProcessingStatus>CANCELLED</ProcessingStatus>
                        <AccountId>9900572</AccountId>
                        <CreatedByUser>testuser</CreatedByUser>
                        <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                        <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                        <TollFreeNumberList>
                          <TollFreeNumber>+18442948899</TollFreeNumber>
                          <TollFreeNumber>+18774024485</TollFreeNumber>
                        </TollFreeNumberList>
                      </TollFreePortingValidation>
                    </TollFreePortingValidationResponse>
                orderIsCompleted:
                  summary: Order is completed
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponse>
                      <TollFreePortingValidation>
                        <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                        <ProcessingStatus>COMPLETE</ProcessingStatus>
                        <AccountId>9900572</AccountId>
                        <CreatedByUser>testuser</CreatedByUser>
                        <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                        <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                        <TollFreeNumberList>
                          <TollFreeNumber>+18442948899</TollFreeNumber>
                          <TollFreeNumber>+18774024485</TollFreeNumber>
                        </TollFreeNumberList>
                        <Breakdown>
                          <PortableTollFreeNumberList>
                            <RespOrgList>
                              <RespOrg>
                                <Id>RespOrg1</Id>
                                <RespOrgException>true</RespOrgException>
                                <TollFreeNumberList>
                                  <TollFreeNumber>+18442948899</TollFreeNumber>
                                  <TollFreeNumber>+18774024485</TollFreeNumber>
                                </TollFreeNumberList>
                              </RespOrg>
                            </RespOrgList>
                          </PortableTollFreeNumberList>
                        </Breakdown>
                      </TollFreePortingValidation>
                    </TollFreePortingValidationResponse>
                orderIsFailed:
                  summary: Order is failed
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponse>
                      <TollFreePortingValidation>
                        <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                        <ProcessingStatus>FAILED</ProcessingStatus>
                        <AccountId>9900572</AccountId>
                        <CreatedByUser>testuser</CreatedByUser>
                        <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                        <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                        <TollFreeNumberList>
                          <TollFreeNumber>+18442948899</TollFreeNumber>
                          <TollFreeNumber>+18774024485</TollFreeNumber>
                          <TollFreeNumber>+18662894621</TollFreeNumber>
                          <TollFreeNumber>+18773732047</TollFreeNumber>
                          <TollFreeNumber>+18449978331</TollFreeNumber>
                          <TollFreeNumber>+18003985992</TollFreeNumber>
                        </TollFreeNumberList>
                        <ErrorList>
                          <Error>
                            <Code>7859</Code>
                            <Description>Description for error 7859</Description>
                          </Error>
                          <Error>
                            <Code>9877</Code>
                            <Description>Description for error 9877</Description>
                          </Error>
                        </ErrorList>
                        <Breakdown>
                          <PortableTollFreeNumberList>
                            <RespOrgList>
                              <RespOrg>
                                <Id>RespOrg1</Id>
                                <RespOrgException>false</RespOrgException>
                                <TollFreeNumberList>
                                  <TollFreeNumber>+18662894621</TollFreeNumber>
                                </TollFreeNumberList>
                              </RespOrg>
                            </RespOrgList>
                          </PortableTollFreeNumberList>
                          <ManuallyPortableTollFreeNumberList>
                            <DisconnectedTollFreeNumberList>
                              <TollFreeNumber>+18449978331</TollFreeNumber>
                            </DisconnectedTollFreeNumberList>
                            <TransitionalTollFreeNumberList>
                              <TollFreeNumber>+18003985992</TollFreeNumber>
                            </TransitionalTollFreeNumberList>
                          </ManuallyPortableTollFreeNumberList>
                          <NonPortableTollFreeNumberList>
                            <SpareTollFreeNumberList>
                              <TollFreeNumber>+18442948899</TollFreeNumber>
                            </SpareTollFreeNumberList>
                            <UnavailableTollFreeNumberList>
                              <TollFreeNumber>+18774024485</TollFreeNumber>
                            </UnavailableTollFreeNumberList>
                            <DeniedTollFreeNumberList>
                              <DeniedTollFreeNumber>
                                <TollFreeNumber>+18773732047</TollFreeNumber>
                                <SomosErrorCode>07</SomosErrorCode>
                                <SomosErrorDescription>NXX CLOSED</SomosErrorDescription>
                              </DeniedTollFreeNumber>
                            </DeniedTollFreeNumberList>
                          </NonPortableTollFreeNumberList>
                        </Breakdown>
                      </TollFreePortingValidation>
                    </TollFreePortingValidationResponse>
                orderIsStillProcessing:
                  summary: Order is still processing
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponse>
                      <TollFreePortingValidation>
                        <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                        <ProcessingStatus>PROCESSING</ProcessingStatus>
                        <AccountId>9900572</AccountId>
                        <CreatedByUser>testuser</CreatedByUser>
                        <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                        <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                        <TollFreeNumberList>
                          <TollFreeNumber>+18442948899</TollFreeNumber>
                          <TollFreeNumber>+18774024485</TollFreeNumber>
                        </TollFreeNumberList>
                      </TollFreePortingValidation>
                    </TollFreePortingValidationResponse>
              schema:
                $ref: '#/components/schemas/tollFreePortingValidationResponse'
          description: >-
            A successful response to the GET could include different statuses:
            COMPLETED, PROCESSING, FAILED, CANCELED.
        '401':
          description: >-
            The request must be authenticated with a valid username and password
            using basic authentication.
        '403':
          description: >-
            The specified account does not have the toll free product. -OR- The
            user does not have permission to fetch toll free porting validation
            orders.
        '404':
          description: >-
            The accountId specified in the request URI is not foundThe orderId
            specified in the request URI is not found.
        '429':
          description: >-
            Too Many Requests, the maximum rate of API requests for this
            operation, endpoint and account has been exceeded, causing your
            request to be rejected.  Please send requests at a lower rate.  If
            you are sure that your software is functioning properly and you are
            still bumping into the rate limits, please contact Bandwidth to
            discuss options.
      summary: Retrieve toll-free porting validation
      tags:
        - Porting
    patch:
      description: >-
        Cancel a toll free porting validation order in the PROCESSING state. 
        This may be used if the order is taking too long, or if you decide that
        you no longer need the results of the query.
      operationId: CancelTollFreePortingValidation
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <TollFreePortingValidation>
                    <ProcessingStatus>CANCELLED</ProcessingStatus>
                  </TollFreePortingValidation>
            schema:
              $ref: '#/components/schemas/tollFreePortingValidationRequest'
      responses:
        '200':
          content:
            application/xml:
              examples:
                failedPatchResponse:
                  summary: Failed patch response
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponse>
                      <ResponseStatus>
                        <ErrorCode>7624</ErrorCode>
                        <Description>Processing Status  may only be changed to CANCELLED for orders that are currently in PROCESSING status.</Description>
                      </ResponseStatus>
                    </TollFreePortingValidationResponse>
                successPatchResponse:
                  summary: Success patch response
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponse>
                      <TollFreePortingValidation>
                        <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                        <ProcessingStatus>CANCELLED</ProcessingStatus>
                        <AccountId>9900572</AccountId>
                        <CreatedByUser>testuser</CreatedByUser>
                        <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                        <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                        <TollFreeNumberList>
                          <TollFreeNumber>+18442948899</TollFreeNumber>
                          <TollFreeNumber>+18774024485</TollFreeNumber>
                        </TollFreeNumberList>
                      </TollFreePortingValidation>
                    </TollFreePortingValidationResponse>
              schema:
                $ref: '#/components/schemas/tollFreePortingValidationResponse'
          description: Success response
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponse>
                        <ResponseStatus>
                            <ErrorCode>7624</ErrorCode>
                            <Description>Processing Status may only be changed to CANCELLED for orders that are currently in PROCESSING status.</Description>
                        </ResponseStatus>
                    </TollFreePortingValidationResponse>
              schema:
                $ref: >-
                  #/components/schemas/tnOptionOrderReportValidationErrorResponse
          description: Attempt to change ProcessingStatus to a value other than CANCELLED.
        '401':
          content:
            application/xml: {}
          description: >-
            The request must be authenticated with a valid username and password
            using basic authentication.
        '403':
          content:
            application/xml: {}
          description: >-
            The specified account does not have the toll free product -OR- The
            user does not have permission to fetch toll free porting validation
            orders.
        '404':
          content:
            application/xml: {}
          description: >-
            The accountId specified in the request URI is not found -OR- The
            orderId specified in the request URI is not found.
        '409':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TollFreePortingValidationResponse>
                        <ErrorList>
                            <Error>
                                <ErrorCode>nnnn</ErrorCode>
                                <Description>Description of condition nnnn</Description>
                            </Error>
                            <Error>
                                <ErrorCode>nnnn</ErrorCode>
                                <Description>Description of condition nnnn</Description>
                            </Error>
                        </ErrorList>
                        <TollFreePortingValidation>
                            <CustomerOrderId>MyOptionalOrderId</CustomerOrderId>
                            <ProcessingStatus>FAILED</ProcessingStatus>
                            <AccountId>9900572</AccountId>
                            <CreatedByUser>testuser</CreatedByUser>
                            <OrderCreateDate>2020-08-20T14:51:58.695Z</OrderCreateDate>
                            <OrderId>e2b029cf-1cfa-4285-a875-80e8fd951208</OrderId>
                            <TollFreeNumberList>
                                <TollFreeNumber>+18442948899</TollFreeNumber>
                                <TollFreeNumber>+18774024485</TollFreeNumber>
                            </TollFreeNumberList>
                        </TollFreePortingValidation>
                    </TollFreePortingValidationResponse>
          description: >-
            Attempt to change ProcessingStatus to CANCELLED for an order not in
            PROCESSING state.
      summary: Patch toll-free porting validation
      tags:
        - Porting
  /accounts/{accountId}/tollFreeTemplateAssignments/search:
    post:
      description: >-
        Retrieve Tollfree routing template about one or more Tollfree Telephone
        Numbers (TFNs), where the TFNs are specified in POST body. The API
        supports up to 5000 phoneNumbers in one request.
      operationId: retrieveRoutingTemplateForTfn
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        $ref: '#/components/requestBodies/tollFreeRoutingTemplateRequest'
      responses:
        '200':
          $ref: '#/components/responses/tollFreeRoutingTemplateSuccessResponse'
        '400':
          $ref: >-
            #/components/responses/tollFreeRoutingTemplateBadRequestErrorResponse
        '401':
          $ref: >-
            #/components/responses/tollFreeRoutingTemplateUnauthorizedErrorResponse
        '403':
          $ref: '#/components/responses/tollFreeRoutingTemplateForbiddenErrorResponse'
        '405':
          $ref: >-
            #/components/responses/tollFreeRoutingTemplateMethodNotAllowedErrorResponse
        '429':
          $ref: >-
            #/components/responses/tollFreeRoutingTemplateTooManyRequestsErrorResponse
        '502':
          $ref: >-
            #/components/responses/tollFreeRoutingTemplateBadGatewayErrorResponse
        '504':
          $ref: >-
            #/components/responses/tollFreeRoutingTemplateGatewayTimeoutErrorResponse
      summary: Retrieve routing template for toll-free numbers
      tags:
        - Tns
  /admin/data/bandwidthRespOrgIds:
    get:
      description: Get all Bandwidth RespOrg IDs.
      operationId: ReadBandwidthRespOrgIds
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <BandwidthRespOrgIdList type="array">
                        <BandwidthRespOrgId>
                          <RespOrgId>JYT01</RespOrgId>
                          <Description>Default RespOrg ID for toll free numbers ported into Bandwidth</Description>
                        </BandwidthRespOrgId>
                        <BandwidthRespOrgId>
                          <RespOrgId>JYT50</RespOrgId>
                          <Description>RespOrg ID for Wildebeest toll free numbers ported into Bandwidth</Description>
                        </BandwidthRespOrgId>
                        <BandwidthRespOrgId>
                          <RespOrgId>JYT99</RespOrgId>
                          <Description>RespOrg ID for Gazelle toll free numbers ported into Bandwidth</Description>
                        </BandwidthRespOrgId>
                      </BandwidthRespOrgIdList>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/bandwidthRespOrgIdsResponse'
          description: Return existing RespOrg IDs.
      summary: List Bandwidth RespOrg IDs
      tags:
        - Admin Data
  /admin/data/bandwidthRespOrgIds/{respOrgId}:
    get:
      description: Retrieve information about a Bandwidth RespOrg with specified ID.
      operationId: ReadBandwidthRespOrgId
      parameters:
        - example: JYT01
          in: path
          name: respOrgId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <BandwidthRespOrgId>
                        <RespOrgId>JYT01</RespOrgId>
                        <Description>Default RespOrg ID for toll free numbers ported into Bandwidth</Description>
                      </BandwidthRespOrgId>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/bandwidthRespOrgIdResponse'
          description: Return RespOrg ID
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <ResponseStatus>
                        <Description>The resource does not exist</Description>
                      </ResponseStatus>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/adminDataErrorResponse'
          description: RespOrg ID not found.
      summary: Fetch Bandwidth RespOrg ID
      tags:
        - Admin Data
  /admin/data/bwspids:
    get:
      description: Retrieves bwspids.
      operationId: ReadBwspids
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <BwspidSystemValues>
                        <BwspidSystemValue>
                          <Id>2</Id> 
                          <RouteType>onNet</RouteType>
                          <Priority>1</Priority>
                          <Spid>E830</Spid>
                          <Type>NNID</Type>
                          <Alias>BW ESPID E830 Route</Alias>
                        </BwspidSystemValue>
                        <BwspidSystemValue>
                          <Id>4</Id>
                          <RouteType>onNet</RouteType>
                          <Priority>2</Priority>
                          <Spid>X641</Spid>
                          <Type>NPAC</Type>
                          <Alias>Bandwidth ALT-SPID</Alias>
                        </BwspidSystemValue>
                      </BwspidSystemValues>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/bwspidSystemValuesResponse'
          description: Return existing Bwspids.
      summary: List bwspids
      tags:
        - Admin Data
  /admin/data/bwspids/{id}:
    get:
      description: Retrieve Bwspid
      operationId: ReadBwspid
      parameters:
        - description: Bwspid Id
          example: 2
          in: path
          name: id
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <BwspidSystemValue>
                        <Id>2</Id>
                        <RouteType>onNet</RouteType>
                        <Priority>1</Priority>
                        <Spid>E830</Spid>
                        <Type>NNID</Type>
                        <Alias>BW ESPID E830 Route</Alias>
                      </BwspidSystemValue>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/bwspidSystemValueResponse'
          description: Return Bwspid.
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <ResponseStatus>
                        <ErrorCode>12098</ErrorCode>
                        <Description>Bwspid value Id '1111' does not exist</Description>
                      </ResponseStatus>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/adminDataErrorResponse'
          description: Bwspid not found.
      summary: Retrieve Bwspid
      tags:
        - Admin Data
  /admin/data/messagingBlockedAccountIds/{accountId}:
    get:
      description: Retrieve the information for a specific blockedAccountId
      operationId: GetMessagingBlockedAccountId
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <BlockedAccountId>
                        <AccountId>8000295</AccountId>
                      </BlockedAccountId>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/blockedAccountIdResponse'
          description: The messaging blocked account id have been retrieved successfully.
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <Description>The resource does not exist</Description>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/adminDataErrorResponse'
          description: The messaging blocked account id was not found
      summary: Retrieve messaging blocked account id
      tags:
        - Admin Data
  /admin/data/proxypeers:
    get:
      description: Get all proxy sippeers (they should be sippeers of catapult accounts)
      operationId: ReadProxyPeers
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <ProxyPeers>
                        <ProxyPeer>
                          <Name>LXZAjsRw</Name>
                          <Service>HTTPV2</Service>
                          <ProxyPeerId>500020</ProxyPeerId>
                        </ProxyPeer>
                        <ProxyPeer>
                          <Name>UpuPPekG</Name>
                          <Service>HTTPV1</Service>
                          <ProxyPeerId>500021</ProxyPeerId>
                        </ProxyPeer>
                      </ProxyPeers>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/proxyPeersResponse'
          description: This response returns the list of proxy peers.
      summary: List of proxy peers
      tags:
        - Admin Data
  /admin/data/proxypeers/{name}:
    get:
      description: Retrieve the information for a specific proxy sippeer.</p>
      operationId: ReadProxyPeer
      parameters:
        - description: Name of proxy peer
          example: TestProxyPeer
          in: path
          name: name
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <ProxyPeer>
                        <Name>LXZAjsRw</Name>
                        <Service>HTTPV1</Service>
                        <ProxyPeerId>500020</ProxyPeerId>
                      </ProxyPeer>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/proxyPeerResponse'
          description: This response returns the proxy peer details.
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <ResponseStatus>
                        <Description>The resource does not exist</Description>
                      </ResponseStatus>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/adminDataErrorResponse'
          description: Proxy peer was not found
      summary: Retrieve proxy peer
      tags:
        - Admin Data
  /admin/data/sbcNodeGroups:
    get:
      description: Retrieves information about SBC Node Groups.
      operationId: ReadSbcNodeGroups
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <SbcNodeGroups>
                        <SbcNodeGroup>
                          <Id>1</Id>
                          <Name>East Coast 01</Name>
                        </SbcNodeGroup>
                        <SbcNodeGroup>
                          <Id>2</Id>
                          <Name>West Coast 01</Name>
                        </SbcNodeGroup>
                      </SbcNodeGroups>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/sbcNodeGroupsResponse'
          description: Return all existing SBC Node Groups.
      summary: List SbcNode Groups
      tags:
        - Admin Data
  /admin/data/sbcNodeGroups/{id}:
    get:
      description: Retrieve information about SBC Node Group.
      operationId: ReadSbcNodeGroups
      parameters:
        - description: Sbc node group id
          example: 3
          in: path
          name: id
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <SbcNodeGroups>
                        <SbcNodeGroup>
                          <Id>1</Id>
                          <Name>East Coast 01</Name>
                          <Nodes>
                            <Node>node0001</Node>
                            <Node>node0002</Node>
                          </Nodes>
                        </SbcNodeGroup>
                      </SbcNodeGroups>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/sbcNodeGroupsResponse'
          description: Return information about SBC Node Group.
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <ResponseStatus>
                        <Description>The resource does not exist</Description>
                      </ResponseStatus>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/adminDataErrorResponse'
          description: Sbc node group not found.
      summary: List SbcNode Groups
      tags:
        - Admin Data
  /admin/holidays:
    get:
      description: Retrieve all existing holidays.
      operationId: ReadHolidays
      parameters:
        - $ref: '#/components/parameters/countryCodeA3NotRequiredQueryParam'
        - $ref: '#/components/parameters/holidayDateLteGteQueryParam'
      responses:
        '200':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    data:
                      - countryCodeA3: USA
                        description: NEW_YEARS_DAY
                        holidayDate: '2025-01-01'
                        id: 1
                      - countryCodeA3: USA
                        description: MLK_DAY
                        holidayDate: '2025-01-20'
                        id: 2
                    errors: []
                    links:
                      - href: >-
                          https://api.bandwidth.com/api/v2/admin/holidays?holidayStartDate=2025-01-01&holidayEndDate=2025-12-25&countryCodeA3=USA
                        rel: self
                        type: GET
              schema:
                $ref: '#/components/schemas/HolidaysResponseForJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <HolidayResponse>
                      <Holidays>
                        <Holiday>
                          <Id>1</Id>
                          <Description>NEW_YEARS_DAY</Description>
                          <HolidayDate>2025-01-01</HolidayDate>
                          <CountryCodeA3>USA</CountryCodeA3>
                        </Holiday>
                        <Holiday>
                          <id>2</id>
                          <Description>MLK_DAY</Description>
                          <HolidayDate>2025-01-20</HolidayDate>
                          <CountryCodeA3>USA</CountryCodeA3>
                        </Holiday>
                      </Holidays>
                    </HolidayResponse>
              schema:
                $ref: '#/components/schemas/HolidaysResponse'
          description: This response returns the list of holidays.
        '400':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    data: {}
                    errors:
                      - code: 12228
                        description: Invalid country code A3 specified.
                    links: []
              schema:
                $ref: '#/components/schemas/holidaysDataErrorResponseForJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <HolidayResponse>
                      <ResponseStatus>
                        <ErrorCode>12228</ErrorCode>
                        <Description>Invalid country code A3 specified</Description>
                      </ResponseStatus>
                    </HolidayResponse>
              schema:
                $ref: '#/components/schemas/holidaysDataErrorResponse'
          description: Invalid country code A3 specified.
      summary: List of Holidays
      tags:
        - Admin Data
  /admin/holidays/{holidayDate}:
    get:
      description: Retrieve holidays by date.
      operationId: ReadHolidaysByDate
      parameters:
        - description: Holiday date
          example: '2025-01-01T00:00:00Z'
          in: path
          name: holidayDate
          required: true
          schema:
            format: date
            type: string
      responses:
        '200':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    data:
                      countryCodeA3: USA
                      description: NEW_YEARS_DAY
                      holidayDate: '2025-01-01'
                      id: 1
                    errors: []
                    links:
                      - href: >-
                          https://api.bandwidth.com/api/v2/admin/holidays/2025-01-01
                        rel: self
                        type: GET
              schema:
                $ref: '#/components/schemas/HolidayResponseJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <HolidayResponse>
                        <Holiday>
                          <Id>1</Id>
                          <Description>NEW_YEARS_DAY</Description>
                          <HolidayDate>2025-01-01</HolidayDate>
                          <CountryCodeA3>USA</CountryCodeA3>
                        </Holiday>
                    </HolidayResponse>
              schema:
                $ref: '#/components/schemas/HolidayResponse'
          description: This response returns the holidays for the specified date.
        '404':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    data: {}
                    errors:
                      - code: 12127
                        description: A holiday with that date was not found.
                    links: []
              schema:
                $ref: '#/components/schemas/holidaysDataErrorResponseForJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <HolidayResponse>
                      <ResponseStatus>
                        <ErrorCode>12127</ErrorCode>
                        <Description>A holiday with that date was not found.</Description>
                      </ResponseStatus>
                    </HolidayResponse>
              schema:
                $ref: '#/components/schemas/holidaysDataErrorResponse'
          description: A holiday with that date was not found.
      summary: Fetch Holidays by date
      tags:
        - Admin Data
  /admin/holidays/{id}:
    get:
      description: Retrieve holidays by id.
      operationId: ReadHolidaysById
      parameters:
        - description: The unique id of the holiday.
          example: 1
          in: path
          name: id
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    data:
                      countryCodeA3: USA
                      description: NEW_YEARS_DAY
                      holidayDate: '2025-01-01'
                      id: 1
                    errors: []
                    links:
                      - href: https://api.bandwidth.com/api/v2/admin/holidays/1
                        rel: self
                        type: GET
              schema:
                $ref: '#/components/schemas/HolidayResponseJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <HolidayResponse>
                        <Holiday>
                          <Id>1</Id>
                          <Description>NEW_YEARS_DAY</Description>
                          <HolidayDate>2025-01-01</HolidayDate>
                          <CountryCodeA3>USA</CountryCodeA3>
                        </Holiday>
                    </HolidayResponse>
              schema:
                $ref: '#/components/schemas/HolidayResponse'
          description: This response returns the holidays for the specified Id.
        '404':
          content:
            application/json:
              examples:
                example:
                  description: example
                  value:
                    data: {}
                    errors:
                      - code: 12127
                        description: The resource does not exist.
                    links: []
              schema:
                $ref: '#/components/schemas/holidaysDataErrorResponseForJson'
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <HolidayResponse>
                      <ResponseStatus>
                        <ErrorCode>12127</ErrorCode>
                        <Description>The resource does not exist.</Description>
                      </ResponseStatus>
                    </HolidayResponse>
              schema:
                $ref: '#/components/schemas/holidaysDataErrorResponse'
          description: A holiday with that id was not found.
      summary: Fetch Holidays by id
      tags:
        - Admin Data
  /callbacks/notificationCallbackApi:
    post:
      description: >
        <p>The POST to the callback API contains a summary of the order that is
        independent of the type of the order or event that caused the
        notification callback.  This requires that the customer's end system
        place an API call to the Bandwidth App API to gather additional details
        on the change to the order or change to the TN due to the event, if that
        is important.  <br><br>

        The payload of the POST for order notifications contains:

        <ul>

        <li> the Subscription ID that the notification is in response to.</li>

        <li> the type of order that the notification applies to.</li>

        <li> the order ID of the order that has changed </li>

        <li> the customer order ID of the order that has changed (the element is
        considered optional, and will only be provided if the related order has
        a Customer Order Id)</li>

        <li> the new state of the order </li>

        <li> a message if one was attached as part of the state change.  This
        will often be present in error cases.</li>

        <li> the body of any note that was attached to the order, if
        applicable</li>

        <li> list of the completed telephone numbers for Port-in/Port-out/New
        Number/Disconnect orders in terminal state</li>

        </ul><br><br>

        The payload of the POST for event notifications contains:

        <ul>

        <li> the Subscription ID that the notification is in response to.</li>

        <li> the type of event that the notification applies to.</li>

        <li> list of the impacted telephone numbers for event notifications
        </li>

        </ul></p><p>Please visit <a
        href='/docs/numbers/webhooks'>Webhooks</a></p>
      operationId: OrderWebhook
      parameters: []
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Notification>
                    <SubscriptionId>...</SubscriptionId>
                    <!-- for order updates -->
                    <OrderType>portins | portouts | orders | disconnects | dldas | lsrorders | e911s | tnoptions</OrderType>
                    <OrderId>...</OrderId>
                    <CustomerOrderId>...</CustomerOrderId>
                    <Status>COMPLETE | FAILED | PARTIAL | EXCEPTION ... </Status>
                    <!-- for order state updates -->
                    <Message>...</Message>
                     <!-- for order state updates -->
                    <Note>...</Note>
                    <!-- for note events -->
                    <CompletedTelephoneNumbers>
                    <!-- for portins/portouts/orders/disconnects OrderTypes -->
                    <TelephoneNumber> ... </TelephoneNumber>
                    <!-- ... -->
                    </CompletedTelephoneNumbers>
                    <!-- for event updates -->
                    <EventType> [MESSAGING_LOST] </EventType>
                    <ImpactedTelephoneNumbers>
                      <TelephoneNumber> ... </TelephoneNumber>
                      <!-- ... -->
                    </ImpactedTelephoneNumbers>
                  </Notification>
            schema:
              $ref: '#/components/schemas/notificationCallbackRequest'
      responses:
        '200':
          description: >
            <p>a 200 OK is presumed to be acceptance of the API call.  In the
            case of the notification callback API the response code and any
            returned message is stored in the &lt;Status&gt; element of the
            &lt;Subscription&gt;</p>
        '400':
          description: >
            <p>Anything other than a 200 OK is presumed to be a failure of the
            API call.  In the case of the notification callback API the response
            code and any returned message is stored in the &lt;Status&gt;
            element of the &lt;Subscription&gt;.  No subsequent action is taken
            is based on the error.</p>
      summary: Order webhook
      tags:
        - Callbacks
  /callbacks/portOutValidationCallbackApi:
    post:
      description: >-
        The initial request for validation is a post to the pre-configured URL
        defined by the customer. This request contains optional elements
        for:<ul><li>PIN (optional) ( 10 digits )</li><li>Account Number
        (optional) ( 25 digits )</li><li>zipcode (optional) ( 15 characters
        )</li><li>a list of one or more telephone numbers (at least one
        telephone number must be provided) ( 10 digits )</li><li>Subscriber name
        for information purposes. (optional)( 93 characters )</li><li>PON for
        information and correlation purposes. (optional)( 25 characters
        )</li><li> New carrier name for international port-outs.</li><li> Order
        Id for international port-outs.</li></ul> <p>All NANP port-out webhook
        requests and responses will be in XML and all non-NANP port-out webhook
        requests and responses will be in JSON.</p> <p>Please visit <a
        href='/docs/numbers/webhooks/portoutValidationWebhook'>Webhooks</a></p>
      operationId: PortOutValidationWebhook
      parameters: []
      requestBody:
        $ref: '#/components/requestBodies/portOutValidationRequest'
      responses:
        '200':
          $ref: '#/components/responses/portOutValidation200Response'
        '400':
          $ref: '#/components/responses/portOutValidation400Response'
        '500':
          $ref: '#/components/responses/portOutValidation500Response'
      summary: Port-out validation webhook
      tags:
        - Callbacks
  /coverage/countries:
    get:
      description: >-
        Get countries, number types, and cities in Bandwidth's available phone
        number inventory. This endpoint supports both non-NANP and NANP number
        inventories, including NANP countries outside of the USA and Canada.
      operationId: countryCoverage
      parameters:
        - $ref: '#/components/parameters/countryCodeA3NotRequiredQueryParam'
        - $ref: '#/components/parameters/phoneNumberTypeQueryParam'
        - $ref: '#/components/parameters/cityQueryParam'
        - $ref: '#/components/parameters/areaCodeQueryParam'
        - $ref: '#/components/parameters/includeAvailableQuantity'
        - $ref: '#/components/parameters/regionName'
      responses:
        '200':
          $ref: '#/components/responses/countryCoverageResponse'
        '400':
          $ref: '#/components/responses/badRequestErrorForCoverage'
        '401':
          $ref: '#/components/responses/unauthorizedErrorForCoverage'
        '403':
          $ref: '#/components/responses/forbiddenErrorForCoverage'
        '404':
          $ref: '#/components/responses/notFoundErrorForCoverage'
        '405':
          $ref: '#/components/responses/notAllowedErrorForCoverage'
        '429':
          $ref: '#/components/responses/tooManyRequestsErrorForCoverage'
        '500':
          $ref: '#/components/responses/internalServerErrorForCoverage'
      summary: List Country Coverage
      tags:
        - Coverage
  /porting/leadTimes:
    get:
      description: >-
        <p>Lead times are from the point at which a port has been accepted.
        Retrieve the lead time values by country code and phone number type.</p>
      operationId: externalListLeadTimes
      parameters:
        - $ref: '#/components/parameters/countryCodeA3QueryParam'
        - $ref: '#/components/parameters/phoneNumberTypeQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/listLeadTimesResponse'
        '400':
          $ref: '#/components/responses/leadTimesBadRequestErrorResponse'
        '401':
          $ref: '#/components/responses/leadTimesUnauthorizedErrorResponse'
        '403':
          $ref: '#/components/responses/leadTimesForbiddenErrorResponse'
        '404':
          $ref: '#/components/responses/leadTimesNotFoundErrorResponse'
        '405':
          $ref: '#/components/responses/leadTimesMethodNotAllowedErrorResponse'
        5XX:
          $ref: '#/components/responses/leadTimesInternalServerErrorResponse'
      summary: List porting lead times
      tags:
        - Porting
  /porting/losingCarriers:
    get:
      description: >
        <p>List losing carriers that a number can be ported from. This endpoint
        is only relevant for non-NANP number portin orders, which require a
        losing carrier to be specified.</p>
      operationId: externalPortingLosingCarriers
      parameters:
        - $ref: '#/components/parameters/countryCodeA3QueryParamRequired'
        - $ref: '#/components/parameters/phoneNumberTypeQueryParamRequired'
      responses:
        '200':
          $ref: '#/components/responses/listOfLosingCarriersResponse'
        '400':
          $ref: '#/components/responses/badRequestError'
        '502':
          $ref: '#/components/responses/internalServerError'
      summary: List losing carriers
      tags:
        - Porting
  /porting/referenceDocuments:
    get:
      description: >
        <p>List reference documents needed to port a set of numbers given a
        countryCodeA3 and phoneNumberType value.</p>
      operationId: externalPortingReferenceDocuments
      parameters:
        - $ref: '#/components/parameters/countryCodeA3QueryParamRequired'
        - $ref: '#/components/parameters/phoneNumberTypeQueryParamRequired'
      responses:
        '200':
          $ref: '#/components/responses/listOfReferenceDocumentsResponse'
        '400':
          $ref: '#/components/responses/badRequestError'
        '429':
          $ref: '#/components/responses/tooManyRequestsError'
        '502':
          $ref: '#/components/responses/internalServerError'
      summary: List reference documents needed to port a set of numbers
      tags:
        - Porting
  /restrictions:
    get:
      description: >-
        Information about how services work in various countries and which
        restrictions and rules apply. Please consult this information before
        buying and configuring your numbers.
      operationId: ListRestrictions
      parameters:
        - $ref: '#/components/parameters/countryCodeA3QueryParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RestrictionResponse>
                      <Restrictions>
                        <Restriction>
                          <CountryCodeA3>BEL</CountryCodeA3>
                          <RestrictionType>LEGAL</RestrictionType>
                          <RestrictionCategory>Number portability</RestrictionCategory>
                          <RestrictionDescription>Lorem ipsum</RestrictionDescription>
                        </Restriction>
                        <Restriction>
                          <CountryCodeA3>BEL</CountryCodeA3>
                          <RestrictionType>PURCHASE</RestrictionType>
                          <RestrictionCategory>Address or identification requirements</RestrictionCategory>
                          <RestrictionDescription>Lorem ipsum</RestrictionDescription>
                        </Restriction>
                        <Restriction>
                          <CountryCodeA3>BEL</CountryCodeA3>
                          <RestrictionType>SERVICE</RestrictionType>
                          <RestrictionCategory>Compatibility issues</RestrictionCategory>
                          <RestrictionDescription>Lorem ipsum</RestrictionDescription>
                        </Restriction>
                      </Restrictions>
                    </RestrictionResponse>
              schema:
                $ref: '#/components/schemas/restrictionResponse'
          description: >-
            This response returns the list of cities, along with the Rate
            Centers that serve those Restrictions.  If 'available' is specified
            then the number of TNs available in that city / RC combination is
            also included.
      summary: List Restrictions
      tags:
        - Compliance
security:
  - Basic: []
  - Bearer: []
servers:
  - description: Production
    url: https://api.bandwidth.com/api/v2
    variables: {}
tags:
  - description: >-
      APIs for viewing the assignment of phone numbers to approved A2P
      campaigns. The process of registering numbers for such traffic is known as
      10DLC. These APIs will be augmented with new brand and campaign management
      APIs as part of Bandwidth’s v2 10DLC offerings.
    name: 10DLC
  - description: >-
      Account management API information no longer lives on this page. Please
      navigate to the Accounts documentation.  

      See: [Account management
      documentation](/apis/account-management-apis/accounts/) for more
      information.
    name: Account
  - name: Addresses
  - description: >-
      Bandwidth uses HTTP webhooks to send message & voice events to any

      publicly addressable url.

      Application management API information no longer lives on this page.
      Please navigate to the Accounts documentation.  

      See: [Account management
      documentation](/apis/account-management-apis/applications/) for more
      information.
    externalDocs:
      description: Application guide
      url: /docs/account/applications/
    name: Applications
  - name: Available Tns
  - description: >-
      Bulk port-in API information no longer lives on this page. Please navigate
      to the Bulk port-in documentation.  

      See: [Bulk port-in documentation](/apis/numbers-apis/porting/) for more
      information.
    name: Bulk Port-In
  - name: Callbacks
  - name: Compliance
  - name: Coverage
  - description: >-
      An API for Bandwidth's customers to manage profiles about their own
      customers and to make it easier to provision assets on their behalf (e.g.
      10DLC numbers, short codes, toll-free numbers for A2P traffic, and so
      forth). These profiles will be referenced in other provisioning APIs to
      fill out common information for different provisioning tasks, and to group
      those assets so they can be collectively managed on a customer-by-customer
      basis. Access to the API is restricted on a user-role level. Users must
      have the Customer Profiles Access role. Note that the UI may or may not
      display access to customer profiles depending on account feature settings,
      and that this is temporary.
    name: Customer Profiles
  - description: >-
      The v2 DLDA APIs are no longer available on this page. Please navigate to
      the Line Features documentation to use the v2 DLDA endpoints.  

      See: [Line Features
      documentation](/apis/numbers-apis/line-features/#tag/DLDA-Orders) for more
      information.
    name: DLDA
  - description: >-
      The v2 Disconnected Numbers APIs are no longer available on this page.
      Please navigate to the My Numbers documentation to use the v2 Disconnected
      Numbers endpoints.

      See: [My Numbers
      documentation](/apis/numbers-apis/my-numbers/#tag/My-Numbers) for more
      information.
    name: Disconnected Numbers
  - description: >-
      Disconnecting a phone number leaves it in all applicable inventories, but
      makes it available for activation with a new subscriber.
    externalDocs:
      description: Disconnecting number guide
      url: /docs/numbers/guides/disconnectNumbers/
    name: Disconnecting Numbers
  - description: E911 - Enhanced 911 with Dynamic Location Routing (DLR)
    externalDocs:
      description: E911 - DLR guide
      url: /docs/emergency/dashboard/dlr/
    name: E911
  - description: >-
      Emergency notifications are designed to support notification of front-desk
      personnel in the event that someone dials an emergency call from a
      multi-line telephone system (MLTS).
    externalDocs:
      description: Emergency notification guide
      url: /docs/emergency/dashboard/notifications/
    name: Emergency Notification
  - description: >-
      Hosted Messaging APIs are currently being moved from this page to a
      dedicated Hosted Numbers space. List Import TN Orders has already been
      moved.

      Please refer to the Hosted Messaging documentation if you can't find the
      API you're looking for.

      See: [Hosted Messaging
      documentation](/apis/numbers-apis/hosted-number-management) for more
      information.
    name: Hosted Messaging
  - name: Hosted Voice
  - description: >-
      Import to Account Order APIs are no longer available on this page. Please
      refer to the Import to Account Orders documentation on the Number
      Acquisition page for more details.

      See: [Import to Account Orders
      documentation](/apis/numbers-apis/number-acquisition/#tag/Import-to-Account-Orders)
      for more information.
    name: Import TN to Account
  - description: >-
      The v2 In-service Numbers APIs are no longer available on this page.
      Please navigate to the My Numbers documentation to use the v2 In-service
      Numbers endpoints.

      See: [My Numbers
      documentation](/apis/numbers-apis/my-numbers/#tag/My-Numbers) for more
      information.
    name: In-service Numbers
  - description: >-
      The v2 LIDB APIs are no longer available on this page. Please navigate to
      the Line Features documentation to use the v2 LIDB endpoints.  

      See: [Line Features
      documentation](/apis/numbers-apis/line-features/#tag/LIDB-Orders) for more
      information.
    name: LIDB
  - description: >-
      Messaging Portout APIs are no longer available on this page. They are now
      located in a dedicated space under Messaging APIs called Messaging
      Transfer Confirmation.

      See: [Messaging Transfer Confirmation API
      documentation](/apis/messaging-apis/messaging-transfer/) for more
      information.
    name: Messaging Portout
  - description: >-
      Move TNs order APIs are no longer available on this page. Please refer to
      the Move TNs documentation on the Number Management page for more details.

      See: [Move TNs
      documentation](/apis/numbers-apis/number-management/#tag/Move-TNs) for
      more information.
    name: Move Tns
  - description: >-
      Move Tns Checker APIs are no longer available on this page. Please refer
      to the Move Tns Checker documentation on the Number Management page for
      more details.

      See: [Move Tns Checker
      documentation](/apis/numbers-apis/number-management/#tag/Move-TNs-Checker)
      for more information.
    name: Move Tns Checker
  - name: Numbers Assignment
  - description: >-
      New Number Order APIs are no longer available on this page. Please refer
      to the New Number Order documentation on the Number Acquisition page for
      more details.

      See: [New Number Order
      documentation](/apis/numbers-apis/number-acquisition/#tag/New-Number-Order)
      for more information.
    name: Orders
  - description: ''
    externalDocs:
      description: Porting guide
      url: /docs/numbers/porting/
    name: Porting
  - description: >-
      Rate Centers APIs are no longer available on this page. Please refer to
      the Coverage documentation on the Number Acquisition page for more
      details.

      See: [Coverage
      documentation](/apis/numbers-apis/number-acquisition/#tag/Coverage) for
      more information.
    name: Rate Centers
  - externalDocs:
      description: Reports guide
      url: /docs/numbers/guides/setup-reports/accountReports/
    name: Reports
  - description: >-
      Requirements Package APIs are no longer available on this page. Please
      navigate to the End User Management documentation.  

      See: [End User Management
      documentation](/apis/numbers-apis/end-user-management/) for more
      information.
    name: Requirements Packages
  - externalDocs:
      description: Sip Registrar guide
      url: /docs/account/sipRegistrar/#create-sip-credentials
    name: Sip Registrar
  - description: >-
      Location (Sip-peer) management API information no longer lives on this
      page. Please navigate to the Accounts documentation.  

      See: [Account management
      documentation](/apis/account-management-apis/accounts/) for more
      information.
    name: SipPeer Management
  - description: >-
      Sub-Account (Site) management API information no longer lives on this
      page. Please navigate to the Accounts documentation.  

      See: [Account management
      documentation](/apis/account-management-apis/accounts/) for more
      information.
    name: Site Management
  - externalDocs:
      description: Subscriptions details
      url: /docs/account/subscriptions/
    name: Subscriptions
  - description: >-
      TN Options order API information no longer lives on this page. Please
      navigate to the Line Features documentation.  

      See: [Line Features
      documentation](/apis/numbers-apis/line-features/#tag/TN-Options) for more
      information.
    name: TN Options
  - name: Tn Reservation
  - description: >-
      Some TN inventory and lookup endpoints have moved from this page to the My
      Numbers documentation.

      See: [My Numbers
      documentation](/apis/numbers-apis/my-numbers/#tag/My-Numbers) for more
      information.
    name: Tns
  - description: >-
      Some Admin Data has moved from this page. Please navigate to the Accounts
      documentation for more.

      See: [Account management
      documentation](/apis/account-management-apis/accounts/) for more
      information.
    name: Admin Data
  - description: Messaging Configuration for Toll Free Numbers
    name: Toll-Free Messaging
  - name: OperatorInformation
  - description: >-
      Service Activation API documentation no longer lives on this page. Please
      navigate to the Number Management documentation. See: [Number Management
      documentation](/apis/numbers-apis/number-management/#tag/Service-Activation)
      for more information.
    name: Service Activation
webhooks:
  customer_profile_sns_event: {}
