components:
  callbacks:
    messagingPortoutRequestCallback:
      your_url.com/webhookService:
        post:
          description: >-
            Unique webhook URL provided by customers to which Bandwidth sends a
            POST request to notify customer regarding the messaging portout
            request.
          operationId: messagingPortoutRequestCallback
          parameters:
            - description: >-
                64-character lowercase hexidecimal HMAC calculated with a shared
                secret key, the canonicalized request body, and SHA256. It is
                only included when a shared secret key is set through webhook
                subscription.
              example: ca7b9e9816c90d336f5dca529e733354b81535c7af027b81878ac98afb2dbaa2
              in: header
              name: x-bandwidth-signature-hmac-sha256
              schema:
                type: string
          requestBody:
            $ref: '#/components/requestBodies/messagingPortoutCustomerCallbackRequest'
          responses:
            '204':
              description: No content
            '400':
              $ref: '#/components/responses/tfvBadRequestResponse'
            '401':
              $ref: '#/components/responses/tfvUnauthorizedResponse'
            '403':
              $ref: '#/components/responses/tfvForbiddenResponse'
            '404':
              $ref: '#/components/responses/tfvNotFoundResponse'
            '405':
              $ref: '#/components/responses/tfvNotAllowedResponse'
            '429':
              $ref: '#/components/responses/tfvTooManyRequestsResponse'
            '500':
              $ref: '#/components/responses/tfvServerErrorResponse'
            '503':
              $ref: '#/components/responses/tfvServiceUnavailableResponse'
          summary: POST to customer's webhook URL about the messaging portout request
  examples:
    ApproveMessagingPortoutRequest:
      description: Approve Messaging Portout Request
      value:
        approval: 'yes'
    Brand2FA403Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandResend2faEmailResponse>
          <ResponseStatus>
            <ErrorCode>12234</ErrorCode>
            <Description>Account '9999999' is enabled for v2 Registration Center and cannot access v1 Campaign Management functionality</Description>
          </ResponseStatus>
        </BrandResend2faEmailResponse>
    Brand400Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandsResponse>
          <ResponseStatus>
            <ErrorCode>12055</ErrorCode>
            <Description>'LONG_CODE' feature is not enabled on account 900000</Description>
          </ResponseStatus>
        </BrandsResponse>
    Brand403Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandResponse>
          <ResponseStatus>
            <ErrorCode>12234</ErrorCode>
            <Description>Account '9999999' is enabled for v2 Registration Center and cannot access v1 Campaign Management functionality</Description>
          </ResponseStatus>
        </BrandResponse>
    Brand404Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandsResponse>
          <ResponseStatus>
            <ErrorCode>12067</ErrorCode>
            <Description>Brand ID 'CVBURY' does not found.</Description>
          </ResponseStatus>
        </BrandsResponse>
    BrandMissingFieldError:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandResponse>
          <ResponseStatus>
            <ErrorCode>1003</ErrorCode>
            <Description>CompanyName is required</Description>
          </ResponseStatus>
        </BrandResponse>
    BrandResponse:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandsResponse>
          <Brands>
            <Brand>
              <EntityType>PUBLIC_PROFIT</EntityType>
              <AltBusinessId>111111111</AltBusinessId>
              <AltBusinessIdType>DUNS</AltBusinessIdType>
              <BrandRelationship>MEDIUM_ACCOUNT</BrandRelationship>
              <City>Raleigh</City>
              <CompanyName>Bandwidth</CompanyName>
              <Country>US</Country>
              <DisplayName>Bandwidth</DisplayName>
              <Ein>123456789</Ein>
              <Email>user@mail.com</Email>
              <Phone>+19195551234</Phone>
              <PostalCode>27616</PostalCode>
              <State>NC</State>
              <Street>123 street</Street>
              <StockExchange>NASDAQ</StockExchange>
              <StockSymbol>BAND</StockSymbol>
              <Vertical>TECHNOLOGY</Vertical>
              <Website>www.my.website.com</Website>
              <BusinessContactEmail>businessemail@mail.com</BusinessContactEmail>
              <BusinessContactEmailVerifiedDate>2024-12-31T012:34:56Z</BusinessContactEmailVerifiedDate>
              <IsMain>false</IsMain>
            </Brand>
          </Brands>
          <TotalCount>1</TotalCount>
        </BrandsResponse>
    BrandRevet400Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandRevetResponse>
          <ResponseStatus>
            <ErrorCode>12210</ErrorCode>
            <Description>The Brand 'BEAQBHG'  with identity status 'VETTED_VERIFIED' not allowed to revet</Description>
          </ResponseStatus>
        </BrandRevetResponse>
    BrandRevet403Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandRevetResponse>
          <ResponseStatus>
            <ErrorCode>12234</ErrorCode>
            <Description>Account '9999999' is enabled for v2 Registration Center and cannot access v1 Campaign Management functionality</Description>
          </ResponseStatus>
        </BrandRevetResponse>
    BrandRevetResponse:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandRevetResponse>
          <Brand>
            <BrandId>BJDHM3</BrandId>
            <CspId>CMHSJ9</CspId>
            <EntityType>NON_PROFIT</EntityType>
            <AltBusinessId>111111111</AltBusinessId>
            <AltBusinessIdType>DUNS</AltBusinessIdType>
            <BrandRelationship>MEDIUM_ACCOUNT</BrandRelationship>
            <City>Raleigh</City>
            <CompanyName>Bandwidth</CompanyName>
            <Country>US</Country>
            <DisplayName>Bandwidth</DisplayName>
            <Ein>111111111</Ein>
            <UniversalEin>111111111</UniversalEin>
            <Email>Test1@bandwidth.com</Email>
            <Phone>+18009999999</Phone>
            <PostalCode>27606</PostalCode>
            <State>NC</State>
            <Street>1200 Test Road</Street>
            <StockExchange>NASDAQ</StockExchange>
            <StockSymbol>BAND</StockSymbol>
            <Vertical>COMMUNICATION</Vertical>
            <Website>https://www.bandwidth.com</Website>
            <IsMain>true</IsMain>
          </Brand>
        </BrandRevetResponse>
    BrandVetting400Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandVettingResponse>
          <ResponseStatus>
            <ErrorCode>12055</ErrorCode>
            <Description>'LONG_CODE' feature is not enabled on account 900000</Description>
          </ResponseStatus>
        </BrandVettingResponse>
    BrandVetting403Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandVettingResponse>
          <ResponseStatus>
            <ErrorCode>12234</ErrorCode>
            <Description>Account '9999999' is enabled for v2 Registration Center and cannot access v1 Campaign Management functionality</Description>
           </ResponseStatus>
        </BrandVettingResponse>
    BrandVettingImportRequest:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <Brand>
          <EvpId>AEGIS</EvpId>
          <VettingId>b62ed6ba-20f7-4031-a5fa-68e96cd6c036</VettingId>
        </Brand>
    BrandVettingImportResponse:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandVettingResponse>
          <BrandVetting>
            <EvpId>BJDHM3</EvpId>
            <VettingId>CMHSJ9</VettingId>
            <VettingStatus>PUBLIC_PROFIT</VettingStatus>
            <BrandId>111111111</BrandId>
          </BrandVetting>
        </BrandVettingResponse>
    BrandVettingPost400Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandVettingResponse>
          <ResponseStatus>
            <ErrorCode>12055</ErrorCode>
            <Description>'LONG_CODE' feature is not enabled on account 900000</Description>
           </ResponseStatus>
        </BrandVettingResponse>
    BrandVettingPostResponse:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandVettingResponse>
          <BrandVetting>
            <EvpId>BJDHM3</EvpId>
            <VettingId>CMHSJ9</VettingId>
            <VettingStatus>ACTIVE</VettingStatus>
            <BrandId>111111111</BrandId>
          </BrandVetting>
        </BrandVettingResponse>
    BrandVettingRequest:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <Brand>
          <EvpId>AEGIS</EvpId>
          <VettingClass>STANDARD</VettingClass>
        </Brand>
    BrandVettingResponse:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandVettingResponse>
          <BrandVetting>
            <EvpId>AEGIS</EvpId>
            <VettingId>69823255-96b3-412f-9120-3e77f94c6be5</VettingId>
            <VettingClass>STANDARD</VettingClass>
            <VettingScore>80</VettingScore>
            <VettingStatus>ACTIVE</VettingStatus>
            <CreateDate>2024-01-01T12:00:00Z</CreateDate>
            <VettedDate>2024-01-02T12:00:00Z</VettedDate>
          </BrandVetting>
        </BrandVettingResponse>
    BrandVettings403Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandVettingsResponse>
          <ResponseStatus>
            <ErrorCode>12234</ErrorCode>
             <Description>Account '9999999' is enabled for v2 Registration Center and cannot access v1 Campaign Management functionality</Description>
          </ResponseStatus>
        </BrandVettingsResponse>
    Brands403Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <BrandsResponse>
          <ResponseStatus>
            <ErrorCode>12234</ErrorCode>
            <Description>Account '9999999' is enabled for v2 Registration Center and cannot access v1 Campaign Management functionality</Description>
          </ResponseStatus>
        </BrandsResponse>
    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>2529690000</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>2529690000</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>2529690000</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>2529690000</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>9195551111</Tn>
                    <Vendor>49</Vendor>
                </TnVendorAssignment>
                <TnVendorAssignment>
                    <Tn>9195552222</Tn>
                    <Vendor>49</Vendor>
                </TnVendorAssignment>
                <TnVendorAssignment>
                    <Tn>9195553333</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>9195553333</Tn>
                            <Vendor>69</Vendor>
                        </TnVendorAssignment>
                    </TnVendorError>
                </TnVendorErrors>
                <SuccessTnVendorAssignments>
                    <TnVendorAssignment>
                        <Tn>9195551111</Tn>
                        <Vendor>49</Vendor>
                    </TnVendorAssignment>
                    <TnVendorAssignment>
                        <Tn>9195552222</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>9195551111</Tn>
                    <Vendor>49</Vendor>
                 </TnVendorAssignment>
                 <TnVendorAssignment>
                    <Tn>9195552222</Tn>
                    <Vendor>49</Vendor>
                 </TnVendorAssignment>
                 <TnVendorAssignment>
                    <Tn>9195553333</Tn>
                    <Vendor>69</Vendor>
                 </TnVendorAssignment>
              </TnVendorAssignments>
           </BulkTnVendorAssignmentPayload>
        </BulkTnVendorAssignmentTaskResponse>
    Campaign403Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignResponse>
          <ResponseStatus>
            <ErrorCode>12055</ErrorCode>
            <Description>CampaignManagement feature is not enabled on account 9999999</Description>
          </ResponseStatus>
        </CampaignResponse>
    CampaignImport400CampaignTooLongError:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <LongCodeImportCampaignResponse>
          <ResponseStatus>
            <ErrorCode>1011</ErrorCode>
            <Description>CampaignId is too long. Max length 12 characters.</Description>
          </ResponseStatus>
        </LongCodeImportCampaignResponse>
    CampaignImport400Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <LongCodeImportCampaignResponse>
          <ResponseStatus>
            <ErrorCode>12055</ErrorCode>
            <Description>10DLCImportCampaign feature is not enabled on account</Description>
          </ResponseStatus>
        </LongCodeImportCampaignResponse>
    CampaignImport403Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <LongCodeImportCampaignResponse>
          <ResponseStatus>
            <ErrorCode>12234</ErrorCode>
            <Description>Account '9999999' is enabled for v2 Registration Center and cannot access v1 Campaign Management functionality</Description>
          </ResponseStatus>
        </LongCodeImportCampaignResponse>
    CampaignImport409Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <LongCodeImportCampaignResponse>
            <ResponseStatus>
                <ErrorCode>12236</ErrorCode>
                <Description>Campaign 'CABCDEF' could not be imported to account '9999999' because the campaign exists with phone numbers on a different account</Description>
            </ResponseStatus>
        </LongCodeImportCampaignResponse>
    CampaignImport503Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <LongCodeImportCampaignResponse>
            <ResponseStatus>
                <ErrorCode>12235</ErrorCode>
                <Description>Failed to import campaign 'CABCDEF' during manual import to account '9999999'. Please try again in 1 hour or contact support if the issue persists.</Description>
            </ResponseStatus>
        </LongCodeImportCampaignResponse>
    CampaignImportRequest:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <ImportedCampaign>
          <CampaignId>CJEUMDK</CampaignId>
        </ImportedCampaign>
    CampaignImportResponse:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <LongCodeImportCampaignResponse>
          <ImportedCampaign>
            <CampaignId>CA114BN</CampaignId>
            <Description>Test 1</Description>
            <MessageClass>Campaign-E</MessageClass>
            <CreateDate>2021-03-18T12:50:45Z</CreateDate>
            <SecondaryDcaSharingStatus>ACCEPTED</SecondaryDcaSharingStatus>
            <Status>ACTIVE</Status>
            <MnoStatusList>
              <MnoStatus>
                <MnoName>ATT</MnoName>
                <MnoId>10017</MnoId>
                <Status>APPROVED</Status>
              </MnoStatus>
              <MnoStatus>
                <MnoName>TMO</MnoName>
                <MnoId>10035</MnoId>
                <Status>APPROVED</Status>
              </MnoStatus>
            </MnoStatusList>
          </ImportedCampaign>
        </LongCodeImportCampaignResponse>
    CampaignImports403Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <LongCodeImportCampaignsResponse>
          <ResponseStatus>
            <ErrorCode>12234</ErrorCode>
            <Description>Account '9999999' is enabled for v2 Registration Center and cannot access v1 Campaign Management functionality</Description>
          </ResponseStatus>
        </LongCodeImportCampaignsResponse>
    CampaignNotFound404Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignResponse>
          <ResponseStatus>
            <ErrorCode>12189</ErrorCode>
            <Description>Campaign with id 'C8QH5FC' not found</Description>
          </ResponseStatus>
        </CampaignResponse>
    CampaignResponse:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignResponse>
          <Campaign>
            <CampaignId>CW12PSQ</CampaignId>
            <BrandId>BDPD3I1</BrandId>
            <Vertical>REAL_ESTATE</Vertical>
            <Usecase>ACCOUNT_NOTIFICATION</Usecase>
            <Description>Campaign description</Description>
            <EmbeddedLink>false</EmbeddedLink>
            <EmbeddedPhone>false</EmbeddedPhone>
            <NumberPool>false</NumberPool>
            <AgeGated>false</AgeGated>
            <DirectLending>false</DirectLending>
            <SubscriberOptIn>true</SubscriberOptIn>
            <SubscriberOptOut>true</SubscriberOptOut>
            <SubscriberHelp>true</SubscriberHelp>
            <Sample1>Sample message</Sample1>
            <HelpMessage>Type /help for help</HelpMessage>
            <AffiliateMarketing>false</AffiliateMarketing>
            <SecondaryDcaSharingStatus>PENDING</SecondaryDcaSharingStatus>
            <PrivacyPolicyLink>https://privacy.com</PrivacyPolicyLink>
            <TermsAndConditionsLink>https://terms.com</TermsAndConditionsLink>
            <MnoMetadataList>
              <MnoMetadata>
                <MNO>ATT</MNO>
                <MnoSupport>true</MnoSupport>
                <MnoReview>false</MnoReview>
                <Qualify>true</Qualify>
                <MinMessageSamples>1</MinMessageSamples>
                <RequireSubscriberOptIn>true</RequireSubscriberOptIn>
                <RequireSubscriberOptOut>true</RequireSubscriberOptOut>
                <RequireSubscriberHelp>true</RequireSubscriberHelp>
                <NoEmbeddedLink>true</NoEmbeddedLink>
                <NoEmbeddedPhone>true</NoEmbeddedPhone>
                <Surcharge>0.0035</Surcharge>
                <MessageClass>E</MessageClass>
                <TPM>30</TPM>
              </MnoMetadata>
            </MnoMetadataList>
          </Campaign>
        </CampaignResponse>
    CampaignRevet403Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignRevetResponse>
          <ResponseStatus>
            <ErrorCode>12234</ErrorCode>
            <Description>Account '9999999' is enabled for v2 Registration Center and cannot access v1 Campaign Management functionality</Description>
          </ResponseStatus>
        </CampaignRevetResponse>
    CampaignSetting400Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignSettingsResponse>
          <ResponseStatus>
            <ErrorCode>1003</ErrorCode>
            <Description>Phone is required</Description>
          </ResponseStatus>
        </CampaignSettingsResponse>
    CampaignSetting403Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignSettingsResponse>
          <ResponseStatus>
            <ErrorCode>12234</ErrorCode>
            <Description>Account '9999999' is enabled for v2 Registration Center and cannot access v1 Campaign Management functionality</Description>
          </ResponseStatus>
        </CampaignSettingsResponse>
    CampaignSetting404Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignSettingsResponse>
          <ResponseStatus>
            <ErrorCode>12178</ErrorCode>
            <Description>10DLC settings not found for account '9999999'</Description>
          </ResponseStatus>
        </CampaignSettingsResponse>
    CampaignSetting409Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignSettingsResponse>
          <ResponseStatus>
            <ErrorCode>12177</ErrorCode>
            <Description>Account '9999999' already has existing 10DLC settings</Description>
          </ResponseStatus>
        </CampaignSettingsResponse>
    CampaignTnsResponse:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignTnsResponse>
          <TotalCount>1</TotalCount>
          <TelephoneNumbers>
            <TelephoneNumber>8888888888</TelephoneNumber>
          </TelephoneNumbers>
        </CampaignTnsResponse>
    CampaignTnsResponse400Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignTnsResponse>
          <ResponseStatus>
            <ErrorCode>5081</ErrorCode>
            <Description>Number Format 'wrong' is invalid.</Description>
          </ResponseStatus>
        </CampaignTnsResponse>
    CampaignTnsResponse403Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignTnsResponse>
          <ResponseStatus>
            <ErrorCode>12234</ErrorCode>
            <Description>Account '9999999' is enabled for v2 Registration Center and cannot access v1 Campaign Management functionality</Description>
          </ResponseStatus>
        </CampaignTnsResponse>
    CampaignUpdateRequest:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <Campaign>
          <Sample1>Sample message</Sample1>
        </Campaign>
    CampaignV2403Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignResponse>
          <ResponseStatus>
            <ErrorCode>12234</ErrorCode>
            <Description>Account '9999999' is enabled for v2 Registration Center and cannot access v1 Campaign Management functionality</Description>
          </ResponseStatus>
        </CampaignResponse>
    CampaignsListResponse:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignsResponse>
          <Campaigns>
            <Campaign>
              <CampaignId>CH1GMWI</CampaignId>
              <Status>ACTIVE</Status>
              <CreateDate>2021-05-25T19:06:23</CreateDate>
              <AutoRenewal>true</AutoRenewal>
              <BilledDate>2021-05-25T00:00</BilledDate>
              <BrandId>B9AVERT</BrandId>
              <Usecase>2FA</Usecase>
              <SubUsecases/>
              <Description>test</Description>
              <ResellerId>RPTAYWZ</ResellerId>
              <EmbeddedLink>false</EmbeddedLink>
              <EmbeddedPhone>false</EmbeddedPhone>
              <NumberPool>false</NumberPool>
              <AgeGated>false</AgeGated>
              <DirectLending>false</DirectLending>
              <SubscriberOptIn>true</SubscriberOptIn>
              <SubscriberOptOut>false</SubscriberOptOut>
              <SubscriberHelp>true</SubscriberHelp>
              <Sample1>test</Sample1>
              <AffiliateMarketing>false</AffiliateMarketing>
              <SecondaryDcaSharingStatus>DECLINED</SecondaryDcaSharingStatus>
              <SecondaryDcaDeclineReason>Some Decline reason from secondary DCA</SecondaryDcaDeclineReason>
              <MessageFlow>This is a sample Message Flow of my campaign.</MessageFlow>
              <HelpKeywords>HELP</HelpKeywords>
              <HelpMessage>This is a sample Help Message of my campaign.</HelpMessage>
              <OptinKeywords>START,YES</OptinKeywords>
              <OptinMessage>This is a sample Opt-In Message of my campaign.</OptinMessage>
              <OptoutKeywords>STOP,NO</OptoutKeywords>
              <OptoutMessage>This is a sample Opt-Out Message of my campaign.</OptoutMessage>
              <MnoStatusList>
                <MnoStatus>
                  <MnoName>ATT</MnoName>
                  <MnoId>10017</MnoId>
                  <Status>APPROVED</Status>
                </MnoStatus>
                <MnoStatus>
                  <MnoName>TMO</MnoName>
                  <MnoId>10035</MnoId>
                  <Status>APPROVED</Status>
                </MnoStatus>
              </MnoStatusList>
              <SharingStatus>true</SharingStatus>
              <PrivacyPolicyLink>https://privacy.com</PrivacyPolicyLink>
              <TermsAndConditionsLink>https://terms.com</TermsAndConditionsLink>
            </Campaign>
            <Campaign>
              <CampaignId>CU3UTYW</CampaignId>
              <Status>EXPIRED</Status>
              <CreateDate>2021-06-03T11:50:16</CreateDate>
              <AutoRenewal>false</AutoRenewal>
              <BilledDate>2021-06-03T00:00</BilledDate>
              <BrandId>B9AVERT</BrandId>
              <Vertical>ENERGY</Vertical>
              <Usecase>2FA</Usecase>
              <SubUsecases/>
              <Description>test</Description>
              <ResellerId>RPTAYWZ</ResellerId>
              <EmbeddedLink>false</EmbeddedLink>
              <EmbeddedPhone>false</EmbeddedPhone>
              <NumberPool>false</NumberPool>
              <AgeGated>false</AgeGated>
              <DirectLending>false</DirectLending>
              <SubscriberOptIn>true</SubscriberOptIn>
              <SubscriberOptOut>false</SubscriberOptOut>
              <SubscriberHelp>true</SubscriberHelp>
              <Sample1>test</Sample1>
              <Sample2>test 15</Sample2>
              <AffiliateMarketing>false</AffiliateMarketing>
              <SecondaryDcaSharingStatus>ACCEPTED</SecondaryDcaSharingStatus>
              <MessageFlow>This is a sample Message Flow of my campaign.</MessageFlow>
              <HelpKeywords>HELP</HelpKeywords>
              <HelpMessage>This is a sample Help Message of my campaign.</HelpMessage>
              <OptinKeywords>START, YES</OptinKeywords>
              <OptinMessage>This is a sample Opt-In Message of my campaign.</OptinMessage>
              <OptoutKeywords>STOP, NO</OptoutKeywords>
              <OptoutMessage>This is a sample Opt-Out Message of my campaign.</OptoutMessage>
              <MnoStatusList>
                <MnoStatus>
                  <MnoName>ATT</MnoName>
                  <MnoId>10017</MnoId>
                  <Status>APPROVED</Status>
                </MnoStatus>
                  <MnoStatus>
                  <MnoName>TMO</MnoName>
                  <MnoId>10035</MnoId>
                <Status>APPROVED</Status>
                </MnoStatus>
              </MnoStatusList>
              <SharingStatus>true</SharingStatus>
              <PrivacyPolicyLink>https://privacy.com</PrivacyPolicyLink>
              <TermsAndConditionsLink>https://terms.com</TermsAndConditionsLink>
            </Campaign>
          </Campaigns>
          <TotalCount>17</TotalCount>
        </CampaignsResponse>
    CampaignsV2403Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignsResponse>
          <ResponseStatus>
            <ErrorCode>12234</ErrorCode>
            <Description>Account '9999999' is enabled for v2 Registration Center and cannot access v1 Campaign Management functionality</Description>
          </ResponseStatus>
        </CampaignsResponse>
    CreateCampaign400Error:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignResponse>
          <ResponseStatus>
            <ErrorCode>12185</ErrorCode>
            <Description>A call to the campaign registry service has failed validation.</Description>
          </ResponseStatus>
          <Errors>
            <Error>
              <Code>509</Code>
              <Field>subscriberHelp</Field>
              <Description>Support for standard help command is required by some MNOs</Description>
            </Error>
          </Errors>
        </CampaignResponse>
    CreateCampaignImportResponse:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <LongCodeImportCampaignResponse>
          <ImportedCampaign>
            <CampaignId>CA114BN</CampaignId>
            <Description>Test 1</Description>
            <MessageClass>Campaign-E</MessageClass>
            <CreateDate>2021-03-18T12:50:45Z</CreateDate>
            <SecondaryDcaSharingStatus>PENDING</SecondaryDcaSharingStatus>
            <Status>ACTIVE</Status>
            <MnoStatusList>
              <MnoStatus>
                <MnoName>ATT</MnoName>
                <MnoId>10017</MnoId>
                <Status>APPROVED</Status>
              </MnoStatus>
              <MnoStatus>
                <MnoName>TMO</MnoName>
                <MnoId>10035</MnoId>
                <Status>APPROVED</Status>
              </MnoStatus>
            </MnoStatusList>
          </ImportedCampaign>
        </LongCodeImportCampaignResponse>
    CreateCampaignRequest:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <Campaign>
          <MinMsgSamples>1</MinMsgSamples>
          <BrandId>B9AVERT</BrandId>
          <Usecase>2FA</Usecase>
          <SubUsecases>
          </SubUsecases>
          <Vertical>COMMUNICATION</Vertical>
          <Description>Test Campaign</Description>
          <Sample1>Test Sample</Sample1>
          <SubscriberOptIn>true</SubscriberOptIn>
          <SubscriberOptOut>false</SubscriberOptOut>
          <SubscriberHelp>true</SubscriberHelp>
          <NumberPool>false</NumberPool>
          <DirectLending>false</DirectLending>
          <EmbeddedLink>false</EmbeddedLink>
          <EmbeddedPhone>false</EmbeddedPhone>
          <AffiliateMarketing>false</AffiliateMarketing>
          <AgeGated>false</AgeGated>
          <AutoRenewal>true</AutoRenewal>
          <MessageFlow>This is a sample Message Flow of my campaign.</MessageFlow>
          <HelpKeywords>HELP</HelpKeywords>
          <HelpMessage>This is a sample Help Message of my campaign.</HelpMessage>
          <OptinKeywords>START,YES</OptinKeywords>
          <OptinMessage>This is a sample Opt-In Message of my campaign.</OptinMessage>
          <OptoutKeywords>STOP,NO</OptoutKeywords>
          <OptoutMessage>This is a sample Opt-Out Message of my campaign.</OptoutMessage>
          <PrivacyPolicyLink>https://privacy.com</PrivacyPolicyLink>
          <TermsAndConditionsLink>https://terms.com</TermsAndConditionsLink>
        </Campaign>
    CustomerBrandRequest:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <Brand>
          <EntityType>PUBLIC_PROFIT</EntityType>
          <AltBusinessId>111111111</AltBusinessId>
          <AltBusinessIdType>DUNS</AltBusinessIdType>
          <BrandRelationship>MEDIUM_ACCOUNT</BrandRelationship>
          <City>Raleigh</City>
          <CompanyName>Bandwidth</CompanyName>
          <Country>US</Country>
          <DisplayName>Bandwidth</DisplayName>
          <Ein>123456789</Ein>
          <Email>user@mail.com</Email>
          <Phone>+19195551234</Phone>
          <PostalCode>27616</PostalCode>
          <State>NC</State>
          <Street>123 street</Street>
          <StockExchange>NASDAQ</StockExchange>
          <StockSymbol>BAND</StockSymbol>
          <Vertical>TECHNOLOGY</Vertical>
          <Website>www.my.website.com</Website>
          <BusinessContactEmail>businessemail@mail.com</BusinessContactEmail>
          <IsMain>false</IsMain>
        </Brand>
    DenyMessagingPortoutRequest:
      description: Deny Messaging Portout Request
      value:
        approval: 'no'
        comment: Some comment
    DirectCustomerSetupRequest:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignSettings>
          <BusinessIdentity>DirectCustomer</BusinessIdentity>
        </CampaignSettings>
    DirectCustomerSetupResponse:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignSettingsResponse>
          <CampaignSettings>
            <BusinessIdentity>DirectCustomer</BusinessIdentity>
          </CampaignSettings>
        </CampaignSettingsResponse>
    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>
    MessagingPortout200Response:
      description: Success response.
      value:
        message: Success
        response_code: 0
    MessagingPortout202Response:
      description: Accepted response.
      value:
        message: Pending
        response_code: 202
    MyBrandRequest:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <Brand>
          <EntityType>PUBLIC_PROFIT</EntityType>
          <AltBusinessId>111111111</AltBusinessId>
          <AltBusinessIdType>DUNS</AltBusinessIdType>
          <BrandRelationship>MEDIUM_ACCOUNT</BrandRelationship>
          <City>Raleigh</City>
          <CompanyName>Bandwidth</CompanyName>
          <Country>US</Country>
          <DisplayName>Bandwidth</DisplayName>
          <Ein>123456789</Ein>
          <Email>user@mail.com</Email>
          <Phone>+19195551234</Phone>
          <PostalCode>27616</PostalCode>
          <State>NC</State>
          <Street>123 street</Street>
          <StockExchange>NASDAQ</StockExchange>
          <StockSymbol>BAND</StockSymbol>
          <Vertical>TECHNOLOGY</Vertical>
          <Website>www.my.website.com</Website>
          <BusinessContactEmail>businessemail@mail.com</BusinessContactEmail>
          <IsMain>true</IsMain>
        </Brand>
    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>2529690000</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>
    ResellerSetupRequest:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignSettings>
          <BusinessIdentity>Reseller</BusinessIdentity>
          <Reseller>
            <CompanyName>Test Bandwidth Company</CompanyName>
            <Phone>+18009999999</Phone>
            <Email>Test1@bandwidth.com</Email>
          </Reseller>
        </CampaignSettings>
    ResellerSetupResponse:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <CampaignSettingsResponse>
          <CampaignSettings>
            <BusinessIdentity>Reseller</BusinessIdentity>
            <Reseller>
              <CompanyName>Test 1</CompanyName>
              <Phone>+18002837273</Phone>
              <Email>Test1@bandwidth.com</Email>
            </Reseller>
          </CampaignSettings>
        </CampaignSettingsResponse>
    associatedOutboundNumbersRequestExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <AssociatedOutboundNumbers>
          <AssociatedOutboundNumber>
            <Number>+16175551212</Number>
          </AssociatedOutboundNumber>
          <AssociatedOutboundNumber>
            <Number>+16175551213</Number>
          </AssociatedOutboundNumber>     
        </AssociatedOutboundNumbers>
    associatedOutboundNumbersResponseGetExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <AssociatedOutboundNumbersResponse>
          <TotalCount>2</TotalCount>
          <AssociatedOutboundNumbers>
            <AssociatedOutboundNumber>
              <Number>+16175551212</Number>
              <Id>123</Id>
            </AssociatedOutboundNumber>            
            <AssociatedOutboundNumber>
              <Number>+16175551213</Number>
              <Id>124</Id>
            </AssociatedOutboundNumber>
          </AssociatedOutboundNumbers>
        </AssociatedOutboundNumbersResponse>
    associatedOutboundNumbersResponsePostExample:
      value: |-
        <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <AssociatedOutboundNumbersResponse>
          <SuccessCount>2</SuccessCount>
          <Errors>
            <AssociatedOutboundNumber>
              <Number>+16175551212</Number>
              <ErrorReason>Invalid Number Format</ErrorReason>
            </AssociatedOutboundNumber>
          </Errors>
        </AssociatedOutboundNumbersResponse>
    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>
    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>
    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>
    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: '9194445555'
              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: '9194445556'
              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: '9194445557'
              tier: '1'
        links:
          href: /admin/porting/npac
          method: POST
          rel: self
    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>
    updateOsrTransactionId:
      description: Updates OSR Transaction ID in DB
      value:
        transactionId: '1234'
  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
    AssociatedOutboundNumberIdParam:
      in: path
      name: associatedOutboundNumberId
      required: true
      schema:
        type: integer
    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
    CampaignIdPathParam:
      description: User's campaign ID
      example: CBA001
      in: path
      name: campaignId
      required: true
      schema:
        type: string
    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: >-
        The Customer Order ID is an ID assigned by the account owner to provide
        a reference number for the importVoiceTnOrder.
      example: ABCCorp12345
      in: query
      name: customerOrderId
      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
    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
    OrderTypePathParam:
      in: path
      name: orderType
      required: true
      schema:
        type: string
    PaginationPageQueryParam:
      description: >-
        Retrievals must be paginated, using page and size indicators.  The page
        parameter contains the page number, e.g. "1" in the case of the first
        page
      example: 1
      in: query
      name: page
      required: true
      schema:
        type: integer
    PaginationSizeQueryParam:
      description: >-
        The size parameter indicates the number of Associated Outbound Numbers
        to return in the payload
      example: 10
      in: query
      name: size
      required: true
      schema:
        type: integer
    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
    RequestIdPathParam:
      description: Messsaging Portouts request ID
      in: path
      name: requestId
      required: true
      schema:
        example: '1243421'
        type: string
    RoleIdPathParam:
      description: Role Id
      example: testRole
      in: path
      name: roleId
      required: true
      schema:
        type: string
    SipPeerIdPathParam:
      in: path
      name: sipPeerId
      required: true
      schema:
        format: int32
        type: integer
    SipPeerIdQueryParam:
      description: A Sip Peer Id that is referenced in the order
      example: 50139
      in: query
      name: sipPeerId
      schema:
        type: integer
    SipPeerTnsPageQueryParam:
      description: The number of the paged results to be displayed.
      example: 4
      in: query
      name: page
      required: false
      schema:
        default: 1
        type: integer
    SipPeerTnsSizeQueryParam:
      description: The quantity of results displayed for each page.
      example: 200
      in: query
      name: size
      required: false
      schema:
        default: 5000
        type: integer
    SiteIdPathParam:
      description: Site ID of the Sip Peer
      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: '9199918388'
      in: query
      name: tn
      schema:
        type: string
    UserIdPathParam:
      description: User Id
      example: testUser
      in: path
      name: userId
      required: true
      schema:
        type: string
    WebhookSubscriptionIdPathParam:
      description: Webhook subscription ID
      example: 7bt57JcsVYJrN9K1OcV1Nu
      in: path
      name: id
      required: true
      schema:
        type: string
    billingJobConfigParam:
      description: The billing task name.
      example: MRC_BILLING_TASK
      in: path
      name: taskName
      required: true
      schema:
        type: string
    shortCodeCountryPathParam:
      description: The short code number country.
      example: USA
      in: path
      name: country
      required: true
      schema:
        items:
          enum:
            - USA
            - CAN
        type: string
    shortCodeHistoryShortCodeSortParam:
      description: Sorting parameters for `shortCode`
      example:
        sort: asc
      explode: true
      in: query
      name: shortCode
      properties:
        sort:
          enum:
            - asc
            - desc
          type: string
      required: false
      style: deepObject
    shortCodeHistoryVersionSortParam:
      description: Sorting parameters for `version`
      example:
        sort: asc
      explode: true
      in: query
      name: version
      properties:
        sort:
          enum:
            - asc
            - desc
          type: string
      required: false
      style: deepObject
    shortCodeLimitQueryParam:
      description: The number of entities to return based in the offset.
      in: query
      name: limit
      required: false
      schema:
        default: 50
        maximum: 250
        type: integer
    shortCodeOffsetQueryParam:
      description: The offset number of the results to return.
      in: query
      name: offset
      required: false
      schema:
        default: 0
        type: integer
    shortCodePathParam:
      description: The short code number used in the request.
      example: '123321'
      in: path
      name: shortCode
      required: true
      schema:
        type: string
  requestBodies:
    associatedOutboundNumbersRequest:
      content:
        application/xml:
          examples:
            requestExample:
              summary: An example request
              value:
                $ref: '#/components/examples/associatedOutboundNumbersRequestExample'
          schema:
            $ref: '#/components/schemas/associatedOutboundNumbers'
      description: OK
    messagingPortoutCustomerCallbackRequest:
      content:
        application/json:
          schema:
            oneOf:
              - $ref: '#/components/schemas/messagingPortoutNotificationCallback'
              - $ref: '#/components/schemas/messagingPortoutSubmissionStatusCallback'
      description: >-
        Callback request to notify customer of overwrite request, status of the
        response sent to the vendor, and overwritten notification
      required: true
    messagingPortoutWebhookSubscriptionRequest:
      content:
        application/json:
          schema:
            properties:
              basicAuthentication:
                properties:
                  password:
                    maxLength: 200
                    type: string
                  username:
                    maxLength: 100
                    type: string
                required:
                  - username
                  - password
                type: object
              callbackUrl:
                $ref: '#/components/schemas/webhookUrl'
              sharedSecretKey:
                $ref: '#/components/schemas/sharedSecretKey'
              webhookType:
                enum:
                  - PORTOUT_REQUEST
                  - PORTOUT_RESPONSE_SUBMITTED
                  - MESSAGING_OVERWRITTEN
                example: PORTOUT_REQUEST
                type: string
            required:
              - callbackUrl
              - webhookType
            type: object
      description: >-
        Information about a webhook that Bandwidth should send upon the
        completion of event customer is trying to subscribe to.
      required: true
    npacInformationRequest:
      content:
        application/json:
          examples:
            example:
              value:
                telephoneNumbers:
                  - '9194445555'
                  - '9194445556'
                  - '9194445557'
          schema:
            $ref: '#/components/schemas/npacInformationRequest'
    putOsrTransactionRequest:
      content:
        application/json:
          examples:
            updateOsrTransactionIdRequest:
              $ref: '#/components/examples/updateOsrTransactionId'
          schema:
            $ref: '#/components/schemas/updateOsrTransactionId'
      description: Transaction ID we want to update Athena DB with
      required: true
    shortCodeJsonPatchShortCodeRequest:
      content:
        application/json-patch+json:
          schema:
            $ref: '#/components/schemas/jsonPatch'
  responses:
    Brand2FA403Response:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/Brand2FA403Error'
          schema:
            $ref: '#/components/schemas/Brand2FAErrorResponse'
      description: Forbidden
    Brand403Response:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/Brand403Error'
          schema:
            $ref: '#/components/schemas/BrandErrorResponse'
      description: Forbidden
    BrandRevet403Response:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/BrandRevet403Error'
          schema:
            $ref: '#/components/schemas/BrandRevetErrorResponse'
      description: Forbidden
    BrandVetting403Response:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/BrandVetting403Error'
          schema:
            $ref: '#/components/schemas/BrandVettingErrorResponse'
      description: Forbidden
    BrandVettings403Response:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/BrandVettings403Error'
          schema:
            $ref: '#/components/schemas/BrandVettingsErrorResponse'
      description: Forbidden
    Brands403Response:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/Brands403Error'
          schema:
            $ref: '#/components/schemas/BrandsErrorResponse'
      description: Forbidden
    Campaign403Response:
      content:
        application/xml:
          examples:
            featureNotEnabled:
              $ref: '#/components/examples/Campaign403Error'
            v1AccessNotAllowed:
              $ref: '#/components/examples/CampaignV2403Error'
          schema:
            $ref: '#/components/schemas/CampaignErrorResponse'
      description: Forbidden
    CampaignImport403Response:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/CampaignImport403Error'
          schema:
            $ref: '#/components/schemas/LongCodeImportCampaignErrorResponse'
      description: Forbidden
    CampaignImports403Response:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/CampaignImports403Error'
          schema:
            $ref: '#/components/schemas/LongCodeImportCampaignsResponse'
      description: Forbidden
    CampaignRevet403Response:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/CampaignRevet403Error'
          schema:
            $ref: '#/components/schemas/CampaignErrorResponse'
      description: Forbidden
    CampaignSettings403Response:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/CampaignSetting403Error'
          schema:
            $ref: '#/components/schemas/CampaignSettingsErrorResponse'
      description: Forbidden
    CampaignTns403Response:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/CampaignTnsResponse403Error'
          schema:
            $ref: '#/components/schemas/CampaignTnsErrorResponse'
      description: Forbidden
    Campaigns403Response:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/CampaignsV2403Error'
          schema:
            $ref: '#/components/schemas/CampaignsErrorResponse'
      description: Forbidden
    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.
    associatedOutboundNumbers400Response:
      content:
        application/xml:
          schema:
            $ref: '#/components/schemas/associatedOutboundNumbersErrorResponse'
      description: Bad Request
    associatedOutboundNumbers401Response:
      content:
        application/xml:
          schema:
            $ref: '#/components/schemas/associatedOutboundNumbersErrorResponse'
      description: Unauthorised
    associatedOutboundNumbers403Response:
      content:
        application/xml:
          schema:
            $ref: '#/components/schemas/associatedOutboundNumbersErrorResponse'
      description: Forbidden
    associatedOutboundNumbers404Response:
      content:
        application/xml:
          schema:
            $ref: '#/components/schemas/associatedOutboundNumbersErrorResponse'
      description: Not Found
    associatedOutboundNumbers429Response:
      content:
        application/xml:
          schema:
            $ref: '#/components/schemas/associatedOutboundNumbersErrorResponse'
      description: Too Many Requests
    associatedOutboundNumbers500Response:
      content:
        application/xml:
          schema:
            $ref: '#/components/schemas/associatedOutboundNumbersErrorResponse'
      description: Internal Server Error
    associatedOutboundNumbersResponse:
      content:
        application/xml:
          examples:
            GetExample:
              summary: An example GET response
              value:
                $ref: >-
                  #/components/examples/associatedOutboundNumbersResponseGetExample
            PostExample:
              summary: An example POST response
              value:
                $ref: >-
                  #/components/examples/associatedOutboundNumbersResponsePostExample
          schema:
            $ref: '#/components/schemas/associatedOutboundNumbersResponse'
      description: OK
    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.
    createRealm201Response:
      content:
        application/xml:
          examples:
            example:
              $ref: '#/components/examples/createRealm201ResponseExample'
          schema:
            $ref: '#/components/schemas/RealmResponse'
      description: OK - the Realm was successfully created
    deleteTnReservation200Response:
      description: Reservation has been successfully deleted (empty response body).
    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
    getMessagingPortoutsResponseList:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/getMessagingPortoutsListResponseBody'
      description: An array containing all open messaging portout requests
    getOsrTransactionId:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/osrTransactionIdEntity'
      description: OK
    importToAccountNumberOrderErrorResponse:
      content:
        application/xml:
          examples:
            example:
              value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<ImportToAccountNumberOrderResponse>\n\t <ErrorList>\n\t\t <Error>\n\t\t\t <Code>7309</Code>\n\t\t\t <Description>The site id was not supplied or is invalid.</Description>\n\t\t </Error>\n\t\t <Error>\n\t\t\t <Code>7312</Code>\n\t\t\t <Description>The sippeer id is invalid.</Description>\n\t\t </Error>\n\t </ErrorList>\n </ImportToAccountNumberOrderResponse>"
          schema:
            $ref: '#/components/schemas/importToAccountNumberOrderErrorResponse'
      description: >-
        The order failed. One of the request payload parameters is invalid. The
        error text and an error code will be provided in the ErrorList
        element.</p>
    importToAccountNumberOrderResponse:
      content:
        application/xml:
          examples:
            example:
              value: |-
                <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                <ImportToAccountNumberOrderResponse>
                    <OrderRequest>
                        <id>c5986599-3a7c-4eed-a5c4-9121c17d54ab</id>
                        <OrderCreateDate>2014-04-01T21:54:18.796Z</OrderCreateDate>
                        <ImportToAccountNumberOrderType>
                            <BatchId>SJM00001</BatchId>
                            <BatchSize>2</BatchSize>
                            <BillingType>NOCHARGE</BillingType>
                            <InitialStatus>Available</InitialStatus>
                            <TnAttributes>
                                <TnAttribute>Protected</TnAttribute>
                            </TnAttributes>
                            <TelephoneNumberList>
                                <TelephoneNumber>+14158714245</TelephoneNumber>
                                <TelephoneNumber>+16105330710</TelephoneNumber>
                            </TelephoneNumberList>
                            <Origin>UNDEFINED</Origin>
                            <VendorName>Level 3</VendorName>
                            <PhoneNumberInventoryGroupId>20254</PhoneNumberInventoryGroupId>
                        </ImportToAccountNumberOrderType>
                        <SiteId>743</SiteId>
                        <PeerId>12345</PeerId>
                        <VoiceConfigurationPackageId>d21315af-9b5b-4b45-a6f4-9106cbfe87d1</VoiceConfigurationPackageId>
                        <RequirementsPackageId>3fa85f64-5717-4562-b3fc-2c963f66afa6</RequirementsPackageId>
                        <OverrideFeatureRestrictions>false</OverrideFeatureRestrictions>
                    </OrderRequest>
                </ImportToAccountNumberOrderResponse>
          schema:
            $ref: '#/components/schemas/importToAccountNumberOrderResponse'
      description: >-
        The order has been created and an order ID will be specified in the
        response payload and in the header.
    importToAccountNumberOrderResponseForGet:
      content:
        application/xml:
          examples:
            example:
              value: |-
                <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                <ImportToAccountNumberOrderResponse>
                    <ErrorList/>
                    <ImportedTelephoneNumberList>
                        <TelephoneNumber>9199918393</TelephoneNumber>
                        <TelephoneNumber>9199918394</TelephoneNumber>
                    </ImportedTelephoneNumberList>
                    <orderRequest>
                        <OrderCreateDate>2014-04-18T16:38:05.001Z</OrderCreateDate>
                        <PeerId>303716</PeerId>
                        <ImportToAccountNumberOrderType>
                            <BatchId>TestId1234</BatchId>
                            <BatchSize>2</BatchSize>
                            <OverridePortFees>false</OverridePortFees>
                            <PortedIn>false</PortedIn>
                            <InitialStatus>Available</InitialStatus>
                            <TnAttributes>
                                <TnAttribute>Protected</TnAttribute>
                            </TnAttributes>
                            <TelephoneNumberList>
                                <TelephoneNumber>9199918393</TelephoneNumber>
                                <TelephoneNumber>9199918394</TelephoneNumber>
                            </TelephoneNumberList>
                            <Origin>UNDEFINED</Origin>
                            <VendorName>Bandwidth CLEC</VendorName>
                        </ImportToAccountNumberOrderType>
                        <SiteId>743</SiteId>
                    </orderRequest>
                    <OrderStatus>COMPLETE</OrderStatus>
                    <ImportedTelephoneNumberDetailList>
                        <TelephoneNumberDetail>
                            <FullNumber>9199918393</FullNumber>
                        </TelephoneNumberDetail>
                        <TelephoneNumberDetail>
                            <FullNumber>9199918394</FullNumber>
                        </TelephoneNumberDetail>
                    </ImportedTelephoneNumberDetailList>
                </ImportToAccountNumberOrderResponse>
          schema:
            $ref: '#/components/schemas/importToAccountNumberOrderResponseForGet'
      description: >-
        The information has been successfully retrieved and displayed in the
        response payload.
    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
    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
    messagingPortoutBadRequestResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Cannot process request.
                type: bad request
          schema:
            $ref: '#/components/schemas/messagingPortoutError'
      description: Bad request, can not process the request.
    messagingPortoutGoneResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: The request has already been completed.
                type: Gone
          schema:
            $ref: '#/components/schemas/messagingPortoutError'
      description: The request has already been completed.
    messagingPortoutResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/getMessagingPortouts'
      description: OK
    messagingPortoutWebhookSubscriptionBadRequestResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Cannot process request.
                errors:
                  callbackUrl:
                    - is required
                type: bad request
          schema:
            $ref: '#/components/schemas/messagingPortoutPostBadRequestError'
      description: Bad request, can not process the request.
    messagingPortoutWebhookSubscriptionCreated:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/messagingPortoutWebhookSubscription'
      description: Created
    messagingPortoutWebhookSubscriptionDeleteBadRequestResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Request cannot be processed.
                type: bad request
          schema:
            $ref: '#/components/schemas/messagingPortoutError'
      description: Bad request, can not process the request.
    messagingPortoutWebhookSubscriptionForbiddenResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Client is not authorized for the action.
                type: forbidden
          schema:
            $ref: '#/components/schemas/messagingPortoutError'
      description: Client is not authorized for the action.
    messagingPortoutWebhookSubscriptionNotAllowedResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Method is not allowed.
                type: Method Not Allowed
          schema:
            $ref: '#/components/schemas/messagingPortoutError'
      description: Method is not allowed.
    messagingPortoutWebhookSubscriptionNotFoundResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Cannot find the requested resource.
                type: Not Found
          schema:
            $ref: '#/components/schemas/messagingPortoutError'
      description: Cannot find the requested resource.
    messagingPortoutWebhookSubscriptionServerErrorResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Internal Server Error.
                type: Internal Server Error
          schema:
            $ref: '#/components/schemas/messagingPortoutError'
      description: Internal Server Error.
    messagingPortoutWebhookSubscriptionServiceUnavailableResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Service Unavailable Error.
                type: Service Unavailable
          schema:
            $ref: '#/components/schemas/messagingPortoutError'
      description: Service Unavailable Error.
    messagingPortoutWebhookSubscriptionTooManyRequestsResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Throttling error. Too many requests.
                type: Too Many Requests
          schema:
            $ref: '#/components/schemas/messagingPortoutError'
      description: Throttling error. Too many requests.
    messagingPortoutWebhookSubscriptionUnauthorizedResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Client is providing incorrect or invalid credentials.
                type: unauthorized
          schema:
            $ref: '#/components/schemas/messagingPortoutError'
      description: Client is providing incorrect or invalid credentials.
    messagingPortoutWebhookSubscriptionUpdated:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/messagingPortoutWebhookSubscription'
      description: OK
    messagingPortoutWebhookSubscriptionsList:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/messagingPortoutWebhookSubscriptionsListBody'
      description: OK
    npacInformationResponse:
      content:
        application/json:
          examples:
            npacInformationResponseExample:
              $ref: '#/components/examples/npacInformationResponseExample'
          schema:
            $ref: '#/components/schemas/npacInformationResponse'
      description: |
        Contains NPAC information for a given telephone number.
    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
    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.
    shortCode400:
      content:
        application/json:
          examples:
            example:
              value:
                description: Cannot process request.
                type: cannot process request
          schema:
            $ref: '#/components/schemas/shortCodeError400'
      description: Bad request, can not process the request.
    shortCode401:
      content:
        application/json:
          examples:
            example:
              value:
                description: Client is providing incorrect or invalid credentials.
                type: unauthorized
          schema:
            $ref: '#/components/schemas/shortCodeError'
      description: Client is providing incorrect or invalid credentials.
    shortCode403:
      content:
        application/json:
          examples:
            example:
              value:
                description: Client does not have access rights to the content.
                type: forbidden
          schema:
            $ref: '#/components/schemas/shortCodeError'
      description: Client is providing incorrect or invalid credentials.
    shortCode404:
      content:
        application/json:
          examples:
            example:
              value:
                description: Cannot find requested resource.
                type: not found
          schema:
            $ref: '#/components/schemas/shortCodeError'
      description: The short code details not have been found.
    shortCode405:
      content:
        application/json:
          examples:
            example:
              value:
                description: Request method 'POST' not supported.
                type: method not supported
          schema:
            $ref: '#/components/schemas/shortCodeError'
      description: Request method is not supported.
    shortCode409:
      content:
        application/json:
          examples:
            example:
              value:
                description: Short code already exists.
                type: conflict
          schema:
            $ref: '#/components/schemas/shortCodeError'
      description: The short code already exists.
    shortCode429:
      content:
        application/json:
          examples:
            example:
              value:
                description: Too many requests.
                type: too many requests
          schema:
            $ref: '#/components/schemas/shortCodeError'
      description: Too many requests.
    shortCode500:
      content:
        application/json:
          examples:
            example:
              value:
                description: The server has encountered an internal error.
                type: internal server error
          schema:
            $ref: '#/components/schemas/shortCodeError'
      description: The server has encountered an internal error.
    shortCodeGetAllShortCodesByAccountResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/shortCodeApiPage'
      description: Successful response with a paginated list of short codes.
    shortCodeGetShortCodeByAccountIdCountryAndShortCodeResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/shortCode'
      description: The short code details have been successfully retrieved and displayed.
    shortCodeGetShortCodeHistoryAccountIdCountryAndShortCodeResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/shortCodeHistoryApiPage'
      description: >-
        The short code number history details have been successfully retrieved
        and displayed.
    shortCodeUpdateShortCodeResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/shortCode'
      description: Updated short code data.
    tfvBadRequestResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Cannot process request.
                type: bad request
          schema:
            $ref: '#/components/schemas/tfvError'
      description: Bad request, can not process the request.
    tfvForbiddenResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Client is not authorized for the action.
                type: forbidden
          schema:
            $ref: '#/components/schemas/tfvError'
      description: Client is not authorized for the action.
    tfvNotAllowedResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Method is not allowed.
                type: Method Not Allowed
          schema:
            $ref: '#/components/schemas/tfvError'
      description: Method is not allowed.
    tfvNotFoundResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Cannot find the requested resource.
                type: Not Found
          schema:
            $ref: '#/components/schemas/tfvError'
      description: Cannot find the requested resource.
    tfvServerErrorResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Internal Server Error.
                type: Internal Server Error
          schema:
            $ref: '#/components/schemas/tfvError'
      description: Internal Server Error.
    tfvServiceUnavailableResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Service Unavailable Error.
                type: Service Unavailable
          schema:
            $ref: '#/components/schemas/tfvError'
      description: Service Unavailable Error.
    tfvTooManyRequestsResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Throttling error. Too many requests.
                type: Too Many Requests
          schema:
            $ref: '#/components/schemas/tfvError'
      description: Throttling error. Too many requests.
    tfvUnauthorizedResponse:
      content:
        application/json:
          examples:
            example:
              value:
                description: Client is providing incorrect or invalid credentials.
                type: unauthorized
          schema:
            $ref: '#/components/schemas/tfvError'
      description: Client is providing incorrect or invalid credentials.
    webhookSubscriptionDeleted:
      description: Deleted
  schemas:
    A2pClass:
      properties:
        A2pClass:
          properties:
            ClassDescription:
              type: string
            MessageClass:
              type: string
          type: object
    A2pClassList:
      items:
        $ref: '#/components/schemas/A2pClass'
      type: array
    A2pClassListResponse:
      properties:
        AdminDataResponse:
          properties:
            A2pClassList:
              $ref: '#/components/schemas/A2pClassList'
          type: object
      type: object
    A2pClassResponse:
      properties:
        AdminDataResponse:
          $ref: '#/components/schemas/A2pClass'
      type: object
    A2pSettings:
      properties:
        Action:
          enum:
            - unchanged
            - systemDefault
            - 'off'
            - delete
            - asSpecified
          type: string
        CampaignId:
          maxLength: 64
          minLength: 1
          type: string
        MessageClass:
          maxLength: 64
          minLength: 1
          type: string
      type: object
    AccessRestriction:
      properties:
        RestrictedAccessTypes:
          items:
            properties:
              RestrictedAccessType:
                type: string
            type: object
          type: array
        RestrictedProduct:
          type: string
      type: object
    Account:
      properties:
        AccountId:
          format: int32
          type: integer
        AccountRelationship:
          type: string
        AccountType:
          type: string
        Address:
          $ref: '#/components/schemas/Address'
        AltSpid:
          type: string
        AssociatedCatapultAccount:
          type: string
        BillingCycle:
          format: int32
          type: integer
        CompanyName:
          type: string
        Contact:
          $ref: '#/components/schemas/Contact'
        CustomerSegment:
          type: string
        Default911Provider:
          type: string
        ExternalId:
          type: string
        GlobalAccountNumber:
          type: string
        LinkedAddresses:
          properties:
            LinkedAddress:
              items:
                $ref: '#/components/schemas/LinkedAddress'
              type: array
          type: object
          xml:
            name: LinkedAddresses
        MaxTnsForAutomatedPort:
          format: int32
          type: integer
        NenaId:
          type: string
        PenaltyType:
          type: string
        PortCarrierType:
          enum:
            - WIRELESS
            - WIRELINE
          type: string
        Pricing:
          type: string
        SPID:
          type: string
        Tiers:
          properties:
            Tier:
              items:
                $ref: '#/components/schemas/Tier'
              type: array
          type: object
      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
    AccountProduct:
      properties:
        Features:
          items:
            properties:
              Feature:
                type: string
            type: object
          type: array
        Name:
          type: string
      type: object
    AccountProducts:
      properties:
        Product:
          items:
            $ref: '#/components/schemas/AccountProduct'
          type: array
      type: object
    AccountProductsResponse:
      properties:
        Products:
          $ref: '#/components/schemas/AccountProducts'
      type: object
    AccountResponse:
      properties:
        Account:
          $ref: '#/components/schemas/Account'
      type: object
    AccountResponseWrapper:
      properties:
        AccountResponse:
          $ref: '#/components/schemas/AccountResponse'
      type: object
    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
    AccountTelephoneNumbersHistoryResponse:
      properties:
        TNs:
          properties:
            Links:
              $ref: '#/components/schemas/PaginationLinks'
            TelephoneNumbers:
              $ref: '#/components/schemas/TelephoneNumbers'
            TotalCount:
              format: int32
              type: integer
          type: object
      type: object
    ActivationStatus:
      properties:
        ActivationStatus:
          properties:
            ActivatedTelephoneNumbersList:
              description: >-
                This is the list of TNs that have been activated for the port-in
                order.
              items:
                $ref: '#/components/schemas/TelephoneNumber'
              type: array
            AutoActivationDate:
              description: >-
                The date when auto activation is requested.  It can be a
                date/time in the past, if immediate activation is desired.
              format: date-time
              type: string
            NotYetActivatedTelephoneNumbersList:
              description: >-
                This is the list of TNs that have not yet been activated for the
                port-in order.
              items:
                $ref: '#/components/schemas/TelephoneNumber'
              type: array
          type: object
      type: object
    ActivationStatusResponse:
      properties:
        ActivationStatusResponse:
          $ref: '#/components/schemas/ActivationStatus'
      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
    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
        LegacyAddressId:
          deprecated: true
          type: string
        LegacyEntityId:
          deprecated: true
          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
        RegionId:
          deprecated: true
          format: int32
          type: integer
        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
    AddressErrorDescription:
      properties:
        AddressInconsistencies:
          type: string
        RecommendedAddress:
          $ref: '#/components/schemas/Address'
      type: object
    AddressPatch:
      properties:
        AddressLine2:
          allOf:
            - $ref:'#/components/schemas/StringPatch'
          description: Put unit, suite, floor, etc. here.
        City:
          allOf:
            - $ref:'#/components/schemas/StringPatch'
          description: City.
        County:
          allOf:
            - $ref:#/components/schemas/StringPatch'
          description: The county where the subscriber or business is located.
        HouseNumber:
          allOf:
            - $ref:'#/components/schemas/StringPatch'
          description: Street address number.
        HousePrefix:
          allOf:
            - $ref: '#/components/schemas/StringPatch'
          description: Street address number prefix.
        HouseSuffix:
          allOf:
            - $ref:#/components/schemas/StringPatch'
          description: Street address number suffix.
        PlusFour:
          allOf:
            - $ref:'#/components/schemas/StringPatch'
          description: Zip + 4 value.
        PostDirectional:
          allOf:
            - $ref:#/components/schemas/StringPatch'
          description: Street address post directional.
        PreDirectional:
          allOf:
            - $ref:'#/components/schemas/StringPatch'
          description: Street address pre-directional.
        StateCode:
          allOf:
            - $ref:'#/components/schemas/StringPatch'
          description: Two letter state code.
        StreetName:
          allOf:
            - $ref:'#/components/schemas/StringPatch'
          description: Street name.
        StreetSuffix:
          allOf:
            - $ref:'#/components/schemas/StringPatch'
          description: Street suffix.
        Zip:
          allOf:
            - $ref:'#/components/schemas/StringPatch'
          description: Zip code.
        delete:
          type: boolean
      type: object
    AddressType:
      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:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    AdminParametersErrorResponse:
      properties:
        AdminParametersResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    AdminParametersPayload:
      properties:
        ActivityState:
          type: string
        BandwidthPrime:
          type: string
      title: AdminParameters
      type: object
    AdminParametersRequest:
      properties:
        AdminParameters:
          $ref: '#/components/schemas/AdminParametersPayload'
      title: AdminParameters
      type: object
    AdminParametersResponse:
      properties:
        AdminParametersResponse:
          properties:
            AdminParameters:
              $ref: '#/components/schemas/AdminParametersPayload'
          type: object
      type: object
    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
    Application:
      properties:
        AppName:
          type: string
        ApplicationId:
          type: string
        CallInitiatedCallbackUrl:
          type: string
        CallInitiatedFallbackCreds:
          $ref: '#/components/schemas/CallbackCreds'
        CallInitiatedFallbackMethod:
          type: string
        CallInitiatedFallbackUrl:
          type: string
        CallInitiatedMethod:
          type: string
        CallStatusCallbackUrl:
          type: string
        CallStatusMethod:
          type: string
        CallbackCreds:
          $ref: '#/components/schemas/CallbackCreds'
        CallbackTimeout:
          type: string
        CallbackUrl:
          deprecated: true
          type: string
        InboundCallbackCreds:
          $ref: '#/components/schemas/CallbackCreds'
        InboundCallbackUrl:
          type: string
        MsgCallbackUrl:
          deprecated: true
          type: string
        OutboundCallbackCreds:
          $ref: '#/components/schemas/CallbackCreds'
        OutboundCallbackUrl:
          type: string
        RequestedCallbackTypes:
          items:
            $ref: '#/components/schemas/RequestedCallbackTypes'
          type: array
        ServiceType:
          type: string
      type: object
    ApplicationPayload:
      properties:
        Application:
          $ref: '#/components/schemas/Application'
      type: object
    ApplicationProvisioningResponse:
      properties:
        ApplicationList:
          items:
            $ref: '#/components/schemas/Application'
          type: array
      type: object
    ApplicationProvisioningResponseWrapper:
      properties:
        ApplicationProvisioningResponse:
          $ref: '#/components/schemas/ApplicationProvisioningResponse'
      type: object
    ApplicationProvisioningSingleResponseWrapper:
      properties:
        ApplicationProvisioningResponse:
          $ref: '#/components/schemas/ApplicationWrapper'
      type: object
    ApplicationWrapper:
      properties:
        Application:
          $ref: '#/components/schemas/Application'
      title: Application
      type: object
    ApplicationsSettings:
      properties:
        HttpMessagingV2AppId:
          type: string
      type: object
    ApplicationsSettingsResponse:
      properties:
        ApplicationsSettings:
          $ref: '#/components/schemas/ApplicationsSettings'
      type: object
    AreaCodeSearchAndOrder:
      allOf:
        - $ref: '#/components/schemas/orderMetadata'
        - properties:
            AreaCodeSearchAndOrderType:
              $ref: '#/components/schemas/AreaCodeSearchAndOrderType'
          type: object
      xml:
        name: Order
    AreaCodeSearchAndOrderResponse:
      properties:
        order:
          properties:
            allOf:
              - $ref: '#/components/schemas/orderResponseMetadata'
              - properties:
                  AreaCodeSearchAndOrderType:
                    $ref: '#/components/schemas/AreaCodeSearchAndOrderType'
                type: object
          type: object
          xml:
            name: Order
        orderStatus:
          example: RECEIVED
          type: string
          xml:
            name: OrderStatus
      type: object
      xml:
        name: OrderResponse
    AreaCodeSearchAndOrderType:
      properties:
        AreaCode:
          type: string
        Quantity:
          format: int32
          type: integer
      type: object
      xml:
        name: AreaCodeSearchAndOrderType
    AssociatedSipPeer:
      properties:
        PeerId:
          format: int32
          type: integer
        PeerName:
          type: string
        SiteId:
          format: int32
          type: integer
        SiteName:
          type: string
      type: object
    AssociatedSipPeersErrorResponse:
      properties:
        AssociatedSipPeersResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    AssociatedSipPeersResponse:
      properties:
        AssociatedSipPeers:
          items:
            $ref: '#/components/schemas/AssociatedSipPeer'
          type: array
      type: object
    AssociatedSipPeersResponseWrapper:
      properties:
        AssociatedSipPeersResponse:
          $ref: '#/components/schemas/AssociatedSipPeersResponse'
      type: object
    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
    AvailableNpaNxx:
      properties:
        City:
          type: string
        Npa:
          type: string
        Nxx:
          type: string
        Quantity:
          format: int32
          type: integer
        State:
          type: string
      type: object
    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
    Batch:
      properties:
        BatchId:
          type: string
        BatchSize:
          type: integer
        OrderCreateDate:
          $ref: '#/components/schemas/OrderCreatedDate'
        OrderId:
          $ref: '#/components/schemas/OrderId'
        OrderStatus:
          type: string
        SubmittedTnCount:
          type: integer
        SuccessfulTnCount:
          type: integer
      type: object
    BatchId:
      description: >-
        A user-chosen id for the batch of phone numbers.  This Batch ID can span
        multiple number submissions.  Up to 10 alphanumeric characters.  If  the
        submission is not intended to be grouped into a batch of submissions
        then the Batch ID must be globally unique. It is recommended that the
        batch ids be globally unique, and that imports not be grouped together
        in batches by use of a common batch id.
      type: string
    BatchSize:
      description: >-
        The number of TNs in the batch, aggregated across all of the orders in
        the batch. This total spans API Calls, so if 3 calls are necessary to
        import 15000 numbers, this value would be 15000.  It is recommended to
        use a batch size equal to the number of telephone numbers in the API
        call, and use a different batch name for each API call - essentially
        limiting a batch to a single API call.
      type: integer
    Batches:
      properties:
        Batches:
          properties:
            Batch:
              items:
                $ref: '#/components/schemas/Batch'
              minItems: 1
              type: array
          type: object
      type: object
    Bdr:
      properties:
        Bdr:
          properties:
            EndDate:
              type: string
            StartDate:
              type: string
          type: object
      type: object
    BdrCreationErrorResponse:
      properties:
        BdrCreationResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    BdrCreationResponse:
      properties:
        BdrCreationResponse:
          properties:
            Info:
              type: string
          type: object
      type: object
    BdrRetrievalErrorResponse:
      properties:
        BdrRetrievalResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    BdrRetrievalResponse:
      properties:
        BdrRetrievalResponse:
          properties:
            Info:
              type: string
          type: object
      type: object
    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
    BillingType:
      description: Type of billing rules to be applied.
      enum:
        - NOCHARGE
        - PORTIN
        - NEWNUMBER
        - PROJECTPORT
      type: string
    BlockedAccountId:
      properties:
        BlockedAccountId:
          properties:
            AccountId:
              type: string
          type: object
      type: object
    BlockedAccountIdResponse:
      properties:
        AdminDataResponse:
          $ref: '#/components/schemas/BlockedAccountId'
      type: object
    Brand:
      properties:
        AltBusinessId:
          description: Alternate business identifier such as DUNS, LEI, GIIN.
          type: string
        AltBusinessIdType:
          enum:
            - NONE
            - DUNS
            - GIIN
            - LEI
          type: string
        BrandRelationship:
          description: Enum value describing the relationship with your Account.
          enum:
            - BASIC_ACCOUNT
            - SMALL_ACCOUNT
            - MEDIUM_ACCOUNT
            - LARGE_ACCOUNT
            - KEY_ACCOUNT
          type: string
        BusinessContactEmail:
          description: Valid business email address of brand.
          maxLength: 100
          type: string
        BusinessContactEmailVerifiedDate:
          description: >-
            Date when business email address was verified. This will be after
            TCR sends a 2FA email verification to the business email provided in
            BusinessContactEmail field. This will only be populated for
            PUBLIC_PROFIT brands after the verification is completed.
          maxLength: 100
          type: string
        City:
          type: string
        CompanyName:
          description: Legal Company Name.
          type: string
        Country:
          description: ISO2 2 characters country code.
          type: string
        DisplayName:
          type: string
        Ein:
          description: Government assigned corporate tax ID.
          type: string
        Email:
          description: Valid email address of brand support contact.
          type: string
        EntityType:
          description: >-
            Entity type behind the brand. THis is the form of business
            establishment.
          enum:
            - PRIVATE_PROFIT
            - PUBLIC_PROFIT
            - NON_PROFIT
            - GOVERNMENT
            - SOLE_PROPRIETOR
          type: string
        IsMain:
          type: boolean
        Phone:
          description: Valid phone number in e.164 international format.
          type: string
        PostalCode:
          description: Postal codes. Use 5 digit zipcode for United States.
          type: string
        State:
          description: State name. Must be 2 letters code for United States.
          type: string
        StockExchange:
          enum:
            - NONE
            - NASDAQ
            - NYSE
            - AMEX
            - AMX
            - ASX
            - B3
            - BME
            - BSE
            - FRA
            - ICEX
            - JPX
            - JSE
            - KRX
            - LON
            - NSE
            - OMX
            - SEHK
            - SSE
            - STO
            - SWX
            - SZSE
            - TSX
            - TWSE
            - VSE
          type: string
        StockSymbol:
          type: string
        Street:
          type: string
        Vertical:
          description: Enum value describing vertical or industry segment of the brand.
          enum:
            - REAL_ESTATE
            - ENERGY
            - HEALTHCARE
            - ENTERTAINMENT
            - RETAIL
            - AGRICULTURE
            - INSURANCE
            - EDUCATION
            - HOSPITALITY
            - FINANCIAL
            - GAMBLING
            - CONSTRUCTION
            - NGO
            - MANUFACTURING
            - GOVERNMENT
            - TECHNOLOGY
            - COMMUNICATION
          type: string
        Website:
          type: string
      type: object
    Brand2FAErrorResponse:
      properties:
        BrandResend2faEmailResponse:
          properties:
            BrandResend2faEmail:
              $ref: '#/components/schemas/ResponseStatus'
          type: object
      type: object
    BrandErrorResponse:
      properties:
        BrandResponse:
          properties:
            Brand:
              $ref: '#/components/schemas/ResponseStatus'
          type: object
      type: object
    BrandRequest:
      properties:
        Brand:
          properties:
            AltBusinessId:
              description: Alternate business identifier such as DUNS, LEI, GIIN.
              type: string
            AltBusinessIdType:
              enum:
                - NONE
                - DUNS
                - GIIN
                - LEI
              type: string
            BrandRelationship:
              description: Enum value describing the relationship with your Account.
              enum:
                - BASIC_ACCOUNT
                - SMALL_ACCOUNT
                - MEDIUM_ACCOUNT
                - LARGE_ACCOUNT
                - KEY_ACCOUNT
              type: string
            BusinessContactEmail:
              description: >-
                Valid business email address of brand. This is a *mandatory*
                field for PUBLIC_PROFIT brands. For other types, TCR will ignore
                this value. This *cannot* be group/support email ID, i.e.
                support@company.com
              maxLength: 100
              type: string
            City:
              maxLength: 100
              type: string
            CompanyName:
              description: Legal Company Name. Not required for Sole Proprietor.
              maxLength: 100
              type: string
            Country:
              description: ISO2 2 characters country code.
              example: US
              type: string
            DisplayName:
              maxLength: 100
              type: string
            Ein:
              description: >-
                Government assigned corporate tax ID, EIN is 9-digits in U.S.
                Not required for Sole_Proprietor.
              maxLength: 9
              type: string
            Email:
              description: Valid email address of brand support contact.
              maxLength: 100
              type: string
            EntityType:
              description: >-
                Entity type behind the brand. THis is the form of business
                establishment.
              enum:
                - PRIVATE_PROFIT
                - PUBLIC_PROFIT
                - NON_PROFIT
                - GOVERNMENT
              type: string
            IsMain:
              description: >-
                true or false. True if creating 'My Brand', false if creating
                'Customer Brand'
              type: boolean
            Phone:
              description: Valid phone number in e.164 international format.
              example: '+18009999999'
              type: string
            PostalCode:
              description: Postal codes. Use 5 digit zipcode for United States.
              maxLength: 5
              type: string
            State:
              description: State name. Must be 2 letters code for United States.
              maxLength: 2
              type: string
            StockExchange:
              enum:
                - NONE
                - NASDAQ
                - NYSE
                - AMEX
                - AMX
                - ASX
                - B3
                - BME
                - BSE
                - FRA
                - ICEX
                - JPX
                - JSE
                - KRX
                - LON
                - NSE
                - OMX
                - SEHK
                - SSE
                - STO
                - SWX
                - SZSE
                - TSX
                - TWSE
                - VSE
              type: string
            StockSymbol:
              type: string
            Street:
              maxLength: 100
              type: string
            Vertical:
              description: >-
                Enum value describing vertical or industry segment of the brand.
                Disabled for Sole_Proprieto
              enum:
                - REAL_ESTATE
                - ENERGY
                - HEALTHCARE
                - ENTERTAINMENT
                - RETAIL
                - AGRICULTURE
                - INSURANCE
                - EDUCATION
                - HOSPITALITY
                - FINANCIAL
                - GAMBLING
                - CONSTRUCTION
                - NGO
                - MANUFACTURING
                - GOVERNMENT
                - TECHNOLOGY
                - COMMUNICATION
              type: string
            Website:
              maxLength: 100
              type: string
          required:
            - EntityType
            - BrandRelationship
            - City
            - CompanyName
            - Country
            - DisplayName
            - Ein
            - Email
            - Phone
            - PostalCode
            - State
            - Street
            - Vertical
            - IsMain
          type: object
      type: object
    BrandResponse:
      properties:
        BrandResponse:
          properties:
            Brand:
              $ref: '#/components/schemas/Brand'
          type: object
      type: object
    BrandRevetErrorResponse:
      properties:
        BrandRevetResponse:
          properties:
            ResponseStatus:
              $ref: '#/components/schemas/ResponseStatus'
          type: object
      type: object
    BrandVetting:
      properties:
        CreateDate:
          description: Timestamp when the vetting was created.
          type: string
        EvpId:
          description: >-
            External vetting provider ID for the brand. AEGIS(Aegis Mobile),
            CV(Campaign Verify), WMC(WMC Global)
          enum:
            - AEGIS
            - CV
            - WMC
          type: string
        VettedDate:
          description: Timestamp when the vetting was completed.
          type: string
        VettingClass:
          description: >-
            Identifies the vetting classification. For information on AUTHPLUS,
            please visit
            https://support.bandwidth.com/hc/en-us/articles/29663195110295-Brand-registration-Authentication
          enum:
            - STANDARD
            - ENHANCED
            - POLITICAL
            - AUTHPLUS
          type: string
        VettingId:
          description: >-
            Unique ID that identifies a vetting transaction performed by a
            vetting provider. This ID is provided by the vetting provider at
            time of vetting.
          type: string
        VettingScore:
          description: >-
            Score provided by the vetting provider. This is a numeric value
            between 0 and 100.
          type: integer
        VettingStatus:
          description: Identifies the vetting request status.
          enum:
            - PENDING
            - UNSCORE
            - ACTIVE
            - FAILED
            - EXPIRED
        VettingToken:
          description: Token used by some providers for vetting record confirmation.
          maxLength: 2560
          type: string
      type: object
    BrandVettingErrorResponse:
      properties:
        BrandVettingResponse:
          properties:
            BrandVetting:
              $ref: '#/components/schemas/ResponseStatus'
          type: object
      type: object
    BrandVettingImportRequest:
      properties:
        BrandVetting:
          properties:
            EvpId:
              description: >-
                External vetting provider ID for the brand. AEGIS(Aegis Mobile),
                CV(Campaign Verify), WMC(WMC Global)
              enum:
                - AEGIS
                - CV
                - WMC
              type: string
            VettingId:
              description: >-
                Unique ID that identifies a vetting transaction performed by a
                vetting provider. This ID is provided by the vetting provider at
                time of vetting.
              type: string
          type: object
      type: object
    BrandVettingImportResponse:
      properties:
        BrandVetting:
          properties:
            BrandId:
              description: Unique ID that identifies a brand.
              type: string
            EvpId:
              description: >-
                External vetting provider ID for the brand. AEGIS(Aegis Mobile),
                CV(Campaign Verify), WMC(WMC Global)
              enum:
                - AEGIS
                - CV
                - WMC
              type: string
            VettingId:
              description: >-
                Unique ID that identifies a vetting transaction performed by a
                vetting provider. This ID is provided by the vetting provider at
                time of vetting.
              type: string
            VettingStatus:
              description: >-
                Identifies the vetting request status.  PENDING, UNSCORE,
                ACTIVE, FAILED, EXPIRED ]
              enum:
                - PENDING
                - UNSCORE
                - ACTIVE
                - FAILED
                - EXPIRED
              type: string
          type: object
      type: object
    BrandVettingRequest:
      properties:
        BrandVetting:
          properties:
            EvpId:
              description: >-
                External vetting provider ID for the brand. AEGIS(Aegis Mobile),
                CV(Campaign Verify), WMC(WMC Global)
              enum:
                - AEGIS
                - CV
                - WMC
              type: string
            VettingClass:
              description: >-
                Identifies the vetting classification. For information on
                AUTHPLUS, please visit
                https://support.bandwidth.com/hc/en-us/articles/29663195110295-Brand-registration-Authentication
              enum:
                - STANDARD
                - ENHANCED
                - POLITICAL
                - AUTHPLUS
              type: string
          type: object
      type: object
    BrandVettingsErrorResponse:
      properties:
        BrandVettingsResponse:
          properties:
            BrandVetting:
              $ref: '#/components/schemas/ResponseStatus'
          type: object
      type: object
    BrandVettingsResponse:
      properties:
        BrandVettingsResponse:
          properties:
            BrandVetting:
              $ref: '#/components/schemas/BrandVetting'
          type: object
      type: object
    BrandsErrorResponse:
      properties:
        BrandsResponse:
          properties:
            Brand:
              $ref: '#/components/schemas/ResponseStatus'
          type: object
      type: object
    BrandsResponse:
      properties:
        BrandsResponse:
          properties:
            Brands:
              items:
                $ref: '#/components/schemas/Brand'
              type: array
          type: object
      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
    BulkPortInHistoryResponse:
      properties:
        BulkPortInHistoryResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    BulkPortin:
      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
        AlternateSpid:
          description: >-
            Unique customer AltSPID to be applied to the port-in requests. Can
            be changed only for DRAFT bulk port-in.
          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
        CustomerOrderId:
          description: >-
            The Customer Order ID is an ID assigned by the account owner to
            provide a reference number for the Order. Only alphanumeric values,
            dashes and spaces are allowed.
          type: string
        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
        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
        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
        RequestedFocDate:
          description: >-
            This is the FOC (Firm Order Commitment) Date requested by the person
            (or machine) creating the Port-in Order.
          format: date-time
          type: string
        RetryValidation:
          description: >-
            This element is only applicable in the PUT and PATCH payloads for a
            bulk port-in that is in the INVALID_DRAFT_TNS state due to a failure
            to retrieve carrier or RespOrg ownership for telephone numbers in
            the tnList.  If these conditions are met, including RetryValidation
            with a value of true will cause a fresh attempt to retrieve this
            information without requiring a change to the tnList.
          type: boolean
        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
        Subscriber:
          $ref: '#/components/schemas/Subscriber'
        TargetRespOrgId:
          description: >-
            For toll free port-ins, this value specifies the RespOrg ID that
            toll free numbers will be ported to.  When porting to Bandwidth, the
            value is generally JYT01.  When specified in a bulk port-in, the
            value is applied to all subtending toll free port-in orders, unless
            overridden in the subtending order.
          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. This element is not applicable for off-net and
            toll free port-types.
          items:
            $ref: '#/components/schemas/TnAttribute'
          type: array
        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
          type: string
          xml:
            name: LosingResellerName
      type: object
    BulkPortinErrorResponse:
      properties:
        BulkPortinResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    BulkPortinPatch:
      properties:
        AccountNumber:
          allOf:
            - $ref: '#/components/schemas/StringPatch'
          description: >-
            Account number associated with the account on the losing carrier,
            often required for wireless ports, or enterprise ports. This will be
            unusual for bulk port-in requests that are expected to decompose
            into port-in requests from multiple carriers.
        AlternateSpid:
          allOf:
            - $ref: '#/components/schemas/StringPatch'
          description: >-
            Unique customer AltSPID to be applied to the port-in requests. Can
            be changed only for DRAFT bulk port-in.
          example: X455
        BillingTelephoneNumber:
          allOf:
            - $ref: '#/components/schemas/StringPatch'
          description: >-
            Account or Billing telephone number for order. This will be unusual
            for bulk port-in requests that are expected to decompose into
            port-in requests from multiple carriers, because the value will be
            different for each losing carrier.
        CustomerOrderId:
          allOf:
            - $ref: '#/components/schemas/StringPatch'
          description: Internal customer order id for tracking the order.
          example: CUST12345
        LoaAuthorizingPerson:
          allOf:
            - $ref: '#/components/schemas/StringPatch'
          description: First and last name of person who authorized LOA.
        PeerId:
          allOf:
            - $ref: '#/components/schemas/IntPatch'
          description: >-
            This is the SIP Peer / Location ID made visible in the
            /accounts/{accountId}/sites/{siteId}/sipPeers API call.
          example: '521434'
        PinNumber:
          allOf:
            - $ref: '#/components/schemas/StringPatch'
          description: PIN Number, often required for wireless ports.
        ProcessingStatus:
          allOf:
            - $ref: '#/components/schemas/ProcessingStatusPatch'
          description: >-
            This is the processing status the bulk portin should transition
            into.
        RequestedFocDate:
          allOf:
            - $ref: '#/components/schemas/DatePatch'
          description: >-
            If present this will specify the date and time that the port-in is
            requested to happen. The actual time and date is subject to
            negotiation with the losing carriers.
        RetryValidation:
          description: |-
            Only allowed for PUT and PATCH requests.

             When telephone numbers are included in a bulk port-in order, Bandwidth accesses a vendor to determine if the numbers are portable, and who currently serves the numbers. 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_DRAFT_TNS state. This scenario can occur if our vendor is performing maintenance. Including RetryValidation with a value of true will cause the order to return to VALIDATE_DRAFT_TNS 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 or PATCH, when included in the request, but is not included in subsequent GET requests for the order.
          type: boolean
        SiteId:
          allOf:
            - $ref: '#/components/schemas/IntPatch'
          description: >-
            This is the Site / Sub-Account ID made visible in the
            /accounts/{accountId}/sites API call.
        Subscriber:
          $ref: '#/components/schemas/SubscriberPatch'
        TargetRespOrgId:
          description: >-
            For toll free port-ins, this value specifies the RespOrg ID that the
            toll free numbers should be ported to.  When porting to Bandwidth,
            the value is generally JYT01.  When specified in a bulk port-in, the
            value will be applied to all subtending toll free port-in orders,
            unless overridden in the subtending order.  The value should be 5
            characters in length, consisting of digits a-z, A-Z, and 0-9.
          example: JYT01
          format: alphanumeric
          maxLength: 5
          minLength: 5
          type: string
        TnAttributes:
          allOf:
            - $ref: '#/components/schemas/TnAttributesPatch'
          description: >-
            Attributes to be assigned to the telephone number. Optional
            parameter. Possible values - `Protected`.
        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
    BulkPortinPatchErrorResponse:
      properties:
        BulkPortinResponse:
          properties:
            PortinListErrors:
              items:
                properties:
                  PortinErrors:
                    properties:
                      Errors:
                        items:
                          properties:
                            Error:
                              properties:
                                Description:
                                  type: string
                                ErrorCode:
                                  type: integer
                              type: object
                        type: array
                      PortinOrderId:
                        type: string
                    type: object
              type: array
            ResponseStatus:
              properties:
                Description:
                  description: 'Detailed explanation about error '
                  type: string
              type: object
          type: object
      type: object
    BulkPortinPatchRequest:
      properties:
        BulkPortin:
          $ref: '#/components/schemas/BulkPortinPatch'
      type: object
    BulkPortinRequest:
      properties:
        BulkPortin:
          properties:
            AccountNumber:
              description: >-
                Account number associated with the account on the losing
                carrier, often required for wireless ports, or enterprise ports.
                This will be unusual for bulk port-in requests that are expected
                to decompose into port-in requests from multiple carriers.
              type: string
            AlternateSpid:
              description: >-
                Unique customer AltSPID to be applied to the port-in requests.
                Can be changed only for DRAFT bulk port-in.
              type: string
            BillingTelephoneNumber:
              description: >-
                Account or Billing telephone number for order. This will be
                unusual for bulk port-in requests that are expected to decompose
                into port-in requests from multiple carriers, because the value
                will be different for each losing carrier.
              type: string
            CustomerOrderId:
              description: Internal customer order id for tracking the order.
              format: alphanumeric
              type: string
            LoaAuthorizingPerson:
              description: First and last name of person who authorized LOA.
              type: string
            PeerId:
              description: >-
                This is the SIP Peer / Location ID made visible in the
                /accounts/{accountId}/sites/{siteId}/sipPeers API call.
              format: int32
              type: integer
            PinNumber:
              description: PIN Number, often required for wireless ports.
              type: string
            RequestedFocDate:
              description: >-
                If present this will specify the date and time that the port-in
                is requested to happen. The actual time and date is subject to
                negotiation with the losing carriers.
              example: '2013-05-10T15:14:22Z'
              format: ISO8601 date-time encoding of ZULU/UTC/GMT
              type: string
            RetryValidation:
              description: |-
                Only allowed for PUT and PATCH requests.

                 When telephone numbers are included in a bulk port-in order, Bandwidth accesses a vendor to determine if the numbers are portable, and who currently serves the numbers. 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_DRAFT_TNS state. This scenario can occur if our vendor is performing maintenance. Including RetryValidation with a value of true will cause the order to return to VALIDATE_DRAFT_TNS 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 or PATCH, when included in the request, but is not included in subsequent GET requests for the order.
              type: boolean
            SiteId:
              description: >-
                This is the Site / Sub-Account ID made visible in the
                /accounts/{accountId}/sites API call.
              format: int32
              type: integer
            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:
                  properties:
                    AddressLine2:
                      description: Put unit, suite, floor, etc. here.
                      type: string
                    City:
                      description: City.
                      type: string
                    Country:
                      description: 3 letter country code.
                      type: string
                    HouseNumber:
                      description: Street address number.
                      type: string
                    HousePrefix:
                      description: Street address number prefix.
                      type: string
                    HouseSuffix:
                      description: Street address number suffix.
                      type: string
                    PlusFour:
                      description: Zip + 4 value.
                      type: string
                    PostDirectional:
                      description: Street address post directional.
                      type: string
                    PreDirectional:
                      description: Street address pre-directional.
                      type: string
                    StateCode:
                      description: Two letter state code.
                      type: string
                    StreetName:
                      description: Street name.
                      type: string
                    StreetSuffix:
                      description: Street suffix.
                      type: string
                    Zip:
                      description: Zip code.
                      type: string
                  type: object
                SubscriberType:
                  description: >-
                    If residential, order will be rejected if a BusinessName is
                    entered.
                  enum:
                    - BUSINESS
                    - RESIDENTIAL
                    - GENERIC
                  type: string
              type: object
            TargetRespOrgId:
              description: >-
                For toll free port-ins, this value specifies the RespOrg ID that
                the toll free numbers should be ported to.  When porting to
                Bandwidth, the value is generally JYT01.  When specified in a
                bulk port-in, the value will be applied to all subtending toll
                free port-in orders, unless overridden in the subtending order. 
                The value should be 5 characters in length, consisting of digits
                a-z, A-Z, and 0-9.
              format: alphanumeric
              maxLength: 5
              minLength: 5
              type: string
            TnAttributes:
              description: >-
                Attributes to be assigned to the telephone number. Optional
                parameter. Possible values - `Protected`.
              items:
                $ref: '#/components/schemas/TnAttribute'
              type: array
            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
      type: object
    BulkPortinResponse:
      properties:
        BulkPortinResponse:
          properties:
            BulkPortin:
              $ref: '#/components/schemas/BulkPortin'
          type: object
      type: object
    BulkPortinResponses:
      properties:
        BulkPortinResponses:
          properties:
            BulkPortinResponse:
              items:
                properties:
                  CompanyName:
                    description: >-
                      The name associated with the Bandwidth account that
                      created this order.
                    type: string
                  LastModifiedBy:
                    description: >-
                      The username that last modified the order.  This may show
                      as "System" if the order was last modified by Bandwidth
                      automated software.
                    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 when the order was created.
                    type: string
                  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
                  PortinList:
                    $ref: '#/components/schemas/PortinList'
                  ProcessingStatus:
                    enum:
                      - DRAFT
                      - IN_PROGRESS
                      - NEEDS_ATTENTION
                      - PARTIAL
                      - COMPLETED
                      - CANCELLED
                      - VALIDATE_DRAFT_TNS
                      - VALID_DRAFT_TNS
                      - INVALID_DRAFT_TNS
                    type: string
                  RequestedFocDate:
                    description: >-
                      This is the FOC (Firm Order Commitment) date requested by
                      the person (or machine) creating the order.
                    type: string
                  TargetRespOrgId:
                    description: >-
                      For toll free port-ins, this value specifies the RespOrg
                      ID that toll free numbers will be ported to.  When porting
                      to Bandwidth, the value is generally JYT01.  When
                      specified in a bulk port-in, the value is applied to all
                      subtending toll free port-in orders, unless overridden in
                      the subtending order.
                    type: string
              type: array
            Links:
              $ref: '#/components/schemas/Links'
            TotalCount:
              type: integer
          type: object
      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:
      properties:
        Url:
          type: string
      type: object
    CallbackCredentials:
      description: >-
        Recommended these credentials will be used to when authenticating with
        the notification receiving server
      properties:
        BasicAuthentication:
          $ref: '#/components/schemas/BasicAuthenticationCredentials'
      type: object
    CallbackCreds:
      properties:
        Password:
          type: string
        UserId:
          type: string
      type: object
    CallbackPayload:
      properties:
        Url:
          type: string
      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: LEGACY
          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 LEGACY.
          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
    CampaignErrorResponse:
      properties:
        CampaignErrorResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    CampaignRequest:
      properties:
        Campaign:
          properties:
            AffiliateMarketing:
              description: >-
                Is affiliate marketing being used (or was used in the creation
                of the campaign)? Default false
              type: boolean
            AgeGated:
              description: Age gated content in campaign? Default false
              type: boolean
            AutoRenewal:
              description: Campaign subscription auto-renewal status. Default true
              type: boolean
            BrandId:
              description: >-
                Alphanumeric identifier of the brand associated with this
                campaign
              type: string
            Description:
              description: Summary description of this campaign.
              maximum: 4096
              minimum: 40
              type: string
            DirectLending:
              description: >-
                Will the campaign include content related to direct lending or
                other loan arrangements? Default false
              type: boolean
            EmbeddedLink:
              description: >-
                Does message generated by the campaign include URL link in SMS?
                Default false
              type: boolean
            EmbeddedPhone:
              description: >-
                Does message generated by the campaign include phone number in
                SMS? Default false
              type: boolean
            HelpKeywords:
              description: >-
                Help keywords of the campaign. TCR will default the value to
                HELP. Multiple keywords are comma separated without space.
              maximum: 320
              type: string
            HelpMessage:
              description: Help message of the campaign.
              maximum: 320
              minimum: 20
              type: string
            MessageFlow:
              description: Message flow description.
              maximum: 2048
              minimum: 40
              type: string
            NumberPool:
              description: Does campaign utilize pool of phone numbers? Default false
              type: boolean
            OptinKeywords:
              description: >-
                Opt-In keywords of the campaign. Multiple keywords are comma
                separated without space.
              maximum: 320
              type: string
            OptinMessage:
              description: Opt-In message of the campaign.
              maximum: 320
              minimum: 20
              type: string
            OptoutKeywords:
              description: >-
                Opt-Out keywords of the campaign. TCR will default the value to
                STOP. Multiple keywords are comma separated without space.
              maximum: 320
              type: string
            OptoutMessage:
              description: Opt-Out message of the campaign.
              maximum: 320
              minimum: 20
              type: string
            PrivacyPolicyLink:
              description: URL to the privacy policy of the campaign.
              format: uri
              maximum: 255
              type: string
            ReferenceId:
              description: >-
                Caller supplied campaign reference ID. If supplied, the value
                must be unique across all submitted campaigns. Can be used to
                prevent duplicate campaign registrations.
              maximum: 50
              type: string
            ResellerId:
              description: >-
                Alphanumeric identifier of the reseller that you want to
                associate with this campaign.
              type: string
            Sample1:
              description: >-
                Message sample. Some campaign tiers require 1 or more message
                samples.
              maximum: 1024
              minimum: 20
              type: string
            Sample2:
              description: >-
                Message sample. Some campaign tiers require 2 or more message
                samples. Required for some usecases.
              maximum: 1024
              minimum: 20
              type: string
            Sample3:
              description: >-
                Message sample. Some campaign tiers require 3 or more message
                samples. Required for some usecases.
              maximum: 1024
              minimum: 20
              type: string
            Sample4:
              description: >-
                Message sample. Some campaign tiers require 4 or more message
                samples. Required for some usecases.
              maximum: 1024
              minimum: 20
              type: string
            Sample5:
              description: >-
                Message sample. Some campaign tiers require 5 or more message
                samples. Required for some usecases.
              maximum: 1024
              minimum: 20
              type: string
            SubUsecases:
              description: >-
                Campaign usecase. Must be of defined valid types. Required for
                some usecases.
              enum:
                - 2FA
                - ACCOUNT_NOTIFICATION
                - CARRIER_EXEMPT
                - CHARITY
                - CONVERSATIONAL
                - CUSTOMER_CARE
                - DELIVERY_NOTIFICATION
                - EMERGENCY
                - FRAUD_ALERT
                - HIGHER_EDUCATION
                - K12_EDUCATION
                - LOW_VOLUME
                - MARKETING
                - MIXED
                - POLITICAL
                - POLLING_VOTING
                - PUBLIC_SERVICE_ANNOUNCEMENT
                - SECURITY_ALERT
                - SOCIAL
                - SWEEPSTAKE
                - TRIAL
                - AGENTS_FRANCHISES
                - PROXY
                - UCAAS_HIGH
                - UCAAS_LOW
                - M2M
              type: string
            SubscriberHelp:
              description: >-
                Have you implemented a response to the HELP keyword informing
                customers of how they can contact the message sender? Default
                false
              type: boolean
            SubscriberOptIn:
              description: >-
                Does campaign require subscriber to opt-in before SMS is sent to
                subscriber? Default false
              type: boolean
            SubscriberOptOut:
              description: >-
                Does campaign support subscriber opt-out keyword(s)? Default
                false
              type: boolean
            TermsAndConditionsLink:
              description: URL to the terms and conditions of the campaign.
              format: uri
              maximum: 255
              type: string
            Usecase:
              description: Campaign usecase. Must be of defined valid types
              enum:
                - 2FA
                - ACCOUNT_NOTIFICATION
                - CARRIER_EXEMPT
                - CHARITY
                - CONVERSATIONAL
                - CUSTOMER_CARE
                - DELIVERY_NOTIFICATION
                - EMERGENCY
                - FRAUD_ALERT
                - HIGHER_EDUCATION
                - K12_EDUCATION
                - LOW_VOLUME
                - MARKETING
                - MIXED
                - POLITICAL
                - POLLING_VOTING
                - PUBLIC_SERVICE_ANNOUNCEMENT
                - SECURITY_ALERT
                - SOCIAL
                - SWEEPSTAKE
                - TRIAL
                - AGENTS_FRANCHISES
                - PROXY
                - UCAAS_HIGH
                - UCAAS_LOW
                - M2M
              type: string
            Vertical:
              description: >-
                Optional business/industry segment of this campaign (any value
                allowed) as TCR has deprecated this field.
              enum:
                - REAL_ESTATE
                - HEALTHCARE
                - ENERGY
                - ENTERTAINMENT
                - RETAIL
                - AGRICULTURE
                - INSURANCE
                - EDUCATION
                - HOSPITALITY
                - FINANCIAL
                - GAMBLING
                - CONSTRUCTION
                - NGO
                - MANUFACTURING
                - GOVERNMENT
                - TECHNOLOGY
                - COMMUNICATION
              type: string
          required:
            - BrandId
            - Usecase
            - SubUsecases
            - Description
            - Sample1
            - MessageFlow
            - HelpMessage
            - OptoutMessage
            - AutoRenewal
          type: object
      type: object
    CampaignSettingsErrorResponse:
      properties:
        CampaignSettingsResponse:
          properties:
            CampaignSettings:
              $ref: '#/components/schemas/ResponseStatus'
          type: object
      type: object
    CampaignSettingsRequest:
      properties:
        CampaignSettings:
          properties:
            BusinessIdentity:
              description: Business Identity of customer
              enum:
                - Reseller
                - Direct Customer
              type: string
            Reseller:
              description: >-
                Reseller Properties. This block is not allowed for Direct
                Customer.
              properties:
                CompanyName:
                  description: Company name of a reseller
                  type: string
                Email:
                  description: Email ID of a reseller
                  type: string
                Phone:
                  description: 11 digits phone number of a reseller. Must put '+' in front
                  pattern: ^[+][1][0-9]{10}$
                  type: string
              type: object
          required:
            - BusinessIdentity
          type: object
      type: object
    CampaignTnsErrorResponse:
      properties:
        CampaignTnsResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    CampaignTnsResponse:
      properties:
        CampaignTnsResponse:
          properties:
            TelephoneNumbers:
              items:
                properties:
                  TelephoneNumber:
                    type: string
                type: object
              type: array
            TotalCount:
              type: number
          type: object
      title: CampaignTnsResponse
      type: object
    CampaignsErrorResponse:
      properties:
        CampaignsErrorResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    CitySearchAndOrder:
      allOf:
        - $ref: '#/components/schemas/orderMetadata'
        - properties:
            CitySearchAndOrderType:
              $ref: '#/components/schemas/CitySearchAndOrderType'
          type: object
      xml:
        name: Order
    CitySearchAndOrderResponse:
      properties:
        order:
          properties:
            allOf:
              - $ref: '#/components/schemas/orderResponseMetadata'
              - properties:
                  CitySearchAndOrderType:
                    $ref: '#/components/schemas/CitySearchAndOrderType'
                type: object
          type: object
          xml:
            name: Order
        orderStatus:
          example: RECEIVED
          type: string
          xml:
            name: OrderStatus
      type: object
      xml:
        name: OrderResponse
    CitySearchAndOrderType:
      properties:
        City:
          type: string
        Quantity:
          format: int32
          type: integer
        State:
          type: string
      type: object
      xml:
        name: CitySearchAndOrderType
    CitySearchResult:
      properties:
        AvailableTelephoneNumberCount:
          format: int32
          type: integer
        Name:
          type: string
        RcAbbreviation:
          type: string
      title: City
      type: object
    CitySearchResults:
      properties:
        CityResponse:
          properties:
            Cities:
              items:
                $ref: '#/components/schemas/CitySearchResult'
              type: array
            ResultCount:
              format: int32
              type: integer
          type: object
      type: object
    CityWithCount:
      properties:
        City:
          type: string
        Count:
          type: integer
      type: object
    CombinedSearchAndOrder:
      allOf:
        - $ref: '#/components/schemas/orderMetadata'
        - properties:
            CombinedSearchAndOrderType:
              $ref: '#/components/schemas/CombinedSearchAndOrderType'
          type: object
      xml:
        name: Order
    CombinedSearchAndOrderResponse:
      properties:
        order:
          properties:
            allOf:
              - $ref: '#/components/schemas/orderResponseMetadata'
              - properties:
                  CombinedSearchAndOrderType:
                    $ref: '#/components/schemas/CombinedSearchAndOrderType'
                type: object
          type: object
          xml:
            name: Order
        orderStatus:
          example: RECEIVED
          type: string
          xml:
            name: OrderStatus
      type: object
      xml:
        name: OrderResponse
    CombinedSearchAndOrderType:
      properties:
        AreaCode:
          type: string
        City:
          type: string
        EnableLCA:
          type: boolean
        EndsIn:
          type: boolean
        LATA:
          type: string
        LocalVanity:
          type: string
        NpaNxx:
          type: string
        NpaNxxX:
          type: string
        Quantity:
          format: int32
          type: integer
        RateCenter:
          type: string
        State:
          type: string
        Zip:
          type: string
      type: object
      xml:
        name: CombinedSearchAndOrderType
    Contact:
      properties:
        Email:
          type: string
        Fax:
          type: string
        FirstName:
          type: string
        LastName:
          type: string
        Mobile:
          type: string
        OtherPhone:
          type: string
        Phone:
          type: string
        Suffix:
          type: string
        Title:
          type: string
        WebsiteAddress:
          type: string
      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
    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: '2529690000'
          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
    CoveredRateCenter:
      properties:
        Abbreviation:
          type: string
        AvailableNumberCount:
          format: int32
          type: integer
        Cities:
          items:
            type: string
            xml:
              name: City
          type: array
          uniqueItems: true
          xml:
            wrapped: true
        Id:
          format: int32
          type: integer
        Lata:
          format: int32
          type: integer
        LocalRateCenterIds:
          items:
            format: int32
            type: integer
            xml:
              name: RateCenterId
          type: array
          uniqueItems: true
          xml:
            name: LocalRateCenters
            wrapped: true
        Name:
          type: string
        NpaNxxXs:
          items:
            type: string
            xml:
              name: NpaNxxX
          type: array
          uniqueItems: true
          xml:
            wrapped: true
        Npas:
          items:
            type: string
            xml:
              name: Npa
          type: array
          uniqueItems: true
          xml:
            wrapped: true
        State:
          type: string
        Tiers:
          items:
            format: byte
            type: string
            xml:
              name: Tier
          type: array
          uniqueItems: true
          xml:
            wrapped: true
        ZipCodes:
          items:
            type: string
            xml:
              name: ZipCode
          type: array
          uniqueItems: true
          xml:
            wrapped: true
        limitedAvailableNumberCount:
          format: int32
          type: integer
      type: object
      xml:
        name: CoveredRateCenter
    CoveredRateCenterResponse:
      properties:
        CoveredRateCenter:
          $ref: '#/components/schemas/CoveredRateCenter'
      type: object
    CoveredRateCenterSearchErrorResponse:
      properties:
        CoveredRateCenters:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    CoveredRateCenterSearchResponse:
      properties:
        CoveredRateCenters:
          properties:
            CoveredRateCenter:
              items:
                $ref: '#/components/schemas/CoveredRateCenter'
              type: array
            Links:
              $ref: '#/components/schemas/PaginationLinks'
            TotalCount:
              format: int32
              type: integer
          type: object
      type: object
    CreatedBy:
      description: Order created by the user.
      type: string
    Csr:
      properties:
        AccountNumber:
          description: >-
            Identifies the main account number on your bill, assigned by the
            current service provider.
          format: Alphanumeric
          maxLength: 20
          type: string
        AccountTelephoneNumber:
          description: >-
            Identifies the account telephone number assigned by the current
            service provider.
          format: Alphanumeric
          maxLength: 10
          type: string
        AddressLine1:
          description: Identifies the address line 1 portion of the service address.
          format: Alphanumeric
          maxLength: 200
          type: string
        AuthorizingUserName:
          description: Identifies the name of the end user who signed the authorization.
          format: Alphanumeric
          maxLength: 100
          type: string
        City:
          description: >-
            Identifies the city of the end user where the telephone number is
            being serviced.
          format: Alphanumeric
          maxLength: 100
          type: string
        CustomerCode:
          description: Identifies the customer code associated with the service provider.
          format: Numeric
          maxLength: 3
          type: string
        CustomerOrderId:
          description: Internal customer order id for tracking the order.
          format: Alphanumeric values, dashes and spaces
          maxLength: 40
          type: string
        EndUserName:
          description: >-
            Identifies the name of the end user associated with the telephone
            number being queried.
          format: Alphanumeric
          maxLength: 100
          type: string
        EndUserPIN:
          description: Identifies the end user’s personal identification number (PIN).
          format: Alphanumeric
          maxLength: 50
          type: string
        EndUserPassword:
          description: Identifies the end user’s password to access the CSR, if applicable.
          format: Alphanumeric
          maxLength: 100
          type: string
        State:
          description: >-
            Identifies the abbreviation for the state or province of the end
            user where the telephone number is being serviced. Must be
            alphabetic characters in the format XX which is the state or
            province abbreviation.
          format: Alphabetic
          maxLength: 2
          type: string
        Status:
          description: Displays the CSR orders with a given order status.
          type: string
        TypeOfService:
          description: The type of service identifying the end user account.
          format: Alphabetic
          maxLength: 50
          type: string
        WorkingOrBillingTelephoneNumber:
          description: Working or Billing telephone number in 10-digits format NPANXXXXXX.
          maxLength: 10
          type: string
        ZIPCode:
          description: >-
            Identifies the ZIP code, ZIP Code + extension, or postal code or the
            end user where the telephone number is being serviced.
          format: Alphanumeric (including the dash if using ZIP Code with extension)
          maxLength: 10
          type: string
      required:
        - WorkingOrBillingTelephoneNumber
      type: object
    CsrErrorResponse:
      properties:
        CsrOrderResponse:
          properties:
            Errors:
              items:
                properties:
                  Code:
                    type: integer
                  Description:
                    type: string
                title: Error
              type: array
          type: object
      title: CsrOrderResponse
      type: object
    CsrGetResponse:
      allOf:
        - properties:
            CustomerOrderId:
              description: >-
                Internal customer order id for tracking the order. Only
                alphanumeric values, dashes and spaces are allowed. Max length
                is 40 characters.
              type: string
            LastModifiedBy:
              description: >-
                This is the user-name of the user that last modified the CSR
                Order.
              type: string
            LastModifiedDate:
              description: This is the date when CSR Order was last modified.
              type: string
            OrderCreateDate:
              description: The date and time when the order was created.
              type: string
            OrderId:
              description: The identifier that uniquely identifies a CSR order.
              type: string
            WorkingOrBillingTelephoneNumber:
              description: >-
                Working or Billing telephone number in 10-digits format
                NPANXXXXXX.
              type: string
        - $ref: '#/components/schemas/Csr'
      type: object
    CsrResponse:
      properties:
        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
        AccountNumber:
          description: >-
            The account number that the telephone number being queried is
            associated with on the carrier that currently hosts that number.
          type: string
        AccountTelephoneNumber:
          description: >-
            Identifies the account telephone number assigned by the current
            service provider. Alphanumeric characters are supported with a max
            length of 10 characters.
          type: string
        AddressLine1:
          description: >-
            Identifies the address line 1 portion of the service address.
            Alphanumeric characters are supported with a max length of 200
            characters.
          type: string
        AuthorizingUserName:
          description: >-
            Identifies the name of the end user who signed the authorization.
            Alphanumeric characters are supported with a max length of 100
            characters.
          type: string
        City:
          description: >-
            Identifies the city of the end user where the telephone number is
            being serviced. Alphanumeric characters are supported with a max
            length of 100 characters.
          type: string
        CsrData:
          properties:
            AccountNumber:
              description: >-
                Identifies the main account number on your bill, assigned by the
                current service provider. Alphanumeric characters are supported
                with a max length of 20 characters.
              type: string
            CustomerName:
              description: >-
                The subscriber name associated with the telephone number being
                queried.
              type: string
            ServiceAddress:
              description: >-
                The service address associated with the telephone number being
                queried.
              properties:
                City:
                  description: >-
                    Identifies the city of the end user where the telephone
                    number is being serviced. Alphanumeric characters are
                    supported with a max length of 100 characters.
                  type: string
                State:
                  description: >-
                    Identifies the abbreviation for the state or province of the
                    end user where the telephone number is being serviced. Must
                    be alpha characters only in the format XX with a max length
                    of 2 characters, where XX is the state or province
                    abbreviation.
                  type: string
                UnparsedAddress:
                  description: The service address other than the City, State, and ZIP.
                  type: string
                Zip:
                  description: >-
                    Identifies the ZIP code, ZIP Code + extension, or postal
                    code or the end user where the telephone number is being
                    serviced. Alphanumeric characters are supported with a max
                    length of 10 characters (including the dash if using ZIP
                    Code with extension).
                  type: string
              type: object
            WorkingTelephoneNumber:
              description: The telephone number for which the CSR was retrieved.
              type: string
            WorkingTelephoneNumbersOnAccount:
              description: >-
                The list of all telephone numbers on the account, associate with
                the billing telephone number.
              items:
                $ref: '#/components/schemas/TelephoneNumber'
              type: array
          type: object
        CustomerCode:
          description: >-
            Identifies the customer code associated with the service provider.
            Must be numeric characters only with a max length of 3 characters.
          type: string
        CustomerOrderId:
          description: >-
            Internal customer order id for tracking the order.  Only
            alphanumeric values, dashes and spaces are allowed. Max length is 40
            characters.
          type: string
        EndUserName:
          description: >-
            Identifies the name of the end user associated with the telephone
            number being queried. Alphanumeric characters are supported with a
            max length of 100 characters.
          type: string
        EndUserPIN:
          description: >-
            Identifies the end user’s personal identification number (PIN).
            Alphanumeric characters are supported with a max length of 50
            characters.
          type: string
        LastModifiedBy:
          description: This is the user-name of the user that last modified the CSR Order.
          type: string
        LastModifiedDate:
          description: This is the date when Port-in Order was last modified.
          type: string
        OrderCreateDate:
          description: The date and time on which the CSR order was created.
          type: string
        OrderId:
          description: The identifier that uniquely identifies a CSR order.
          type: string
        State:
          description: >-
            Identifies the abbreviation for the state or province of the end
            user where the telephone number is being serviced. Must be alpha
            characters only in the format XX with a max length of 2 characters,
            where XX is the state or province abbreviation.
          type: string
        Status:
          description: 'The state of the CSRS order.  Possible values are: COMPLETE, FAILED.'
          type: string
        TypeOfService:
          description: >-
            The type of service identifying the end user account. Must be
            alphabetic characters only with a max length of 50 characters.
          type: string
        ZIPCode:
          description: >-
            Identifies the ZIP code, ZIP Code + extension, or postal code or the
            end user where the telephone number is being serviced. Alphanumeric
            characters are supported with a max length of 10 characters
            (including the dash if using ZIP Code with extension).
          type: string
      type: object
    CsrResponses:
      properties:
        CsrResponses:
          properties:
            CsrResponse:
              items:
                $ref: '#/components/schemas/CsrResponse'
              type: array
            Links:
              $ref: '#/components/schemas/Links'
            TotalCount:
              type: integer
          type: object
      type: object
    CustomerOrderId:
      description: >-
        An optional customer-defined order identifier that is stored with the
        Bandwidth order. This value is opaque to Bandwidth.
      maxLength: 255
      type: string
    CustomerOrderIdE911:
      description: >-
        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
      maxLength: 40
      title: CustomerOrderId
      type: string
    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
    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:
          description: Time-to-live in seconds.
          type: integer
        Type:
          description: DNS record type.
          enum:
            - A
            - SRV
          type: string
      type: object
    DatePatch:
      properties:
        delete:
          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
    DisconnectTelephoneNumberOrder:
      properties:
        DisconnectTelephoneNumberOrder:
          properties:
            CustomerOrderId:
              description: >-
                The CustomerOrderId is an optional field that may be provided by
                the customer and will remain with the order. Only alphanumeric
                values, dashes and spaces are allowed.The value is opaque to
                Bandwidth.
              maxLength: 40
              type: string
            DisconnectTelephoneNumberOrderType:
              $ref: '#/components/schemas/DisconnectTelephoneNumberOrderType'
            Name:
              deprecated: true
              description: The name of the order.
              maxLength: 50
              type: string
          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: datetime
                  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
    DldaListingName:
      properties:
        Designation:
          type: string
        FirstName:
          description: Required in case RESIDENTIAL SubscriberType is chosen
          type: string
        FirstName2:
          description: ''
          type: string
        LastName:
          type: string
        PlaceListingAs:
          type: string
        TitleOfAddress:
          type: string
        TitleOfAddress2:
          type: string
        TitleOfAddress2Name2:
          type: string
        TitleOfAddressName2:
          type: string
        TitleOfLineage:
          type: string
        TitleOfLineageName2:
          type: string
      required:
        - LastName
      type: object
    DldaOrder:
      properties:
        DldaOrder:
          $ref: '#/components/schemas/DldaOrderPayload'
      type: object
    DldaOrderErrorNotFoundResponse:
      properties:
        DldaOrderResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    DldaOrderErrorResponse:
      properties:
        DldaOrderResponse:
          properties:
            DldaOrder:
              $ref: '#/components/schemas/DldaOrderResponsePayload'
            ResponseStatus:
              $ref: '#/components/schemas/ResponseStatus'
          type: object
      type: object
    DldaOrderPayload:
      properties:
        CustomerOrderId:
          description: >-
            The Customer Order ID is an ID assigned by the account owner to
            provide a reference number for the Order. Only alphanumeric values,
            dashes and spaces are allowed.
          maxLength: 40
          type: string
        DeleteDldaTnGroups:
          type: string
        DldaTnGroups:
          items:
            $ref: '#/components/schemas/DldaTnGroup'
          type: array
      type: object
    DldaOrderReportErrorResponse:
      properties:
        DldaOrderReportResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    DldaOrderResponse:
      properties:
        DldaOrderResponse:
          properties:
            DldaOrder:
              $ref: '#/components/schemas/DldaOrderResponsePayload'
          type: object
      type: object
    DldaOrderResponsePayload:
      properties:
        AccountId:
          type: integer
        CreatedByUser:
          type: string
        CustomerOrderId:
          description: >-
            The Customer Order ID is an ID assigned by the account owner to
            provide a reference number for the Order. Only alphanumeric values,
            dashes and spaces are allowed.
          maxLength: 40
          type: string
        DldaTnGroups:
          items:
            $ref: '#/components/schemas/DldaTnGroup'
          type: array
        ErrorList:
          items:
            properties:
              Error:
                properties:
                  Code:
                    format: int32
                    type: integer
                  Description:
                    type: string
                  TelephoneNumber:
                    type: string
                type: object
          type: array
        LastModifiedDate:
          type: string
        OrderCreateDate:
          type: string
        OrderId:
          type: string
        ProcessingStatus:
          type: string
      type: object
    DldaTnGroup:
      description: AddressType has to be DLDA
      properties:
        Address:
          $ref: '#/components/schemas/Address'
        ListAddress:
          type: boolean
        ListingName:
          $ref: '#/components/schemas/DldaListingName'
        ListingType:
          enum:
            - LISTED
            - NON_LISTED
            - NON_PUBLISHED
          type: string
        SubscriberType:
          enum:
            - RESIDENTIAL
            - BUSINESS
          type: string
        TelephoneNumbers:
          description: >-
            A list of telephone numbers you need to bind information from
            payload
          items:
            type: string
            xml:
              name: TelephoneNumber
          type: array
      required:
        - SubscriberType
        - ListingType
        - ListAddress
      type: object
    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:
          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
    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
    EepToEngAssociationsPayload:
      properties:
        EepAeuiIds:
          items:
            $ref: '#/components/schemas/Identifier'
          type: array
        EepTns:
          items:
            $ref: '#/components/schemas/TelephoneNumber'
          type: array
        Endpoints:
          items:
            $ref: '#/components/schemas/Identifier'
          type: array
      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 order identifier that is stored with
            the Bandwidth order. This value is opaque to Bandwidth.
          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
    EmergencyNotificationGroupPayload:
      properties:
        CreatedDate:
          type: string
        Description:
          type: string
        EepToEngAssociations:
          $ref: '#/components/schemas/EepToEngAssociationsPayload'
        EmergencyNotificationRecipients:
          $ref: '#/components/schemas/EmergencyNotificationRecipientsPayload'
        EndpointCount:
          type: integer
        Identifier:
          $ref: '#/components/schemas/Identifier'
        ModifiedBy:
          type: string
        ModifiedDate:
          type: string
      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
    EmergencyNotificationRecipientPayload:
      properties:
        Callback:
          $ref: '#/components/schemas/CallbackPayload'
        CreatedDate:
          type: string
        Description:
          type: string
        EmailAddress:
          type: string
        GroupCount:
          type: string
        Identifier:
          $ref: '#/components/schemas/Identifier'
        LastModifiedDate:
          type: string
        Sms:
          items:
            $ref: '#/components/schemas/TelephoneNumber'
          type: array
        Tts:
          items:
            $ref: '#/components/schemas/TelephoneNumber'
          type: array
        Type:
          type: string
        UpdatedBy:
          type: string
      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
    EmergencyNotificationRecipientsPayload:
      properties:
        EmergencyNotificationRecipient:
          items:
            $ref: '#/components/schemas/EmergencyNotificationRecipientPayload'
          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:
          type: integer
        Description:
          type: string
        TelephoneNumbers:
          items:
            $ref: '#/components/schemas/TelephoneNumber'
          type: array
      type: object
    ErrorResponse:
      properties:
        ErrorResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    ExistingTelephoneNumberOrder:
      allOf:
        - $ref: '#/components/schemas/orderMetadata'
        - properties:
            ExistingTelephoneNumberOrderType:
              $ref: '#/components/schemas/ExistingTelephoneNumberOrderType'
          type: object
      xml:
        name: Order
    ExistingTelephoneNumberOrderResponse:
      properties:
        order:
          properties:
            allOf:
              - $ref: '#/components/schemas/orderResponseMetadata'
              - properties:
                  ExistingTelephoneNumberOrderType:
                    $ref: '#/components/schemas/ExistingTelephoneNumberOrderType'
                type: object
          type: object
          xml:
            name: Order
        orderStatus:
          example: RECEIVED
          type: string
          xml:
            name: OrderStatus
      type: object
      xml:
        name: OrderResponse
    ExistingTelephoneNumberOrderType:
      properties:
        ReservationIdList:
          items:
            type: string
            xml:
              name: ReservationId
          type: array
        TelephoneNumberList:
          items:
            type: string
            xml:
              name: TelephoneNumber
          type: array
      type: object
      xml:
        name: ExistingTelephoneNumberOrderType
    ExternalTnsOrder:
      properties:
        AccountId:
          type: string
        Action:
          enum:
            - IMPORT
            - REMOVE
          type: string
        CreatedByUser:
          type: string
        CustomerOrderId:
          type: string
        Errors:
          items:
            $ref: '#/components/schemas/Error'
          type: array
        LastModifiedDate:
          type: string
        LoaType:
          enum:
            - CARRIER
            - SUBSCRIBER
          type: string
        OrderCreateDate:
          type: string
        ProcessingStatus:
          enum:
            - RECEIVED
            - PROCESSING
            - COMPLETE
            - PARTIAL
            - FAILED
          type: string
        SipPeerId:
          type: string
        SiteId:
          type: string
        TelephoneNumbers:
          items:
            $ref: '#/components/schemas/TelephoneNumber'
          type: array
      type: object
    ExternalTnsOrderErrorResponse:
      properties:
        ExternalTnsOrderResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    ExternalTnsOrderRequest:
      properties:
        ExternalTnsOrder:
          properties:
            Action:
              description: Indentify the action on external TNs
              enum:
                - IMPORT
                - REMOVE
              type: string
            CustomerOrderId:
              description: An order ID created by the customer for their tracking purposes
              format: Only alphanumeric values, dashes and spaces are allowed
              maxLength: 40
              type: string
            LoaType:
              default: CARRIER
              description: Identify the LoaType on external TNs
              enum:
                - CARRIER
                - SUBSCRIBER
              type: string
            SipPeerId:
              description: >-
                The ID of the SIP Peer that the Telephone Numbers are to be
                provisioned to
              format: int32
              type: integer
            SiteId:
              description: >-
                The ID of the Site that the Telephone Numbers are to be
                provisioned to
              format: int32
              type: integer
            TelephoneNumbers:
              items:
                $ref: '#/components/schemas/TelephoneNumber'
              type: array
          required:
            - SiteId
            - Action
          type: object
      type: object
    ExternalTnsOrderResponse:
      properties:
        ExternalTnsOrderResponse:
          properties:
            ExternalTnsOrder:
              $ref: '#/components/schemas/ExternalTnsOrder'
          type: object
      type: object
    ExternalTnsOrders:
      properties:
        ExternalTnsOrders:
          properties:
            ExternalTnsOrder:
              items:
                $ref: '#/components/schemas/ExternalTnsOrder'
              type: array
            TotalCount:
              type: integer
          type: object
      type: object
    ExternalTnsOrdersError:
      properties:
        ExternalTnsOrders:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    Feature:
      properties:
        Status:
          type: string
      type: object
    FileData:
      properties:
        FileMetaData:
          $ref: '#/components/schemas/FileMetaData'
        FileName:
          type: string
      type: object
    FileListResponse:
      properties:
        FileListResponse:
          properties:
            fileCount:
              type: integer
            fileData:
              $ref: '#/components/schemas/FileData'
            resultCode:
              type: integer
            resultMessage:
              type: string
          type: object
      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
    FileMetaDataRequest:
      properties:
        FileMetaData:
          properties:
            DocumentName:
              type: string
            DocumentType:
              enum:
                - LOA
                - INVOICE
                - CSR
                - OTHER
              type: string
          type: object
      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
    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
    Host:
      properties:
        HostName:
          type: string
        Port:
          type: string
      type: object
    HostedTelephoneNumberDetailHistory:
      properties:
        AccountId:
          format: int32
          type: integer
        Features:
          items:
            $ref: '#/components/schemas/Feature'
          type: array
        LastModified:
          type: string
        MessagingSettings:
          $ref: '#/components/schemas/TnDetailsMessagingSettings'
        ServiceTypes:
          items:
            type: string
            xml:
              name: TnAttribute
          type: array
        SipPeer:
          $ref: '#/components/schemas/SipPeer'
        Site:
          $ref: '#/components/schemas/Site'
        TnAttributes:
          items:
            type: string
            xml:
              name: TnAttribute
          type: array
        TnOptions:
          $ref: '#/components/schemas/TnOptions'
      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
    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:
          type: string
        Errors:
          items:
            $ref: '#/components/schemas/Error'
          type: array
        LastModifiedDate:
          type: string
        LoaAuthorizingPerson:
          type: string
        LoaType:
          enum:
            - CARRIER
            - SUBSCRIBER
          type: string
        OrderCreateDate:
          type: string
        ProcessingStatus:
          enum:
            - RECEIVED
            - PROCESSING
            - COMPLETE
            - PARTIAL
            - FAILED
          type: string
        SipPeerId:
          type: string
        SiteId:
          type: string
        Subscriber:
          $ref: '#/components/schemas/ImportTnSubscriber'
        TelephoneNumbers:
          items:
            $ref: '#/components/schemas/TelephoneNumber'
          type: array
      type: object
    ImportTnOrderError:
      properties:
        ImportTnOrdersResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    ImportTnOrderRequest:
      properties:
        ImportTnOrder:
          properties:
            CustomerOrderId:
              description: >-
                Internal customer order id for tracking the order. Only
                alphanumeric values, dashes and spaces are allowed. Max length
                is 40 characters
              type: string
            LoaAuthorizingPerson:
              description: First and last name of person who authorized LOA.
              type: string
            LoaType:
              default: SUBSCRIBER
              description: Identify the LoaType on TNs.
              enum:
                - SUBSCRIBER
                - CARRIER
              type: string
            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
            Subscriber:
              description: Subscriber information.
              properties:
                Name:
                  description: Subscriber business / customer name.
                  maxLength: 45
                  type: string
                ServiceAddress:
                  description: address
                  properties:
                    City:
                      description: City.
                      type: string
                    HouseNumber:
                      description: Street address number.
                      type: integer
                    StateCode:
                      description: Two letter state code.
                      type: string
                    StreetName:
                      description: Street name.
                      type: string
                    Zip:
                      description: Zip code.
                      type: string
            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
          required:
            - TelephoneNumbers
            - SiteId
            - Subscriber
            - LoaAuthorizingPerson
          type: object
      title: ImportTnOrder
    ImportTnOrderSummary:
      properties:
        AccountId:
          type: string
        CountsOfTNs:
          type: integer
        CustomerOrderId:
          type: string
        LastModifiedDate:
          type: string
        OrderDate:
          type: string
        OrderType:
          enum:
            - import_tn_orders
          type: string
        ProcessingStatus:
          enum:
            - RECEIVED
            - PROCESSING
            - COMPLETE
            - PARTIAL
            - FAILED
          type: string
        UserId:
          type: string
      type: object
    ImportTnOrdersResponse:
      properties:
        ImportTnOrdersResponse:
          properties:
            ImportTnOrder:
              $ref: '#/components/schemas/ImportTnOrder'
          type: object
      type: object
    ImportTnOrdersResponseList:
      properties:
        ImportTnOrders:
          properties:
            ImportTnOrderSummary:
              $ref: '#/components/schemas/ImportTnOrderSummary'
            TotalCount:
              type: integer
          type: object
      type: object
    ImportTnSubscriber:
      properties:
        Name:
          type: string
        ServiceAddress:
          $ref: '#/components/schemas/Address'
      type: object
    ImportToAccountOrderRequest:
      properties:
        ImportToAccountNumberOrder:
          properties:
            OverrideFeatureRestrictions:
              default: false
              description: Used to override the account's purchase restrictions
              type: boolean
            PeerId:
              description: >-
                A sippeer id of provided site to which telephone number will be
                imported
              type: integer
            importToAccountNumberOrderType:
              $ref: '#/components/schemas/importToAccountNumberOrderType'
            siteId:
              description: A site id to which telephone number will be imported
              type: integer
          required:
            - importToAccountNumberOrderType
            - siteId
          type: object
      title: ImportTnAccountOrder
    ImportVoiceTnOrder:
      properties:
        AccountId:
          type: string
        CreatedByUser:
          type: string
        CustomerOrderId:
          type: string
        Errors:
          items:
            $ref: '#/components/schemas/Error'
          type: array
        LastModifiedDate:
          type: string
        OrderCreateDate:
          type: string
        ProcessingStatus:
          enum:
            - RECEIVED
            - PROCESSING
            - COMPLETE
            - PARTIAL
            - FAILED
          type: string
        SipPeerId:
          type: string
        SiteId:
          type: string
        TelephoneNumbers:
          items:
            $ref: '#/components/schemas/TelephoneNumber'
          type: array
      type: object
    ImportVoiceTnOrderError:
      properties:
        ImportVoiceTnOrderResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    ImportVoiceTnOrderRequest:
      properties:
        ImportVoiceTnOrder:
          properties:
            CustomerOrderId:
              description: >-
                Internal customer order id for tracking the order. Only
                alphanumeric values, dashes and spaces are allowed. Max length
                is 40 characters
              type: string
            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
          required:
            - TelephoneNumbers
            - 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:
          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
    ImportVoiceTnOrdersResponseList:
      properties:
        ImportVoiceTnOrders:
          properties:
            ImportVoiceTnOrderSummary:
              $ref: '#/components/schemas/ImportVoiceTnOrderSummary'
            TotalCount:
              type: integer
          type: object
      type: object
    ImportedCampaign:
      properties:
        ImportedCampaign:
          properties:
            CampaignId:
              type: string
            CreateDate:
              type: string
            Description:
              type: string
            MnoStatusList:
              items:
                $ref: '#/components/schemas/MnoStatus'
              type: array
            Status:
              type: string
          type: object
      type: object
    ImportedCampaignRequest:
      properties:
        ImportedCampaign:
          properties:
            CampaignId:
              description: Campaign ID generated by TCR
              maximum: 12
              type: string
          required:
            - CampaignId
          type: object
      type: object
    ImportedTelephoneNumberDetailList:
      description: List of telephone numbers details that were imported
      items:
        properties:
          TelephoneNumberDetail:
            properties:
              FullNumber:
                description: Ten digit phone number with no dots or dashes
                type: integer
            type: object
        type: object
      minItems: 1
      type: array
    InitialStatus:
      description: >-
        TN status that be assigned to imported telephone numbers. Required
        existence of "Protected" TnAttribute.
      enum:
        - Available
      type: string
    IntPatch:
      properties:
        delete:
          type: boolean
      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
    IrisStatus:
      properties:
        Code:
          format: int32
          type: integer
        Description:
          type: string
      type: object
    LATASearchAndOrder:
      allOf:
        - $ref: '#/components/schemas/orderMetadata'
        - properties:
            LATASearchAndOrderType:
              $ref: '#/components/schemas/LATASearchAndOrderType'
          type: object
      xml:
        name: Order
    LATASearchAndOrderResponse:
      properties:
        order:
          properties:
            allOf:
              - $ref: '#/components/schemas/orderResponseMetadata'
              - properties:
                  LATASearchAndOrderType:
                    $ref: '#/components/schemas/LATASearchAndOrderType'
                type: object
          type: object
          xml:
            name: Order
        orderStatus:
          example: RECEIVED
          type: string
          xml:
            name: OrderStatus
      type: object
      xml:
        name: OrderResponse
    LATASearchAndOrderType:
      properties:
        LATA:
          type: string
        Quantity:
          format: int32
          type: integer
      type: object
      xml:
        name: LATASearchAndOrderType
    LNPResponseWrapper:
      properties:
        LNPResponseWrapper:
          properties:
            Links:
              $ref: '#/components/schemas/Links'
            TotalCount:
              type: integer
            lnpPortInfoForGivenStatus:
              $ref: '#/components/schemas/lnpPortInfoForGivenStatus'
          type: object
      type: object
    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
    LidbDetailTnGroup:
      properties:
        SubscriberInformation:
          description: >-
            This is the field that is displayed to the user receiving the phone
            call from the Telephone numbers in the TelephoneNumberList
          type: string
        TelephoneNumbers:
          description: >-
            A list of telephone numbers that will all assume the
            SubscriberInformation that is listed in the payload. In an
            enterprise context it is not uncommon for all of the served
            telephone numbers to use the same string for the Subscriber
            Information.
          items:
            $ref: '#/components/schemas/TelephoneNumber'
          type: array
        UseType:
          enum:
            - BUSINESS
            - RESIDENTIAL
          type: string
        Visibility:
          description: ' If it is tagged as PRIVATE then the data will be provided, but the display will not be provided on a standard phone call.'
          enum:
            - PUBLIC
            - PRIVATE
          type: string
      required:
        - UseType
        - Visibility
      title: LidbTnGroup
      type: object
    LidbOrder:
      properties:
        LidbOrder:
          $ref: '#/components/schemas/LidbOrderPayload'
      type: object
    LidbOrderError:
      properties:
        Code:
          format: int32
          type: integer
        Description:
          type: string
        TelephoneNumber:
          type: string
      title: Error
      type: object
    LidbOrderErrorResponse:
      properties:
        LidbOrderResponse:
          properties:
            ErrorList:
              items:
                $ref: '#/components/schemas/LidbOrderError'
              type: array
            LidbOrder:
              $ref: '#/components/schemas/LidbOrderPayload'
            Status:
              properties:
                Code:
                  description: Numeric designation of corresponding error
                  type: integer
                Description:
                  description: 'Detailed explanation about error '
                  type: string
              type: object
          type: object
      type: object
    LidbOrderHistoryResponse:
      properties:
        ResponseSelectWrapper:
          properties:
            ListOrderIdUserIdDate:
              properties:
                OrderIdUserIdDate:
                  items:
                    $ref: '#/components/schemas/OrderSummary'
                  type: array
                TotalCount:
                  type: integer
              type: object
          type: object
      type: object
    LidbOrderPayload:
      properties:
        CustomerOrderId:
          description: >-
            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.
          maxLength: 40
          type: string
        LidbTnGroups:
          items:
            $ref: '#/components/schemas/LidbDetailTnGroup'
          type: array
        Name:
          type: string
        PeerId:
          format: int32
          type: integer
        SiteId:
          format: int32
          type: integer
      type: object
    LidbOrderReportErrorResponse:
      properties:
        LidbOrderReportResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    LidbOrderResponse:
      properties:
        LidbOrderResponse:
          $ref: '#/components/schemas/LidbOrderResponsePayload'
      type: object
    LidbOrderResponsePayload:
      properties:
        LidbOrder:
          properties:
            CreatedByUser:
              type: string
            CustomerOrderId:
              description: >-
                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.
              maxLength: 40
              type: string
            ErrorList:
              items:
                $ref: '#/components/schemas/LidbOrderError'
              type: array
            LastModifiedDate:
              type: string
            LidbTnGroups:
              items:
                $ref: '#/components/schemas/LidbDetailTnGroup'
              type: array
            OrderCompleteDate:
              type: string
            OrderCreateDate:
              type: string
            ProcessingStatus:
              type: string
            orderId:
              type: string
          type: object
      type: object
    LinkedAddress:
      properties:
        AddressId:
          $ref: '#/components/schemas/addressId'
        AddressType:
          $ref: '#/components/schemas/AddressType'
        Link:
          example: >-
            https://api.bandwidth.com/api/v2/accounts/14/addresses/daa9dd0f-de97-4103-8530-b31bf4be8fc0
          readOnly: true
          type: string
          xml:
            name: Link
      type: object
      xml:
        name: LinkedAddress
    Links:
      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
    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
    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: LosingReseller
          maxLength: 60
          pattern: '[A-z0-9 -]+'
          type: string
          xml:
            name: LosingResellerName
      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
    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
    LnpOrderBasic:
      properties:
        CustomerOrderId:
          description: >-
            The `CustomerOrderId` is an optional field that may be provided by
            the customer and will remain with the order. The value is opaque to
            Bandwidth.
          format: Only alphanumeric values, dashes and spaces
          maxLength: 40
          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
    LnpOrderBasicModifiableFields:
      properties:
        CustomerOrderId:
          description: >-
            This field is removed from the order if not provided 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
    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
              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
            NewBillingTelephoneNumber:
              description: >-
                This field is used to specify a new billing telephone number on
                the losing carrier account.
              type: string
            OrderId:
              type: string
            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:
                - 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
            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
      type: object
    LnpOrderRequest:
      properties:
        LnpOrder:
          allOf:
            - $ref: '#/components/schemas/LnpOrderBasic'
            - properties:
                RequestedFocDate:
                  description: >-
                    Format: ISO8601 encoding such as "2019-10-31".<br/><br/>For
                    international 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
                comments:
                  description: >-
                    Information to be relayed to Turning Point in the remarks
                    field. This could be PRI circuit ID for Canada ports, or
                    information about partial port TN disposition, etc. -
                    anything that may help Turning Point to process the port-in
                    with the vendor or losing carrier.
                  example: comment
                  maxLength: 150
                  pattern: '[A-z0-9 -]+'
                  type: string
                  xml:
                    name: Comments
                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
                  maxLength: 60
                  pattern: '[A-z0-9 -]+'
                  type: string
                  xml:
                    name: LosingResellerName
              type: object
      title: LNP Order Request (Other)
      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
            Errors:
              properties:
                Code:
                  description: Numeric designation of corresponding error.
                  type: integer
                Description:
                  description: Detailed explanation about error.
                  type: string
              type: object
            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
            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
            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
            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
            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
            Status:
              properties:
                Code:
                  type: integer
                Description:
                  type: string
              type: object
            Subscriber:
              $ref: '#/components/schemas/Subscriber'
            TnAttributes:
              items:
                $ref: '#/components/schemas/TnAttribute'
              type: array
            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
            WirelessInfo:
              $ref: '#/components/schemas/WirelessInfo'
            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
              type: string
              xml:
                name: LosingResellerName
          type: object
      title: LNP Order Response
      type: object
    LnpOrderResponseAutomatedTollFree:
      properties:
        LnpOrderResponse:
          properties:
            Errors:
              properties:
                Code:
                  description: Numeric designation of corresponding error.
                  type: integer
                Description:
                  description: Detailed explanation about error.
                  type: string
              type: object
            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
            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
            OrderId:
              description: Unique orderId that is used to manage the order.
              type: string
            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
            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
            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
            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
            Status:
              properties:
                Code:
                  type: integer
                Description:
                  type: string
              type: object
            TargetRespOrgId:
              description: >-
                The RespOrg ID that you are porting numbers to. This value is
                only applicable to automated toll free port-ins.
              type: string
          type: object
      title: Automated Toll-Free 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
    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
    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
    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
    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
    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
    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
    LongCodeImportCampaignErrorResponse:
      properties:
        LongCodeImportCampaignResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    LongCodeImportCampaignResponse:
      properties:
        LongCodeImportCampaignResponse:
          $ref: '#/components/schemas/ImportedCampaign'
      type: object
    LongCodeImportCampaignsErrorResponse:
      properties:
        LongCodeImportCampaignsResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    LongCodeImportCampaignsResponse:
      properties:
        LongCodeImportCampaignsResponse:
          properties:
            ImportedCampaigns:
              items:
                $ref: '#/components/schemas/ImportedCampaign'
              type: array
            TotalCount:
              type: integer
          type: object
      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 Order ID is an ID assigned by the account
                      owner to provide a reference number for the LSR order.
                    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: >-
            The Customer Order ID is an ID assigned by the account owner to
            provide a reference number for the port.
          format: Alphanumeric, spaces and dashes
          maxLength: 40
          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
                RegionId:
                  deprecated: true
                  format: int32
                  type: integer
                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
    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
    ManualPortOutRequest:
      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
    MessagingPortoutRequest:
      description: Messaging Portout Request
      properties:
        Comment:
          description: Optional comment if denying the request
          maximum: 255
          type: string
        approval:
          description: Yes or No approval value
          enum:
            - 'yes'
            - 'no'
          type: string
    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
    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
    MnoStatus:
      properties:
        MnoId:
          type: string
        MnoName:
          type: string
        Status:
          enum:
            - REVIEW
            - REJECTED
            - APPROVED
            - SUSPENDED
          type: string
      type: object
    MoveTnsOrder:
      properties:
        CustomerOrderId:
          description: >-
            Internal customer order id for tracking the order. Only alphanumeric
            values, dashes and spaces are allowed. Max length is 40 characters
          type: string
        E911ServiceAction:
          default: move
          description: >-
            Only valid when moving to a different account using SourceAccountId.
            When set to move (default) the E911 service information (if applied
            to the number) will be moved with the number to the new account.
            When set to delete the E911 service will be removed from the number
          enum:
            - move
            - delete
          type: string
        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
        SourceAccountId:
          description: Id of source account, in the case of moving numbers across accounts
          type: integer
        TelephoneNumbers:
          description: >-
            List of telephone numbers to be moved. Maximum of 5,000 allowed per
            POST
          items:
            properties:
              TelephoneNumber:
                description: Ten digit phone number with no dots or dashes
                type: integer
            type: object
          maxItems: 5000
          minItems: 1
          type: array
      required:
        - TelephoneNumbers
        - SiteId
      title: MoveTnsOrder
      type: object
    MoveTnsOrderPayload:
      properties:
        AccountId:
          type: integer
        CreatedByUser:
          type: string
        CustomerOrderId:
          type: string
        Errors:
          items:
            $ref: '#/components/schemas/TelephoneNumberGroupError'
          type: array
          xml:
            wrapped: true
        LastModifiedDate:
          type: string
        OrderCreateDate:
          type: string
        OrderId:
          type: string
        ProcessingStatus:
          enum:
            - RECEIVED
            - PROCESSING
            - PARTIAL
            - COMPLETE
            - FAILED
          type: string
        SipPeerId:
          type: integer
        SiteId:
          type: integer
        SourceAccountId:
          type: integer
        TelephoneNumbers:
          items:
            type: string
            xml:
              name: TelephoneNumber
          type: array
          xml:
            wrapped: true
      title: MoveTnsOrder
      type: object
    MoveTnsOrderRequest:
      properties:
        MoveTnsOrder:
          $ref: '#/components/schemas/MoveTnsOrder'
      type: object
    MoveTnsOrderResponse:
      properties:
        MoveTnsOrder:
          $ref: '#/components/schemas/MoveTnsOrderPayload'
      type: object
    MoveTnsOrders:
      properties:
        Links:
          $ref: '#/components/schemas/PaginationLinks'
        MoveTnsOrderSummary:
          items:
            $ref: '#/components/schemas/OrderSummary'
          type: array
        TotalCount:
          type: integer
      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
    NPANXXSearchAndOrder:
      allOf:
        - $ref: '#/components/schemas/orderMetadata'
        - properties:
            NPANXXSearchAndOrderType:
              $ref: '#/components/schemas/NPANXXSearchAndOrderType'
          type: object
      xml:
        name: Order
    NPANXXSearchAndOrderResponse:
      properties:
        order:
          properties:
            allOf:
              - $ref: '#/components/schemas/orderResponseMetadata'
              - properties:
                  NPANXXSearchAndOrderType:
                    $ref: '#/components/schemas/NPANXXSearchAndOrderType'
                type: object
          type: object
          xml:
            name: Order
        orderStatus:
          example: RECEIVED
          type: string
          xml:
            name: OrderStatus
      type: object
      xml:
        name: OrderResponse
    NPANXXSearchAndOrderType:
      properties:
        EnableLCA:
          type: boolean
        NpaNxx:
          type: string
        Quantity:
          format: int32
          type: integer
      type: object
      xml:
        name: NPANXXSearchAndOrderType
    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
    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:
              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
    NpaBackorderRestriction:
      properties:
        NpaBackorderRestriction:
          properties:
            Limit:
              type: integer
            NPA:
              type: integer
          type: object
    NpaNxxRcLcaSearchResult:
      properties:
        SearchResult:
          properties:
            ListofNPANXX:
              items:
                properties:
                  NPANXX:
                    type: string
                type: object
              type: array
            Location:
              properties:
                RateCenters:
                  $ref: '#/components/schemas/TnRateCenters'
              type: object
          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
    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
    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
    OrderNotesResponse:
      properties:
        Notes:
          items:
            properties:
              Description:
                type: string
              Id:
                type: integer
              LastDateModifier:
                format: datetime
                type: string
              UserId:
                type: string
            title: Note
            type: object
          type: array
      type: object
    OrderSummary:
      properties:
        CountOfTNs:
          type: integer
        CustomerOrderId:
          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
    OrderTelephoneNumbersResponse:
      properties:
        TelephoneNumbers:
          properties:
            Count:
              type: integer
            TelephoneNumber:
              type: string
          type: object
      type: object
    OrderUpdate:
      properties:
        Order:
          properties:
            CloseOrder:
              type: boolean
            CustomerOrderId:
              type: string
            Name:
              type: string
          type: object
      type: object
    Origin:
      description: >-
        The origin type of numbers, defaulting to 'UNDEFINED' if not ported into
        IRIS.
      enum:
        - UNDEFINED
        - PORTED_IN
      type: string
    OriginationRoutePayload:
      properties:
        Endpoint:
          description: >
            Must be one of the following: - a NANP 10-digit telephone number - a
            SIP URI - an IPv4 address - a Fully Qualified Domain Name (FQDN)
          type: string
        EndpointType:
          enum:
            - TN
            - IPv4
            - SIP
            - FQDN
          type: string
        Name:
          description: >-
            A friendly name for a route.  This is not used for any back-end call
            routing.
          type: string
        Priority:
          format: int32
          type: integer
        Weight:
          format: int32
          type: integer
      type: object
    OriginationRoutePlan:
      description: >-
        The OriginationRoutePlan element consists of an action and a list of
        prioritized and weighted routes that tell Bandwidth where to send phone
        calls to phone numbers associated with the route plan.
      properties:
        Action:
          enum:
            - unchanged
            - 'off'
            - asSpecified
          type: string
        Id:
          format: uuid
          type: string
        Route:
          items:
            $ref: '#/components/schemas/OriginationRoutePayload'
          type: array
      type: object
    PaginationLinks:
      properties:
        first:
          type: string
        last:
          type: string
        next:
          type: string
        previous:
          type: string
      title: Links
      type: object
    PhoneNumber:
      properties:
        PhoneNumber:
          description: Simple Telephone Number.
          type: string
      type: object
    PhoneNumberInventoryGroupId:
      description: >-
        Relevant for international numbers only, the PhoneNumberInventoryGroupId
        denotes a specific category for an international phonenumber to belong
        to. An international number requires a phoneNumberInventoryGroup
        similarly to how a NANP number requires a valid ratecenter association.
      type: integer
    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
    PortOutRequest:
      properties:
        PortOutRequest:
          $ref: '#/components/schemas/ManualPortOutRequest'
      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/ManualPortOutRequest'
        ProcessingStatus:
          enum:
            - NEW
            - SUPP
            - MODIFY
            - COMPLETE
            - CANCELLED
            - VALIDATION_FAILED_NEW
            - VALIDATION_FAILED_SUPP
            - VALIDATION_FAILED_MODIFY
            - EXCEPTION
            - SOA_PENDING
            - SOA_CONFLICT
          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
    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
    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
    PortinList:
      description: >-
        The list of child, or subtending, orders associated with a bulk
        port-in.  The bulk port-in will have an empty PortinList until telephone
        numbers are added using the /tnList endpoint.
      properties:
        PortinList:
          items:
            $ref: '#/components/schemas/PortinOrderId'
          type: array
      type: object
    PortinListResponse:
      properties:
        PortinListResponse:
          properties:
            Errors:
              items:
                properties:
                  Error:
                    properties:
                      Description:
                        description: Detailed explanation about error.
                        type: string
                      ErrorCode:
                        description: Numeric designation of corresponding error.
                        type: integer
                      PortinOrderId:
                        type: string
                    type: object
              type: array
            PortinList:
              items:
                $ref: '#/components/schemas/PortinOrderId'
              type: array
          type: object
      type: object
    PortinOrderId:
      properties:
        PortinOrderId:
          description: >-
            The OrderId associated with a child, or subtending, order associated
            with the bulk port-in.
          type: string
      type: object
    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
    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
    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
    ProcessingStatusPatch:
      properties:
        delete:
          type: boolean
      type: object
    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
    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
    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
    RateCenterSearchAndOrder:
      allOf:
        - $ref: '#/components/schemas/orderMetadata'
        - properties:
            RateCenterSearchAndOrderType:
              $ref: '#/components/schemas/RateCenterSearchAndOrderType'
          type: object
      xml:
        name: Order
    RateCenterSearchAndOrderResponse:
      properties:
        order:
          properties:
            allOf:
              - $ref: '#/components/schemas/orderResponseMetadata'
              - properties:
                  RateCenterSearchAndOrderType:
                    $ref: '#/components/schemas/RateCenterSearchAndOrderType'
                type: object
          type: object
          xml:
            name: Order
        orderStatus:
          example: RECEIVED
          type: string
          xml:
            name: OrderStatus
      type: object
      xml:
        name: OrderResponse
    RateCenterSearchAndOrderType:
      properties:
        EnableLCA:
          type: boolean
        Quantity:
          format: int32
          type: integer
        RateCenter:
          type: string
        State:
          type: string
      type: object
      xml:
        name: RateCenterSearchAndOrderType
    RateCenterSearchResult:
      properties:
        Abbreviation:
          type: string
        AvailableTelephoneNumberCount:
          format: int32
          type: integer
        Name:
          type: string
      title: RateCenter
      type: object
    RateCenterSearchResults:
      properties:
        RateCenterResponse:
          properties:
            RateCenters:
              items:
                $ref: '#/components/schemas/RateCenterSearchResult'
              type: array
            ResultCount:
              format: int32
              type: integer
          type: object
      type: object
    RateCenterWithCount:
      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
    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
    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
    RemoveImportedTnOrderRequest:
      properties:
        CustomerOrderId:
          description: >-
            Internal customer order id for tracking the order. Only alphanumeric
            values, dashes and spaces are allowed
          maxLength: 40
          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: RemoveImportedTnOrder
    RemoveImportedTnOrders:
      properties:
        Links:
          $ref: '#/components/schemas/PaginationLinks'
        RemoveImportedTnOrderSummary:
          items:
            $ref: '#/components/schemas/OrderSummary'
          type: array
        TotalCount:
          type: integer
      type: object
    RemoveImportedTnOrdersHistoryResponse:
      properties:
        RemoveImportedTnOrdersReportResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    RemoveImportedTnOrdersResponse:
      properties:
        RemoveImportedTnOrder:
          properties:
            AccountId:
              type: integer
            CreatedByUser:
              type: string
            CustomerOrderId:
              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
    RemoveImportedVoiceTnOrderRequest:
      properties:
        CustomerOrderId:
          description: >-
            Internal customer order id for tracking the order. Only alphanumeric
            values, dashes and spaces are allowed
          maxLength: 40
          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:
              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
    RequestedCallbackTypes:
      enum:
        - MESSAGE_FAILED
        - MESSAGE_DELIVERED
        - MESSAGE_SENDING
      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
    ReservationRequestPayload:
      properties:
        ReservedTn:
          $ref: '#/components/schemas/TelephoneNumber'
      title: Reservation
      type: object
    ReservationResponse:
      properties:
        Reservation:
          $ref: '#/components/schemas/ReservationResponsePayload'
      type: object
    ReservationResponsePayload:
      properties:
        AccountId:
          format: int32
          type: integer
        ReservationExpires:
          format: int64
          type: integer
        ReservationId:
          type: string
        ReservedTn:
          $ref: '#/components/schemas/TelephoneNumber'
      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
    ResponseStatus:
      properties:
        ResponseStatus:
          properties:
            Description:
              description: 'Detailed explanation about error '
              type: string
            ErrorCode:
              description: Numeric designation of corresponding error
              type: integer
          type: object
      type: object
    RogerTerminationSettings:
      properties:
        SubnetAddressingAllowed:
          type: boolean
        TerminationId:
          type: integer
      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:
        - properties:
            ResultCount:
              format: int32
              type: integer
            TelephoneNumberList:
              items:
                $ref: '#/components/schemas/TelephoneNumber'
              type: array
          type: object
        - properties:
            resultCount:
              format: int32
              type: integer
              xml:
                name: ResultCount
            telephoneNumberDetailList:
              items:
                $ref: '#/components/schemas/telephoneNumberDetail'
              type: array
              xml:
                name: TelephoneNumberDetailList
          type: object
      xml:
        name: SearchResult
    SearchResultError:
      properties:
        Error:
          properties:
            Code:
              type: integer
            Description:
              type: string
          type: object
      title: SearchResult
      type: object
    SearchResultErrorWrapper:
      properties:
        SearchResult:
          $ref: '#/components/schemas/SearchResultError'
      type: object
    SearchResultForAvailableNpaNxx:
      properties:
        AvailableNpaNxxList:
          items:
            $ref: '#/components/schemas/AvailableNpaNxx'
          type: array
      type: object
    SearchResultForAvailableNpaNxxError:
      properties:
        Error:
          properties:
            Code:
              type: integer
            Description:
              type: string
          type: object
      title: SearchResultForAvailableNpaNxx
      type: object
    SearchResultForAvailableNpaNxxErrorWrapper:
      properties:
        SearchResultForAvailableNpaNxx:
          $ref: '#/components/schemas/SearchResultForAvailableNpaNxxError'
      type: object
    SearchResultForAvailableNpaNxxWrapper:
      properties:
        SearchResultForAvailableNpaNxx:
          $ref: '#/components/schemas/SearchResultForAvailableNpaNxx'
      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
    SipPeer:
      properties:
        Address:
          $ref: '#/components/schemas/Address'
        BillingIdentifier:
          type: string
        CallVerificationEnabled:
          type: boolean
        CallingName:
          $ref: '#/components/schemas/SipPeerLineOptionDto'
        Description:
          type: string
        FinalDestinationUri:
          type: string
        IsDefaultPeer:
          type: boolean
        OriginationRoutePlan:
          $ref: '#/components/schemas/OriginationRoutePlan'
        PeerId:
          format: int32
          type: integer
        PeerName:
          type: string
        PindropEnabled:
          type: boolean
        PremiseTrunks:
          type: string
        Products:
          items:
            enum:
              - Origination
              - Termination
              - MESSAGING
              - E911
              - TollFree
              - UcTrunking
              - EdgeManagement
              - CORE
              - Iris
              - NumberManagement
              - Analytics
              - CampaignManagement
            type: string
            xml:
              name: Product
          type: array
        SsSendToCustomer:
          enum:
            - NONE
            - VERSTAT
            - ENH_VERSTAT
            - VERSTAT_AND_IDENTITY
            - ENH_VERSTAT_AND_IDENTITY
            - IDENTITY
          type: string
        SuggestedAddresses:
          items:
            $ref: '#/components/schemas/Address'
          type: array
        TerminationHosts:
          $ref: '#/components/schemas/SipPeerTerminationHosts'
        TnCount:
          format: int32
          type: integer
        VoiceHostGroups:
          items:
            $ref: '#/components/schemas/Hosts'
          type: array
        VoiceHosts:
          $ref: '#/components/schemas/Hosts'
      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
    SipPeerLineOptionDto:
      properties:
        Display:
          type: boolean
        Enforced:
          type: boolean
      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
    SipPeerPayload:
      properties:
        Address:
          $ref: '#/components/schemas/Address'
        BillingIdentifier:
          type: string
        CallVerificationEnabled:
          type: boolean
        CallingName:
          $ref: '#/components/schemas/SipPeerLineOptionDto'
        Description:
          type: string
        FinalDestinationUri:
          type: string
        IsDefaultPeer:
          type: boolean
        OriginationRoutePlan:
          $ref: '#/components/schemas/OriginationRoutePlan'
        PeerName:
          type: string
        PindropEnabled:
          type: boolean
        PremiseTrunks:
          type: string
        Products:
          items:
            enum:
              - Origination
              - Termination
              - MESSAGING
              - E911
              - TollFree
              - UcTrunking
              - EdgeManagement
              - CORE
              - Iris
              - NumberManagement
              - Analytics
              - CampaignManagement
            type: string
            xml:
              name: Product
          type: array
        SsSendToCustomer:
          enum:
            - NONE
            - VERSTAT
            - ENH_VERSTAT
            - VERSTAT_AND_IDENTITY
            - ENH_VERSTAT_AND_IDENTITY
            - IDENTITY
          type: string
        SuggestedAddresses:
          items:
            $ref: '#/components/schemas/Address'
          type: array
        TnCount:
          format: int32
          type: integer
        VoiceHostGroups:
          items:
            $ref: '#/components/schemas/Hosts'
          type: array
        VoiceHosts:
          $ref: '#/components/schemas/Hosts'
      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
    SipPeerResponse:
      properties:
        SipPeer:
          $ref: '#/components/schemas/SipPeer'
      type: object
    SipPeerResponseBadRequest:
      properties:
        SipPeerResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    SipPeerResponseConflict:
      properties:
        AddressErrorDescription:
          $ref: '#/components/schemas/AddressErrorDescription'
        ResponseStatus:
          $ref: '#/components/schemas/ResponseStatus'
      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
        NumberFormat:
          enum:
            - 10digit
            - 11digit
            - e164
            - 'false'
          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
    SipPeerTelephoneNumberBulk:
      properties:
        SipPeerTelephoneNumbers:
          items:
            type: string
            xml:
              name: FullNumber
          maxItems: 5000
          type: array
      type: object
    SipPeerTelephoneNumberBulkErrorResponse:
      properties:
        SipPeerTelephoneNumberMoveResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    SipPeerTelephoneNumberBulkResponse:
      properties:
        SipPeerTelephoneNumberMoveResponse:
          $ref: '#/components/schemas/SipPeerTelephoneNumberBulk'
      type: object
    SipPeerTelephoneNumberResponse:
      properties:
        SipPeerTelephoneNumber:
          $ref: '#/components/schemas/SipPeerTelephoneNumber'
      type: object
    SipPeerTelephoneNumberResponseBadRequest:
      properties:
        ResponseStatus:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    SipPeerTelephoneNumbersCountResponse:
      properties:
        SipPeerTelephoneNumbersCount:
          properties:
            CnamCount:
              description: Telephone numbers count with activated CNAM on provided sipPeer
              type: integer
            LidbCount:
              description: Telephone numbers count with activated Lidb on provided sipPeer
              type: integer
            SipPeerTelephoneNumbersCount:
              description: Telephone numbers count on provided sipPeer
              type: integer
          type: object
      type: object
    SipPeerTelephoneNumbersResponse:
      properties:
        SipPeerTelephoneNumbers:
          properties:
            SipPeerTelephoneNumber:
              items:
                $ref: '#/components/schemas/SipPeerTelephoneNumber'
              type: array
          type: object
      type: object
    SipPeerTerminationHost:
      properties:
        CustomerTrafficAllowed:
          type: string
        HostName:
          type: string
        Port:
          type: string
      type: object
    SipPeerTerminationHosts:
      properties:
        TerminationHost:
          items:
            $ref: '#/components/schemas/SipPeerTerminationHost'
          type: array
      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
    SipPeers:
      properties:
        SipPeer:
          items:
            $ref: '#/components/schemas/SipPeer'
          type: array
      type: object
    Site:
      properties:
        Address:
          $ref: '#/components/schemas/Address'
        CustomerName:
          type: string
        CustomerProvidedId:
          type: string
        Description:
          type: string
        Id:
          format: int32
          type: integer
        Name:
          type: string
        SipPeerCount:
          format: int32
          type: integer
        SipPeers:
          $ref: '#/components/schemas/SipPeers'
        TotalTnCount:
          format: int32
          type: integer
        UcTrunkingConfiguration:
          $ref: '#/components/schemas/SiteUcTrunkingConfigurationPayload'
      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
    SiteInfo:
      properties:
        Description:
          type: string
        Id:
          format: int32
          type: integer
        Name:
          type: string
      type: object
    SiteOrdersResponse:
      properties:
        ResponseSelectWrapper:
          properties:
            ListOrderIdUserIdDate:
              properties:
                OrderIdUserIdDate:
                  items:
                    $ref: '#/components/schemas/OrderSummary'
                  type: array
                TotalCount:
                  type: integer
              type: object
          type: object
      type: object
    SitePayload:
      properties:
        Address:
          $ref: '#/components/schemas/Address'
        Description:
          type: string
        Id:
          format: int32
          type: integer
        LinkedAddresses:
          properties:
            LinkedAddress:
              items:
                $ref: '#/components/schemas/LinkedAddress'
              type: array
          type: object
          xml:
            name: LinkedAddresses
        Name:
          type: string
        UcTrunkingConfiguration:
          $ref: '#/components/schemas/SiteUcTrunkingConfigurationPayload'
      type: object
    SiteResponse:
      properties:
        Site:
          $ref: '#/components/schemas/SitePayload'
      type: object
    SiteResponseBadRequest:
      properties:
        ResponseStatus:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    SiteResponseConflict:
      properties:
        AddressErrorDescription:
          $ref: '#/components/schemas/AddressErrorDescription'
        ResponseStatus:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    SiteTNsResponse:
      properties:
        SiteTNs:
          properties:
            TotalCount:
              type: integer
          type: object
      type: object
    SiteUcTrunkingConfigurationPayload:
      properties:
        Type:
          type: string
        UsageCategory:
          type: string
      type: object
    SitesResponse:
      properties:
        Sites:
          properties:
            Site:
              items:
                $ref: '#/components/schemas/SiteInfo'
              type: array
          type: object
      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
    StateSearchAndOrder:
      allOf:
        - $ref: '#/components/schemas/orderMetadata'
        - properties:
            StateSearchAndOrderType:
              $ref: '#/components/schemas/StateSearchAndOrderType'
          type: object
      xml:
        name: Order
    StateSearchAndOrderResponse:
      properties:
        order:
          properties:
            allOf:
              - $ref: '#/components/schemas/orderResponseMetadata'
              - properties:
                  StateSearchAndOrderType:
                    $ref: '#/components/schemas/StateSearchAndOrderType'
                type: object
          type: object
          xml:
            name: Order
        orderStatus:
          example: RECEIVED
          type: string
          xml:
            name: OrderStatus
      type: object
      xml:
        name: OrderResponse
    StateSearchAndOrderType:
      properties:
        Quantity:
          format: int32
          type: integer
        State:
          type: string
      type: object
      xml:
        name: StateSearchAndOrderType
    StateWithCount:
      properties:
        Count:
          type: integer
        State:
          type: string
      type: object
    StringPatch:
      properties:
        delete:
          type: boolean
          xml:
            attribute: true
      type: object
    Subscriber:
      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
        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/Address'
        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
      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
    SubscriberPatch:
      properties:
        BusinessName:
          allOf:
            - $ref: '#/components/schemas/StringPatch'
          description: Subscriber business name.
        FirstName:
          allOf:
            - $ref: '#/components/schemas/StringPatch'
          description: Subscriber first name.
        LastName:
          allOf:
            - $ref: '#/components/schemas/StringPatch'
          description: Subscriber last name.
        MiddleInitial:
          allOf:
            - $ref: '#/components/schemas/StringPatch'
          description: Subscriber middle initial.
        ServiceAddress:
          $ref: '#/components/schemas/AddressPatch'
        SubscriberType:
          allOf:
            - $ref: '#/components/schemas/SubscriberTypePatch'
          description: If residential, order will be rejected if a BusinessName is entered.
          enum:
            - BUSINESS
            - RESIDENTIAL
            - GENERIC
        delete:
          type: boolean
      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
    SubscriberTypePatch:
      properties:
        delete:
          type: boolean
      type: object
    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
        - externalTns
        - 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
    TNSipPeersResponse:
      properties:
        SipPeers:
          $ref: '#/components/schemas/SipPeers'
      type: object
    TNs:
      properties:
        TNs:
          properties:
            TelephoneNumbers:
              properties:
                Count:
                  type: integer
                TelephoneNumber:
                  items:
                    $ref: '#/components/schemas/TelephoneNumber'
                  type: array
              type: object
            TotalCount:
              type: integer
          type: object
      type: object
    TelephoneDetailsAreaCodes:
      properties:
        TelephoneDetailsReports:
          properties:
            TelephoneDetailsReport:
              properties:
                AreaCode:
                  type: string
                Count:
                  type: integer
              type: object
          type: object
      type: object
    TelephoneDetailsNpaNxx:
      properties:
        TelephoneDetailsReports:
          properties:
            TelephoneDetailsReport:
              properties:
                Count:
                  type: integer
                NPA-NXX:
                  type: string
              type: object
          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
    TelephoneDetailsTotals:
      properties:
        TelephoneDetailsReports:
          properties:
            TelephoneDetailsReport:
              properties:
                Count:
                  type: integer
              type: object
          type: object
      type: object
    TelephoneNumber:
      properties:
        TelephoneNumber:
          description: Simple Telephone Number.
          type: string
      type: object
    TelephoneNumberAvailableNnRoutes:
      properties:
        NNRoute:
          items:
            $ref: '#/components/schemas/TnDetailsNnRoute'
          type: array
      title: AvailableNnRoutes
      type: object
    TelephoneNumberAvailableNnRoutesErrorResponse:
      properties:
        AvailableNnRoutes:
          $ref: '#/components/schemas/ResponseStatus'
      title: AvailableNnRoutes
      type: object
    TelephoneNumberAvailableNnRoutesResponse:
      properties:
        AvailableNnRoutes:
          $ref: '#/components/schemas/TelephoneNumberAvailableNnRoutes'
      type: object
    TelephoneNumberDetailHistoryPayload:
      properties:
        AccountId:
          format: int32
          type: integer
        City:
          type: string
        Country:
          type: string
        FullNumber:
          type: string
        HostedTelephoneNumberDetails:
          items:
            $ref: '#/components/schemas/HostedTelephoneNumberDetailHistory'
          type: array
        InServiceDate:
          type: string
        LastModified:
          type: string
        Lata:
          format: int32
          type: integer
        MessagingSettings:
          $ref: '#/components/schemas/TnDetailsMessagingSettings'
        OriginationRoutePlan:
          $ref: '#/components/schemas/OriginationRoutePlan'
        RateCenter:
          type: string
        RequirementsPackageId:
          type: string
        ServiceTypes:
          items:
            type: string
            xml:
              name: ServiceType
          type: array
        SipPeer:
          $ref: '#/components/schemas/SipPeer'
        Site:
          $ref: '#/components/schemas/Site'
        State:
          type: string
        Status:
          type: string
        Tier:
          format: int32
          type: integer
        TnAttributes:
          items:
            type: string
            xml:
              name: TnAttribute
          type: array
        TnOptions:
          $ref: '#/components/schemas/TnOptions'
        TnType:
          type: string
        VendorId:
          format: int32
          type: integer
        VendorName:
          type: string
      title: TelephoneNumber
      type: object
    TelephoneNumberDetailHistoryResponse:
      properties:
        TelephoneNumberResponse:
          properties:
            TelephoneNumberDetails:
              $ref: '#/components/schemas/TelephoneNumberDetailHistoryPayload'
          type: object
      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
    TelephoneNumberGroupError:
      properties:
        Code:
          type: integer
        Description:
          type: string
        TelephoneNumbers:
          items:
            type: string
            xml:
              name: TelephoneNumber
          type: array
          xml:
            wrapped: true
      title: Error
      type: object
    TelephoneNumberLataResponse:
      properties:
        TelephoneNumberResponse:
          properties:
            TelephoneNumberDetails:
              properties:
                Lata:
                  format: int32
                  type: integer
              type: object
          type: object
      type: object
    TelephoneNumberList:
      description: List of telephone numbers to be imported
      items:
        properties:
          TelephoneNumber:
            description: Ten digit phone number with no dots or dashes
            type: integer
        type: object
      minItems: 1
      type: array
    TelephoneNumberRateCenterResponse:
      properties:
        TelephoneNumberResponse:
          properties:
            TelephoneNumberDetails:
              properties:
                RateCenter:
                  type: string
                State:
                  type: string
              type: object
          type: object
      type: object
    TelephoneNumberStatusShortWrapper:
      properties:
        TelephoneNumberResponse:
          properties:
            AccountId:
              format: int32
              type: integer
            InServiceDate:
              type: string
            LastModifiedDate:
              type: string
            OrderCreateDate:
              type: string
            OrderId:
              type: string
            OrderType:
              type: string
            PeerGroup:
              type: string
            SiteId:
              format: int32
              type: integer
            Status:
              type: string
            TelephoneNumber:
              type: string
          type: object
      type: object
    TelephoneNumberTotalsHistory:
      properties:
        Quantity:
          properties:
            Count:
              format: int32
              type: integer
          type: object
      title: Quantity
      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:
          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
    TelephoneNumbersErrorResponse:
      properties:
        TelephoneNumbersResponse:
          $ref: '#/components/schemas/ResponseStatus'
      title: TelephoneNumbersResponse
      type: object
    TelephoneNumbersHistoryResponse:
      properties:
        TelephoneNumbersResponse:
          properties:
            ErrorList:
              items:
                $ref: '#/components/schemas/TelephoneNumberGroupError'
              type: array
            Links:
              $ref: '#/components/schemas/PaginationLinks'
            TelephoneNumberCount:
              format: int32
              type: integer
            TelephoneNumbers:
              items:
                $ref: '#/components/schemas/TelephoneNumberDetailHistoryPayload'
              type: array
          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
    Tier:
      format: int32
      type: integer
    Tiers:
      properties:
        Count:
          type: integer
        Tier:
          type: string
      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
    TnAttributes:
      description: List of phone number attributes to be assigned.
      properties:
        TnAttribute:
          enum:
            - Protected
          type: string
      type: object
    TnAttributesPatch:
      properties:
        delete:
          type: boolean
      type: object
    TnDetailsMessagingSettings:
      properties:
        A2pState:
          enum:
            - 'OFF'
            - SYSTEM_DEFAULT
            - OVERRIDDEN
          type: string
        AssignedNnRoute:
          $ref: '#/components/schemas/TnDetailsNnRoute'
        CampaignFullyProvisioned:
          type: boolean
        CampaignId:
          type: string
        MessageClass:
          type: string
        SmsEnabled:
          type: string
      type: object
    TnDetailsNnRoute:
      properties:
        Name:
          type: string
        Nnid:
          format: int32
          type: integer
      title: NNRoute
      type: object
    TnE911Address:
      properties:
        AddressLine2:
          type: string
        City:
          type: string
        Country:
          type: string
        HouseNumber:
          type: string
        HouseSuffix:
          type: string
        Latitude:
          type: string
        Longitude:
          type: string
        Name:
          type: string
        PlusFour:
          type: string
        PostDirectional:
          type: string
        PreDirectional:
          type: string
        StateCode:
          type: string
        StreetName:
          type: string
        Zip:
          type: string
      type: object
    TnE911AddressPayload:
      properties:
        AccountId:
          type: integer
        Address:
          $ref: '#/components/schemas/TnE911Address'
        EmergencyNotificationGroup:
          $ref: '#/components/schemas/EmergencyNotificationGroupPayload'
      type: object
    TnE911AddressResponse:
      properties:
        Address:
          $ref: '#/components/schemas/TnE911Address'
        EmergencyNotificationGroup:
          $ref: '#/components/schemas/EmergencyNotificationGroupPayload'
        TnE911Address:
          items:
            $ref: '#/components/schemas/TnE911AddressPayload'
          type: array
      type: object
    TnList:
      properties:
        TnList:
          properties:
            TN:
              items:
                type: string
                xml:
                  name: TN
              type: array
          type: object
      type: object
    TnListPutErrorResponse:
      properties:
        TnListResponse:
          properties:
            OrderId:
              type: string
            ProcessingStatus:
              enum:
                - INVALID_DRAFT_TNS
              type: string
            ResponseStatus:
              $ref: '#/components/schemas/ResponseStatus'
          type: object
      type: object
    TnListPutResponse:
      properties:
        TnListResponse:
          properties:
            OrderId:
              description: This is Bandwidth order ID.
              type: string
            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:
                - DRAFT
                - PARTIAL
                - COMPLETED
                - CANCELED
                - VALIDATE_DRAFT_TNS
                - VALID_DRAFT_TNS
                - INVALID_DRAFT_TNS
              type: string
          type: object
      type: object
    TnListRequest:
      properties:
        TnList:
          items:
            $ref: '#/components/schemas/Tn'
          type: array
      type: object
    TnListResponse:
      properties:
        TnListResponse:
          properties:
            ChildPortinOrder:
              description: >-
                The OrderId and TnList of a child order associated with a bulk
                port-in. A child order is created for each set of telephone
                numbers that can be ported together.  This element shows which
                telephone numbers are associated with each child order.
              properties:
                OrderId:
                  type: string
                TnList:
                  items:
                    properties:
                      Tn:
                        type: string
                  type: array
              type: object
            ChildPortinOrderList:
              description: >-
                This is a list of any telephone numbers from the tnList that
                have not yet been validated.
              properties:
                ChildPortinOrder:
                  description: >-
                    The list of child, or subtending, orders associated with a
                    bulk port-in.  The bulk port-in will have an empty
                    ChildPortinOrderList if none of the telephone numbers
                    included in the /tnList are portable.
                  properties:
                    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
                    TnList:
                      items:
                        properties:
                          Tn:
                            type: string
                      type: array
                  type: object
              type: object
            ErrorList:
              description: >-
                The list of errors (if any) associated with the telephone
                numbers in the tnList.
              items:
                properties:
                  Error:
                    properties:
                      Code:
                        description: Numeric designation of corresponding error.
                        type: integer
                      Description:
                        description: Detailed explanation about error.
                        type: string
                      TnList:
                        items:
                          properties:
                            Tn:
                              type: string
                        type: array
                    type: object
              type: array
            NotValidatedTnList:
              description: >-
                This is a list of any telephone numbers from the tnList that
                have not yet been validated.
              items:
                properties:
                  TN:
                    type: string
              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
            PortableTnList:
              description: >-
                This is a list of all of the telephone numbers from the tnList
                that were validated and are known to be portable.
              items:
                properties:
                  TN:
                    type: string
              type: array
            ProcessingStatus:
              enum:
                - DRAFT
                - PARTIAL
                - COMPLETED
                - CANCELED
                - VALIDATE_DRAFT_TNS
                - VALID_DRAFT_TNS
                - INVALID_DRAFT_TNS
              type: string
          type: object
      type: object
    TnOptionGroup:
      properties:
        A2pSettings:
          $ref: '#/components/schemas/A2pSettings'
        CallForward:
          enum:
            - 10digit
            - unchanged
            - systemDefault
          type: string
        CallVerificationEnabled:
          enum:
            - '{custom value}'
            - 'true'
            - 'false'
          type: string
        CallingNameDisplay:
          enum:
            - 'on'
            - 'off'
            - unchanged
            - systemDefault
          type: string
        ESPID:
          enum:
            - '{custom value}'
            - unchanged
            - systemDefault
          type: string
        FinalDestinationURI:
          enum:
            - '{custom value}'
            - unchanged
            - systemDefault
          format: >-
            a 10 digit telephone number or a SIP URI ( without the sip: prefix )
            in the form address-string@host IP:port, where the host IP is an
            IPv4 address in the standard numerical n.n.n.n. form, and the port
            is numeric, and optional

            containing [a-z,A-Z,0-9], with ':', '.' and '@' to delimit the
            components of the overall string, and less than 60 characters long
          maxLength: 60
          minLength: 10
          type: string
        NNID:
          enum:
            - '{custom value}'
            - unchanged
            - systemDefault
          format: integer
          type: string
        NumberFormat:
          enum:
            - 10digit
            - 11digit
            - e164
            - unchanged
            - systemDefault
          type: string
        OriginationRoutePlan:
          $ref: '#/components/schemas/OriginationRoutePlan'
        PindropEnabled:
          enum:
            - '{custom value}'
            - 'true'
            - 'false'
          type: string
        PortOutPasscode:
          enum:
            - '{custom value}'
            - unchanged
            - systemDefault
          format: alphanumeric
          maxLength: 10
          minLength: 4
          type: string
        Protected:
          enum:
            - 'true'
            - 'false'
            - unchanged
            - systemDefault
          type: string
        RPIDFormat:
          enum:
            - 10digit
            - 11digit
            - e164
            - unchanged
            - systemDefault
          type: string
        RewriteUser:
          enum:
            - '{custom value}'
            - unchanged
            - systemDefault
          type: string
        Sms:
          enum:
            - 'on'
            - 'off'
            - unchanged
          type: string
        TelephoneNumbers:
          items:
            description: 10 digit tn
            type: string
            xml:
              name: TelephoneNumber
          type: array
      type: object
    TnOptionOrderError:
      properties:
        Code:
          format: int32
          type: integer
        Description:
          type: string
        TelephoneNumber:
          type: string
        TelephoneNumbers:
          items:
            type: string
          type: array
      title: Error
      type: object
    TnOptionOrderErrorResponse:
      properties:
        TnOptionOrderResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    TnOptionOrderPayload:
      properties:
        CustomerOrderId:
          description: Optional value for Id set by customer
          format: Only alphanumeric values, dashes and spaces are allowed
          maxLength: 40
          type: string
        Name:
          type: string
        TnOptionGroups:
          description: >-
            Each group contains list of telephone numbers and set of TN options
            you want to assign to all TNs in the list
          items:
            $ref: '#/components/schemas/TnOptionGroup'
          type: array
      title: TnOptionOrder
      type: object
    TnOptionOrderReportDetailedResponse:
      properties:
        TnOptionOrderReportResponse:
          properties:
            TnOptionOrders:
              items:
                $ref: '#/components/schemas/TnOptionOrderResponsePayload'
              type: array
          type: object
      title: TnOptionOrderReportResponse
      type: object
    TnOptionOrderReportErrorResponse:
      properties:
        TnOptionOrderReportResponse:
          $ref: '#/components/schemas/ResponseStatus'
      title: TnOptionOrderReportResponse
      type: object
    TnOptionOrderReportSummaryResponse:
      properties:
        TnOptionOrderReportResponse:
          properties:
            Links:
              $ref: '#/components/schemas/PaginationLinks'
            TnOptionOrderSummary:
              items:
                $ref: '#/components/schemas/OrderSummary'
              title: TnOptionOrderSummary
              type: array
            TotalCount:
              type: integer
          type: object
      title: TnOptionOrderReportResponse
      type: object
    TnOptionOrderReportValidationErrorResponse:
      properties:
        TollFreePortingValidationResponse:
          $ref: '#/components/schemas/ResponseStatus'
      title: TollFreePortingValidationResponse
      type: object
    TnOptionOrderRequest:
      properties:
        TnOptionOrder:
          $ref: '#/components/schemas/TnOptionOrderPayload'
      title: TnOptionOrder
      type: object
    TnOptionOrderResponse:
      properties:
        TnOptionOrderResponse:
          properties:
            TnOptionOrder:
              $ref: '#/components/schemas/TnOptionOrderResponsePayload'
          type: object
      type: object
    TnOptionOrderResponsePayload:
      properties:
        AccountId:
          format: int32
          type: integer
        CreatedByUser:
          type: string
        CustomerOrderId:
          type: string
        ErrorList:
          items:
            $ref: '#/components/schemas/TnOptionOrderError'
          type: array
        LastModifiedBy:
          type: string
        LastModifiedDate:
          type: string
        Name:
          type: string
        OrderCreateDate:
          type: string
        OrderId:
          type: string
        PeerId:
          format: int32
          type: integer
        ProcessingStatus:
          enum:
            - RECEIVED
            - PROCESSING
            - COMPLETE
            - PARTIAL
            - FAILED
          type: string
        SiteId:
          format: int32
          type: integer
        TnOptionGroups:
          items:
            $ref: '#/components/schemas/TnOptionGroup'
          type: array
        Warnings:
          items:
            $ref: '#/components/schemas/TnOptionOrderWarningPayload'
          type: array
      title: TnOptionOrder
      type: object
    TnOptionOrderWarningPayload:
      properties:
        Description:
          type: string
        TelephoneNumber:
          type: string
      title: Warning
      type: object
    TnOptions:
      properties:
        CallForward:
          $ref: '#/components/schemas/TelephoneNumber'
        CallVerificationEnabled:
          type: string
        CallingNameDisplay:
          type: string
        FinalDestinationURI:
          type: string
        NumberFormat:
          type: string
        PindropEnabled:
          type: string
        PortOutPasscode:
          type: string
        RPIDFormat:
          type: string
        RewriteUser:
          type: string
      type: object
    TnOrderBadResponse:
      properties:
        ErrorList:
          items:
            properties:
              Error:
                properties:
                  Code:
                    type: integer
                  Description:
                    type: string
                type: object
          type: array
        OrderResponse:
          oneOf:
            - $ref: '#/components/schemas/ExistingTelephoneNumberOrder'
            - $ref: '#/components/schemas/RateCenterSearchAndOrder'
            - $ref: '#/components/schemas/AreaCodeSearchAndOrder'
            - $ref: '#/components/schemas/NPANXXSearchAndOrder'
            - $ref: '#/components/schemas/TollFreeWildCharSearchAndOrder'
            - $ref: '#/components/schemas/TollFreeVanitySearchAndOrder'
            - $ref: '#/components/schemas/LATASearchAndOrder'
            - $ref: '#/components/schemas/ZIPSearchAndOrder'
            - $ref: '#/components/schemas/CitySearchAndOrder'
            - $ref: '#/components/schemas/StateSearchAndOrder'
            - $ref: '#/components/schemas/CombinedSearchAndOrder'
          xml:
            name: OrderResponse
      type: object
    TnOrderCreatedResponse:
      properties:
        OrderResponse:
          oneOf:
            - $ref: '#/components/schemas/ExistingTelephoneNumberOrderResponse'
            - $ref: '#/components/schemas/RateCenterSearchAndOrderResponse'
            - $ref: '#/components/schemas/AreaCodeSearchAndOrderResponse'
            - $ref: '#/components/schemas/NPANXXSearchAndOrderResponse'
            - $ref: '#/components/schemas/TollFreeWildCharSearchAndOrderResponse'
            - $ref: '#/components/schemas/TollFreeVanitySearchAndOrderResponse'
            - $ref: '#/components/schemas/LATASearchAndOrderResponse'
            - $ref: '#/components/schemas/ZIPSearchAndOrderResponse'
            - $ref: '#/components/schemas/CitySearchAndOrderResponse'
            - $ref: '#/components/schemas/StateSearchAndOrderResponse'
            - $ref: '#/components/schemas/CombinedSearchAndOrderResponse'
          xml:
            name: OrderResponse
      type: object
    TnOrderHistoryResponse:
      properties:
        ResponseSelectWrapper:
          properties:
            ListOrderIdUserIdDate:
              properties:
                Links:
                  $ref: '#/components/schemas/Links'
                OrderIdUserIdDate:
                  items:
                    $ref: '#/components/schemas/OrderSummary'
                  type: array
                TotalCount:
                  type: integer
              type: object
          type: object
      type: object
    TnOrderUpdatedResponse:
      properties:
        OrderResponse:
          properties:
            CompletedNumbers:
              items:
                properties:
                  TelephoneNumber:
                    properties:
                      FullNumber:
                        type: string
                    type: object
                type: object
              type: array
            CompletedQuantity:
              type: integer
            CreatedByUser:
              type: string
            FailedQuantity:
              type: integer
            LastModifiedDate:
              type: string
            Order:
              oneOf:
                - $ref: '#/components/schemas/ExistingTelephoneNumberOrder'
                - $ref: '#/components/schemas/RateCenterSearchAndOrder'
                - $ref: '#/components/schemas/AreaCodeSearchAndOrder'
                - $ref: '#/components/schemas/NPANXXSearchAndOrder'
                - $ref: '#/components/schemas/TollFreeWildCharSearchAndOrder'
                - $ref: '#/components/schemas/TollFreeVanitySearchAndOrder'
                - $ref: '#/components/schemas/LATASearchAndOrder'
                - $ref: '#/components/schemas/ZIPSearchAndOrder'
                - $ref: '#/components/schemas/CitySearchAndOrder'
                - $ref: '#/components/schemas/StateSearchAndOrder'
                - $ref: '#/components/schemas/CombinedSearchAndOrder'
            OrderCompleteDate:
              type: string
            OrderStatus:
              type: string
          type: object
      type: object
    TnPortOutPasscodePayload:
      properties:
        FullNumber:
          type: string
        Passcode:
          type: string
      title: TelephoneNumber
      type: object
    TnPortOutPasscodesErrorResponse:
      properties:
        TelephoneNumbersResponse:
          $ref: '#/components/schemas/ResponseStatus'
      title: TelephoneNumbersResponse
      type: object
    TnPortOutPasscodesPayload:
      properties:
        TelephoneNumber:
          items:
            $ref: '#/components/schemas/TnPortOutPasscodePayload'
          type: array
      title: TelephoneNumbers
      type: object
    TnPortOutPasscodesResponse:
      properties:
        TelephoneNumbersResponse:
          properties:
            ErrorList:
              items:
                $ref: '#/components/schemas/TelephoneNumberGroupError'
              type: array
            Links:
              $ref: '#/components/schemas/PaginationLinks'
            TelephoneNumberCount:
              type: integer
            TelephoneNumbers:
              $ref: '#/components/schemas/TnPortOutPasscodesPayload'
          type: object
      type: object
    TnRateCenters:
      properties:
        RCs:
          items:
            properties:
              RC:
                type: string
            type: object
          type: array
        State:
          format: int32
          type: integer
      title: RateCenters
      type: object
    TnReservationResponse:
      properties:
        TNReservation:
          $ref: '#/components/schemas/Reservation'
      type: object
    TnSipPeer:
      properties:
        SipPeer:
          properties:
            Id:
              format: int32
              type: integer
            Name:
              type: string
          type: object
      type: object
    TnSite:
      properties:
        Site:
          properties:
            Id:
              format: int32
              type: integer
            Name:
              type: string
          type: object
      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: >-
            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
          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:
          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
    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
    TollFreeVanitySearchAndOrder:
      allOf:
        - $ref: '#/components/schemas/orderMetadata'
        - properties:
            TollFreeVanitySearchAndOrderType:
              $ref: '#/components/schemas/TollFreeVanitySearchAndOrderType'
          type: object
      xml:
        name: Order
    TollFreeVanitySearchAndOrderResponse:
      properties:
        order:
          properties:
            allOf:
              - $ref: '#/components/schemas/orderResponseMetadata'
              - properties:
                  TollFreeVanitySearchAndOrderType:
                    $ref: '#/components/schemas/TollFreeVanitySearchAndOrderType'
                type: object
          type: object
          xml:
            name: Order
        orderStatus:
          example: RECEIVED
          type: string
          xml:
            name: OrderStatus
      type: object
      xml:
        name: OrderResponse
    TollFreeVanitySearchAndOrderType:
      properties:
        Quantity:
          format: int32
          type: integer
        TollFreeVanity:
          type: string
      type: object
      xml:
        name: TollFreeVanitySearchAndOrderType
    TollFreeWildCharSearchAndOrder:
      allOf:
        - $ref: '#/components/schemas/orderMetadata'
        - properties:
            TollFreeWildCharSearchAndOrderType:
              $ref: '#/components/schemas/TollFreeWildCharSearchAndOrderType'
          type: object
      xml:
        name: Order
    TollFreeWildCharSearchAndOrderResponse:
      properties:
        order:
          properties:
            allOf:
              - $ref: '#/components/schemas/orderResponseMetadata'
              - properties:
                  TollFreeWildCharSearchAndOrderType:
                    $ref: '#/components/schemas/TollFreeWildCharSearchAndOrderType'
                type: object
          type: object
          xml:
            name: Order
        orderStatus:
          example: RECEIVED
          type: string
          xml:
            name: OrderStatus
      type: object
      xml:
        name: OrderResponse
    TollFreeWildCharSearchAndOrderType:
      properties:
        Quantity:
          format: int32
          type: integer
        TollFreeWildCardPattern:
          type: string
      type: object
      xml:
        name: TollFreeWildCharSearchAndOrderType
    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
    VendorName:
      description: >-
        The vendor that owns the number that is being ported in.  If the number
        is manually ported to a partner’s network then this would reflect that
        partner.
      type: string
    Vendors:
      properties:
        Count:
          type: integer
        VendorId:
          type: integer
        VendorName:
          type: string
      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
    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
    ZIPSearchAndOrder:
      allOf:
        - $ref: '#/components/schemas/orderMetadata'
        - properties:
            ZIPSearchAndOrderType:
              $ref: '#/components/schemas/ZIPSearchAndOrderType'
          type: object
      xml:
        name: Order
    ZIPSearchAndOrderResponse:
      properties:
        order:
          properties:
            allOf:
              - $ref: '#/components/schemas/orderResponseMetadata'
              - properties:
                  ZIPSearchAndOrderType:
                    $ref: '#/components/schemas/ZIPSearchAndOrderType'
                type: object
          type: object
          xml:
            name: Order
        orderStatus:
          example: RECEIVED
          type: string
          xml:
            name: OrderStatus
      type: object
      xml:
        name: OrderResponse
    ZIPSearchAndOrderType:
      properties:
        Quantity:
          format: int32
          type: integer
        Zip:
          type: string
      type: object
      xml:
        name: ZIPSearchAndOrderType
    addressId:
      description: Address Id
      example: daa9dd0f-de97-4103-8530-b31bf4be8fc0
      title: Address Id
      type: string
      xml:
        name: AddressId
    associatedOutboundNumber:
      properties:
        ErrorReason:
          $ref: '#/components/schemas/associatedOutboundNumberErrorReason'
        id:
          type: integer
        number:
          description: |-
            <p> An Associated Outbound Number should:
              <ul>
                <li> Be a valid phone number in E.164 format. For example: +18005550123.</li>
                <li> Not be duplicated. An Associated Outbound Number is unique within an account.
              </ul>
            </p>
          maxLength: 16
          minLength: 3
          type: string
      type: object
    associatedOutboundNumberErrorReason:
      description: >-
        <p> Describes the reason an associated outbound number has failed. This
        could be due to validation or business logic.

        <br>

        Possible Error Reasons include:
          <ul>
            <li> Invalid number format. </li>
            <li> Number is already associated with location ${location_name} [ID: ${location_id}]. </li>
            <li> Associated Outbound Number not found with location [ID: ${location_id}]. </li>
          </ul>
        </p>
      type: string
    associatedOutboundNumbers:
      items:
        $ref: '#/components/schemas/associatedOutboundNumber'
      maxItems: 250
      type: array
    associatedOutboundNumbersErrorResponse:
      properties:
        AssociatedOutboundNumbersResponse:
          $ref: '#/components/schemas/ResponseStatus'
      type: object
    associatedOutboundNumbersResponse:
      properties:
        AssociatedOutboundNumbers:
          $ref: '#/components/schemas/associatedOutboundNumbers'
        Errors:
          items:
            properties:
              AssociatedOutboundNumbers:
                $ref: '#/components/schemas/associatedOutboundNumbers'
            type: object
          type: array
        SuccessCount:
          type: integer
        TotalCount:
          type: integer
      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
    fileListResponse:
      properties:
        fileListResponse:
          properties:
            fileCount:
              description: Total count of files in response.
              type: integer
            fileData:
              description: Optional metadata associated with the file that was uploaded.
              properties:
                FileMetaData:
                  properties:
                    DocumentType:
                      description: Enum of possible file type.
                      enum:
                        - LOA
                        - INVOICE
                        - CSR
                        - OTHER
                      type: string
                  type: object
                FileName:
                  description: >-
                    The name that was associated with the file when it was
                    uploaded.
                  type: string
              type: object
            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
    getMessagingPortouts:
      description: Information about a messaging portout request
      properties:
        activation:
          example: '2023-01-01T18:25:43.511Z'
          format: date-time
          type: string
        comment:
          example: some comment if denied
          type: string
        decision:
          example: APPROVED
          type: string
        decisionDate:
          example: '2023-01-01T18:25:43.511Z'
          format: date-time
          type: string
        newNnid:
          example: '12345'
          type: string
        oldNnid:
          example: '12345'
          type: string
        phoneNumber:
          example: '+15551231234'
          type: string
        providerId:
          example: CarrierA
          type: string
        requestId:
          example: '1243421'
          type: string
      type: object
    getMessagingPortoutsListResponseBody:
      description: List of all the open messagin requests by account ID
      properties:
        Errors:
          items:
            $ref: '#/components/schemas/Error'
          type: array
        Links:
          $ref: '#/components/schemas/Links'
        data:
          items:
            $ref: '#/components/schemas/getMessagingPortouts'
          type: array
      required:
        - data
      type: object
    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
    importToAccountNumberOrderErrorResponse:
      properties:
        OrderRequest:
          properties:
            ErrorList:
              items:
                $ref: '#/components/schemas/Error'
              type: array
          type: object
      title: ImportToAccountNumberOrderErrorResponse
    importToAccountNumberOrderResponse:
      properties:
        OrderRequest:
          properties:
            ErrorList:
              items:
                $ref: '#/components/schemas/Error'
              type: array
            OrderCreatedDate:
              $ref: '#/components/schemas/OrderCreatedDate'
            OverrideFeatureRestrictions:
              description: Used to override the account's purchase restrictions
              type: boolean
            PeerId:
              description: >-
                A sippeer id of provided site to which telephone number will be
                imported
              type: integer
            SiteId:
              description: A site id to which telephone number will be imported
              type: integer
            id:
              description: Assigned order id.
              type: integer
            importToAccountNumberOrderType:
              $ref: '#/components/schemas/importToAccountNumberOrderType'
          type: object
      title: ImportToAccountNumberOrderResponse
    importToAccountNumberOrderResponseForGet:
      properties:
        OrderRequest:
          properties:
            ErrorList:
              items:
                $ref: '#/components/schemas/Error'
              type: array
            ImportedTelephoneNumberDetailList:
              $ref: '#/components/schemas/ImportedTelephoneNumberDetailList'
            OrderStatus:
              type: string
            importedTelephoneNumberList:
              $ref: '#/components/schemas/importedTelephoneNumberList'
            orderRequest:
              $ref: '#/components/schemas/importToAccountOrderResponseOrderRequest'
          type: object
      title: ImportToAccountNumberOrderResponse
    importToAccountNumberOrderType:
      properties:
        BatchId:
          $ref: '#/components/schemas/BatchId'
        BatchSize:
          $ref: '#/components/schemas/BatchSize'
        BillingType:
          $ref: '#/components/schemas/BillingType'
        InitialStatus:
          $ref: '#/components/schemas/InitialStatus'
        Origin:
          $ref: '#/components/schemas/Origin'
        PhoneNumberInventoryGroupId:
          $ref: '#/components/schemas/PhoneNumberInventoryGroupId'
        TelephoneNumberList:
          $ref: '#/components/schemas/TelephoneNumberList'
        TnAttributes:
          $ref: '#/components/schemas/TnAttributes'
        VendorName:
          $ref: '#/components/schemas/VendorName'
      required:
        - TelephoneNumberList
        - BillingType
        - VendorName
      type: object
    importToAccountOrderResponseOrderRequest:
      properties:
        OrderCreatedDate:
          $ref: '#/components/schemas/OrderCreatedDate'
        OverrideFeatureRestrictions:
          description: Used to override the account's purchase restrictions
        PeerId:
          description: >-
            A sippeer id of provided site to which telephone number will be
            imported
          type: integer
        SiteId:
          description: A site id to which telephone number will be imported
          type: integer
        importToAccountNumberOrderType:
          $ref: '#/components/schemas/importToAccountNumberOrderType'
      title: orderRequest
    importedTelephoneNumberList:
      description: List of telephone numbers that were imported
      items:
        properties:
          TelephoneNumber:
            description: Ten digit phone number with no dots or dashes
            type: integer
        type: object
      minItems: 1
      type: array
    jsonPatch:
      items:
        $ref: '#/components/schemas/jsonPatchItem'
      type: array
    jsonPatchItem:
      properties:
        from:
          description: Used when the operation is copy or move.
          type: string
        op:
          enum:
            - add
            - remove
            - replace
            - copy
            - move
            - test
          example: replace
          type: string
        path:
          example: /state
          type: string
        value:
          description: Used when the operation is add, replace, or test.
          example:
            status: MAINTENANCE
          type: object
      required:
        - op
        - path
      type: object
    lnpPortInfoForGivenStatus:
      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
        CompanyName:
          description: Name associated with the Bandwidth App account.
          type: string
        CountOfTNs:
          description: Total count of telephone numbers in order.
          type: integer
        LNPLosingCarrierId:
          description: Internal use only
          type: string
        LNPLosingCarrierName:
          description: The carrier that the telephone numbers are being ported away from.
          type: string
        OrderDate:
          type: string
        OrderId:
          description: This is Bandwidth Oder ID.
          type: string
        OrderType:
          type: string
        PON:
          description: >-
            A PON (Port Order Number) is a system generated order number
            assigned to port orders to easily identify individual requests.
          type: string
        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
        RequestedFOCDate:
          description: >-
            This is the FOC (Firm Order Commitment) Date requested by the person
            (or machine) creating the Port-in Order.
          type: string
        VendorId:
          description: Internal use only.
          type: string
        VendorName:
          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 Port-in Order was last modified.
          type: string
        userId:
          description: Bandwidth user ID.
          type: string
      type: object
    messagingPortoutError:
      description: A generic error object.
      properties:
        description:
          example: Error Message
          type: string
        type:
          example: Error Type
          type: string
      type: object
    messagingPortoutNotificationCallback:
      properties:
        activation:
          example: '2023-05-15T13:56:39.965Z'
          format: date-time
          type: string
        newNnid:
          example: '963852'
          type: string
        notificationType:
          enum:
            - PORTOUT_REQUEST
            - MESSAGING_OVERWRITTEN
          type: string
        oldNnid:
          example: '789456'
          type: string
        overwriterCarrier:
          example: NewCarrierName
          type: string
        phoneNumber:
          $ref: '#/components/schemas/phoneNumber'
        requestId:
          example: '123456'
          type: string
      required:
        - phoneNumber
        - requestId
        - notificationType
        - oldNnid
        - newNnid
        - overwriterCarrier
        - activation
      type: object
    messagingPortoutPostBadRequestError:
      description: A generic error object.
      properties:
        description:
          example: Error Message
          type: string
        errors:
          description: >-
            Each key of this errors object refers to a field of the submitted
            object (using dot notation for nested objects), with the field being
            a key to an array of one or more errors for that field.
          example:
            field: error message
          type: object
        type:
          example: Error Type
          type: string
      type: object
    messagingPortoutSubmissionStatusCallback:
      properties:
        approval:
          example: 'no'
          type: string
        comment:
          example: some comment about why declined
          type: string
        notificationType:
          enum:
            - PORTOUT_RESPONSE_SUBMITTED
          type: string
        phoneNumber:
          $ref: '#/components/schemas/phoneNumber'
        requestId:
          example: '123456'
          type: string
      required:
        - phoneNumber
        - requestId
        - notificationType
        - approval
      type: object
    messagingPortoutWebhookSubscription:
      description: >-
        Information about a webhook that Bandwidth should send upon the
        completion of event customer has subscribed to.
      properties:
        accountId:
          example: '1234567'
          type: string
        basicAuthentication:
          description: >-
            Basic authentication credentials are not required, but if present,
            both username and password must be provided.
          properties:
            password:
              maxLength: 200
              type: string
            username:
              maxLength: 100
              type: string
          required:
            - username
            - password
          type: object
        callbackUrl:
          $ref: '#/components/schemas/webhookUrl'
        createdDate:
          example: '2023-05-15T13:56:39.965Z'
          format: date-time
          type: string
        id:
          example: 7hICGStfAfeGxEq3N0lQwO
          type: string
        modifiedDate:
          example: '2023-05-15T13:56:39.965Z'
          format: date-time
          type: string
        sharedSecretKey:
          $ref: '#/components/schemas/sharedSecretKey'
        webhookType:
          description: Type of webhook subscription.
          enum:
            - PORTOUT_REQUEST
            - PORTOUT_RESPONSE_SUBMITTED
            - MESSAGING_OVERWRITTEN
          example: PORTOUT_REQUEST
          type: string
      required:
        - callbackUrl
      type: object
    messagingPortoutWebhookSubscriptionsListBody:
      description: >-
        A list of all webhook subscriptions registered for this account ID for
        Messaging Portout.
      properties:
        data:
          items:
            $ref: '#/components/schemas/messagingPortoutWebhookSubscription'
          type: array
        errors:
          items:
            $ref: '#/components/schemas/Error'
          type: array
        links:
          $ref: '#/components/schemas/Links'
      required:
        - data
      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
    orderMetadata:
      properties:
        BackOrderRequested:
          type: boolean
        CloseOrder:
          type: boolean
        CustomerOrderId:
          type: string
        Name:
          type: string
        OrderCreateDate:
          type: string
        PartialAllowed:
          type: boolean
        PeerId:
          format: int32
          type: integer
        SiteId:
          format: int32
          type: integer
        TnAttributes:
          items:
            $ref: '#/components/schemas/TnAttribute'
          type: array
      type: object
      xml:
        name: Order
    orderRequest:
      properties:
        CustomerOrderId:
          type: string
        DisconnectTelephoneNumberOrderType:
          $ref: '#/components/schemas/DisconnectTelephoneNumberOrderType'
        OrderCreateDate:
          type: string
        id:
          type: string
      type: object
    orderResponseMetadata:
      allOf:
        - $ref: '#/components/schemas/orderMetadata'
        - properties:
            id:
              example: c1b34921-ed73-4732-8a08-168e815514ec
              type: string
            orderCreateDate:
              example: '2022-11-14T18:39:04.505Z'
              type: string
              xml:
                name: OrderCreateDate
          type: object
    osrTransactionIdEntity:
      description: Osr Transaction ID Entity
      properties:
        transactionId:
          example: '1234'
          type: string
      type: object
    phoneNumber:
      description: Telephone number in E.164 format
      example: '+12345678900'
      maxLength: 17
      minLength: 2
      nullable: false
      pattern: ^\+\d{1,16}$
      type: string
    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
    sharedSecretKey:
      description: >-
        An ASCII string submitted by the user as a shared secret key for
        generating an HMAC header for callbacks.
      example: This is my $3cret
      maxLength: 64
      minLength: 16
      nullable: true
      pattern: ^[ -~]{16,64}$
      type: string
    shortCode:
      description: Short code registration.
      properties:
        accountId:
          description: Account ID.
          example: '123123'
          type: string
        carrierStatuses:
          description: >-
            List of objects each providing the registration status for an
            individual carrier.
          items:
            $ref: '#/components/schemas/shortCodeCarrierInfo'
          type: array
        country:
          description: The country the short code is registered in.
          enum:
            - USA
            - CAN
          example: USA
          type: string
        createdDateTime:
          example: '2022-11-14T18:39:04.505Z'
          format: date-time
          type: string
        customerManagedLease:
          description: >-
            Flag indicating whether the customer is managing the short code
            lease.
          example: true
          type: boolean
        lease:
          $ref: '#/components/schemas/shortCodeLeaseInfo'
        modifiedDateTime:
          example: '2022-11-15T18:39:04.505Z'
          format: date-time
          type: string
        shortCode:
          description: The short code.
          example: '12345'
          type: string
        sipPeerId:
          description: SIP Peer ID.
          example: '123321'
          type: string
        siteId:
          description: Sub-account ID.
          example: '321321'
          type: string
        status:
          description: >-
            If at least one carrier status is ACTIVE or PENDING, the status will
            be ACTIVE. If all carrier statues are INACTIVE, the status will be
            INACTIVE.
          enum:
            - ACTIVE
            - EXPIRED
            - SUSPENDED
            - INACTIVE
          example: ACTIVE
          type: string
        type:
          description: The lease type.
          enum:
            - RANDOM
            - VANITY
          example: RANDOM
          type: string
        version:
          description: >-
            An internal field that represents the current version of the short
            code data.
          example: 100
          type: integer
    shortCodeApiPage:
      description: >-
        Pagination object that represents the current page of short code
        numbers.
      properties:
        data:
          items:
            $ref: '#/components/schemas/shortCode'
          type: array
        errors:
          example:
            description: Client is providing incorrect or invalid credentials.
            type: unauthorized
          items:
            $ref: '#/components/schemas/shortCodeError'
          type: array
        page:
          $ref: '#/components/schemas/shortCodePage'
      type: object
    shortCodeCarrierInfo:
      description: The registration status for each carrier.
      properties:
        activatedDate:
          description: >-
            The date the short code was activated for this carrier, this date
            only will be defined when the status of the carrier becomes ACTIVE.
          example: '2023-01-28'
          format: date
          type: string
        carrierId:
          description: Carrier identifier (possible values ATT, T-MOBILE, VERIZON).
          enum:
            - ATT
            - T-MOBILE
            - VERIZON
          example: T-MOBILE
          type: string
        status:
          enum:
            - ACTIVE
            - INACTIVE
            - PENDING
          example: ACTIVE
          type: string
      type: object
    shortCodeCarrierProvidersInfo:
      description: Internal field, list of carrier to provider mappings (direct binds).
      properties:
        carrierId:
          description: Carrier identifier (possible values ATT).
          enum:
            - ATT
          example: ATT
          type: string
        provider:
          description: Provider identifier (possible values ATT_DIRECT).
          enum:
            - ATT_DIRECT
          example: ATT_DIRECT
          type: string
      type: object
    shortCodeData:
      description: Short code details representation.
      properties:
        carrierStatuses:
          description: >-
            List of objects each providing the registration status for an
            individual carrier.
          items:
            $ref: '#/components/schemas/shortCodeCarrierInfo'
          type: array
        country:
          description: The country the short code is registered in.
          enum:
            - USA
            - CAN
          example: USA
          type: string
        createdDateTime:
          example: '2022-11-14T18:39:04.505Z'
          format: date-time
          type: string
        customerManagedLease:
          description: >-
            Flag indicating whether the customer is managing the short code
            lease.
          example: true
          type: boolean
        lease:
          $ref: '#/components/schemas/shortCodeLeaseData'
        modifiedDateTime:
          example: '2022-11-15T18:39:04.505Z'
          format: date-time
          type: string
        shortCode:
          description: The short code.
          example: '12345'
          type: string
        sipPeerId:
          description: SIP Peer ID from Iris.
          example: '123321'
          type: string
        siteId:
          description: Sub-account ID.
          example: '321321'
          type: string
        status:
          description: >-
            If at least one carrier status is ACTIVE or PENDING, the status will
            be ACTIVE. If all carrier statues are INACTIVE, the status will be
            INACTIVE.
          enum:
            - ACTIVE
            - EXPIRED
            - SUSPENDED
            - INACTIVE
          example: ACTIVE
          type: string
        type:
          description: The lease type.
          enum:
            - RANDOM
            - VANITY
          example: RANDOM
          type: string
        version:
          description: >-
            A field that represents the version of the short code data, when
            updating a short code is necessary to supply the last version value
            added by 1.
          example: 100
          type: integer
      type: object
    shortCodeError:
      description: A generic error object.
      properties:
        description:
          example: cannot find requested resource
          type: string
        type:
          example: not found
          type: string
      type: object
    shortCodeError400:
      description: A specific error object for HTTP Status 400.
      example:
        description: Cannot process request.
        errors:
          accountId:
            - is required
            - can not be empty
          shortCode:
            - is required
            - can not be empty
        type: cannot process request
      properties:
        description:
          example: Cannot process request.
          type: string
        errors:
          $ref: '#/components/schemas/stringObjectMap'
        type:
          example: cannot process request
          type: string
      type: object
    shortCodeHistory:
      description: >-
        Short code history details representation, each history element
        represents an operation or an event that changed the state of the short
        code.
      properties:
        accountId:
          description: Account ID.
          example: '123123'
          type: string
        carrierStatuses:
          description: >-
            List of objects each providing the registration status for each
            carrier at the time the event occurred.
          items:
            $ref: '#/components/schemas/shortCodeCarrierInfo'
          type: array
        country:
          description: The country the short code was registered in.
          enum:
            - USA
            - CAN
          example: USA
          type: string
        createdDateTime:
          example: '2022-11-14T18:39:04.505Z'
          format: date-time
          type: string
        customerManagedLease:
          description: >-
            Flag indicating whether the customer is managing the short code
            lease.
          example: true
          type: boolean
        lease:
          $ref: '#/components/schemas/shortCodeLeaseInfo'
        modifiedDateTime:
          example: '2022-11-15T18:39:04.505Z'
          format: date-time
          type: string
        operation:
          description: Operation executed over the short code.
          enum:
            - CREATED
            - UPDATED
            - DELETED
          example: UPDATED
          type: string
        shortCode:
          description: The short code.
          example: '12345'
          type: string
        sipPeerId:
          description: SIP Peer ID.
          example: '123321'
          type: string
        siteId:
          description: Sub-account ID.
          example: '321321'
          type: string
        status:
          description: >-
            If at least one carrier status is ACTIVE or PENDING, the status will
            be ACTIVE. If all carrier statues are INACTIVE, the status will be
            INACTIVE.
          enum:
            - ACTIVE
            - EXPIRED
            - SUSPENDED
            - INACTIVE
          example: ACTIVE
          type: string
        type:
          description: The lease type.
          enum:
            - RANDOM
            - VANITY
          example: RANDOM
          type: string
        user:
          description: The customer user ID that initiated the operation.
          example: systemUser
          type: string
        version:
          description: A internal field that represents the version of the short code data.
          example: 100
          type: integer
    shortCodeHistoryApiPage:
      description: >-
        Pagination object that represents the current page of short code number
        history.
      properties:
        data:
          items:
            $ref: '#/components/schemas/shortCodeHistory'
          type: array
        errors:
          example:
            description: Client is providing incorrect or invalid credentials.
            type: unauthorized
          items:
            $ref: '#/components/schemas/shortCodeError'
          type: array
        page:
          $ref: '#/components/schemas/shortCodePage'
      type: object
    shortCodeLeaseData:
      description: >-
        The lease information for the short code number. This information only
        applies to Bandwidth managed short code leases (customerManagedLease set
        to false).
      properties:
        autoRenew:
          description: Flag indicating whether the lease should auto-renew.
          example: true
          type: boolean
        autoRenewMonths:
          description: >-
            The number of months for which to renew the release when it auto
            renews. Valid values are 3, 6, and 12. The default value, if not
            supplied on creation, will be 3.
          enum:
            - 3
            - 6
            - 12
          example: 6
          type: integer
        contactEmail:
          description: Email address used for all lease renewal notifications.
          example: test@bandwidth.com
          type: string
        endDate:
          description: >-
            Lease end date. This date is inclusive, e.g. 2022-02-15 means that
            the short code is valid through 2/15.
          example: '2023-01-28'
          format: date
          type: string
        startDate:
          description: >-
            Lease start date. This date is inclusive, e.g. 2022-02-07 means that
            the short code is valid on 2/7.
          example: '2023-01-28'
          format: date
          type: string
      type: object
    shortCodeLeaseInfo:
      description: >-
        The lease information for the short code number. This information only
        applies to Bandwidth managed short code leases (customerManagedLease set
        to false).
      properties:
        autoRenew:
          description: Flag indicating whether the lease should auto-renew.
          example: true
          type: boolean
        autoRenewMonths:
          description: >-
            The number of months for which to renew the release when it auto
            renews. Valid values are 3, 6, and 12. The default value, if not
            supplied on creation, will be 3.
          enum:
            - 3
            - 6
            - 12
          example: 6
          type: integer
        contactEmail:
          description: Email address used for all lease renewal notifications.
          example: test@bandwidth.com
          type: string
        endDate:
          description: >-
            Lease end date. This date is inclusive, e.g. 2022-02-15 means that
            the short code is valid through 2/15.
          example: '2023-01-28'
          format: date
          type: string
        startDate:
          description: >-
            Lease start date. This date is inclusive, e.g. 2022-02-07 means that
            the short code is valid on 2/7.
          example: '2023-01-28'
          format: date
          type: string
      type: object
    shortCodePage:
      description: Pagination object that represents the current page.
      properties:
        pageNumber:
          description: The current page used in the request.
          example: 1
          type: integer
        pageSize:
          description: The current page size used in the request.
          example: 50
          type: integer
        totalElements:
          description: The total of objects that could be paginated.
          example: 100
          type: integer
        totalPages:
          description: The total of pages that could be paginated.
          example: 100
          type: integer
      type: object
    shortCodeUpdateData:
      description: Short code update details representation.
      properties:
        carrierStatuses:
          description: >-
            List of objects each providing the registration status for an
            individual carrier.
          items:
            $ref: '#/components/schemas/shortCodeCarrierInfo'
          type: array
        createdDateTime:
          example: '2022-11-14T18:39:04.505Z'
          format: date-time
          type: string
        customerManagedLease:
          description: >-
            Flag indicating whether the customer is managing the short code
            lease.
          example: true
          type: boolean
        lease:
          $ref: '#/components/schemas/shortCodeLeaseData'
        modifiedDateTime:
          example: '2022-11-15T18:39:04.505Z'
          format: date-time
          type: string
        sipPeerId:
          description: SIP Peer ID from Iris.
          example: '123321'
          type: string
        siteId:
          description: Sub-account ID.
          example: '321321'
          type: string
        status:
          description: >-
            If at least one carrier status is ACTIVE or PENDING, the status will
            be ACTIVE. If all carrier statues are INACTIVE, the status will be
            INACTIVE.
          enum:
            - ACTIVE
            - EXPIRED
            - SUSPENDED
            - INACTIVE
          example: ACTIVE
          type: string
        type:
          description: The lease type.
          enum:
            - RANDOM
            - VANITY
          example: RANDOM
          type: string
        version:
          description: >-
            A field that represents the version of the short code data, when
            updating a short code is necessary to supply the last version value
            added by 1.
          example: 100
          type: integer
      type: object
    stringObjectMap:
      additionalProperties:
        example:
          - is required
          - can not be empty
        items:
          example: is required
          type: string
        type: array
      example:
        accountId:
          - is required
          - can not be empty
        shortCode:
          - is required
          - can not be empty
      type: object
    telephoneNumberDetail:
      description: Returned when `enableTnDetail=True`
      properties:
        city:
          example: MICCO
          type: string
          xml:
            name: City
        fullNumber:
          example: 7722029845
          type: string
          xml:
            name: FullNumber
        lata:
          example: 46018
          type: number
          xml:
            name: LATA
        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
      type: object
      xml:
        name: TelephoneNumberDetail
    tfvError:
      description: A generic error object.
      properties:
        description:
          example: Error Message
          type: string
        type:
          example: Error Type
          type: string
      type: object
    updateOsrTransactionId:
      description: Updates OSR transaction ID in DB
      properties:
        transactionId:
          description: Transaction ID
          type: string
    webhookUrl:
      description: >-
        Callback URL to receive status updates from Bandwidth. When a webhook
        subscription is registered with Bandwidth under a given account ID, it
        will be used to send status updates for all requests submitted under
        that account ID.
      example: https://www.example.com/path/to/resource
      format: url
      maxLength: 2000
      minLength: 0
      nullable: true
      pattern: >-
        ^$|(https?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,253}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#()?&//=]*)
      type: string
  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/v1/</code>
  title: Numbers
  version: 1.0.0
openapi: 3.0.1
paths:
  /accounts/{accountId}:
    get:
      description: >
        The account is the root resource for many of the operations in the
        Bandwidth App API.


        The account is represented by an account id, which is the resource that
        represents a Bandwidth customer, providing a root resource for all of
        the customer's attributes and services.


        The API calls that are used to manage the details of a customer account,
        and to manage the resources that a Bandwidth customer has access to or
        control over, are accessed through the /accounts resource.


        This API call retrieves information about the account indicated by the
        Account ID.


        **Addresses**: `Address` and `LinkedAddresses`


        - Address 
          - The service address of the account. Historically only US and Canadian addresses supported.
          - `Address` will continue to be populated as long as the address is US/ Canada based and only one linked address exists.
        - LinkedAddresses 
          - A list of address reference IDs that are linked at the account. 
          - These addresses can be fully international.
          - `LinkedAddresses` will replace `Address`, however will continue to be supported for US/ Canada addresses.  
          - A list of **one** address will be supported initially, however this will extend as more address usages are introduced.
          - `LinkedAddresses` can be created and managed through the /addresses resource. See: [Addresses](https://internal-dev.bandwidth.com/apis/numbers/v2/#tag/Addresses) for more information.
          - A link to the individual Address API is returned within this object, see `Link`.
      operationId: GetAccount
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AccountResponse>
                      <Account>
                        <AccountId>14</AccountId>
                        <AssociatedCatapultAccount>u-ertyhgfd12dcvdhnboklk</AssociatedCatapultAccount>
                        <GlobalAccountNumber>globalAccount</GlobalAccountNumber>
                        <CompanyName>CWI Hosting</CompanyName>
                        <AccountType>Business</AccountType>
                        <NenaId/>
                        <CustomerSegment>Trial</CustomerSegment>
                        <Status>Active</Status>
                        <Tiers>
                          <Tier>0</Tier>
                        </Tiers>
                        <Address>
                          <HouseNumber>904</HouseNumber>
                          <HouseSuffix>E</HouseSuffix>
                          <PreDirectional/>
                          <StreetName>Anson</StreetName>
                          <StreetSuffix>St</StreetSuffix>
                          <PostDirectional/>
                          <AddressLine2/>
                          <City>Marshalltown</City>
                          <StateCode>IA</StateCode>
                          <Zip>50158</Zip>
                          <PlusFour/>
                          <County/>
                          <Country>United States</Country>
                          <AddressType>Billing</AddressType>
                        </Address>
                        <LinkedAddresses>
                          <LinkedAddress>
                            <AddressId>daa9dd0f-de97-4103-8530-b31bf4be8fc0</AddressId>
                            <AddressType>SERVICE</AddressType>
                            <Link>https://api.bandwidth.com/api/v2/accounts/14/addresses/daa9dd0f-de97-4103-8530-b31bf4be8fc0</Link>
                          </LinkedAddress>
                        </LinkedAddresses> 
                        <Contact>
                          <FirstName>Sanjay</FirstName>
                          <LastName>Rao</LastName>
                          <Phone>9195441234</Phone>
                          <Email>srao@bandwidth.com</Email>
                        </Contact>
                        <AltSpid>X455</AltSpid>
                        <SPID>9999</SPID>
                        <PortCarrierType>WIRELINE</PortCarrierType>
                        <TestAccount>false</TestAccount>
                      </Account>
                    </AccountResponse>
              schema:
                $ref: '#/components/schemas/AccountResponseWrapper'
          description: Retrieve Account information.
      summary: Retrieve account
      tags:
        - Account
  /accounts/{accountId}/addresses:
    get:
      description: GET is used to retrieve all addresses.
      operationId: GetAllAddresses
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            Search criterion for address by its locationid. Cannot be combined
            with type. Always returns E911 addresses.
          example: 47950147-9c58-407c-bcc4-e88743b20db5
          in: query
          name: e911locationid
          required: false
          schema:
            type: string
        - description: Search criterion for addresses by their type.
          example: e911
          in: query
          name: type
          required: true
          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?type=e911&amp;page=1&amp;size=500&gt;;rel="first";</first>
                        <next>Link=&lt;http://localhost:8080/api/accounts/8000259/addresses?type=E911&amp;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 type.
        '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: Retrieve all addresses
      tags:
        - Addresses
  /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: '8042105760'
          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>8042105760</CallbackNumber>
                          <EmergencyNotificationGroup>
                            <Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>
                            <Description>Building 5, 5th Floor.</Description>
                          </EmergencyNotificationGroup>
                        </AlternateEndUserIdentifier>
                        <AlternateEndUserIdentifier>
                          <Identifier>JohnAcid</Identifier>
                          <CallbackNumber>8042105618</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>8042105760</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}/applications:
    get:
      description: >-
        <p>List applications.</p> <p>Please visit <a
        href='/docs/account/applications'>Applications management</a></p>
      operationId: ListApplications
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ApplicationProvisioningResponse>
                      <ApplicationList>
                        <Application>
                          <ApplicationId>2cfcb382-161c-46d4-8c67-87ca09a72c85</ApplicationId>
                          <ServiceType>Messaging-V2</ServiceType>
                          <AppName>app1</AppName>
                          <!--DEPRECATED-->
                          <MsgCallbackUrl>http://a.com</MsgCallbackUrl>
                          <InboundCallbackUrl>http://a.com</InboundCallbackUrl>
                        </Application>
                        <Application>
                          <ApplicationId>0cb0112b-5998-4c81-999a-0d3fb5e3f8e2</ApplicationId>
                          <ServiceType>Voice-V2</ServiceType>
                          <AppName>app2</AppName>
                          <CallInitiatedCallbackUrl>http://b.com</CallInitiatedCallbackUrl>
                          <CallbackCreds>
                            <UserId>15jPWZmXdm</UserId>
                            </CallbackCreds>
                          <CallInitiatedFallbackUrl>https://fallback.com</CallInitiatedFallbackUrl>
                          <CallInitiatedFallbackMethod>POST</CallInitiatedFallbackMethod>
                          <CallInitiatedFallbackCreds>
                            <UserId>login2</UserId>
                          </CallInitiatedFallbackCreds>
                          <CallbackTimeout>20</CallbackTimeout>
                        </Application>
                      </ApplicationList>
                    </ApplicationProvisioningResponse>
              schema:
                $ref: '#/components/schemas/ApplicationProvisioningResponseWrapper'
          description: Retrieve list applications
      summary: List applications
      tags:
        - Applications
    post:
      description: >-
        <p>Create an Application.</p><p>CallbackUrl and MsgCallbackUrl fields
        are deprecated instead of use InboundCallbackUrl or
        OutboundCallbackUrl.</p><p>For more details please visit <a
        href='/docs/account/applications'>Applications management</a></p>
      operationId: CreateApplication
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              messaging:
                summary: Messaging application
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Application>
                    <ServiceType>Messaging</ServiceType>
                    <AppName>EBVICs</AppName>
                    <InboundCallbackUrl>https://example.com</InboundCallbackUrl>
                    <OutboundCallbackUrl>https://example2.com</OutboundCallbackUrl>
                    <InboundCallbackCreds>
                      <UserId>15jPWZmXdm</UserId>
                      <Password>xxv3jPsPR2</Password>
                    </InboundCallbackCreds>
                    <OutboundCallbackCreds>
                      <UserId>15jPWZmXdm</UserId>
                      <Password>xxv3jPsPR2</Password>
                    </OutboundCallbackCreds>
                    <RequestedCallbackTypes>
                      <CallbackType>message-delivered</CallbackType>
                      <CallbackType>message-failed</CallbackType>
                      <CallbackType>message-sending</CallbackType>
                    </RequestedCallbackTypes>
                  </Application>
              voice:
                summary: Voice application
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Application>
                    <ServiceType>Voice</ServiceType>
                    <AppName>v1</AppName>
                    <CallInitiatedCallbackUrl>https://a.com</CallInitiatedCallbackUrl>
                    <CallInitiatedMethod>GET</CallInitiatedMethod>
                    <CallStatusCallbackUrl>https://b.com</CallStatusCallbackUrl>
                    <CallStatusMethod>GET</CallStatusMethod>
                    <CallbackCreds>
                      <UserId>login123</UserId>
                      <Password>password123</Password>
                    </CallbackCreds>
                    <CallInitiatedFallbackUrl>https://fallback.com</CallInitiatedFallbackUrl>
                    <CallInitiatedFallbackMethod>POST</CallInitiatedFallbackMethod>
                    <CallInitiatedFallbackCreds>
                      <UserId>login2</UserId>
                      <Password>Password3</Password>
                    </CallInitiatedFallbackCreds>
                    <CallbackTimeout>20</CallbackTimeout>
                  </Application>
            schema:
              $ref: '#/components/schemas/ApplicationPayload'
      responses:
        '201':
          content:
            application/xml:
              examples:
                messaging:
                  summary: Messaging application
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ApplicationProvisioningResponse>
                      <Application>
                        <ApplicationId>d4d1b41d-4c05-47d0-838a-34e4f14e4e3e</ApplicationId>
                          <ServiceType>Messaging-V2</ServiceType>
                          <AppName>EBVICs</AppName>
                          <!--DEPRECATED-->
                          <MsgCallbackUrl>https://example.com</MsgCallbackUrl>
                          <InboundCallbackUrl>https://example.com</InboundCallbackUrl>
                          <OutboundCallbackUrl>https://example2.com</OutboundCallbackUrl>
                          <!--DEPRECATED-->
                          <MsgCallbackCreds>
                            <!--DEPRECATED-->
                            <UserId>15jPWZmXdm</UserId>
                            <!--DEPRECATED-->
                            </MsgCallbackCreds>
                          <InboundCallbackCreds>
                            <UserId>15jPWZmXdm</UserId>
                          </InboundCallbackCreds>
                          <OutboundCallbackCreds>
                            <UserId>15jPWZmXdm</UserId>
                          </OutboundCallbackCreds>
                          <RequestedCallbackTypes>
                            <CallbackType>message-delivered</CallbackType>
                            <CallbackType>message-failed</CallbackType>
                            <CallbackType>message-sending</CallbackType>
                          </RequestedCallbackTypes>
                      </Application>
                    </ApplicationProvisioningResponse>
                voice:
                  summary: Voice application
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ApplicationProvisioningResponse>
                      <Application>
                        <ApplicationId>d3e418e9-1833-49c1-b6c7-ca1700f79586</ApplicationId>
                          <ServiceType>Voice-V2</ServiceType>
                          <AppName>v1</AppName>
                          <CallInitiatedCallbackUrl>https://a.com</CallInitiatedCallbackUrl>
                          <CallInitiatedMethod>GET</CallInitiatedMethod>
                          <CallStatusCallbackUrl>https://b.com</CallStatusCallbackUrl>
                          <CallStatusMethod>GET</CallStatusMethod>
                          <CallbackCreds>
                            <UserId>login123</UserId>
                          </CallbackCreds>
                          <CallInitiatedFallbackUrl>https://fallback.com</CallInitiatedFallbackUrl>
                          <CallInitiatedFallbackMethod>POST</CallInitiatedFallbackMethod>
                          <CallInitiatedFallbackCreds>
                            <UserId>login2</UserId>
                          </CallInitiatedFallbackCreds>
                          <CallbackTimeout>20</CallbackTimeout>
                        </Application>
                      </ApplicationProvisioningResponse>
              schema:
                $ref: >-
                  #/components/schemas/ApplicationProvisioningSingleResponseWrapper
          description: ''
      summary: Create application
      tags:
        - Applications
  /accounts/{accountId}/applications/{applicationId}:
    delete:
      description: >-
        <p>Delete an Application.</p><p>An Application cannot be removed from an
        account if that Application is referenced by any Location associated
        with the account.</p><p>Please visit <a
        href='/docs/account/applications'>Applications management</a></p>
      operationId: DeleteApplication
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Application ID
          example: fcb022e2-ea3a-448d-a6af-31dd13aeaa62
          in: path
          name: applicationId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml: {}
          description: ''
      summary: Delete application
      tags:
        - Applications
    get:
      description: >-
        <p>Retrieve an Application</p><p>Please visit <a
        href='/docs/account/applications'>Applications management</a></p>
      operationId: GetApplication
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Application ID
          in: path
          name: applicationId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                messaging:
                  summary: Messaging application
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ApplicationProvisioningResponse>
                      <Application>
                        <ApplicationId>e5a9e103-097e-4ec4-87a0-50109fb7b4b1</ApplicationId>
                        <ServiceType>Messaging</ServiceType>
                        <AppName>qMmmTT</AppName>
                        <!--DEPRECATED-->
                        <MsgCallbackUrl>https://example.com</MsgCallbackUrl>
                        <InboundCallbackUrl>https://example.com</InboundCallbackUrl>
                        <OutboundCallbackUrl>https://example2.com</OutboundCallbackUrl>
                        <!--DEPRECATED-->
                        <MsgCallbackCreds>
                          <!--DEPRECATED-->
                          <UserId>15jPWZmXdm</UserId>
                          <!--DEPRECATED-->
                        </MsgCallbackCreds>
                        <InboundCallbackCreds>
                          <UserId>15jPWZmXdm</UserId>
                        </InboundCallbackCreds>
                        <OutboundCallbackCreds>
                          <UserId>15jPWZmXdm</UserId>
                        </OutboundCallbackCreds>
                        <RequestedCallbackTypes>
                          <CallbackType>message-delivered</CallbackType>
                          <CallbackType>message-failed</CallbackType>
                          <CallbackType>message-sending</CallbackType>
                        </RequestedCallbackTypes>
                      </Application>
                    </ApplicationProvisioningResponse>
                voice:
                  summary: Voice application
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ApplicationProvisioningResponse>
                      <Application>
                        <ApplicationId>e5a9e103-097e-4ec4-87a0-50109fb7b4b1</ApplicationId>
                        <ServiceType>Voice</ServiceType>
                        <AppName>qMmmTT</AppName>
                        <CallInitiatedCallbackUrl>http://example.com</CallInitiatedCallbackUrl>
                        <CallbackCreds>
                          <UserId>15jPWZmXdm</UserId>
                        </CallbackCreds>
                        <CallInitiatedFallbackUrl>https://fallback.com</CallInitiatedFallbackUrl>
                        <CallInitiatedFallbackMethod>POST</CallInitiatedFallbackMethod>
                        <CallInitiatedFallbackCreds>
                          <UserId>login2</UserId>
                        </CallInitiatedFallbackCreds>
                        <CallbackTimeout>20</CallbackTimeout>
                      </Application>
                    </ApplicationProvisioningResponse>
              schema:
                $ref: >-
                  #/components/schemas/ApplicationProvisioningSingleResponseWrapper
          description: ''
      summary: Retrieve application
      tags:
        - Applications
    patch:
      description: >-
        <p>Patch update an Application</p><ul><li>CallStatusCallbackUrl can be
        removed by settings its value to 'remove'</li></ul><p>Please visit <a
        href='/docs/account/applications'>Applications management</a></p>
      operationId: PatchApplication
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Application ID
          example: fcb022e2-ea3a-448d-a6af-31dd13aeaa62
          in: path
          name: applicationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Application>
                    <AppName>XgRIdP</AppName>
                  </Application>
            schema:
              $ref: '#/components/schemas/ApplicationPayload'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ApplicationProvisioningResponse>
                      <Application>
                        <ApplicationId>e5a9e103-097e-4ec4-87a0-50109fb7b4b1</ApplicationId>
                        <ServiceType>Voice</ServiceType>
                        <AppName>EBVICs</AppName>
                        <CallInitiatedCallbackUrl>https://example2.com</CallInitiatedCallbackUrl>
                        <CallInitiatedMethod>[GET|POST]</CallInitiatedMethod>
                        <CallStatusCallbackUrl>https://example3.com</CallStatusCallbackUrl>
                        <CallStatusMethod>[GET|POST]</CallStatusMethod>
                      </Application>
                    </ApplicationProvisioningResponse>
              schema:
                $ref: >-
                  #/components/schemas/ApplicationProvisioningSingleResponseWrapper
          description: ''
      summary: Patch application
      tags:
        - Applications
    put:
      description: >-
        <p>Update an Application.</p><p>Please visit <a
        href='/docs/account/applications'>Applications management</a></p>
      operationId: UpdateApplication
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Application ID
          in: path
          name: applicationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              messaging:
                summary: Messaging application
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Application>
                    <ServiceType>Messaging</ServiceType>
                    <AppName>EBVICs</AppName>
                    <InboundCallbackUrl>http://example.com</InboundCallbackUrl>
                    <OutboundCallbackUrl>http://example2.com</OutboundCallbackUrl>
                    <RequestedCallbackTypes>
                      <CallbackType>message-delivered</CallbackType>
                      <CallbackType>message-failed</CallbackType>
                      <CallbackType>message-sending</CallbackType>
                    </RequestedCallbackTypes>
                  </Application>
              voice:
                summary: Voice application
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Application>
                    <ServiceType>Voice</ServiceType>
                    <AppName>v1</AppName>
                    <CallInitiatedCallbackUrl>https://a.com</CallInitiatedCallbackUrl>
                    <CallInitiatedMethod>GET</CallInitiatedMethod>
                    <CallStatusCallbackUrl>https://b.com</CallStatusCallbackUrl>
                    <CallStatusMethod>GET</CallStatusMethod>
                    <CallbackCreds>
                      <UserId>login123</UserId>
                      <Password>password123</Password>
                    </CallbackCreds>
                    <CallInitiatedFallbackUrl>https://fallback.com</CallInitiatedFallbackUrl>
                    <CallInitiatedFallbackMethod>POST</CallInitiatedFallbackMethod>
                    <CallInitiatedFallbackCreds>
                      <UserId>login2</UserId>
                      <Password>password123</Password>
                    </CallInitiatedFallbackCreds>
                    <CallbackTimeout>20</CallbackTimeout>
                   </Application>
            schema:
              $ref: '#/components/schemas/ApplicationPayload'
      responses:
        '200':
          content:
            application/xml:
              examples:
                messaging:
                  summary: Messaging application
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ApplicationProvisioningResponse>
                      <Application>
                        <ApplicationId>e5a9e103-097e-4ec4-87a0-50109fb7b4b1</ApplicationId>
                        <ServiceType>Messaging</ServiceType>
                        <AppName>EBVICs</AppName>
                        <!-- DEPRECATED -->
                        <MsgCallbackUrl>http://example.com</MsgCallbackUrl>
                        <InboundCallbackUrl>http://example.com</InboundCallbackUrl>
                        <OutboundCallbackUrl>http://example2.com</OutboundCallbackUrl>
                        <RequestedCallbackTypes>
                          <CallbackType>message-delivered</CallbackType>
                          <CallbackType>message-failed</CallbackType>
                          <CallbackType>message-sending</CallbackType>
                        </RequestedCallbackTypes>
                      </Application>
                    </ApplicationProvisioningResponse>
                voice:
                  summary: Voice application
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ApplicationProvisioningResponse>
                      <Application>
                        <ApplicationId>e5a9e103-097e-4ec4-87a0-50109fb7b4b1</ApplicationId>
                        <ServiceType>Voice</ServiceType>
                        <AppName>EBVICs</AppName>
                        <CallInitiatedCallbackUrl>https://example2.com</CallInitiatedCallbackUrl>
                        <CallInitiatedMethod>[GET|POST]</CallInitiatedMethod>
                        <CallStatusCallbackUrl>https://example3.com</CallStatusCallbackUrl>
                        <CallStatusMethod>[GET|POST]</CallStatusMethod>
                      </Application>
                    </ApplicationProvisioningResponse>
              schema:
                $ref: >-
                  #/components/schemas/ApplicationProvisioningSingleResponseWrapper
          description: ''
      summary: Update application
      tags:
        - Applications
  /accounts/{accountId}/applications/{applicationId}/associatedsippeers:
    get:
      description: Retrieve a list of sippeers, associated with application
      operationId: ListAssociatedSippeers
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Application ID
          example: fcb022e2-ea3a-448d-a6af-31dd13aeaa62
          in: path
          name: applicationId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AssociatedSipPeersResponse>
                      <AssociatedSipPeers>
                        <AssociatedSipPeer>
                          <SiteId>482</SiteId>
                          <SiteName>site_e867f</SiteName>
                          <PeerId>500018</PeerId>
                          <PeerName>sippeer-e867f</PeerName>
                        </AssociatedSipPeer>
                        <AssociatedSipPeer>
                          <SiteId>483</SiteId>
                          <SiteName>site_e867d</SiteName>
                          <PeerId>500019</PeerId>
                          <PeerName>sippeer-e867d</PeerName>
                        </AssociatedSipPeer>
                      </AssociatedSipPeers>
                    </AssociatedSipPeersResponse>
              schema:
                $ref: '#/components/schemas/AssociatedSipPeersResponseWrapper'
          description: ''
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AssociatedSipPeersResponse>
                      <ResponseStatus>
                        <ErrorCode>12103</ErrorCode>
                        <Description>Current 1 Account have no Catapult association</Description>
                      </ResponseStatus>
                    </AssociatedSipPeersResponse>
              schema:
                $ref: '#/components/schemas/AssociatedSipPeersErrorResponse'
          description: ''
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AssociatedSipPeersResponse>
                      <ResponseStatus>
                        <ErrorCode>13629</ErrorCode>
                        <Description>Application with id 'non_existing' not found</Description>
                      </ResponseStatus>
                    </AssociatedSipPeersResponse>
              schema:
                $ref: '#/components/schemas/AssociatedSipPeersErrorResponse'
          description: ''
      summary: List associated sippeers
      tags:
        - Applications
  /accounts/{accountId}/availableNpaNxx:
    get:
      description: Retrieves a list of available Npa-Nxx telephone numbers.
      operationId: GetAvailableNpaNxx
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            The allowed number ranges are [2-9] for the first digit and [0-9]
            for both the second and third digits.
          example: 919
          in: query
          name: areaCode
          required: false
          schema:
            type: integer
        - description: Returns only the NPA NXX information within the specified state.
          example: NC
          in: query
          name: state
          required: false
          schema:
            type: string
        - description: >-
            Filters out any Npa-Nxx grouped phone numbers whose quantity falls
            short of the given quantity.
          example: 150
          in: query
          name: quantity
          required: false
          schema:
            type: integer
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SearchResultForAvailableNpaNxx>
                      <AvailableNpaNxxList>
                      <AvailableNpaNxx>
                        <City>NASHVILLE</City>
                        <Npa>252</Npa>
                        <Nxx>220</Nxx>
                        <Quantity>1</Quantity>
                        <State>NC</State>
                      </AvailableNpaNxx>
                      <AvailableNpaNxx>
                        <City>FARMVILLE</City>
                        <Npa>252</Npa>
                        <Nxx>228</Nxx>
                        <Quantity>1</Quantity>
                        <State>NC</State>
                      </AvailableNpaNxx>
                      </AvailableNpaNxxList>
                    </SearchResultForAvailableNpaNxx>
              schema:
                $ref: '#/components/schemas/SearchResultForAvailableNpaNxxWrapper'
          description: The quantity of available phone numbers, grouped by NPA-NXX.
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SearchResultForAvailableNpaNxx>
                      <Error>
                        <Code>4000</Code>
                        <Description>The area code specified 433 is not present as a valid entry in our system</Description>
                        </Error>
                      </SearchResultForAvailableNpaNxx>
              schema:
                $ref: >-
                  #/components/schemas/SearchResultForAvailableNpaNxxErrorWrapper
          description: There are no phone numbers within the specified scope.
      summary: Retrieves available Npa-Nxx tns
      tags:
        - Available Tns
  /accounts/{accountId}/availableNumbers:
    get:
      description: |-
        Retrieves the phone numbers according to the input parameters.
         <p>In this table are presented combinations of path parameters for different type of search:</p> <table><thead><tr><th>Search Type</th><th>Required Parameters</th><th>Combinational Parameters</th><th>Optional Parameters</th></tr></thead><tbody><tr><td>Area Code</td><td>areaCode</td><td>rateCenter (state required), city (state required), state, lata, zip</td><td>quantity, enableTNDetail, protected</td></tr><tr><td>NPA-NXX</td><td>npaNxx</td><td>rateCenter (state required), city (state required), state, lata, zip, orderBy</td><td>quantity, enableTNDetail, protected</td></tr><tr><td>NPA-NXX with Local Calling Area</td><td>npaNxx</td><td></td><td>quantity, LCA, enableTNDetail, protected</td></tr><tr><td>NPA-NXX-X</td><td>npaNxxx</td><td>rateCenter (state required), city (state required), state, lata, zip, orderBy</td><td>quantity, enableTNDetail, protected</td></tr><tr><td>NPA-NXX-X with Local Calling Area</td><td>npaNxxx</td><td>rateCenter (state required), city (state required), state, lata, zip</td><td>quantity, LCA, enableTNDetail, protected</td></tr><tr><td>RateCenter</td><td>rateCenter, state</td><td>city, areaCode/npaNxx/npaNxxx, lata, zip, orderBy</td><td>quantity, enableTNDetail, protected</td></tr><tr><td>RateCenter with Local Calling Area</td><td>rateCenter, state</td><td></td><td>quantity, LCA, enableTNDetail, protected</td></tr><tr><td>State</td><td>state</td><td>rateCenter, city, areaCode/npaNxx/npaNxxx, lata, zip</td><td>quantity, enableTNDetail, protected</td></tr><tr><td>City</td><td>state, city</td><td>rateCenter, state, areaCode/npaNxx/npaNxxx, lata, zip, orderBy</td><td>quantity, enableTNDetail, protected</td></tr><tr><td>Zip Code</td><td>zip</td><td>rateCenter (state required), city (state required), state, areaCode/npaNxx/npaNxxx, lata, orderBy</td><td>quantity, enableTNDetail, protected</td></tr><tr><td>LATA</td><td>lata</td><td>rateCenter (state required), city (state required), state, areaCode/npaNxx/npaNxxx, zip</td><td>quantity, enableTNDetail, protected</td></tr><tr><td>Local Vanity</td><td>localVanity</td><td>state, areaCode</td><td>endsIn, quantity, protected, enableTNdetails</td></tr><tr><td>TollFree Vanity</td><td>tollFreeVanity</td><td>orderBy</td><td>quantity</td></tr><tr><td>TollFree WildCard</td><td>tollFreeWildCardPattern</td><td>orderBy</td><td>quantity</td></tr></tbody></table>
      operationId: GetAvailableTns
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The desired quantity of requested numbers.
          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, state, and LATA) will be
            displayed along with the TN.
          in: query
          name: enableTNDetail
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            <p>Local Calling Area (LCA) will cause the search to return phone
            numbers that are within the local calling area of the entered search
            criteria.</p>
          in: query
          name: LCA
          required: false
          schema:
            default: true
            type: boolean
        - description: >-
            <p>Intended to use with <i>localVanity</i> only. If set to true, the
            search will look for only numbers which end in specified
            <i>localVanity</i>, otherwise <i>localVanity</i> sequence can be met
            anywhere in last 7 number digits. The default is false.</p>
          in: query
          name: endsIn
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            <p>The 3-digit area code associated with the TN.</p><ul><li>Allowed
            number ranges are [2-9] for the first digit and [0-9] for both the
            second and third digits.</li></ul>
          example: 435
          in: query
          name: areaCode
          required: false
          schema:
            type: integer
        - description: >-
            <p>The 6-digit prefix associated with the TN.</p><ul><li>Allowed
            number ranges for NPA are [2-9] for the first digit and [0-9] for
            both the second and third digits.</li><li>Allowed number ranges for
            NXX are [2-9] for the first digit and [0-9] for both the second and
            third digits.</li></ul>
          in: query
          name: npaNxx
          required: false
          schema:
            type: integer
        - description: >-
            <p>The 7-digit prefix associated with the TN.</p><ul><li>Allowed
            number ranges for NPA are [2-9] for the first digit and [0-9] for
            both the second and third digits.</li><li>Allowed number ranges for
            NXXX are [2-9] for the first digit and [0-9] the rest of the (X)
            digits.</li></ul>
          in: query
          name: npaNxxx
          required: false
          schema:
            type: integer
        - description: <p>A maximum five digit (XXXXX) numeric format</p>
          example: 244
          in: query
          name: lata
          required: false
          schema:
            type: integer
        - description: <p>The abbreviation for the rateCenter</p>
          example: Cary
          in: query
          name: rateCenter
          required: false
          schema:
            type: string
        - description: >-
            <p>The name of the city. <b>NOTE:</b> `State` becomes a required
            parameter when searching by `city`.</p>
          example: RALEIGH
          in: query
          name: city
          required: false
          schema:
            type: string
        - description: <p>The two-letter abbreviation of the state the RateCenter is in</p>
          example: NC
          in: query
          name: state
          required: false
          schema:
            type: string
        - description: >-
            <p>The Toll Free requested vanity number. Valid range is 7+ digits
            alphanumeric.</p>
          example: NEWCARS
          in: query
          name: tollFreeVanity
          required: false
          schema:
            type: string
        - description: >-
            <p>The Toll Free requested wild card pattern. valid range is 3
            digits.</p>
          example: 8**, 80*, 87*
          in: query
          name: tollFreeWildCardPattern
          required: false
          schema:
            type: string
        - description: >-
            <p>Requested vanity number. Valid range is from 4 to 7 alphanumeric
            characters.</p>
          example: NEWCARS
          in: query
          name: localVanity
          required: false
          schema:
            type: string
        - description: <p>A five-digit (XXXXX) or nine-digit (XXXXX-XXXX) format value.</p>
          example: 27607
          in: query
          name: zip
          required: false
          schema:
            type: integer
        - description: <p>The field by which the results should be sorted</p>
          in: query
          name: orderBy
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SearchResult>
                      <ResultCount>384</ResultCount>
                      <TelephoneNumberList>
                        <TelephoneNumber>4354776112</TelephoneNumber>
                        <!-- SNIP -->
                        <TelephoneNumber>4357095160</TelephoneNumber>
                      </TelephoneNumberList>
                    </SearchResult>
              schema:
                $ref: '#/components/schemas/SearchResult'
          description: >-
            <p>A list of available numbers is provided.  Additional information
            is available if the queryParameter enableTNDetail is true. If no
            numbers are available an empty SearchResult element is returned.</p>
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SearchResult>
                      <Error>
                        <Code>4010</Code>
                        <Description>One of more required search parameters are null or empty, please refer to the api documentation</Description>
                        </Error>
                      </SearchResult>
              schema:
                $ref: '#/components/schemas/SearchResultErrorWrapper'
          description: <p>Invalid/missing input parameter</p>
      summary: Retrieve available tns
      tags:
        - Available Tns
  /accounts/{accountId}/bdrs:
    post:
      deprecated: true
      description: >-
        <p><b>Note - this API is being replaced with the /billingreports API -
        we strongly recommend that you use that endpoint.</b></p> <p>This API
        allows the retrieval of a ZIP file containing BDR records for a
        specified date range. These BDR records are delivered as a ZIP
        compressed comma separated values (CSV) file. The general flow of the
        API calls required to retrieve these records is: <ol>  <li>POST a
        request to the /bdrs resource, describing the date range for which the
        BDR records are wished. This will initiate the construction of the zip
        file.</li> <li>Examine the response from the POST. If the payload is
        understandable and valid then a 202 accepted HTTP result code will be
        returned indicating that the response file is being created.</li>
        <li>Retrieve the Location Header from the Response to the POST. This
        location header will contain the resource ID for the collection of BDRs
        that will be returned once complete. Note that the fact that the ID has
        been issued does not mean that the ZIP file is complete.</li>
        <li>Interrogate the resource ID to check the status of the request. If a
        303 See Other response is received then the Location Header will contain
        the resource path to the file. A typical browser response will be to
        download the file. If a 200 OK is returned then the request is
        considered valid, but the file is not ready for distribution.</li>
        <li>Fetching the file can be done by issuing a GET to the resources path
        in the Location Header mentioned above</li></ol>
      operationId: CreateBDR
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Bdr>
                      <StartDate>2015-04-01</StartDate>
                      <EndDate>2015-04-30</EndDate>
                  </Bdr>
            schema:
              $ref: '#/components/schemas/Bdr'
      responses:
        '202':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BdrCreationResponse>
                         <Info>Your BDR archive is currently being constructed</Info>
                    </BdrCreationResponse>
              schema:
                $ref: '#/components/schemas/BdrCreationResponse'
          description: >
            A 202 Accepted means that the request has been received and will be
            processed.  Processing the request takes time, so this does not
            indicate that the information is available, it simply indicates that
            the request has started processing. 

            The response also includes header information in the Location Header
            that can be used for retrieving the state of the request.

            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"?>
                    <BdrCreationResponse>
                        <ResponseStatus>
                            <ErrorCode>15501</ErrorCode>
                            <Description>Invalid date range. Start date 2015-06-01 must be before end date 2015-04-30</Description>
                        </ResponseStatus>
                    </BdrCreationResponse>
              schema:
                $ref: '#/components/schemas/BdrCreationErrorResponse'
          description: >
            A 400 response indicates that there was an error in processing the
            payload, perhaps something like incorrectly formatted or chosen
            dates.
      summary: Create BDR in range
      tags:
        - Reports
  /accounts/{accountId}/bdrs/{bdrid}:
    get:
      deprecated: true
      description: >-
        <p>The bdr id resource will query the status of the bdr file that is
        being generated. There are essentially two responses...</p><ul><li>not
        yet ready</li><li>ready, in which case the request is redirected to the
        URL to actually download the file.</li></ul> <p>A GET on the BDR ID will
        return a still processing indication if the file creation has not
        completed, or will redirect to the file to be downloaded.</p>
      operationId: GetBDRStatus
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: bdrid
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BdrRetrievalResponse>
                         <Info>The requested BDR archive is still being constructed, please check back later</Info>
                    </BdrRetrievalResponse>
              schema:
                $ref: '#/components/schemas/BdrRetrievalResponse'
          description: >
            A 200 OK means that the request is valid, but that the file is not
            yet ready. The payload indicates the status.
        '303':
          description: >
            A 303 response indicates that the file is ready.  The 303 should
            redirect the request to the URL in the Location header, which will,
            in most cases, initiate the file download.
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BdrRetrievalResponse>
                        <ResponseStatus>
                            <ErrorCode>1008</ErrorCode>
                            <Description>'44a90e00-a7b6asdfsdafasdfdasf-6659-9112-e7f5dfa48231' is not a valid UUID</Description>
                        </ResponseStatus>
                    </BdrRetrievalResponse>
              schema:
                $ref: '#/components/schemas/BdrRetrievalErrorResponse'
          description: |
            A 400 indicates that the BDR id is malformed. </p>
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BdrRetrievalResponse>
                        <ResponseStatus>
                            <ErrorCode>15001</ErrorCode>
                            <Description>BDR archive was not found</Description>
                        </ResponseStatus>
                    </BdrRetrievalResponse>
              schema:
                $ref: '#/components/schemas/BdrRetrievalErrorResponse'
          description: |
            A 404 indicates that the BDR id cannot be found.
      summary: Retrieve BDR status or redirect to download
      tags:
        - Reports
  /accounts/{accountId}/bdrs/{bdrid}/file:
    get:
      deprecated: true
      description: >-
        A GET on the /file resource subtending a BDR ID will cause the download
        of the file.  Executing this resource path within a browser will cause
        the download of the file.
      operationId: DownloadBDR
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: bdrid
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml: {}
          description: >-
            A 200 OK indicates that the request for the file download was
            accepted and will be processed.
      summary: Download BDR
      tags:
        - Reports
  /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}/bulkPortins:
    get:
      description: >-
        Retrieves bulk port-in orders for the specified accountId.

        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. Please visit <a
        href='/docs/numbers/porting/port-ins/bulkPortIns'>Guides and
        Tutorials</a>
      operationId: ListBulkPortins
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            The full bulk port-in orderId of the first order of the page. 
            Special value `1` is used

            to indicate the first port-in for the accountId matching any other
            query parameters.

            If the number of results exceeds the `size` parameter value, the
            result includes a header

            called `next` that allows you to fetch the next page of the results.
          example: '`ca43d178-8f67-4a08-9a4b-af0ce06b5914`, `1`'
          in: query
          name: page
          required: true
          schema:
            default: '1'
            type: string
        - description: >-
            The maximum number of results to include in the response payload. 
            The

            value should be between 1 and 1000.  Larger values may be specified,
            but results are

            limited to a maximum of 1000 entries, regardless.
          example: 30
          in: query
          name: size
          required: true
          schema:
            default: 300
            type: integer
        - description: >-
            Include in the response payload only entries in which the bulk
            port-in order had the specified ProcessingStatus value.  Note:
            specifying `draft` will include any of the draft values, including
            `DRAFT`, `VALIDATE_DRAFT_TNS`, `VALID_DRAFT_TNS`, and
            `INVALID_DRAFT_TNS`.
          example: draft
          in: query
          name: status
          required: false
          schema:
            enum:
              - draft
              - in_progress
              - needs_attention
              - partial
              - completed
              - cancelled
            type: string
        - description: >-
            A specific date on which you wish to see modifications to a bulk
            port-in order.

            For each bulk port-in order, belonging to the account, that was
            modified on the specified date/time, only the latest update for that
            order is included in the results. Date format can be one of:
            `yyyy-mm-ddThh:mm:ss.sZ`, `yyyy-mm-ddZ`, `yyyy-mm-ddThh:mm:ssTZD`.
          example: '2021-06-21'
          in: query
          name: orderDate
          required: false
          schema:
            format: date
            type: string
        - description: >-
            The earliest date from which you want to see modifications to a bulk
            port-in order.

            This query parameter must be used together with `modifiedDateTo`.

            This parameter and modifiedDateTo define a time interval.  For each
            bulk port-in order,

            belonging to the account, that was modified in that time interval,
            only the latest

            update for that order is included in the results. Date format can be
            one of: `yyyy-mm-ddThh:mm:ss.sZ`, `yyyy-mm-ddZ`,
            `yyyy-mm-ddThh:mm:ssTZD`.
          example: '2021-06-21'
          in: query
          name: modifiedDateFrom
          required: false
          schema:
            format: date
            type: string
        - description: >-
            The latest date from which you want to see modifications to a bulk
            port-in order.

            This query parameter must be used together with `modifiedDateFrom`.

            This parameter and modifiedDateFrom define a time interval.  For
            each bulk

            port-in order, belonging to the account, that was modified in that
            time interval,

            only the latest update for that order is included in the results.

            The modifiedDateTo value may be in the future. Date format can be
            one of: `yyyy-mm-ddThh:mm:ss.sZ`, `yyyy-mm-ddZ`,
            `yyyy-mm-ddThh:mm:ssTZD`.
          example: '2021-06-21'
          in: query
          name: modifiedDateTo
          required: false
          schema:
            format: date
            type: string
        - description: >-
            If set to true, bulk port-in order details will be displayed instead
            of summary information.
          in: query
          name: orderDetails
          required: false
          schema:
            default: false
            type: boolean
      responses:
        '200':
          content:
            application/xml:
              examples:
                Exclude query params:
                  description: >-
                    If the orderDetails query parameter was not included, or was
                    set to false, the response will look like the following
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<BulkPortinResponses>\n\t<TotalCount>3</TotalCount>\n\t<Links>\n\t\t<first>Link=&lt;https://api.bandwidth.com:443/v1.0/accounts/9900012/bulkPortins?page=1&amp;size=100&amp;orderDate=2020-06-16&gt;;rel=\\\"first\\\";</first>\n\t</Links>\n\t<BulkPortinResponse>\n\t\t<OrderId>7811bc44-9f34-4c5c-97d5-51e666eb982e</OrderId>\n\t\t<CompanyName>WandEDemo</CompanyName>\n\t\t<LastModifiedBy>marketing</LastModifiedBy>\n\t\t<LastModifiedDate>2020-06-16T20:02:19.156Z</LastModifiedDate>\n\t\t<OrderCreateDate>2020-06-16T19:25:04.482Z</OrderCreateDate>\n\t\t<PortinList>\n\t\t\t<PortinOrderId>24686d19-6c8d-4b8e-9e07-59bdb5dd2782</PortinOrderId>\n\t\t\t<PortinOrderId>5795dff2-b9cf-4989-974a-a74e7fa6a756</PortinOrderId>\n\t\t\t<PortinOrderId>b8fc06b5-36d3-4d86-b015-13d9f994960d</PortinOrderId>\n\t\t\t<PortinOrderId>03442cad-61f5-4777-9299-6527bef523ca</PortinOrderId>\n\t\t</PortinList>\n\t\t<ProcessingStatus>IN_PROGRESS</ProcessingStatus>\n\t\t<RequestedFocDate>2020-06-18T16:30:00.000Z</RequestedFocDate>\n\t\t<TargetRespOrgId>JYT01</TargetRespOrgId>\n\t</BulkPortinResponse>\n\t<BulkPortinResponse>\n\t\t<OrderId>d8a449c5-d3ea-426e-aa6d-a9cf5393df7e</OrderId>\n\t\t<CompanyName>WandEDemo</CompanyName>\n\t\t<LastModifiedBy>marketing</LastModifiedBy>\n\t\t<LastModifiedDate>2020-06-16T18:58:54.638Z</LastModifiedDate>\n\t\t<OrderCreateDate>2020-06-16T17:26:52.542Z</OrderCreateDate>\n\t\t<PortinList>\n\t\t\t<PortinOrderId>dfda81d4-6a06-4cfc-9b6e-aecf373a16cd</PortinOrderId>\n\t\t\t<PortinOrderId>28ce2db3-8ff6-4151-8dc4-487faf19795b</PortinOrderId>\n\t\t\t<PortinOrderId>3cba78e5-93aa-407a-bcf5-6ebd46b60f77</PortinOrderId>\n\t\t\t<PortinOrderId>aa1bd5ae-d3f9-429a-91e4-34ddfe6dba1c</PortinOrderId>\n\t\t</PortinList>\n\t\t<ProcessingStatus>CANCELLED</ProcessingStatus>\n\t\t<RequestedFocDate>2020-06-19T19:00:00.000Z</RequestedFocDate>\n\t</BulkPortinResponse>\n\t<BulkPortinResponse>\n\t\t<OrderId>555e320c-a093-4e9d-97e2-03d822b78aa4</OrderId>\n\t\t<CompanyName>WandEDemo</CompanyName>\n\t\t<LastModifiedBy>marketing</LastModifiedBy>\n\t\t<LastModifiedDate>2020-06-16T16:10:11.406Z</LastModifiedDate>\n\t\t<OrderCreateDate>2020-06-16T15:52:16.607Z</OrderCreateDate>\n\t\t<PortinList>\n\t\t\t<PortinOrderId>9c01d8d6-24bc-41b3-9afb-4f0b571e0a36</PortinOrderId>\n\t\t\t<PortinOrderId>cb691fcc-fcaf-42bf-ac5d-ed073dc95219</PortinOrderId>\n\t\t\t<PortinOrderId>87abdd51-9aaf-4b0a-8cb6-8f5aaa0a1bb0</PortinOrderId>\n\t\t\t<PortinOrderId>4eeb7bbd-412e-4a53-988e-7190ad5c210f</PortinOrderId>\n\t\t</PortinList>\n\t\t<ProcessingStatus>CANCELLED</ProcessingStatus>\n\t\t<RequestedFocDate>2020-06-18T02:00:00.000Z</RequestedFocDate>\n\t</BulkPortinResponse>\n</BulkPortinResponses>"
                Include query params:
                  description: >-
                    If the orderDetails query parameter was included with a
                    value of true, the results will look like the following
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<BulkPortinResponses>\n\t<TotalCount>3</TotalCount>\n\t<Links>\n\t\t<first>Link=&lt;https://api.bandwidth.com:443/v1.0/accounts/9900012/bulkPortins?page=1&amp;size=100&amp;orderDate=2020-06-16&amp;orderDetails=true&gt;;rel=\\\"first\\\";</first>\n\t</Links>\n\t<BulkPortinResponse>\n\t\t<accountId>9900012</accountId>\n\t\t<OrderId>7811bc44-9f34-4c5c-97d5-51e666eb982e</OrderId>\n\t\t<OrderType>bulk_port_in</OrderType>\n\t\t<SuppCount>0</SuppCount>\n\t\t<CompanyName>WandEDemo</CompanyName>\n\t\t<CreatedByUser>marketing</CreatedByUser>\n\t\t<LastModifiedBy>marketing</LastModifiedBy>\n\t\t<LastModifiedDate>2020-06-16T20:02:19.156Z</LastModifiedDate>\n\t\t<OrderCreateDate>2020-06-16T19:25:04.482Z</OrderCreateDate>\n\t\t<PeerId>583048</PeerId>\n\t\t<PortinList>\n\t\t\t<PortinOrderId>24686d19-6c8d-4b8e-9e07-59bdb5dd2782</PortinOrderId>\n\t\t\t<PortinOrderId>5795dff2-b9cf-4989-974a-a74e7fa6a756</PortinOrderId>\n\t\t\t<PortinOrderId>b8fc06b5-36d3-4d86-b015-13d9f994960d</PortinOrderId>\n\t\t\t<PortinOrderId>03442cad-61f5-4777-9299-6527bef523ca</PortinOrderId>\n\t\t</PortinList>\n\t\t<ProcessingStatus>IN_PROGRESS</ProcessingStatus>\n\t\t<RequestedFocDate>2020-06-18T16:30:00.000Z</RequestedFocDate>\n\t\t<SiteId>202</SiteId>\n\t\t<TargetRespOrgId>JYT01</TargetRespOrgId>\n\t</BulkPortinResponse>\n\t<BulkPortinResponse>\n\t\t<accountId>9900012</accountId>\n\t\t<OrderId>d8a449c5-d3ea-426e-aa6d-a9cf5393df7e</OrderId>\n\t\t<OrderType>bulk_port_in</OrderType>\n\t\t<SuppCount>0</SuppCount>\n\t\t<CompanyName>WandEDemo</CompanyName>\n\t\t<CreatedByUser>marketing</CreatedByUser>\n\t\t<LastModifiedBy>marketing</LastModifiedBy>\n\t\t<LastModifiedDate>2020-06-16T18:58:54.638Z</LastModifiedDate>\n\t\t<OrderCreateDate>2020-06-16T17:26:52.542Z</OrderCreateDate>\n\t\t<PeerId>566974</PeerId>\n\t\t<PortinList>\n\t\t\t<PortinOrderId>dfda81d4-6a06-4cfc-9b6e-aecf373a16cd</PortinOrderId>\n\t\t\t<PortinOrderId>28ce2db3-8ff6-4151-8dc4-487faf19795b</PortinOrderId>\n\t\t\t<PortinOrderId>3cba78e5-93aa-407a-bcf5-6ebd46b60f77</PortinOrderId>\n\t\t\t<PortinOrderId>aa1bd5ae-d3f9-429a-91e4-34ddfe6dba1c</PortinOrderId>\n\t\t</PortinList>\n\t\t<ProcessingStatus>CANCELLED</ProcessingStatus>\n\t\t<RequestedFocDate>2020-06-19T19:00:00.000Z</RequestedFocDate>\n\t\t<SiteId>202</SiteId>\n\t</BulkPortinResponse>\n\t<BulkPortinResponse>\n\t\t<accountId>9900012</accountId>\n\t\t<OrderId>555e320c-a093-4e9d-97e2-03d822b78aa4</OrderId>\n\t\t<OrderType>bulk_port_in</OrderType>\n\t\t<SuppCount>0</SuppCount>\n\t\t<CompanyName>WandEDemo</CompanyName>\n\t\t<CreatedByUser>marketing</CreatedByUser>\n\t\t<LastModifiedBy>marketing</LastModifiedBy>\n\t\t<LastModifiedDate>2020-06-16T16:10:11.406Z</LastModifiedDate>\n\t\t<OrderCreateDate>2020-06-16T15:52:16.607Z</OrderCreateDate>\n\t\t<PeerId>583048</PeerId>\n\t\t<PortinList>\n\t\t\t<PortinOrderId>9c01d8d6-24bc-41b3-9afb-4f0b571e0a36</PortinOrderId>\n\t\t\t<PortinOrderId>cb691fcc-fcaf-42bf-ac5d-ed073dc95219</PortinOrderId>\n\t\t\t<PortinOrderId>87abdd51-9aaf-4b0a-8cb6-8f5aaa0a1bb0</PortinOrderId>\n\t\t\t<PortinOrderId>4eeb7bbd-412e-4a53-988e-7190ad5c210f</PortinOrderId>\n\t\t</PortinList>\n\t\t<ProcessingStatus>CANCELLED</ProcessingStatus>\n\t\t<RequestedFocDate>2020-06-18T02:00:00.000Z</RequestedFocDate>\n\t\t<SiteId>202</SiteId>\n\t</BulkPortinResponse>\n</BulkPortinResponses>"
              schema:
                $ref: '#/components/schemas/BulkPortinResponses'
          description: The list of bulk port-ins have been successfully retrieved.
        '204':
          content:
            application/xml: {}
          description: No results matching the specified query parameters were found.
      summary: List bulk port-in orders
      tags:
        - Bulk Port-In
    post:
      description: >-
        <p>Creates a bulk port-in order to be used as a template for a
        collection of child port-in orders.  The template values will be
        cascaded to child port-ins that result from decomposing a collection of
        Telephone Numbers that span carriers, RespOrgs, or have attributes that
        drive the decomposition into a number of individual port-in
        orders.<p></p> Upon a successfully-submitted payload, the order will
        have a status of "DRAFT", denoting that further modification to the
        template is expected.  For example, the next step is to use the /tnList
        endpoint to add a collection of telephone numbers to the bulk port-in
        order. The only valid value for the ProcessingStatus element in a POST
        is 'DRAFT', which is the default value. All parameters except for the
        URL parameter "accountId" are optional in the bulk port-in, although the
        rules for individual child port-ins described in the <a
        href='/apis/numbers/#operation/CreatePortin'>POST /portins</a> API still
        apply to the child port-ins that make up the bulk port-in. Enforcement
        of required fields in the child port-ins occurs when the bulk port-in is
        submitted (i.e. changed from a DRAFT status to IN_PROGRESS). Enforcement
        of required fields in the child port-ins occurs when the bulk port-in is
        submitted (i.e. changed from a DRAFT status to IN_PROGRESS).
        </p><p>Please visit <a
        href='/docs/numbers/porting/port-ins/bulkPortIns'>Guides and
        Tutorials</a></p>
      operationId: CreateBulkPortin
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<BulkPortin> \n\t<CustomerOrderId>Order Id for all child orders</CustomerOrderId> \n\t<RequestedFocDate>2021-06-30Z</RequestedFocDate>\n\t<SiteId>14020</SiteId> \n\t<PeerId>521434</PeerId> \n\t<TargetRespOrgId>JYT01</TargetRespOrgId>\n</BulkPortin>"
            schema:
              $ref: '#/components/schemas/BulkPortinRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BulkPortinResponse>
                        <BulkPortin>
                            <CustomerOrderId>Order Id for all child orders</CustomerOrderId>
                            <RequestedFocDate>2021-06-30T00:00:00.000Z</RequestedFocDate>
                            <SiteId>14020</SiteId>
                            <PeerId>521434</PeerId>
                            <ProcessingStatus>DRAFT</ProcessingStatus>
                            <AccountId>9900572</AccountId>
                            <CreatedByUser>testuser</CreatedByUser>
                            <LastModifiedBy>testuser</LastModifiedBy>
                            <TargetRespOrgId>JYT01</TargetRespOrgId>
                            <LastModifiedDate>2021-06-21T19:42:34.760Z</LastModifiedDate>
                            <OrderCreateDate>2021-06-21T19:42:34.760Z</OrderCreateDate>
                            <OrderId>3233e096-1ce5-4a58-ba77-02a5ee1c0ef4</OrderId>
                        </BulkPortin>
                    </BulkPortinResponse>
              schema:
                $ref: '#/components/schemas/BulkPortinResponse'
          description: >-
            The order has been created with the order ID specified in the
            response payload

            and in the Location header.  Note that it is possible to create an
            order that

            has errors in it.  Very little screening is done, because all fields
            are

            optional and very little validation is done other than simple syntax
            checking.

            The expectation is that the child orders will be updated using the
            /portins

            API prior to submission to fill in port-specific information (e.g.
            the LOA

            authorizing person, or subscriber data).
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BulkPortinResponse>
                        <ResponseStatus>
                            <ErrorCode>7333</ErrorCode>
                            <Description>Porting is not enabled on the account.</Description>
                        </ResponseStatus>
                    </BulkPortinResponse>
              schema:
                $ref: '#/components/schemas/BulkPortinErrorResponse'
          description: >
            <p>Order could not be processed and no order ID was created.<br>

            Some bad request error examples:<br> 

            <ul>

            <li>7527 - Target RespOrg IDs must be 5 characters in length.</li>

            <li>7528 - Target RespOrg IDs must consist of letters (a-z, A-Z) and
            digits (0-9).</li>

            <li>7533 - A toll free port-in cannot be submitted without a
            TargetRespOrgId.</li>

            </p>
        '409':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BulkPortinResponse>
                        <ResponseStatus>
                            <ErrorCode>7531</ErrorCode>
                            <Description>The specified Target RespOrg ID is not a valid Bandwidth RespOrg ID.</Description>
                        </ResponseStatus>
                    </BulkPortinResponse>
              schema:
                $ref: '#/components/schemas/BulkPortinErrorResponse'
          description: >
            <p>Conflict <br> 

            Some conflict error examples:<br> 

            <ul>

            <li>7529 - The specified Target RespOrg ID is not a Bandwidth
            RespOrg ID, and your account is not configured for RespOrg
            Exception.</li>

            <li>7530 - The specified Target RespOrg ID is neither a Bandwidth
            RespOrg ID, nor one of the RespOrg Exception RespOrg IDs configured
            for your account.</li>

            <li>7531 - The specified Target RespOrg ID is not a valid Bandwidth
            RespOrg ID.</li>

            <li>7535 - The TargetRespOrgId may only be included for a bulk
            port-in that is still in a draft state.</li>

            </ul></p>
      summary: Create bulk port-in order
      tags:
        - Bulk Port-In
  /accounts/{accountId}/bulkPortins/{orderId}:
    delete:
      description: >-
        Delete a bulk port-in order with child port-ins.  Deleting a bulk
        port-in is allowed for 'DRAFT' state only.  Deleting a bulk port-in will
        delete all DRAFT child port-ins associated with the bulk port-in.  When
        the bulk port-in is deleted, any child port-in orders that are not in a
        draft status are dissociated from the bulk port-in, but not deleted.
        Please visit <a href='/docs/numbers/porting/port-ins/bulkPortIns'>Guides
        and Tutorials</a>
      operationId: DeleteBulkOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Bulk Port-in order has been successfully deleted.
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BulkPortinResponse>
                        <BulkPortin>
                            <Status>
                                <Code>7709</Code>
                                <Description>Bulk port-in with id d88763f4-8914-4301-bdca-6f409e4cd811 cannot be deleted since it is not in
                                    draft status.
                                </Description>
                            </Status>
                        </BulkPortin>
                    </BulkPortinResponse>
              schema:
                $ref: '#/components/schemas/BulkPortinErrorResponse'
          description: Bad request. Bulk Port-in order not in DRAFT state.
        '404':
          description: The indicated Bulk Port-in order could not be found.
      summary: Delete bulk port-in order
      tags:
        - Bulk Port-In
    get:
      description: >-
        Retrieves information associated with the bulk port-in order specified
        by the orderId URI parameter. Please visit <a
        href='/docs/numbers/porting/port-ins/bulkPortIns'>Guides and
        Tutorials</a>
      operationId: RetrieveBulkOrder
      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\"?>\n<BulkPortinResponse> \n\t<BulkPortin> \n\t\t<CustomerOrderId>Order Id for all child orders</CustomerOrderId>\n\t\t<RequestedFocDate>2021-06-30T00:00:00.000Z</RequestedFocDate>\n\t\t<SiteId>14020</SiteId> \n\t\t<PeerId>521434</PeerId> \n\t\t<ProcessingStatus>DRAFT</ProcessingStatus> \n\t\t<LosingResellerName>My Current Provider Name</LosingResellerName> \n\t\t<AccountId>9900572</AccountId> \n\t\t<TargetRespOrgId>JYT01</TargetRespOrgId> \n\t\t<CreatedByUser>testuser</CreatedByUser> \n\t\t<LastModifiedBy>testuser</LastModifiedBy> \n\t\t<LastModifiedDate>2021-06-21T19:42:34.760Z</LastModifiedDate>\n\t\t<OrderCreateDate>2021-06-21T19:42:34.760Z</OrderCreateDate> \n\t</BulkPortin> \n</BulkPortinResponse>"
              schema:
                $ref: '#/components/schemas/BulkPortinResponse'
          description: >-
            The information has been successfully retrieved and displayed in the
            payload.
        '404':
          description: The indicated Bulk Port-in order could not be found.
      summary: Retrieve bulk port-in order
      tags:
        - Bulk Port-In
    patch:
      description: >-
        <p>It is possible to change ("SUPP" in LNP terms) an existing Bulk
        Port-in order.  This is done via a PUT or PATCH on the existing
        order-id.  Since the Bulk Port-in
          order acts as a template for port-in orders in DRAFT status, any record can be changed at any time.  The PATCH replaces elements of the referenced Bulk Portin order, but it replaces only the records included in the request payload.  Other elements will remain untouched.</p><p>Changing the fields in a Bulk Port-in order causes the system to reapply all changed values to the child port-ins contained in the list of subtending port-in orders. Note that if the port-in orders contained within the Bulk Port are in DRAFT state, any field can be modified. If any child port-in order in the Bulk Port-in is in any other state, normal SUPP rules apply, and the list of appropriate fields is smaller.</p><p>Changing the ProcessingStatus to 'IN_PROGRESS' causes all child port-ins to begin processing. This is only valid if child port-ins exist for the bulk port-in.</p> <p>Please visit <a href='/docs/numbers/porting/port-ins/bulkPortIns'>Guides and Tutorials</a></p>
      operationId: PatchBulkOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              In progress:
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<BulkPortin>\n\t<ProcessingStatus>IN_PROGRESS</ProcessingStatus>\n</BulkPortin>"
              Simple Request:
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<BulkPortin>\n\t<CustomerOrderId>Order Id for all child orders</CustomerOrderId>\n\t<RequestedFocDate>2021-06-30Z</RequestedFocDate>\n\t<TargetRespOrgId>JYT99</TargetRespOrgId>\n\t<SiteId>14020</SiteId>\n\t<PeerId delete=\"true\"/>\n</BulkPortin>"
              Updated requested FOC date:
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<BulkPortin>\n\t<RequestedFocDate>2021-06-22T11:30:00-04:00</RequestedFocDate>\n</BulkPortin>"
            schema:
              $ref: '#/components/schemas/BulkPortinPatchRequest'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<BulkPortinResponse>\n\t<BulkPortin>\n\t\t<CustomerOrderId>Order Id for all child orders</CustomerOrderId>\n\t\t<RequestedFocDate>2021-06-30T00:00:00.000Z</RequestedFocDate>\n\t\t<Subscriber>\n\t\t\t<SubscriberType>BUSINESS</SubscriberType>\n\t\t\t<BusinessName>Goina B Rich</BusinessName>\n\t\t\t<ServiceAddress>\n\t\t\t\t<HouseNumber>123</HouseNumber>\n\t\t\t\t<StreetName>Maple Ave</StreetName>\n\t\t\t\t<City>Hometown</City>\n\t\t\t\t<StateCode>MO</StateCode>\n\t\t\t\t<Zip>54923</Zip>\n\t\t\t\t<Country>United States</Country>\n\t\t\t\t<AddressType>Service</AddressType>\n\t\t\t</ServiceAddress>\n\t\t</Subscriber>\n\t\t<SiteId>14020</SiteId>\n\t\t<TargetRespOrgId>JYT01</TargetRespOrgId>\n\t\t<PeerId>521434</PeerId>\n\t\t<ProcessingStatus>DRAFT</ProcessingStatus>\n\t\t<AccountId>9900572</AccountId>\n\t\t<CreatedByUser>testuser</CreatedByUser>\n\t\t<LastModifiedBy>testuser</LastModifiedBy>\n\t\t<LastModifiedDate>2021-06-22T14:25:24.487Z</LastModifiedDate>\n\t\t<OrderCreateDate>2021-06-21T19:42:34.760Z</OrderCreateDate>\n\t</BulkPortin>\n</BulkPortinResponse>"
              schema:
                $ref: '#/components/schemas/BulkPortinResponse'
          description: >-
            The information has been successfully retrieved and displayed in the
            payload.
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BulkPortinResponse>
                        <ResponseStatus>
                            <Description>Please check your input parameters.</Description>
                        </ResponseStatus>
                        <PortinListErrors>
                            <PortinErrors>
                                <PortinOrderId>c358cb90-f1e6-4d72-92be-435411d50609</PortinOrderId>
                                <Errors>
                                    <Error>
                                        <Description>The order cannot be modified because the order is awaiting a response from the losing carrier</Description>
                                        <ErrorCode>7300</ErrorCode>
                                    </Error>
                                </Errors>
                            </PortinErrors>
                            <PortinErrors>
                                <PortinOrderId>cb57e5a0-c70d-4f24-a450-bab62e908cc6</PortinOrderId>
                                <Errors>
                                    <Error>
                                        <Description>Unable to modify processing status for AUTOMATED port type</Description>
                                        <ErrorCode>7367</ErrorCode>
                                    </Error>
                                </Errors>
                            </PortinErrors>
                        </PortinListErrors>
                    </BulkPortinResponse>
              schema:
                $ref: '#/components/schemas/BulkPortinPatchErrorResponse'
          description: Bad request. Invalid input.
        '404':
          description: The indicated Bulk Port-in order could not be found.
      summary: Patch bulk port-in order
      tags:
        - Bulk Port-In
    put:
      description: >-
        The PUT operation is available only for bulk port-in orders that are not
        yet associated with subtending orders. Since this only occurs for bulk
        port-in orders that are in one of the draft states, there are few
        restrictions on what may be included. As with the POST, any data
        associated with the bulk port-in will cascade to subtending orders when
        they are created. (Subtending orders are created after telephone numbers
        are added to the bulk port-in using the /tnList endpoint.) The PUT
        completely replaces the existing Bulk Portin order with the payload of
        the PUT. Please visit <a
        href='/docs/numbers/porting/port-ins/bulkPortIns'>Guides and
        Tutorials</a>.
      operationId: PutBulkOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          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"?>
                  <BulkPortin>
                      <CustomerOrderId>Order Id for all child orders</CustomerOrderId>
                      <RequestedFocDate>2021-06-30Z</RequestedFocDate>
                      <Subscriber>
                          <SubscriberType>BUSINESS</SubscriberType>
                          <BusinessName>Goina B Rich</BusinessName>
                          <ServiceAddress>
                              <HouseNumber>123</HouseNumber>
                              <StreetName>Maple Ave</StreetName>
                              <City>Hometown</City>
                              <StateCode>MO</StateCode>
                              <Zip>54923</Zip>
                          </ServiceAddress>
                      </Subscriber>
                      <TargetRespOrgId>JYT01</TargetRespOrgId>
                      <SiteId>14020</SiteId>
                      <PeerId>521434</PeerId>
                  </BulkPortin>
            schema:
              $ref: '#/components/schemas/BulkPortinRequest'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<BulkPortinResponse> \n\t<BulkPortin> \n\t\t<CustomerOrderId>Order Id for all child orders</CustomerOrderId> \n\t\t<RequestedFocDate>2021-06-30T00:00:00.000Z</RequestedFocDate> \n\t\t<Subscriber> \n\t\t\t<SubscriberType>BUSINESS</SubscriberType> \n\t\t\t<BusinessName>Goina B Rich</BusinessName> \n\t\t\t<ServiceAddress> \n\t\t\t\t<HouseNumber>123</HouseNumber> \n\t\t\t\t<StreetName>Maple Ave</StreetName> \n\t\t\t\t<City>Hometown</City> \n\t\t\t\t<StateCode>MO</StateCode> \n\t\t\t\t<Zip>54923</Zip> \n\t\t\t\t<Country>United States</Country> \n\t\t\t\t<AddressType>Service</AddressType> \n\t\t\t</ServiceAddress> \n\t\t</Subscriber> \n\t\t<SiteId>14020</SiteId> \n\t\t<PeerId>521434</PeerId> \n\t\t<ProcessingStatus>DRAFT</ProcessingStatus> \n\t\t<AccountId>9900572</AccountId> \n\t\t<TargetRespOrgId>JYT01</TargetRespOrgId> \n\t\t<CreatedByUser>testuser</CreatedByUser> \n\t\t<LastModifiedBy>testuser</LastModifiedBy> \n\t\t<LastModifiedDate>2021-06-21T20:24:36.616Z</LastModifiedDate>\n\t\t<OrderCreateDate>2021-06-21T19:42:34.760Z</OrderCreateDate> \n\t</BulkPortin> \n</BulkPortinResponse>"
              schema:
                $ref: '#/components/schemas/BulkPortinResponse'
          description: >-
            The information has been successfully retrieved and displayed in the
            payload.
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BulkPortinResponse>
                        <ResponseStatus>
                            <Description>Please check your input parameters.</Description>
                        </ResponseStatus>
                        <PortinListErrors>
                            <PortinErrors>
                                <PortinOrderId>c358cb90-f1e6-4d72-92be-435411d50609</PortinOrderId>
                                <Errors>
                                    <Error>
                                        <Description>The order cannot be modified because the order is awaiting a response from the losing carrier</Description>
                                        <ErrorCode>7300</ErrorCode>
                                    </Error>
                                </Errors>
                            </PortinErrors>
                            <PortinErrors>
                                <PortinOrderId>cb57e5a0-c70d-4f24-a450-bab62e908cc6</PortinOrderId>
                                <Errors>
                                    <Error>
                                        <Description>Unable to modify processing status for AUTOMATED port type</Description>
                                        <ErrorCode>7367</ErrorCode>
                                    </Error>
                                </Errors>
                            </PortinErrors>
                        </PortinListErrors>
                    </BulkPortinResponse>
              schema:
                $ref: '#/components/schemas/BulkPortinPatchErrorResponse'
          description: Bad request. Invalid input.
        '404':
          description: The indicated Bulk Port-in order could not be found.
      summary: Update bulk port-in order
      tags:
        - Bulk Port-In
  /accounts/{accountId}/bulkPortins/{orderId}/history:
    get:
      description: >-
        Retrieves the history of the specified bulk port-in order. Obtaining
        history for a draft bulk port-in is not supported.</p><p>Please visit <a
        href='/docs/numbers/porting/port-ins/bulkPortIns'>Guides and
        Tutorials</a></p>
      operationId: GetBulkHistory
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                Bulk port-in in DRAFT state:
                  description: >-
                    The following response will be returned when the bulk
                    port-in is in DRAFT state
                  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>2018-06-12T13:44:47.604Z</OrderDate>
                            <Note>Draft order has been created/updated</Note>
                            <Author>systemUser</Author>
                            <Status>DRAFT</Status>
                        </OrderHistory>
                        <OrderHistory>
                            <OrderDate>2018-06-12T13:49:02.328Z</OrderDate>
                            <Note>Draft order has been created/updated</Note>
                            <Author>systemUser</Author>
                            <Status>DRAFT</Status>
                            <Difference>SiteId : 0 --&gt; 743</Difference>
                        </OrderHistory>
                        <OrderHistory>
                            <OrderDate>2018-06-12T13:49:46.350Z</OrderDate>
                            <Note>Order has been submitted/updated</Note>
                            <Author>systemUser</Author>
                            <Status>IN_PROGRESS</Status>
                        </OrderHistory>
                        <OrderHistory>
                            <OrderDate>2018-06-12T13:51:13.855Z</OrderDate>
                            <Note>Order has been submitted/updated</Note>
                            <Author>systemUser</Author>
                            <Status>IN_PROGRESS</Status>
                            <Difference>SubscriberType : "" --&gt; residential</Difference>
                        </OrderHistory>
                    </OrderHistoryWrapper>
              schema:
                $ref: '#/components/schemas/OrderHistoryWrapper'
          description: >-
            The history has been successfully retrieved and displayed in the
            payload. History is not supported for bulk port-ins in draft status.
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <BulkPortInHistoryResponse>
                        <ResponseStatus>
                            <Description>The resource does not exist</Description>
                        </ResponseStatus>
                    </BulkPortInHistoryResponse>
              schema:
                $ref: '#/components/schemas/BulkPortInHistoryResponse'
          description: NOT FOUND - the order id does not exist in the system
      summary: Retrieve bulk port-in order history
      tags:
        - Bulk Port-In
  /accounts/{accountId}/bulkPortins/{orderId}/loas:
    get:
      description: >-
        Retrieves the list of the loa (and other) files associated with the
        order.
      operationId: ListBulkLoas
      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/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 bulk port-in order loa files
      tags:
        - Bulk Port-In
    post:
      description: >-
        <p>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>

        Query parameter or header documentType can be used to specify type of
        document on upload. Possible values are: LOA, INVOICE, CSR, OTHER.
            <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>

        <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: UploadBulkLoa
      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&#58; 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/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>
          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: >-
            Conflicting values specified for documentType query parameter and
            documentType header.
        '415':
          description: Unsupported content type provided in http header or uploaded file.
      summary: Upload bulk port-in order loa file
      tags:
        - Bulk Port-In
  /accounts/{accountId}/bulkPortins/{orderId}/notes:
    get:
      description: >-
        Retrieve all notes associated with the order. Please visit <a
        href='/docs/numbers/porting/port-ins/bulkPortIns'>Guides and
        Tutorials</a>
      operationId: ListBulkNotes
      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"?>
                    <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 bulk port-in order notes
      tags:
        - Bulk Port-In
    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. Please visit <a
        href='/docs/numbers/porting/port-ins/bulkPortIns'>Guides and
        Tutorials</a>
      operationId: CreateBulkNote
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          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\"?>\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':
          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 bulk port-in order note
      tags:
        - Bulk Port-In
  /accounts/{accountId}/bulkPortins/{orderId}/notes/{noteId}:
    put:
      description: >-
        Update a specified note.  Notes may only be updated, not deleted. Please
        visit <a href='/docs/numbers/porting/port-ins/bulkPortIns'>Guides and
        Tutorials</a>
      operationId: UpdateBulkNote
      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/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/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 bulk port-in order note
      tags:
        - Bulk Port-In
  /accounts/{accountId}/bulkPortins/{orderId}/portinList:
    get:
      description: >-
        Retrieves a list of Port-in Orders that are all associated with the
        identified Bulk Port-in.   This response is not paginated due to its
        inherently limited size. Please visit <a
        href='/docs/numbers/porting/port-ins/bulkPortIns'>Guides and
        Tutorials</a>
      operationId: ListBulkChildOrders
      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"?>
                    <PortinListResponse>
                        <PortinList>
                            <PortinOrderId>[portin order id]</PortinOrderId>
                            <PortinOrderId>[portin order id]</PortinOrderId>
                            <!-- SNIP -->
                            <PortinOrderId>[portin order id]</PortinOrderId>
                            <PortinOrderId>[portin order id]</PortinOrderId>
                        </PortinList>
                        <Errors>
                            <Error>
                                <ErrorCode>nnnnn</ErrorCode>
                                <portinOrderId>[portin order id]</portinOrderId>
                                <Description>string</Description>
                            </Error>
                            <Error>
                                <ErrorCode>nnnnn</ErrorCode>
                                <portinOrderId>[portin order id]</portinOrderId>
                                <Description>string</Description>
                            </Error>
                        </Errors>
                    </PortinListResponse>
              schema:
                $ref: '#/components/schemas/PortinListResponse'
          description: >-
            The information has been successfully retrieved and displayed in the
            payload. It is possible to receive an empty PortinList if there are
            no child port-in orders associated with the bulk port-in.
      summary: List bulk port-in child orders
      tags:
        - Bulk Port-In
    put:
      description: >-
        <p>A PUT on a PortinList resource will cause replacement of the list of
        port-in orders associated with the specified bulk port-in.</p><p>This
        PUT will completely replace the existing list of port-in orders
        associated with the bulk port-in.  If all port-in orders in the list are
        not valid, the PUT request will fail, due to the potential for losing
        the port-in to bulk port-in relationships.</p><p>Only port-in orders in
        a draft status may be associated with a bulk port-in order.  And port-in
        orders may only be added to a bulk port-in order while that bulk port-in
        order is still in a draft state.</p><p>Child port-in orders may be
        dissociated from the bulk port-in at any time. </p> <p>Please visit <a
        href='/docs/numbers/porting/port-ins/bulkPortIns'>Guides and
        Tutorials</a></p>
      operationId: UpdateBulkChildList
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          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"?>
                  <PortinList>
                      <PortinOrderId>[portin order id]</PortinOrderId>
                      <PortinOrderId>[portin order id]</PortinOrderId>
                      <!-- SNIP -->
                      <PortinOrderId>[portin order id]</PortinOrderId>
                      <PortinOrderId>[portin order id]</PortinOrderId>
                  </PortinList>
            schema:
              $ref: '#/components/schemas/PortinList'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <PortinListResponse>
                      <PortinList>
                        <PortinOrderId>33d387f8-d60b-4e20-9c31-5b68a4ef4b0a</PortinOrderId>
                        <PortinOrderId>0021cde5-99d7-4be3-afcd-a8803374921a</PortinOrderId>
                        <PortinOrderId>7b0e5e38-ce93-4d29-8882-d3b5c4a37e56</PortinOrderId>
                        <PortinOrderId>c6512b78-d44f-419f-9836-eaae408e3149</PortinOrderId>
                      </PortinList>
                    </PortinListResponse>
              schema:
                $ref: '#/components/schemas/PortinListResponse'
          description: The list was replaced successfully and no errors were detected.
        '400':
          description: >-
            There was an error - one or more of the port-in orders was invalid. 
            The response payload will indicate the errors that were detected,
            and no changes will be made to the list of portin orders associated
            with the bulk order.
      summary: Update list of bulk port-in child orders
      tags:
        - Bulk Port-In
  /accounts/{accountId}/bulkPortins/{orderId}/tnList:
    get:
      description: >-
        <p>The information returned in the GET /tnList response payload depends
        on the ProcessingStatus of the bulk port-in order. See the Responses tab
        for examples of each response payload.</p><table border="1"
        cellspacing="0" cellpadding="0" width="624">
                <tbody>
                    <tr>
                        <td valign="top">
                            <p>
                                <strong>ProcessingStatus</strong>
                            </p>
                        </td>
                        <td valign="top">
                            <p>
                                <strong>Information Returned</strong>
                            </p>
                        </td>
                    </tr>
                    <tr>
                        <td valign="top">
                            <p>
                                DRAFT
                            </p>
                        </td>
                        <td valign="top">
                            <p align="center">
                                In this state, no tnList has been provided, so the response
                                includes empty portable and non-portable telephone number lists.
                            </p>
                        </td>
                    </tr>
                    <tr>
                        <td valign="top">
                            <p>
                                VALIDATE_DRAFT_TNS
                            </p>
                        </td>
                        <td valign="top">
                            <p align="center">
                                In this state, validation of the tnList is still in progress,
                                so the response includes all of the tnList telephone numbers
                                in a 'not validated' list.  This is a temporary state until
                                the validation completes.  Validation takes longer when toll
                                free numbers are included in the tnList.
                            </p>
                        </td>
                    </tr>
                    <tr>
                        <td valign="top">
                            <p>
                                VALID_DRAFT_TNS
                            </p>
                        </td>
                        <td valign="top">
                            <p align="center">
                                In this state, all of the telephone numbers in the tnList have
                                been determined to be portable.  The response payload includes
                                a list of the child port-in orders and shows which telephone
                                numbers are assigned to each child port-in order.
                            </p>
                        </td>
                    </tr>
                    <tr>
                        <td valign="top">
                            <p>
                                INVALID_DRAFT_TNS
                            </p>
                        </td>
                        <td valign="top">
                            <p align="center">
                                In this state, at least one of the telephone numbers in the tnList
                                has been determined to be non-portable.  The response payload includes
                                a list of portable numbers (if any) and a list of errors showing which
                                telephone numbers are non-portable as well as the reasons why they
                                cannot be ported.  Or, if communication errors prevented us from
                                determining telephone number portability, those errors will be included.
                            </p>
                        </td>
                    </tr>
                </tbody>
            </table>
         <p>Please visit <a href='/docs/numbers/porting/port-ins/bulkPortIns'>Guides and Tutorials</a></p>
      operationId: ListBulkTns
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                DRAFT state:
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<TnListResponse>\n\t<ProcessingStatus>DRAFT</ProcessingStatus>\n\t<OrderId>33b58246-f27c-4b1d-896d-0acc03b3ad8a</OrderId>\n\t<PortableTnList/>\n</TnListResponse>"
                Non-portable INVALID_DRAFT_TNS state:
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<TnListResponse>\n\t<ProcessingStatus>INVALID_DRAFT_TNS</ProcessingStatus>\n\t<OrderId>33b58246-f27c-4b1d-896d-0acc03b3ad8a</OrderId>\n\t<!-- If at least one TN is portable -->\n\t<PortableTnList>\n\t\t<TN>8772397726</TN>\n\t</PortableTnList>\n\t<ChildPortinOrder>\n\t\t<OrderId>10f48fec-9db0-4f68-8bcb-c8a6a230a2d9</OrderId>\n\t\t<TnList>\n\t\t\t<Tn>8772397726</Tn>\n\t\t</TnList>\n\t</ChildPortinOrder>\n\t<ErrorList>\n\t\t<Error>\n\t\t\t<Code>7642</Code>\n\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<TnList>\n\t\t\t\t<Tn>8005587721</Tn>\n\t\t\t</TnList>\n\t\t</Error>\n\t\t<Error>\n\t\t\t<Code>7643</Code>\n\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<TnList>\n\t\t\t\t<Tn>7225098835</Tn>\n\t\t\t</TnList>\n\t\t</Error>\n\t</ErrorList>\n</TnListResponse>"
                VALIDATE_DRAFT_TNS state:
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<TnListResponse>\n\t<ProcessingStatus>VALIDATE_DRAFT_TNS</ProcessingStatus>\n\t<OrderId>33b58246-f27c-4b1d-896d-0acc03b3ad8a</OrderId>\n\t<NotValidatedTnList>\n\t\t<TN>8772397726</TN>\n\t\t<TN>8006148733</TN>\n\t\t<TN>4047221089</TN>\n\t\t<TN>7013498774</TN>\n\t</NotValidatedTnList>\n</TnListResponse>"
                VALID_DRAFT_TNS state:
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<TnListResponse>\n\t<ProcessingStatus>VALID_DRAFT_TNS</ProcessingStatus>\n\t<OrderId>33b58246-f27c-4b1d-896d-0acc03b3ad8a</OrderId>\n\t<ChildPortinOrderList>\n\t\t<ChildPortinOrder>\n\t\t\t<OrderId>10f48fec-9db0-4f68-8bcb-c8a6a230a2d9</OrderId>\n\t\t\t<TnList>\n\t\t\t\t<Tn>8772397726</Tn>\n\t\t\t</TnList>\n\t\t</ChildPortinOrder>\n\t\t<ChildPortinOrder>\n\t\t\t<OrderId>059cf2d9-a004-4a88-866c-082c97fb7d5f</OrderId>\n\t\t\t<TnList>\n\t\t\t\t<Tn>8006148733</Tn>\n\t\t\t</TnList>\n\t\t</ChildPortinOrder>\n\t\t<ChildPortinOrder>\n\t\t\t<OrderId>092815dc-9ced-4d67-a070-a80eb243b914</OrderId>\n\t\t\t<TnList>\n\t\t\t\t<Tn>4047221089</Tn>\n\t\t\t\t<Tn>7013498774</Tn>\n\t\t\t</TnList>\n\t\t</ChildPortinOrder>\n\t</ChildPortinOrderList>\n</TnListResponse>"
                Vendor error INVALID_DRAFT_TNS state:
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<TnListResponse>\n\t<ProcessingStatus>INVALID_DRAFT_TNS</ProcessingStatus>\n\t<OrderId>33b58246-f27c-4b1d-896d-0acc03b3ad8a</OrderId>\n\t<PortableTnList/>\n\t<ErrorList>\n\t\t<Error>\n\t\t\t<Code>7628</Code>\n\t\t\t<Description>An unexpected Batch Number Query response was received from our porting vendor. Please contact Bandwidth for assistance with this error.</Description>\n\t\t\t<TnList>\n\t\t\t\t<Tn>8772397726</Tn>\n\t\t\t\t<Tn>8006148733</Tn>\n\t\t\t\t<Tn>4047221089</Tn>\n\t\t\t\t<Tn>7013498774</Tn>\n\t\t\t</TnList>\n\t\t</Error>\n\t</ErrorList>\n</TnListResponse>"
              schema:
                $ref: '#/components/schemas/TnListResponse'
          description: >-
            The information has been successfully retrieved and displayed in the
            payload.
      summary: List bulk port-in order tns
      tags:
        - Bulk Port-In
    put:
      description: >-
        <p>This operation is used to add telephone numbers to a draft bulk
        port-in order.
          The telephone numbers may be a mix of toll free and non-toll free.  Once the
          telephone numbers are added, they will be checked for portability, and if
          portable, decomposed into individual child port-in orders.  Both the bulk
          port-in order and the child port-in orders remain in draft status until you
          explicitly submit them.</p>

        <p>After submitting a tnList with the PUT operation, you will need to
        poll for
          completion of the validation and decomposition using the GET /tnList operation
          or the GET /bulkPortins/orderId operation (both include the order ProcessingStatus).
          The basic ProcessingStatus flow is as follows:</p>

        <ul><li>On submission of the tnList, the bulk port-in order transitions
        from DRAFT
          status to VALIDATE_DRAFT_TNS.  The order will remain in this state until validation
          is complete.  For a tnList that does not contain any toll free telephone numbers, the
          validation step is very fast.  When the tnList does contain toll free telephone
          numbers, the time it takes to validate the toll free numbers is roughly proportional
          to the number of toll free telephone numbers.  If you PUT a new tnList while validation
          is in progress for a previous tnList, the validation of the previous tnList will be
          abandoned and replaced by validation of the new tnList.</li>
          <li>If all of the telephone numbers in the tnList are portable, the bulk port-in
            transitions to the VALID_DRAFT_TNS state.  At this point, child port-in orders have
            been created in DRAFT status to meet requirements about which telephone numbers can
            be ported together in the same port-in order.  The bulk port-in will remain in this
            state until you use the PATCH operation on the bulk port-in order to change the
            ProcessingStatus to IN_PROGRESS.  If you PUT an updated tnList, all draft child
            port-in orders are removed, and the validation process begins again with the new
            tnList.</li>
          <li>If at least one of the telephone numbers in the tnList is not portable, the bulk
            port-in transitions to the INVALID_DRAFT_TNS state.  When this happens, no child
            port-in orders are created.  You can use the GET operation on /tnList to see reasons
            why telephone numbers are non-portable.  You’ll need to update the tnList to remove
            non-portable telephone numbers and PUT the tnList again to restart the validation
            step.  The goal is to get to the VALID_DRAFT_TNS state, from which you can submit
            the bulk port-in order.</li></ul>
         <p>Please visit <a href='/docs/numbers/porting/port-ins/bulkPortIns'>Guides and Tutorials</a></p>
      operationId: UpdateBulkTnList
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          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"?>
                  <TnList>
                      <TN>[telephone number]</TN>
                      <TN>[telephone number]</TN>
                      <!-- SNIP -->
                      <TN>[telephone number]</TN>
                      <TN>[telephone number]</TN>
                  </TnList>
            schema:
              $ref: '#/components/schemas/TnList'
      responses:
        '202':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<TnListResponse>\n\t<OrderId>ac2c8ab2-7a63-44da-a307-edcabe0b6c81</OrderId>\n\t<ProcessingStatus>VALIDATE_DRAFT_TNS</ProcessingStatus>\n</TnListResponse>"
              schema:
                $ref: '#/components/schemas/TnListPutResponse'
          description: >-
            The request to validate telephone numbers and create child port-in
            orders has been accepted.  Use the GET /tnList to check for status
            updates on the validation.
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<TnListResponse>\n\t<ResponseStatus>\n\t\t<ErrorCode>7339</ErrorCode>\n\t\t<Description>Telephone numbers '[15032241124, 18632167633, 19133648872, 18882889734]' are not valid</Description>\n\t</ResponseStatus>\n\t<OrderId>ac2c8ab2-7a63-44da-a307-edcabe0b6c81</OrderId>\n\t<ProcessingStatus>INVALID_DRAFT_TNS</ProcessingStatus>\n</TnListResponse>"
              schema:
                $ref: '#/components/schemas/TnListPutErrorResponse'
          description: >-
            The TN List payload was malformed, and the list could not be
            processed.  The response payload includes information about why the
            request failed.  If the request is entirely malformed (e.g.
            unrecognized elements), the 400 response may have no
            payload.</p><p>In the example below, the TN values include the
            country code prefix.The TN values should be 10-digit North American
            telephone numbers.
      summary: Update bulk port-in order tn list
      tags:
        - Bulk Port-In
  /accounts/{accountId}/campaignManagement/10dlc:
    get:
      description: >-
        This GET resource can be used to fetch 10dlc campaign settings
        configuration on an account.
      operationId: fetchCampaignSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/ResellerSetupResponse'
                  description: example
          description: OK
        '404':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignSetting404Error'
                  description: example
          description: Not Found
      summary: Fetch Campaign Settings
      tags:
        - 10DLC
    post:
      description: >-
        This POST resource can be used to create a 10dlc campaign settings
        configuration on an account.
      operationId: createCampaignSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              DirectCustomer:
                $ref: '#/components/examples/DirectCustomerSetupRequest'
                summary: Setting up as Direct Customer
              Reseller:
                $ref: '#/components/examples/ResellerSetupRequest'
                summary: Setting up as Reseller
            schema:
              $ref: '#/components/schemas/CampaignSettingsRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                DirectCustomer:
                  $ref: '#/components/examples/DirectCustomerSetupResponse'
                  description: Direct Customer Campaign Settings success response
                resellerExample:
                  $ref: '#/components/examples/ResellerSetupResponse'
                  description: Create Reseller Campaign Settings success response
          description: Created
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignSetting400Error'
                  description: example
          description: Bad Request
        '403':
          $ref: '#/components/responses/CampaignSettings403Response'
        '409':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignSetting409Error'
                  description: example
          description: Conflict
      summary: Create Campaign Settings
      tags:
        - 10DLC
    put:
      description: >-
        This PUT resource can be used to update a 10dlc campaign settings
        configuration on an account.
      operationId: updateCampaignSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              DirectCustomer:
                $ref: '#/components/examples/DirectCustomerSetupRequest'
                summary: Updating campaign setting as Direct Customer
              Reseller:
                $ref: '#/components/examples/ResellerSetupRequest'
                summary: Updating campaign setting as Reseller
            schema:
              $ref: '#/components/schemas/CampaignSettingsRequest'
      responses:
        '200':
          content:
            application/xml:
              examples:
                DirectCustomer:
                  $ref: '#/components/examples/DirectCustomerSetupResponse'
                  description: Direct Customer Campaign Settings update success response
                resellerExample:
                  $ref: '#/components/examples/ResellerSetupResponse'
                  description: Reseller Campaign Settings update success response
          description: OK
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignSetting400Error'
                  description: example
          description: Bad Request
        '403':
          $ref: '#/components/responses/CampaignSettings403Response'
        '404':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignSetting404Error'
                  description: example
          description: Not Found
      summary: Update Campaign Settings
      tags:
        - 10DLC
  /accounts/{accountId}/campaignManagement/10dlc/brands:
    get:
      description: Retrieve a list of campaign registry brands for the account
      operationId: listBrands
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - in: query
          name: page
          schema:
            type: integer
        - in: query
          name: size
          schema:
            type: integer
        - in: query
          name: type
          schema:
            enum:
              - NONE
              - MAIN
              - CUSTOMER
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/BrandResponse'
              schema:
                $ref: '#/components/schemas/BrandsResponse'
          description: OK
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/Brand400Error'
              schema:
                $ref: '#/components/schemas/BrandsErrorResponse'
          description: Bad Request
        '403':
          $ref: '#/components/responses/Brands403Response'
      summary: List Brands
      tags:
        - 10DLC
    post:
      description: >
        Create campaign registry brand on the Account.

        My Brand Note Regardless of if you are a DirectCustomer or Reseller, you
        will need to create a My Brand.

        You can only create one of these. On the Request Body you can indicate a
        My Brand by setting the IsMain flag to true.

        Please visit [Brand and Reseller
        Management](/docs/messaging/campaign-management/csp/reseller-brand-api). 

        For PUBLIC_PROFIT brand entities, after basic identity verification, an
        AUTHPLUS vetting will be submitted automatically and a TCR 2FA email
        will be sent from TCR to the BusinessContactEmail address. Your request
        to complete Auth+ will remain active for 30 days from the initial email,
        but each email is only valid for 7 days. To request another one within
        the 30 day window, you can call the
        [/2faEmail](/docs/messaging/campaign-management/csp/brand-vetting-api#resend-2fa-email-verification)
        endpoint. 

        If your 30 day window has expired, or your 2FA status has a FAILED or
        EXPIRED status, you may request a restart of the TCR 2FA process via the
        [/vetting](/docs/messaging/campaign-management/csp/brand-vetting-api#request-external-vetting)
        endpoint. 
      operationId: createBrand
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              Customer Brand:
                $ref: '#/components/examples/CustomerBrandRequest'
                summary: Customer Brand
              My Brand:
                $ref: '#/components/examples/MyBrandRequest'
                summary: My Brand
            schema:
              $ref: '#/components/schemas/BrandRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/BrandResponse'
              schema:
                $ref: '#/components/schemas/BrandResponse'
          description: CREATED
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/BrandMissingFieldError'
              schema:
                $ref: '#/components/schemas/BrandErrorResponse'
          description: Bad Request
        '403':
          $ref: '#/components/responses/Brand403Response'
      summary: Create brand
      tags:
        - 10DLC
  /accounts/{accountId}/campaignManagement/10dlc/brands/{brandId}:
    delete:
      description: Delete campaign registry brand
      operationId: deleteBrand
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Brand id.
          example: B5DG4HH
          in: path
          name: brandId
          required: true
          schema:
            type: string
      responses:
        '204':
          content:
            description: No Content
        '403':
          $ref: '#/components/responses/Brand403Response'
      summary: Delete Brand
      tags:
        - 10DLC
    get:
      description: Retrieve a campaign registry brand for the Account
      operationId: retrieveBrand
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Brand id.
          example: B5DG4HH
          in: path
          name: brandId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/BrandResponse'
              schema:
                $ref: '#/components/schemas/BrandResponse'
          description: OK
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/Brand400Error'
              schema:
                $ref: '#/components/schemas/BrandErrorResponse'
          description: Bad Request
        '403':
          $ref: '#/components/responses/Brand403Response'
        '404':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/Brand404Error'
              schema:
                $ref: '#/components/schemas/BrandErrorResponse'
          description: Not Found
      summary: Retrieve Brand
      tags:
        - 10DLC
    put:
      description: >-
        Update campaign registry brand on the Account. For PUBLIC_PROFIT brand
        entities, BusinessContactEmail cannot be edited when AUTHPLUS vetting is
        PENDING. When AUTHPLUS is in any other state, it restarts the entire
        brand identity verification process, including basic identity
        verification and AUTHPLUS.
      operationId: updateBrand
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Brand id.
          example: B5DG4HH
          in: path
          name: brandId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              Customer Brand:
                $ref: '#/components/examples/CustomerBrandRequest'
                summary: Customer Brand
              My Brand:
                $ref: '#/components/examples/MyBrandRequest'
                summary: My Brand
            schema:
              $ref: '#/components/schemas/BrandRequest'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/BrandResponse'
              schema:
                $ref: '#/components/schemas/BrandResponse'
          description: OK
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/Brand400Error'
              schema:
                $ref: '#/components/schemas/BrandErrorResponse'
          description: Bad Request
        '403':
          $ref: '#/components/responses/Brand403Response'
        '404':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/Brand404Error'
              schema:
                $ref: '#/components/schemas/BrandErrorResponse'
          description: Not Found
      summary: Update Brand
      tags:
        - 10DLC
  /accounts/{accountId}/campaignManagement/10dlc/brands/{brandId}/2faEmail:
    post:
      description: >-
        Request to resend TCR 2FA email to the BusinessContactEmail if the
        AUTHPLUS vetting is PENDING. The TCR 2FA email will not be sent for any
        other AUTHPLUS vetting status.
      operationId: resend2faEmail
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Brand id.
          example: B5DG4HH
          in: path
          name: brandId
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
        '403':
          $ref: '#/components/responses/Brand2FA403Response'
      summary: Request to resend 2FA email
      tags:
        - 10DLC
  /accounts/{accountId}/campaignManagement/10dlc/brands/{brandId}/campaigns:
    get:
      description: The GET method is used to retrieve Campaign resource on the account.
      operationId: getCampaignsByBrandId
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          example: null
          in: path
          name: brandId
          required: true
          schema:
            default: null
            type: string
        - description: Number of page
          example: 1
          in: query
          name: page
          required: false
          schema:
            default: null
            type: integer
        - description: Number of records per page
          example: 8
          in: query
          name: size
          required: false
          schema:
            default: null
            type: integer
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignsListResponse'
                  description: example
          description: OK
        '403':
          $ref: '#/components/responses/Campaigns403Response'
      summary: Fetch Campaigns by BrandId
      tags:
        - 10DLC
  /accounts/{accountId}/campaignManagement/10dlc/brands/{brandId}/revet:
    put:
      description: Request Brand Re-Vet
      operationId: requestBrandRevet
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Brand id.
          example: B5DG4HH
          in: path
          name: brandId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/BrandRevetResponse'
              schema:
                $ref: '#/components/schemas/Brand'
          description: OK
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/BrandRevet400Error'
              schema:
                $ref: '#/components/schemas/BrandRevetErrorResponse'
          description: Bad Request
        '403':
          $ref: '#/components/responses/BrandRevet403Response'
      summary: Request Brand Re-Vet
      tags:
        - 10DLC
  /accounts/{accountId}/campaignManagement/10dlc/brands/{brandId}/vetting:
    get:
      description: >-
        Retrieve brand external vetting records. PUBLIC_PROFIT brand entities
        may want to check their AUTHPLUS status records. To do so, you can use
        optional query parameters to filter by `vettingClass=AUTHPLUS`. If no
        query parameters are provided, all vetting records will be returned.
      operationId: retrieveBrandVettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Brand id.
          example: B5DG4HH
          in: path
          name: brandId
          required: true
          schema:
            type: string
        - description: Vetting provider ID.
          example: AEGIS
          in: query
          name: evpId
          schema:
            type: string
        - description: Vetting class.
          example: STANDARD
          in: query
          name: vettingClass
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/BrandVettingResponse'
              schema:
                $ref: '#/components/schemas/BrandVettingsResponse'
          description: OK
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/BrandVetting400Error'
              schema:
                $ref: '#/components/schemas/BrandVettingsErrorResponse'
          description: Bad Request
        '403':
          $ref: '#/components/responses/BrandVettings403Response'
      summary: Retrieve Brand Vettings
      tags:
        - 10DLC
    post:
      description: >-
        Create brand an external vetting. Vettings with class AUTHPLUS are only
        available with EvpId AEGIS and to PUBLIC_PROFIT brand entities for TCR
        2FA. TCR 2FA will automatically be submitted for PUBLIC_PROFIT brand
        entities that are VERIFIED or VETTED_VERIFIED.
      operationId: createBrandVetting
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Brand id.
          example: B5DG4HH
          in: path
          name: brandId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                $ref: '#/components/examples/BrandVettingRequest'
            schema:
              $ref: '#/components/schemas/BrandVettingRequest'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/BrandVettingPostResponse'
              schema:
                $ref: '#/components/schemas/BrandVettingsResponse'
          description: OK
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/BrandVettingPost400Error'
              schema:
                $ref: '#/components/schemas/BrandVettingsErrorResponse'
          description: Bad Request
        '403':
          $ref: '#/components/responses/BrandVetting403Response'
      summary: Create Brand Vetting
      tags:
        - 10DLC
    put:
      description: Import brand external vetting records
      operationId: importBrandVetting
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Brand id.
          example: B5DG4HH
          in: path
          name: brandId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              example:
                $ref: '#/components/examples/BrandVettingImportRequest'
            schema:
              $ref: '#/components/schemas/BrandVettingImportRequest'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/BrandVettingImportResponse'
              schema:
                $ref: '#/components/schemas/BrandVettingImportResponse'
          description: OK
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/BrandVettingPost400Error'
              schema:
                $ref: '#/components/schemas/BrandVettingsErrorResponse'
          description: Bad Request
        '403':
          $ref: '#/components/responses/BrandVetting403Response'
      summary: Import Brand Vetting
      tags:
        - 10DLC
  /accounts/{accountId}/campaignManagement/10dlc/campaigns:
    get:
      description: >-
        This endpoint fetches a paginated list of all campaigns for your
        account.
      operationId: fetchCampaignList
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The page number of the results to return.
          in: query
          name: page
          required: false
          schema:
            default: 0
            type: number
        - description: The maximum number of results to return.
          in: query
          name: size
          required: false
          schema:
            default: 25
            type: number
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignsListResponse'
                  description: example
          description: OK
        '403':
          $ref: '#/components/responses/Campaigns403Response'
        '404':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignNotFound404Error'
                  description: example
              schema:
                $ref: '#/components/schemas/CampaignErrorResponse'
          description: Not Found
      summary: Fetch Campaign List
      tags:
        - 10DLC
    post:
      description: The POST method is used to add a new Campaign resource to the account.
      operationId: createCampaign
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              My Campaign:
                $ref: '#/components/examples/CreateCampaignRequest'
                summary: My Campaign
            schema:
              $ref: '#/components/schemas/CampaignRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignResponse'
                  description: example
          description: Created
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CreateCampaign400Error'
                  description: example
              schema:
                $ref: '#/components/schemas/CampaignErrorResponse'
          description: Bad Request
        '403':
          $ref: '#/components/responses/Campaign403Response'
      summary: Create Campaign
      tags:
        - 10DLC
  /accounts/{accountId}/campaignManagement/10dlc/campaigns/imports:
    get:
      description: >-
        The GET method returns a list of Campaign Ids that have been imported
        into the account. The maximum number of Campaigns returned by this query
        is controlled by the size parameter. The page parameter can be used to
        fetch additional pages after the first.
      operationId: GetImportedCampaigns
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The page number of the results to return.
          in: query
          name: page
          required: false
          schema:
            default: 0
            type: number
        - description: The maximum number of results to return.
          in: query
          name: size
          required: false
          schema:
            default: 25
            type: number
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignImportResponse'
              schema:
                $ref: '#/components/schemas/LongCodeImportCampaignsResponse'
          description: OK
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignImport400Error'
              schema:
                $ref: '#/components/schemas/LongCodeImportCampaignsErrorResponse'
          description: Bad Request
        '403':
          $ref: '#/components/responses/CampaignImports403Response'
      summary: Retrieve Imported Campaigns
      tags:
        - 10DLC
    post:
      description: >-
        The POST method is used to import a previously shared Campaign into the
        account.
      operationId: ImportCampaign
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                $ref: '#/components/examples/CampaignImportRequest'
            schema:
              $ref: '#/components/schemas/ImportedCampaignRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CreateCampaignImportResponse'
              schema:
                $ref: '#/components/schemas/LongCodeImportCampaignResponse'
          description: Created
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignImport400CampaignTooLongError'
              schema:
                $ref: '#/components/schemas/LongCodeImportCampaignErrorResponse'
          description: Bad Request
        '403':
          $ref: '#/components/responses/CampaignImport403Response'
        '404':
          description: Not Found
        '409':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignImport409Error'
              schema:
                $ref: '#/components/schemas/LongCodeImportCampaignsErrorResponse'
          description: Conflict
        '503':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignImport503Error'
              schema:
                $ref: '#/components/schemas/LongCodeImportCampaignsErrorResponse'
          description: Service Unavailable
      summary: Import Campaign
      tags:
        - 10DLC
  /accounts/{accountId}/campaignManagement/10dlc/campaigns/imports/{campaignId}:
    get:
      description: >-
        The GET method returns a сampaign that have been imported into the
        account.
      operationId: GetImportedCampaign
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/CampaignIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignImportResponse'
              schema:
                $ref: '#/components/schemas/LongCodeImportCampaignResponse'
          description: OK
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignImport400Error'
              schema:
                $ref: '#/components/schemas/LongCodeImportCampaignErrorResponse'
          description: Bad request
        '403':
          $ref: '#/components/responses/CampaignImport403Response'
      summary: Retrieve Imported Campaign
      tags:
        - 10DLC
  /accounts/{accountId}/campaignManagement/10dlc/campaigns/{campaignId}:
    delete:
      description: >-
        The DELETE method is used to deactivate a Campaign with the specified
        ID.
      operationId: deleteCampaign
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/CampaignIdPathParam'
      responses:
        '204':
          description: No Content
        '403':
          $ref: '#/components/responses/Campaign403Response'
        '404':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignNotFound404Error'
                  description: example
              schema:
                $ref: '#/components/schemas/CampaignErrorResponse'
          description: Not Found
      summary: Delete Campaign
      tags:
        - 10DLC
    get:
      description: The GET method is used to fetch a Campaign with the specified ID.
      operationId: fetchCampaign
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/CampaignIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignResponse'
                  description: example
          description: OK
        '403':
          $ref: '#/components/responses/Campaign403Response'
        '404':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignNotFound404Error'
                  description: example
              schema:
                $ref: '#/components/schemas/CampaignErrorResponse'
          description: Not Found
      summary: Fetch Campaign
      tags:
        - 10DLC
    put:
      description: The PUT method is used to modify an existing Campaign resource.
      operationId: updateCampaign
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              My Campaign:
                $ref: '#/components/examples/CampaignUpdateRequest'
                summary: My Campaign
            schema:
              $ref: '#/components/schemas/CampaignRequest'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignResponse'
                  description: example
          description: Created
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CreateCampaign400Error'
                  description: example
              schema:
                $ref: '#/components/schemas/CampaignErrorResponse'
          description: Bad Request
        '403':
          $ref: '#/components/responses/Campaign403Response'
      summary: Update Campaign
      tags:
        - 10DLC
  /accounts/{accountId}/campaignManagement/10dlc/campaigns/{campaignId}/revet:
    put:
      description: >-
        The PUT method is used to send a request to TCR for reverification of
        DCA2 declined campaign
      operationId: revetCampaign
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/CampaignIdPathParam'
      responses:
        '204':
          description: No Content
        '403':
          $ref: '#/components/responses/CampaignRevet403Response'
        '404':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignNotFound404Error'
                  description: example
              schema:
                $ref: '#/components/schemas/CampaignErrorResponse'
          description: Not Found
      summary: Revet Campaign
      tags:
        - 10DLC
  /accounts/{accountId}/campaignManagement/10dlc/campaigns/{campaignId}/tn:
    get:
      description: >-
        This method returns a list of TNs that have been registered to a
        campaign. The maximum number of TNs returned by this query is controlled
        by the size parameter. The page parameter can be used to fetch
        additional pages after the first.
      operationId: getCampaignTns
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/CampaignIdPathParam'
        - description: The page number of the results to return.
          in: query
          name: page
          required: false
          schema:
            default: 0
            type: number
        - description: The maximum number of results to return.
          in: query
          name: size
          required: false
          schema:
            default: 25
            type: number
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignTnsResponse'
              schema:
                $ref: '#/components/schemas/CampaignTnsResponse'
          description: OK
        '400':
          content:
            application/xml:
              examples:
                example:
                  $ref: '#/components/examples/CampaignTnsResponse400Error'
              schema:
                $ref: '#/components/schemas/CampaignTnsErrorResponse'
          description: Bad Request
        '403':
          $ref: '#/components/responses/CampaignTns403Response'
      summary: Fetch Campaign TNs
      tags:
        - 10DLC
  /accounts/{accountId}/csrs:
    get:
      description: >-
        Retrieves the csr orders for the given account ID.

        Please visit <a href='/docs/numbers/porting/port-ins/csrs'>Guides and
        Tutorials</a>
      operationId: ReadCsrOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The earliest date that the order was last modified.
          example: 2014-08-05T00:00:00.000Z
          in: query
          name: modifiedDateFrom
          required: false
          schema:
            type: string
        - description: >-
            The latest date that the order was last modified. If no
            modifiedDateTo is specified when a modifiedDateFrom is specified
            then 'now' will be presumed to be the modifiedDateTo.
          example: 2014-08-05T00:00:00.000Z
          in: query
          name: modifiedDateTo
          required: false
          schema:
            type: string
        - description: >-
            The CSR order id corresponding to the page that you want to start
            from. "1" is used as a convention for the first CSR order for the
            account. Defaults to 1, if not provided.
          example: ca8065d1-ec1a-43da-af40-1dcee43becb5
          in: query
          name: page
          required: false
          schema:
            type: string
        - description: The maximum number of results to retrieve
          example: 30
          in: query
          name: size
          required: false
          schema:
            default: 300
            type: integer
        - description: Displays the CSR orders with a given order status.
          example: complete
          in: query
          name: status
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <CsrResponses>
                        <TotalCount>3</TotalCount>
                        <Links>
                            <first>Link=&lt;https://api.bandwidth.com/api/accounts/1/csrs?page=1&amp;size=3&amp;shortPayload=true&gt;;rel="first";</first>
                        </Links>
                        <CsrResponse>
                            <CustomerOrderId>someValue</CustomerOrderId>
                            <LastModifiedBy>systemUser</LastModifiedBy>
                            <OrderCreateDate>2019-10-25T09:51:17Z</OrderCreateDate>
                            <AccountId>1</AccountId>
                            <OrderId>a2f55ebe-782a-4242-983b-6ae6cfa97833</OrderId>
                            <LastModifiedDate>2019-10-25T12:51:22.139Z</LastModifiedDate>
                            <Status>COMPLETE</Status>
                            <AccountNumber>987654321</AccountNumber>
                            <AccountTelephoneNumber>9196194444</AccountTelephoneNumber>
                            <EndUserName>bandwidthGuy</EndUserName>
                            <AuthorizingUserName>importantAuthGuy</AuthorizingUserName>
                            <CustomerCode>123</CustomerCode>
                            <EndUserPIN>12345</EndUserPIN>
                            <AddressLine1>900 Main Campus Dr</AddressLine1>
                            <City>Raleigh</City>
                            <State>NC</State>
                            <ZIPCode>27612</ZIPCode>
                           <TypeOfService>residential</TypeOfService>
                           <CsrData>
                            <AccountNumber>123456789</AccountNumber>
                            <CustomerName>JOHN SMITH</CustomerName>
                            <ServiceAddress>
                                <UnparsedAddress>900 MAIN CAMPUS DR</UnparsedAddress>
                                <City>RALEIGH</City>
                                <State>NC</State>
                                <Zip>27616</Zip>
                            </ServiceAddress>
                            <WorkingTelephoneNumber>9196191211</WorkingTelephoneNumber>
                            <WorkingTelephoneNumbersOnAccount>
                                <TelephoneNumber>9196191211</TelephoneNumber>
                            </WorkingTelephoneNumbersOnAccount>
                        </CsrData>
                        </CsrResponse>
                        <CsrResponse>
                            <!-- SNIP -->
                        </CsrResponse>
                        <CsrResponse>
                            <!-- SNIP -->
                        </CsrResponse>
                        <!-- SNIP -->
                    </CsrResponses>
              schema:
                $ref: '#/components/schemas/CsrResponses'
          description: The response will include all CSR related data.
      summary: List CSR orders
      tags:
        - Porting
    post:
      description: Creates the csr order
      operationId: CreateCsrOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<Csr>\n\t<WorkingOrBillingTelephoneNumber>9196191211</WorkingOrBillingTelephoneNumber>\n\t<AccountNumber>987654321</AccountNumber>\n\t<AccountTelephoneNumber>9196194444</AccountTelephoneNumber>\n\t<EndUserName>bandwidthGuy</EndUserName>\n\t<AuthorizingUserName>authorizingUserName</AuthorizingUserName>\n\t<CustomerCode>123</CustomerCode>\n\t<EndUserPIN>12345</EndUserPIN>\n\t<EndUserPassword>password</EndUserPassword>\n\t<AddressLine1>900 Main Campus Dr</AddressLine1>\n\t<City>Raleigh</City>\n\t<State>NC</State>\n\t<ZIPCode>27612</ZIPCode>\n\t<TypeOfService>residential</TypeOfService>\n\t<Status>residential</Status>\n</Csr>"
            schema:
              $ref: '#/components/schemas/Csr'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<CsrResponse>\n\t<OrderId>93118edd-9874-41b6-89a3-d8c783fe83cf</OrderId>\n\t<Status>RECEIVED</Status>\n</CsrResponse>"
              schema:
                properties:
                  OrderId:
                    type: string
                  Status:
                    type: string
                title: CsrResponse
                type: object
          description: The order has been created.
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <CsrOrderResponse>
                        <Errors>
                            <Error>
                                <Code>54321</Code>
                                <Description>Some error description</Description>
                            </Error>
                        </Errors>
                    </CsrOrderResponse>
              schema:
                $ref: '#/components/schemas/CsrErrorResponse'
          description: >-
            Bad Response - there were errors in evaluating the body of the
            request
      summary: Create CSR order
      tags:
        - Porting
  /accounts/{accountId}/csrs/{orderId}:
    get:
      description: Retrieves the csr order for the given account ID by order id</a>
      operationId: ReadCsrOrder
      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"?>
                    <CsrResponse>
                            <CustomerOrderId>someValue</CustomerOrderId>
                            <LastModifiedBy>systemUser</LastModifiedBy>
                            <OrderCreateDate>2019-10-25T09:51:17Z</OrderCreateDate>
                            <AccountId>1</AccountId>
                            <OrderId>a2f55ebe-782a-4242-983b-6ae6cfa97833</OrderId>
                            <LastModifiedDate>2019-10-25T12:51:22.139Z</LastModifiedDate>
                            <Status>COMPLETE</Status>
                            <AccountNumber>987654321</AccountNumber>
                            <AccountTelephoneNumber>9196194444</AccountTelephoneNumber>
                            <EndUserName>bandwidthGuy</EndUserName>
                            <AuthorizingUserName>importantAuthGuy</AuthorizingUserName>
                            <CustomerCode>123</CustomerCode>
                            <EndUserPIN>12345</EndUserPIN>
                            <AddressLine1>900 Main Campus Dr</AddressLine1>
                            <City>Raleigh</City>
                            <State>NC</State>
                            <ZIPCode>27612</ZIPCode>
                           <TypeOfService>residential</TypeOfService>
                           <CsrData>
                            <AccountNumber>123456789</AccountNumber>
                            <CustomerName>JOHN SMITH</CustomerName>
                            <ServiceAddress>
                                <UnparsedAddress>900 MAIN CAMPUS DR</UnparsedAddress>
                                <City>RALEIGH</City>
                                <State>NC</State>
                                <Zip>27616</Zip>
                            </ServiceAddress>
                            <WorkingTelephoneNumber>9196191211</WorkingTelephoneNumber>
                            <WorkingTelephoneNumbersOnAccount>
                                <TelephoneNumber>9196191211</TelephoneNumber>
                            </WorkingTelephoneNumbersOnAccount>
                        </CsrData>
                        </CsrResponse>
              schema:
                $ref: '#/components/schemas/CsrGetResponse'
          description: The response will include all CSR related data.
      summary: Get CSR order
      tags:
        - Porting
    put:
      description: Update csr order
      operationId: UpdateCsrOrder
      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\"?>\n<Csr>\n\t<WorkingOrBillingTelephoneNumber>9196191211</WorkingOrBillingTelephoneNumber>\n\t<WorkingTelephoneNumber>9196191211</WorkingTelephoneNumber>\n\t<BillingTelephoneNumber>9196191211</BillingTelephoneNumber>\n\t<CustomerName>name</CustomerName>\n\t<AuthorizingPersonName>name</AuthorizingPersonName>\n\t<AccountNumber>987654321</AccountNumber>\n\t<WorkingTelephoneNumbersOnAccount>\n\t\t<TelephoneNumber>9196191211</TelephoneNumber>\n\t</WorkingTelephoneNumbersOnAccount>\n\t<CsrServiceAddress>\n\t\t<HouseNumber>123</HouseNumber>\n\t\t<StreetName>Maple Ave</StreetName>\n\t\t<City>Hometown</City>\n\t\t<StateCode>MO</StateCode>\n\t\t<Zip>54923</Zip>\n\t\t<Country>United States</Country>\n\t\t<AddressType>Service</AddressType>\n\t</CsrServiceAddress>\n\t<AccountTelephoneNumber>9196194444</AccountTelephoneNumber>\n\t<EndUserName>bandwidthGuy</EndUserName>\n\t<AuthorizingUserName>authorizingUserName</AuthorizingUserName>\n\t<CustomerCode>123</CustomerCode>\n\t<EndUserPIN>12345</EndUserPIN>\n\t<EndUserPassword>password</EndUserPassword>\n\t<AddressLine1>900 Main Campus Dr</AddressLine1>\n\t<City>Raleigh</City>\n\t<State>NC</State>\n\t<ZIPCode>27612</ZIPCode>\n\t<TypeOfService>residential</TypeOfService>\n\t<Status>residential</Status>\n</Csr>"
            schema:
              $ref: '#/components/schemas/Csr'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <CsrResponse>
                            <CustomerOrderId>someValue</CustomerOrderId>
                            <LastModifiedBy>systemUser</LastModifiedBy>
                            <OrderCreateDate>2019-10-25T09:51:17Z</OrderCreateDate>
                            <AccountId>1</AccountId>
                            <OrderId>a2f55ebe-782a-4242-983b-6ae6cfa97833</OrderId>
                            <LastModifiedDate>2019-10-25T12:51:22.139Z</LastModifiedDate>
                            <Status>COMPLETE</Status>
                            <AccountNumber>987654321</AccountNumber>
                            <AccountTelephoneNumber>9196194444</AccountTelephoneNumber>
                            <EndUserName>bandwidthGuy</EndUserName>
                            <AuthorizingUserName>importantAuthGuy</AuthorizingUserName>
                            <CustomerCode>123</CustomerCode>
                            <EndUserPIN>12345</EndUserPIN>
                            <AddressLine1>900 Main Campus Dr</AddressLine1>
                            <City>Raleigh</City>
                            <State>NC</State>
                            <ZIPCode>27612</ZIPCode>
                           <TypeOfService>residential</TypeOfService>
                           <CsrData>
                            <AccountNumber>123456789</AccountNumber>
                            <CustomerName>JOHN SMITH</CustomerName>
                            <ServiceAddress>
                                <UnparsedAddress>900 MAIN CAMPUS DR</UnparsedAddress>
                                <City>RALEIGH</City>
                                <State>NC</State>
                                <Zip>27616</Zip>
                            </ServiceAddress>
                            <WorkingTelephoneNumber>9196191211</WorkingTelephoneNumber>
                            <WorkingTelephoneNumbersOnAccount>
                                <TelephoneNumber>9196191211</TelephoneNumber>
                            </WorkingTelephoneNumbersOnAccount>
                        </CsrData>
                        </CsrResponse>
              schema:
                $ref: '#/components/schemas/CsrGetResponse'
          description: The order has been updated.
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <CsrOrderResponse>
                        <Errors>
                            <Error>
                                <Code>54321</Code>
                                <Description>Some error description</Description>
                            </Error>
                        </Errors>
                    </CsrOrderResponse>
              schema:
                $ref: '#/components/schemas/CsrErrorResponse'
          description: >-
            Bad Response - there were errors in evaluating the body of the
            request
      summary: Update CSR order
      tags:
        - Porting
  /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}/discnumbers:
    get:
      description: >-
        Retrieves a list of disconnected numbers associated with the account.
        There are optional search parameters to limit the discNumbers payload
      operationId: GetDisconnectedTns
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            The first disconnected number on the desired page. `1` is used as a
            convention for the first disconnected number in the collection.
          in: query
          name: page
          required: true
          schema:
            default: '1'
            type: string
        - description: The number of records that should be returned by the query
          example: 30
          in: query
          name: size
          required: true
          schema:
            default: 300
            maximum: 5000
            minimum: 1
            type: integer
        - description: >-
            The starting date of a search in yy-mm-dd format. startdate and
            enddate <strong>must</strong> be used as a pair.
          example: 22-10-31
          in: query
          name: startdate
          required: false
          schema:
            type: string
        - description: >-
            The ending date of a search in yy-mm-dd format. startdate and
            enddate <strong>must</strong> be used as a pair.
          example: 22-11-31
          in: query
          name: enddate
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TNs>
                      <TotalCount>4</TotalCount>
                      <TelephoneNumbers>
                        <Count>2</Count>
                        <TelephoneNumber>4158714245</TelephoneNumber>
                        <TelephoneNumber>4352154439</TelephoneNumber>
                      </TelephoneNumbers>
                    </TNs>
              schema:
                $ref: '#/components/schemas/TNs'
          description: The disconnected numbers have been retrieved successfully.
      summary: Retrieve disconnected tns
      tags:
        - Disconnected Numbers
  /accounts/{accountId}/discnumbers/totals:
    get:
      description: Retrieves a total number of disconnects.
      operationId: GetTotalNumberDisconnects
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            The starting date of a search in yy-mm-dd format. startdate and
            enddate <strong>must</strong> be used as a pair.
          example: 22-10-31
          in: query
          name: startdate
          required: false
          schema:
            type: string
        - description: >-
            The end date of a search in yy-mm-dd format. startdate and enddate
            <strong>must</strong> be used as a pair.
          example: 22-11-31
          in: query
          name: enddate
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <Quantity>
                      <Count>4</Count>
                    </Quantity>
              schema:
                $ref: '#/components/schemas/Quantity'
          description: OK
      summary: Retrieve total number of disconnects
      tags:
        - Disconnected Numbers
  /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'
        - description: >-
            The disconnect order-id of the first record on the page.   "1" is
            used as a convention for the first disconnect order in the
            collection
          example: 59e69657-44d2-4e7e-90f8-777988be4aef
          in: query
          name: page
          required: false
          schema:
            default: '1'
            type: string
        - description: The number of records that should be returned by the query
          example: 30
          in: query
          name: size
          required: false
          schema:
            default: 300
            maximum: 5000
            minimum: 1
            type: integer
        - 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
        - description: >-
            Retrieves all phone numbers disconnected after this date. The start
            date also requires the end date to be specified.
          example: 22-10-31
          in: query
          name: startdate
          required: false
          schema:
            type: string
        - description: >-
            Retrieves all phone numbers disconnected before this date. The end
            date also requires the start date to be specified.
          example: 22-11-31
          in: query
          name: enddate
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            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
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <Links>
                        <first>   Link description  </first>
                    </Links>
          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. Please
        visit <a href='/docs/numbers/guides/disconnectNumbers'>Guides and
        Tutorials</a>
      operationId: CreateDisconnectOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <DisconnectTelephoneNumberOrder>
                      <CustomerOrderId>My OrderId</CustomerOrderId>
                      <DisconnectTelephoneNumberOrderType>
                          <TelephoneNumberList>
                              <TelephoneNumber>4158714245</TelephoneNumber>
                              <TelephoneNumber>4352154439</TelephoneNumber>
                              <TelephoneNumber>4352154466</TelephoneNumber>
                          </TelephoneNumberList>
                          <Protected>UNCHANGED</Protected>
                      </DisconnectTelephoneNumberOrderType>
                  </DisconnectTelephoneNumberOrder>
            schema:
              $ref: '#/components/schemas/DisconnectTelephoneNumberOrder'
      responses:
        '201':
          content:
            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>4158714245</TelephoneNumber>
                                    <TelephoneNumber>4352154439</TelephoneNumber>
                                    <TelephoneNumber>4352154466</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/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>4158714245</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/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <DisconnectTelephoneNumberOrderResponse>
                      <DisconnectedTelephoneNumberList>
                        <TelephoneNumber>9194392566</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>9194392566</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}/dldas:
    get:
      description: >-
        Retrieve a list of the DLDA 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.
      operationId: ReadDldaOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: A Telephone Number (TN) that is referenced in the order
          example: '9199918388'
          in: query
          name: tn
          required: true
          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: >-
            For Date-based searches, the starting date of a date range
            (inclusive) that will be used to find DLDA 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 DLDA 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"?>
                    <ResponseSelectWrapper>
                       <ListOrderIdUserIdDate>
                          <TotalCount>3</TotalCount>
                          <OrderIdUserIdDate>
                             <accountId>14</accountId>
                             <CountOfTNs>2</CountOfTNs>
                             <userId>team_ua</userId>
                             <lastModifiedDate>2014-07-07T10:06:43.427Z</lastModifiedDate>
                             <OrderType>dlda</OrderType>
                             <OrderDate>2014-07-07T10:06:43.427Z</OrderDate>
                             <orderId>37a6447c-1a0b-4be9-ba89-3f5cb0aea142</orderId>
                             <OrderStatus>FAILED</OrderStatus>
                          </OrderIdUserIdDate>
                          <OrderIdUserIdDate>
                             <accountId>14</accountId>
                             <CountOfTNs>2</CountOfTNs>
                             <userId>team_ua</userId>
                             <lastModifiedDate>2014-07-07T10:05:56.595Z</lastModifiedDate>
                             <OrderType>dlda</OrderType>
                             <OrderDate>2014-07-07T10:05:56.595Z</OrderDate>
                             <orderId>743b0e64-3350-42e4-baa6-406dac7f4a85</orderId>
                             <OrderStatus>RECEIVED</OrderStatus>
                          </OrderIdUserIdDate>
                          <OrderIdUserIdDate>
                             <accountId>14</accountId>
                             <CountOfTNs>2</CountOfTNs>
                             <userId>team_ua</userId>
                             <lastModifiedDate>2014-07-07T09:32:17.234Z</lastModifiedDate>
                             <OrderType>dlda</OrderType>
                             <OrderDate>2014-07-07T09:32:17.234Z</OrderDate>
                             <orderId>f71eb4d2-bfef-4384-957f-45cd6321185e</orderId>
                             <OrderStatus>RECEIVED</OrderStatus>
                          </OrderIdUserIdDate>
                       </ListOrderIdUserIdDate>
                    </ResponseSelectWrapper>
              schema:
                $ref: '#/components/schemas/ResponseSelectWrapper'
          description: OK
        '404':
          description: Not Found
      summary: List DLDA orders
      tags:
        - DLDA
    post:
      description: >-
        Create DLDA order to associate the street address with the telephone
        number.<br><b>Business Listings</b> <br>Business Listings sort
        differently than Residential Listings, and must be submitted
        accordingly.  Since Business Listings sort starting at the beginning of
        the name, where Residential Listings sort on Last Name, the parts of the
        business name that will govern the sorting need to be entered in the
        LastName field.  For example, Joe's Pizza sorts starting with Joe, so
        the entire business name would be entered in the LastName field, and the
        FirstName could be left blank.  If there was a portion of the name that
        was not important from a sorting perspective (perhaps "the best pizza in
        town"), that portion could be placed in the FirstName field.
      operationId: CreateDldaOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <DldaOrder>
                      <CustomerOrderId>[String]</CustomerOrderId>
                      <DldaTnGroups>
                          <DldaTnGroup>
                              <TelephoneNumbers>
                                  <TelephoneNumber>5202217754</TelephoneNumber>
                              </TelephoneNumbers>
                              <SubscriberType>RESIDENTIAL</SubscriberType>
                              <ListingType>LISTED</ListingType>
                              <ListingName>
                                  <FirstName>John</FirstName>
                                  <FirstName2/>
                                  <LastName>Smith</LastName>
                                  <Designation/>
                                  <TitleOfLineage/>
                                  <TitleOfAddress/>
                                  <TitleOfAddress2/>
                                  <TitleOfLineageName2/>
                                  <TitleOfAddressName2/>
                                  <TitleOfAddress2Name2/>
                                  <PlaceListingAs/>
                              </ListingName>
                              <ListAddress>true</ListAddress>
                              <Address>
                                  <HousePrefix/>
                                  <HouseNumber>915</HouseNumber>
                                  <HouseSuffix/>
                                  <PreDirectional/>
                                  <StreetName>Elm</StreetName>
                                  <StreetSuffix>Ave</StreetSuffix>
                                  <PostDirectional/>
                                  <AddressLine2/>
                                  <City>Carpinteria</City>
                                  <StateCode>CA</StateCode>
                                  <Zip>93013</Zip>
                                  <PlusFour/>
                                  <County/>
                                  <AddressType>DLDA</AddressType>
                              </Address>
                          </DldaTnGroup>
                      </DldaTnGroups>
                  </DldaOrder>
            schema:
              $ref: '#/components/schemas/DldaOrder'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <DldaOrderResponse>
                       <DldaOrder>
                          <CustomerOrderId>[String]</CustomerOrderId>
                          <OrderCreateDate>2014-07-16T07:59:08.065Z</OrderCreateDate>
                          <AccountId>14</AccountId>
                          <CreatedByUser>team_ua</CreatedByUser>
                          <OrderId>f2ac3343-5bff-424a-b8ca-975f5e7b159e</OrderId>
                          <LastModifiedDate>2014-07-16T07:59:08.065Z</LastModifiedDate>
                          <ErrorList/>
                          <ProcessingStatus>RECEIVED</ProcessingStatus>
                          <DldaTnGroups>
                             <DldaTnGroup>
                                <TelephoneNumbers>
                                   <TelephoneNumber>5202217754</TelephoneNumber>
                                </TelephoneNumbers>
                                <AccountType>RESIDENCE</AccountType>
                                <ListingType>LISTED</ListingType>
                                <ListingName>
                                   <FirstName>John</FirstName>
                                   <FirstName2/>
                                   <LastName>Smith</LastName>
                                   <Designation/>
                                   <TitleOfLineage/>
                                   <TitleOfAddress/>
                                   <TitleOfAddress2/>
                                   <TitleOfLineageName2/>
                                   <TitleOfAddressName2/>
                                   <TitleOfAddress2Name2/>
                                   <PlaceListingAs/>
                                </ListingName>
                                <ListAddress>true</ListAddress>
                                <Address>
                                   <HousePrefix/>
                                   <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>
                                   <AddressType>Dlda</AddressType>
                                </Address>
                             </DldaTnGroup>
                          </DldaTnGroups>
                       </DldaOrder>
                    </DldaOrderResponse>
              schema:
                $ref: '#/components/schemas/DldaOrderResponse'
          description: Created
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <DldaOrderResponse>
                       <ResponseStatus>
                          <ErrorCode>16104</ErrorCode>
                          <Description>No numbers for processing</Description>
                       </ResponseStatus>
                       <DldaOrder>
                          <CustomerOrderId>REST Site</CustomerOrderId>
                          <OrderCreateDate>2014-07-17T10:06:55.204Z</OrderCreateDate>
                          <AccountId>14</AccountId>
                          <CreatedByUser>team_ua</CreatedByUser>
                          <LastModifiedDate>2014-07-17T10:06:55.204Z</LastModifiedDate>
                          <ErrorList>
                             <Error>
                                <Code>5070</Code>
                                <Description>Telephone number is invalid.</Description>
                                <TelephoneNumber/>
                             </Error>
                          </ErrorList>
                          <ProcessingStatus>FAILED</ProcessingStatus>
                          <DldaTnGroups>
                             <DldaTnGroup>
                                <TelephoneNumbers>
                                   <TelephoneNumber/>
                                </TelephoneNumbers>
                                <AccountType>RESIDENCE</AccountType>
                                <ListingType>LISTED</ListingType>
                                <ListingName>
                                   <FirstName>John</FirstName>
                                   <FirstName2/>
                                   <LastName>Smith</LastName>
                                   <Designation/>
                                   <TitleOfLineage/>
                                   <TitleOfAddress/>
                                   <TitleOfAddress2/>
                                   <TitleOfLineageName2/>
                                   <TitleOfAddressName2/>
                                   <TitleOfAddress2Name2/>
                                   <PlaceListingAs/>
                                </ListingName>
                                <ListAddress>true</ListAddress>
                                <Address>
                                   <HousePrefix/>
                                   <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>
                                   <AddressType>DLDA</AddressType>
                                </Address>
                             </DldaTnGroup>
                          </DldaTnGroups>
                       </DldaOrder>
                    </DldaOrderResponse>
              schema:
                $ref: '#/components/schemas/DldaOrderErrorResponse'
          description: Bad Request
      summary: Create DLDA order
      tags:
        - DLDA
  /accounts/{accountId}/dldas/{orderId}:
    get:
      description: Retrieve information about a DLDA Order with specified ID.
      operationId: ReadDldaOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: DLDA order id
          example: ea9e90c2-77a4-4f82-ac47-e1c5bb1311f4
          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"?>
                    <DldaOrderResponse>
                       <DldaOrder>
                          <CustomerOrderId>5a88d16d-f8a9-45c5-a5db-137d700c6a22</CustomerOrderId>
                          <OrderCreateDate>2014-07-10T12:38:11.833Z</OrderCreateDate>
                          <AccountId>14</AccountId>
                          <CreatedByUser>jbm</CreatedByUser>
                          <OrderId>ea9e90c2-77a4-4f82-ac47-e1c5bb1311f4</OrderId>
                          <LastModifiedDate>2014-07-10T12:38:11.833Z</LastModifiedDate>
                          <ErrorList>
                             <Error>
                                <Code>16103</Code>
                                <Description>DL/DA information cannot be changed because the number is already being processed</Description>
                                <TelephoneNumber>2053778335</TelephoneNumber>
                             </Error>
                          </ErrorList>
                          <ProcessingStatus>RECEIVED</ProcessingStatus>
                          <DldaTnGroups>
                             <DldaTnGroup>
                                <TelephoneNumbers>
                                   <TelephoneNumber>2053778335</TelephoneNumber>
                                   <TelephoneNumber>2053865784</TelephoneNumber>
                                </TelephoneNumbers>
                                <SubscriberType>BUSINESS</SubscriberType>
                                <ListingType>LISTED</ListingType>
                                <ListingName>
                                   <FirstName>Joe</FirstName>
                                   <LastName>Smith</LastName>
                                </ListingName>
                                <ListAddress>true</ListAddress>
                                <Address>
                                   <HouseNumber>12</HouseNumber>
                                   <StreetName>ELM</StreetName>
                                   <City>New York</City>
                                   <StateCode>NY</StateCode>
                                   <Zip>10007</Zip>
                                   <Country>United States</Country>
                                   <AddressType>Dlda</AddressType>
                                </Address>
                             </DldaTnGroup>
                          </DldaTnGroups>
                       </DldaOrder>
                    </DldaOrderResponse>
              schema:
                $ref: '#/components/schemas/DldaOrderResponse'
          description: OK
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <DldaOrderResponse>
                       <ResponseStatus>
                          <Description>The resource does not exist</Description>
                       </ResponseStatus>
                    </DldaOrderResponse>
              schema:
                $ref: '#/components/schemas/DldaOrderErrorNotFoundResponse'
          description: NOT FOUND
      summary: Get DLDA Order
      tags:
        - DLDA
    put:
      description: >-
        Update DLDA order to associate the street address with the telephone
        number.
      operationId: UpdateDldaOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: DLDA order id
          example: f179237b-c1cb-449d-9590-aaa9d0bf3ca4
          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"?>
                  <DldaOrder>
                      <CustomerOrderId>[String]</CustomerOrderId>
                      <DldaTnGroups>
                          <DldaTnGroup>
                              <TelephoneNumbers>
                                  <TelephoneNumber>5202217754</TelephoneNumber>
                              </TelephoneNumbers>
                              <SubscriberType>RESIDENCE</SubscriberType>
                              <ListingType>LISTED</ListingType>
                              <ListingName>
                                  <FirstName>John</FirstName>
                                  <FirstName2/>
                                  <LastName>Smith</LastName>
                                  <Designation/>
                                  <TitleOfLineage/>
                                  <TitleOfAddress/>
                                  <TitleOfAddress2/>
                                  <TitleOfLineageName2/>
                                  <TitleOfAddressName2/>
                                  <TitleOfAddress2Name2/>
                                  <PlaceListingAs/>
                              </ListingName>
                              <ListAddress>true</ListAddress>
                              <Address>
                                  <HousePrefix/>
                                  <HouseNumber>915</HouseNumber>
                                  <HouseSuffix/>
                                  <PreDirectional/>
                                  <StreetName>Elm</StreetName>
                                  <StreetSuffix>Ave</StreetSuffix>
                                  <PostDirectional/>
                                  <AddressLine2/>
                                  <City>Carpinteria</City>
                                  <StateCode>CA</StateCode>
                                  <Zip>93013</Zip>
                                  <PlusFour/>
                                  <County/>
                                  <AddressType>DLDA</AddressType>
                              </Address>
                          </DldaTnGroup>
                      </DldaTnGroups>
                  </DldaOrder>
            schema:
              $ref: '#/components/schemas/DldaOrder'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <DldaOrderResponse>
                       <DldaOrder>
                          <CustomerOrderId>[String]</CustomerOrderId>
                          <OrderCreateDate>2014-07-10T12:38:11.833Z</OrderCreateDate>
                          <AccountId>14</AccountId>
                          <CreatedByUser>team_ua</CreatedByUser>
                          <OrderId>f179237b-c1cb-449d-9590-aaa9d0bf3ca4</OrderId>
                          <LastModifiedDate>2014-07-17T12:21:02.644Z</LastModifiedDate>
                          <ErrorList/>
                          <ProcessingStatus>RECEIVED</ProcessingStatus>
                          <DldaTnGroups>
                             <DldaTnGroup>
                                <TelephoneNumbers>
                                   <TelephoneNumber>2199347436</TelephoneNumber>
                                </TelephoneNumbers>
                                <SubscriberType>RESIDENCE</SubscriberType>
                                <ListingType>NON_LISTED</ListingType>
                                <ListingName>
                                   <FirstName>John</FirstName>
                                   <FirstName2/>
                                   <LastName>Smith</LastName>
                                   <Designation/>
                                   <TitleOfLineage/>
                                   <TitleOfAddress/>
                                   <TitleOfAddress2/>
                                   <TitleOfLineageName2/>
                                   <TitleOfAddressName2/>
                                   <TitleOfAddress2Name2/>
                                   <PlaceListingAs/>
                                </ListingName>
                                <ListAddress>true</ListAddress>
                                <Address>
                                   <HousePrefix/>
                                   <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>
                                   <AddressType>Dlda</AddressType>
                                </Address>
                             </DldaTnGroup>
                          </DldaTnGroups>
                       </DldaOrder>
                    </DldaOrderResponse>
              schema:
                $ref: '#/components/schemas/DldaOrderResponse'
          description: OK
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <DldaOrderResponse>
                       <ResponseStatus>
                          <ErrorCode>16105</ErrorCode>
                          <Description>Order cannot be changed or cancelled because it is already being processed</Description>
                       </ResponseStatus>
                    </DldaOrderResponse>
              schema:
                $ref: '#/components/schemas/DldaOrderErrorResponse'
          description: Bad Request
      summary: Update DLDA Order
      tags:
        - DLDA
  /accounts/{accountId}/dldas/{orderId}/history:
    get:
      description: >-
        Retrieve the history information associated with a named DLDA order. 
        This indicates the various states that the order has passed through, as
        well as the current state of the order as the last entry.
      operationId: ReadDldaOrderHistory
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: DLDA order id
          example: f179237b-c1cb-449d-9590-aaa9d0bf3ca4
          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>2014-09-04T16:28:11.320Z</OrderDate>
                          <Note>The DL/DA request has been received</Note>
                          <Author>jbm</Author>
                          <Status>RECEIVED</Status>
                       </OrderHistory>
                       <OrderHistory>
                          <OrderDate>2014-09-04T16:28:18.742Z</OrderDate>
                          <Note>The DL/DA request is being processed by our 3rd party supplier</Note>
                          <Author>jbm</Author>
                          <Status>PROCESSING</Status>
                       </OrderHistory>
                       <OrderHistory>
                          <OrderDate>2014-09-05T19:00:17.968Z</OrderDate>
                          <Note>The DL/DA request is complete for all TNs</Note>
                          <Author>jbm</Author>
                          <Status>COMPLETE</Status>
                       </OrderHistory>
                    </OrderHistoryWrapper>
              schema:
                $ref: '#/components/schemas/OrderHistoryWrapper'
          description: OK
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <DldaOrderReportResponse>
                       <ResponseStatus>
                          <Description>The resource does not exist</Description>
                       </ResponseStatus>
                    </DldaOrderReportResponse>
              schema:
                $ref: '#/components/schemas/DldaOrderReportErrorResponse'
          description: NOT FOUND
      summary: Fetch DLDA order history
      tags:
        - DLDA
  /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: '9199918388'
          in: query
          name: tn
          required: true
          schema:
            type: string
        - description: A callback Telephone Number (TN) used for 911 purposes.
          example: '9199918388'
          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>9142971000</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>9142971000</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>9706542332</TelephoneNumber>
                      <TelephoneNumber>9706542333</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>9706542332</TelephoneNumber>
                      <TelephoneNumber>9706542333</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>9706542333</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>9706542333</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>9706542333</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>9706542333</CallbackNumber>
                        <Identifier>blep123</Identifier>
                        <PIDFLOEnabled>true</PIDFLOEnabled>
                        <PreferredLanguage>en</PreferredLanguage>
                      </AlternateEndUserIdentifier>
                      <AlternateEndUserIdentifier>
                        <CallbackNumber>9706542334</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>9706542333</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>9706542332</TelephoneNumber>
                             <TelephoneNumber>9706542333</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>3172000218</TelephoneNumber>
                          <TelephoneNumber>3172000000</TelephoneNumber>
                       </TelephoneNumbers>
                       <ErrorList>
                          <Error>
                             <Code>8003</Code>
                             <Description>Telephone numbers does not belong to this account.</Description>
                             <TelephoneNumbers>
                                <TelephoneNumber>3172000000</TelephoneNumber>
                             </TelephoneNumbers>
                          </Error>
                          <Error>
                             <Code>8009</Code>
                             <Description>Telephone numbers not in 'Inservice'</Description>
                             <TelephoneNumbers>
                                <TelephoneNumber>3172000000</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>9706542332</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>9706542333</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>2248838829</TelephoneNumber>\n\t\t\t\t\t\t\t<TelephoneNumber>4052397735</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>2248838829</TelephoneNumber>
                              <TelephoneNumber>4052397735</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>2248838829</TelephoneNumber>\n\t\t\t\t\t<TelephoneNumber>4052397735</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>2248838829</TelephoneNumber>
                                      <TelephoneNumber>4052397735</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>9152877649</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>2248838829</TelephoneNumber>\n\t\t\t\t\t\t<TelephoneNumber>4052397735</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: '9195551212'
          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}/externalTns:
    get:
      description: >-
        <p>Retrieve a list of the externalTns orders that are associated with
        the account.</p><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: ListExternalTnsOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The status of the TN Option order being searched for.
          example: PARTIAL
          in: query
          name: status
          required: false
          schema:
            items:
              type: string
            type: array
        - description: A Telephone Number (TN) that is referenced in the order.
          example: '9199918388'
          in: query
          name: tn
          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 TN Option order.
          example: ABCCorp12345
          in: query
          name: customerOrderId
          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: '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 TN Option 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: >-
            Whether or not the results should be restricted to IMPORT or REMOVE
            orders.
          example: REMOVE
          in: query
          name: action
          required: false
          schema:
            type: string
        - description: >-
            Whether or not the results should be restricted to CARRIER or
            SUBSCRIBER orders.
          example: SUBSCRIBER
          in: query
          name: loaType
          required: false
          schema:
            default: ALL
            type: string
        - description: >-
            For Date-based searches, the starting date of a date range
            (inclusive) that will be used to find External 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
          required: false
          schema:
            type: string
        - description: >-
            For Date-based searches, the ending date of a date range (inclusive)
            that will be used to find External 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
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ExternalTnsOrders>
                      <TotalCount>2</TotalCount>
                      <ExternalTnsOrder>
                        <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>
                        <TelephoneNumbers>
                          <TelephoneNumber>2106078250</TelephoneNumber>
                          <TelephoneNumber>2109678273</TelephoneNumber>
                          <TelephoneNumber>2109678331</TelephoneNumber>
                          <TelephoneNumber>2109678337</TelephoneNumber>
                          <TelephoneNumber>2266401468</TelephoneNumber>
                        </TelephoneNumbers>
                        <Action>IMPORT</Action>
                        <LoaType>SUBSCRIBER</LoaType>
                        <ProcessingStatus>PARTIAL</ProcessingStatus>
                        <Errors>
                          <Error>
                            <Code>13552</Code>
                            <Description>Telephone numbers already exist.</Description>
                            <TelephoneNumbers>
                              <TelephoneNumber>2262665583</TelephoneNumber>
                            </TelephoneNumbers>
                          </Error>
                        </Errors>
                        <SipPeerId>885544</SipPeerId>
                      </ExternalTnsOrder>
                      <ExternalTnsOrder>
                        <OrderCreateDate> 2018-01-09T02:58:04.609Z</OrderCreateDate>
                        <AccountId>9900012</AccountId>
                        <CreatedByUser>sjm</CreatedByUser>
                        <OrderId>b63d342b-9400-4da9-1111-ca7a3889e5ec</OrderId>
                        <LastModifiedDate>2018-01-09T02:58:04.962Z</LastModifiedDate>
                        <SiteId>12345</SiteId>
                        <TelephoneNumbers>
                          <TelephoneNumber>3068035413</TelephoneNumber>
                          <TelephoneNumber>3068035414</TelephoneNumber>
                          <TelephoneNumber>3437003595</TelephoneNumber>
                          <TelephoneNumber>4387977665</TelephoneNumber>
                        </TelephoneNumbers>
                        <Action>IMPORT</Action>
                        <ProcessingStatus>PARTIAL</ProcessingStatus>
                        <Errors>
                          <Error>
                            <Code>13552</Code>
                            <Description>Telephone numbers already exist.</Description>
                            <TelephoneNumbers>
                              <TelephoneNumber>4387977665</TelephoneNumber>
                              <TelephoneNumber>5817036252</TelephoneNumber>
                            </TelephoneNumbers>
                          </Error>
                        </Errors>
                        <SipPeerId>666555</SipPeerId>
                      </ExternalTnsOrder>
                    </ExternalTnsOrders>
              schema:
                $ref: '#/components/schemas/ExternalTnsOrders'
          description: >-
            The descriptive payload for the externalTns Orders query provides
            information about the externalTns Orders found by the query,
            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.
        '404':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/ExternalTnsOrdersError'
          description: No externalTns orders can be found that match the query parameters.
      summary: List external tns orders
      tags:
        - External Tn
    post:
      description: >-
        <p>Create a externalTns order to add or remove telephone numbers
        provided by the customer from the Bandwidth network.</p><p>Note: the
        attempt to import a telephone number that is already present in the
        account will <em>not</em> create an error, but will reset all of the 
        attributes of that telephone number in the Dashboard system as if the
        telephone number was being imported for the first time.</p>
      operationId: CreateExternalTnsOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <ExternalTnsOrder>
                    <CustomerOrderId>ICPA123ABC</CustomerOrderId>
                    <SiteId>743</SiteId>
                    <SipPeerId>303716</SipPeerId>
                    <Action>[ IMPORT | REMOVE ]</Action>
                    <LoaType>[ CARRIER | SUBSCRIBER ]</LoaType>
                    <TelephoneNumbers>
                      <TelephoneNumber>9199918388</TelephoneNumber>
                      <TelephoneNumber>4158714245</TelephoneNumber>
                      <TelephoneNumber>4352154439</TelephoneNumber>
                      <TelephoneNumber>4352154466</TelephoneNumber>
                    </TelephoneNumbers>
                  </ExternalTnsOrder>
            schema:
              $ref: '#/components/schemas/ExternalTnsOrderRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ExternalTnsOrderResponse>
                      <ExternalTnsOrder>
                        <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>
                        <TelephoneNumbers>
                          <TelephoneNumber>9199918388</TelephoneNumber>
                          <TelephoneNumber>4158714245</TelephoneNumber>
                          <TelephoneNumber>4352154439</TelephoneNumber>
                          <TelephoneNumber>4352154466</TelephoneNumber>
                        </TelephoneNumbers>
                        <Action>IMPORT</Action>
                        <LoaType>CARRIER</LoaType>
                        <ProcessingStatus>RECEIVED</ProcessingStatus>
                        <Errors/>
                      </ExternalTnsOrder>
                    </ExternalTnsOrderResponse>
              schema:
                $ref: '#/components/schemas/ExternalTnsOrderResponse'
          description: A 201 response indicates that an order has been created.
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ExternalTnsOrderResponse>
                      <ResponseStatus>
                        <ErrorCode>5081</ErrorCode>
                        <Description>Action is absent or invalid. Possible values  IMPORT, REMOVE</Description>
                      </ResponseStatus>
                    </ExternalTnsOrderResponse>
              schema:
                $ref: '#/components/schemas/ExternalTnsOrderErrorResponse'
          description: >-
            Bad Request - Indicates that the order could not be created. Error
            text and an error code will be provided in the ErrorList element.
      summary: Create external tns order
      tags:
        - External Tn
  /accounts/{accountId}/externalTns/{orderId}:
    get:
      description: <p>Retrieve information about a externalTns order with specified ID.</p>
      operationId: GetExternalTnsOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          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"?>
                    <ExternalTnsOrder>
                      <OrderCreateDate>2016-01-15T11:36:52.727Z</OrderCreateDate>
                      <AccountId>1</AccountId>
                      <CreatedByUser>jbm</CreatedByUser>
                      <OrderId>65e03a35-6b97-48a5-8126-f47bad02df2a</OrderId>
                      <LastModifiedDate>2018-01-10T05:20:47.661Z</LastModifiedDate>
                      <ProcessingStatus>PARTIAL</ProcessingStatus>
                      <CustomerOrderId>ICPA123ABC</CustomerOrderId>
                      <SiteId>743</SiteId>
                      <SipPeerId>303716</SipPeerId>
                      <Action>[ IMPORT | REMOVE ]</Action>
                      <LoaType>[ CARRIER | SUBSCRIBER ]</LoaType>
                      <TelephoneNumbers>
                        <TelephoneNumber>9199918388</TelephoneNumber>
                        <TelephoneNumber>4158714245</TelephoneNumber>
                        <TelephoneNumber>4352154439</TelephoneNumber>
                        <TelephoneNumber>4352154466</TelephoneNumber>
                      </TelephoneNumbers>
                      <Errors>
                        <Error>
                          <Code>[int]</Code>
                          <Description>[string]</Description>
                          <TelephoneNumbers>
                            <TelephoneNumber>9199918388</TelephoneNumber>
                          </TelephoneNumbers>
                          </Error>
                        </Errors>
                    </ExternalTnsOrder>
              schema:
                $ref: '#/components/schemas/ExternalTnsOrderResponse'
          description: >-
            <p>The descriptive payload for the externalTns query provides a
            broad range of information about the externalTns order identified in
            the URL.  Included amongst the information
            is...</p><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:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ExternalTnsOrderResponse>
                      <ResponseStatus>
                     <Description>The resource does not exist</Description>
                     </ResponseStatus>
                     </ExternalTnsOrderResponse>
              schema:
                $ref: '#/components/schemas/ExternalTnsOrderErrorResponse'
          description: <p>NOT FOUND - the order id does not exist in the system</p>
      summary: Retrieve external tns order
      tags:
        - External Tn
  /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 address
      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: >-
        <p>Request portability 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.</p>
      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>3032281000</TelephoneNumber>
                      <TelephoneNumber>4109235436</TelephoneNumber>
                      <TelephoneNumber>4104685864</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>3032281000</TelephoneNumber>
                        </TelephoneNumbers>
                        <ImportTnErrors>
                          <ImportTnError>
                            <Code>19006</Code>
                            <Description>Bandwidth numbers cannot be imported by this account at this time.</Description>
                            <TelephoneNumbers>
                              <TelephoneNumber>4109235436</TelephoneNumber>
                              <TelephoneNumber>4104685864</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>61746052083 is not a valid NANPA telephone number.</Description>
                      </Errors>
                      <Errors>
                        <Code>7201</Code>
                        <Description>61746052082 is not a valid NANPA 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 hostability
      tags:
        - Hosted Messaging
  /accounts/{accountId}/importTnOrders:
    get:
      description: >
        Retrieves the importtnorders 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: ReadImportTnOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The status of the importTnOrder being searched for.
          example: PARTIAL
          in: query
          name: status
          required: false
          schema:
            items:
              type: string
            type: array
        - description: A Telephone Number (TN) that is referenced in the order
          example: '9199918388'
          in: query
          name: tn
          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 importTnOrder.
          example: ABCCorp12345
          in: query
          name: customerOrderId
          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: '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: >-
            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
          required: false
          schema:
            type: string
        - 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
          required: false
          schema:
            type: string
        - description: Indentify the LoaType on TNs.
          example: SUBSCRIBER
          in: query
          name: loaType
          required: false
          schema:
            default: ALL
            enum:
              - SUBSCRIBER
              - CARRIER
              - ALL
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ImportTnOrders>
                       <TotalCount>2</TotalCount>
                       <ImportTnOrderSummary>
                          <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>
                       </ImportTnOrderSummary>
                       <ImportTnOrderSummary>
                          <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>
                       </ImportTnOrderSummary>
                    </ImportTnOrders>
              schema:
                $ref: '#/components/schemas/ImportTnOrdersResponseList'
          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.
      summary: List Import Tn orders
      tags:
        - Hosted Messaging
    post:
      description: >-
        Creates an importTnOrders request to add numbers under the given site ID
        and sippeer ID as specified in the body.

        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: CreateImportTnOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <ImportTnOrder>
                        <CustomerOrderId>ICPA123ABC</CustomerOrderId>
                    <SiteId>743</SiteId>
                       <SipPeerId>303716</SipPeerId>
                        <Subscriber>
                              <Name>ABC Inc.</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>9199918388</TelephoneNumber>
                              <TelephoneNumber>4158714245</TelephoneNumber>
                              <TelephoneNumber>4352154439</TelephoneNumber>
                              <TelephoneNumber>4352154466</TelephoneNumber>
                        </TelephoneNumbers>
                  </ImportTnOrder>
            schema:
              $ref: '#/components/schemas/ImportTnOrderRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ImportTnOrdersResponse>
                       <ImportTnOrder>
                        <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>
                         <Subscriber>
                           <Name>ABC Inc.</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>9199918388</TelephoneNumber>
                           <TelephoneNumber>4158714245</TelephoneNumber>
                           <TelephoneNumber>4352154439</TelephoneNumber>
                           <TelephoneNumber>4352154466</TelephoneNumber>
                         </TelephoneNumbers>
                         <ProcessingStatus>PROCESSING</ProcessingStatus>
                         <Errors/>
                       </ImportTnOrder>
                     </ImportTnOrdersResponse>
              schema:
                $ref: '#/components/schemas/ImportTnOrdersResponse'
          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"?>
                    <ImportTnOrdersResponse>
                       <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>
                     </ImportTnOrdersResponse>
              schema:
                $ref: '#/components/schemas/ImportTnOrderError'
          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>
      summary: Import Tn order
      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'
        - $ref: '#/components/parameters/SipPeerIdQueryParam'
      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.

        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: CreateVoiceImportTnOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <ImportVoiceTnOrder>
                     <CustomerOrderId>ICPA123ABC</CustomerOrderId>
                     <SiteId>743</SiteId>
                     <SipPeerId>303716</SipPeerId>
                     <TelephoneNumbers>
                        <TelephoneNumber>9199918388</TelephoneNumber>
                        <TelephoneNumber>4158714245</TelephoneNumber>
                        <TelephoneNumber>4352154439</TelephoneNumber>
                        <TelephoneNumber>4352154466</TelephoneNumber>
                     </TelephoneNumbers>
                  </ImportVoiceTnOrder>
            schema:
              $ref: '#/components/schemas/ImportVoiceTnOrderRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  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>
                          <TelephoneNumbers>
                             <TelephoneNumber>9199918388</TelephoneNumber>
                             <TelephoneNumber>4158714245</TelephoneNumber>
                             <TelephoneNumber>4352154439</TelephoneNumber>
                             <TelephoneNumber>4352154466</TelephoneNumber>
                          </TelephoneNumbers>
                          <ProcessingStatus>PROCESSING</ProcessingStatus>
                          <Errors/>
                       </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>
                    </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>            
                    </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:
                  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>2106078250</TelephoneNumber>
                          <TelephoneNumber>2109678273</TelephoneNumber>
                          <TelephoneNumber>2109678331</TelephoneNumber>
                          <TelephoneNumber>2109678337</TelephoneNumber>
                          <TelephoneNumber>2266401468</TelephoneNumber>
                          </TelephoneNumbers>
                       <ProcessingStatus>PARTIAL</ProcessingStatus>
                       <Errors>
                          <Error>
                             <Code>7518</Code>
                             <Description>Telephone Number Not Active.</Description>
                             <TelephoneNumbers>
                                <TelephoneNumber>2262665583</TelephoneNumber>
                             </TelephoneNumbers>
                          </Error>
                       </Errors>
                    </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}/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}/importTnOrders/{orderId}:
    get:
      description: Retrieve information about a importTnOrder with specified ID.
      operationId: ReadImportTnOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import Tn order's ID
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
          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"?>
                    <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>2106078250</TelephoneNumber>
                         <TelephoneNumber>2109678273</TelephoneNumber>
                         <TelephoneNumber>2109678331</TelephoneNumber>
                         <TelephoneNumber>2109678337</TelephoneNumber>
                         <TelephoneNumber>2266401468</TelephoneNumber>
                       </TelephoneNumbers>
                       <ProcessingStatus>PARTIAL</ProcessingStatus>
                       <Errors>
                         <Error>
                           <Code>7518</Code>
                           <Description>Telephone Number Not Active.</Description>
                           <TelephoneNumbers>
                             <TelephoneNumber>2262665583</TelephoneNumber>
                           </TelephoneNumbers>
                         </Error>
                       </Errors>
                     </ImportTnOrder>
              schema:
                $ref: '#/components/schemas/ImportTnOrdersResponse'
          description: >-
            The information has been successfully retrieved and displayed in the
            payload.
      summary: Fetch Import Tn order status
      tags:
        - Hosted Messaging
  /accounts/{accountId}/importTnOrders/{orderId}/history:
    get:
      description: Retrieves the history of the specified importTnOrder.
      operationId: ReadImportTnOrderHistory
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import Tn order's ID
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
          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>Import 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 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 Tn order history
      tags:
        - Hosted Messaging
  /accounts/{accountId}/importTnOrders/{orderId}/loas:
    get:
      description: >-
        Retrieves the list of the loa (and other) files associated with the
        order.
      operationId: ReadImportTnOrderLoas
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import Tn order's ID
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
          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:
            type: boolean
      responses:
        '200':
          content:
            application/xml:
              examples:
                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: Fetch Import Tn order loas
      tags:
        - Hosted Messaging
    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>

        Query parameter or header documentType can be used to specify type of
        document on upload.

        <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>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>
      operationId: CreateImportTnOrderLoas
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import Tn order's ID
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
          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.
          example: LOA
          in: query
          name: documentType
          required: false
          schema:
            enum:
              - LOA
              - INVOICE
              - CSR
              - OTHER
            type: string
      requestBody:
        content:
          '*/*':
            schema:
              format: binary
              type: string
      responses:
        '201':
          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 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: A 400 indicates that the requested upload failed.
        '415':
          description: Unsupported content type provided in http header or uploaded file.
      summary: Import Tn order loas
      tags:
        - Hosted Messaging
  /accounts/{accountId}/importTnOrders/{orderId}/loas/{fileId}:
    delete:
      description: Deletes the file associated with the order
      operationId: DeleteImportTnOrderLoasFile
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import 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 Tn order loas file
      tags:
        - Hosted Messaging
    get:
      description: Retrieves the file associated with the order.
      operationId: ReadImportTnOrderLoasFile
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import 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 Tn order loas file
      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: UpdateImportTnOrderLoasFile
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import 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 Tn order loas file
      tags:
        - Hosted Messaging
  /accounts/{accountId}/importTnOrders/{orderId}/loas/{fileId}/metadata:
    delete:
      description: Deletes the metadata previously associated with the identified file.
      operationId: RemoveImportTnOrderLoasFileMetadata
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import 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 Tn order loas file metadata
      tags:
        - Hosted Messaging
    get:
      description: Retrieves the metadata associated with the file.
      operationId: ReadImportTnOrderLoasFileMetadata
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import 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 Tn order loas file metadata
      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: UpdateImportTnOrderLoasFileMetadata
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import 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 Tn order loas file metadata
      tags:
        - Hosted Messaging
  /accounts/{accountId}/importToAccount:
    get:
      description: >
        Retrieve a list of the Import to Account orders that have previously
        performed on the account.  The query must always specify pagination
        parameters (size, page).  The results can also be optionally limited
        with start date and end date .
      operationId: ReadImportToAccountOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            All Order retrievals must be paginated, using page and size
            indicators.  The page parameter contains the `<orderId>` that is to
            start the page, or "1" in the case of the first page
          example: cbdcfc94-81b1-4ce9-8b6d-f8d6b85381ba
          in: query
          name: page
          required: true
          schema:
            type: string
        - description: >-
            The size parameter indicates the number of orders to return in the
            payload
          example: 20
          in: query
          name: size
          required: true
          schema:
            type: integer
        - 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: startdate
          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: enddate
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ResponseSelectWrapper>
                       <ListOrderIdUserIdDate>
                          <TotalCount>3</TotalCount>
                          <OrderIdUserIdDate>
                             <accountId>14</accountId>
                             <CountOfTNs>2</CountOfTNs>
                             <userId>team_ua</userId>
                             <lastModifiedDate>2014-07-07T10:06:43.427Z</lastModifiedDate>
                             <OrderType>import_to_account</OrderType>
                             <OrderDate>2014-07-07T10:06:43.427Z</OrderDate>
                             <orderId>37a6447c-1a0b-4be9-ba89-3f5cb0aea142</orderId>
                             <OrderStatus>FAILED</OrderStatus>
                          </OrderIdUserIdDate>
                          <OrderIdUserIdDate>
                             <accountId>14</accountId>
                             <CountOfTNs>2</CountOfTNs>
                             <userId>team_ua</userId>
                             <lastModifiedDate>2014-07-07T10:05:56.595Z</lastModifiedDate>
                             <OrderType>import_to_account</OrderType>
                             <OrderDate>2014-07-07T10:05:56.595Z</OrderDate>
                             <orderId>743b0e64-3350-42e4-baa6-406dac7f4a85</orderId>
                             <OrderStatus>RECEIVED</OrderStatus>
                          </OrderIdUserIdDate>
                          <OrderIdUserIdDate>
                             <accountId>14</accountId>
                             <CountOfTNs>2</CountOfTNs>
                             <userId>team_ua</userId>
                             <lastModifiedDate>2014-07-07T09:32:17.234Z</lastModifiedDate>
                             <OrderType>import_to_account</OrderType>
                             <OrderDate>2014-07-07T09:32:17.234Z</OrderDate>
                             <orderId>f71eb4d2-bfef-4384-957f-45cd6321185e</orderId>
                             <OrderStatus>RECEIVED</OrderStatus>
                          </OrderIdUserIdDate>
                       </ListOrderIdUserIdDate>
                    </ResponseSelectWrapper>
              schema:
                $ref: '#/components/schemas/ResponseSelectWrapper'
          description: >
            The response provides a list of all of the orders in the date range
            that have been issued against the account.
      summary: List Import to Account orders
      tags:
        - Import Tn to Account
  /accounts/{accountId}/importToAccount/batches:
    get:
      description: >-
        The batches resource enumerates all of the batches that have been used
        for importing numbers into an account.
         If there is the need to import a large number of Telephone Numbers into an account, the import is submitted as a <b>batch</b>, which is a collection of submissions that are held together by a batch id.  This batch of orders can subsequently be retrieved by retrieving all of the orders that share a batch id.
      operationId: readImportToAccountOrdersBatches
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<Batches>\n\t<Batch>\n\t\t<BatchId>phnpwrblk4</BatchId>\n\t\t<OrderCreateDate>2014-05-02T15-27-25.090Z</OrderCreateDate>\n\t\t<OrderId>4928ab9d-6bf6-4035-ac01-38a061d0f5d9</OrderId>\n\t\t<OrderStatus>IMPORT_COMPLETE</OrderStatus>\n\t\t<SubmittedTnCount>5000</SubmittedTnCount>\n\t\t<SuccessfulTnCount>5000</SuccessfulTnCount>\n\t\t<BatchSize>5000</BatchSize>\n\t</Batch>\n\t<Batch>\n\t\t<BatchId>1111111111</BatchId>\n\t\t<OrderCreateDate>2013-10-10T15-25-16.952Z</OrderCreateDate>\n\t\t<OrderId>8ce7c80b-d1ce-46f1-a3a1-56a08373b576</OrderId>\n\t\t<OrderStatus>VALIDATION_FAILED</OrderStatus>\n\t\t<SubmittedTnCount>4670</SubmittedTnCount>\n\t\t<SuccessfulTnCount>0</SuccessfulTnCount>\n\t\t<BatchSize>4670</BatchSize>\n\t</Batch>\n\t<Batch>\n\t\t<BatchId>8177974679</BatchId>\n\t\t<OrderCreateDate>2014-04-10T16-54-04.001Z</OrderCreateDate>\n\t\t<OrderId>26afaae3-2a8b-4405-96aa-1c38fe1fb74b</OrderId>\n\t\t<OrderStatus>IMPORT_COMPLETE</OrderStatus>\n\t\t<SubmittedTnCount>2358</SubmittedTnCount>\n\t\t<SuccessfulTnCount>2358</SuccessfulTnCount>\n\t\t<BatchSize>2358</BatchSize>\n\t</Batch>\n</Batches>"
              schema:
                $ref: '#/components/schemas/Batches'
          description: >
            The response provides a list of batches that have been processed in
            importing numbers into the account.
      summary: List Import to Account orders batches
      tags:
        - Import Tn to Account
  /accounts/{accountId}/importToAccount/batches/{batchId}:
    get:
      description: >-
        A batchid identifies a specific batch of one or more orders that
        constitute a complete import of a (potentially large number of)
        Telephone Numbers.  Retrieving the information associated with a
        specific batch id describes the orders that were included in that batch,
        and the status and id of those orders.
      operationId: ReadImportToAccountOrdersByBatchId
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import To Account order's batch ID
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
          in: path
          name: batchId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<Batches>\n\t<Batch>\n\t\t<BatchId>1111111111</BatchId>\n\t\t<OrderCreateDate>2014-05-02T15-27-25.090Z</OrderCreateDate>\n\t\t<OrderId>4928ab9d-6bf6-4035-ac01-38a061d0f5d9</OrderId>\n\t\t<OrderStatus>IMPORT_COMPLETE</OrderStatus>\n\t\t<SubmittedTnCount>5000</SubmittedTnCount>\n\t\t<SuccessfulTnCount>5000</SuccessfulTnCount>\n\t\t<BatchSize>5000</BatchSize>\n\t</Batch>\n\t<Batch>\n\t\t<BatchId>1111111111</BatchId>\n\t\t<OrderCreateDate>2013-10-10T15-25-16.952Z</OrderCreateDate>\n\t\t<OrderId>8ce7c80b-d1ce-46f1-a3a1-56a08373b576</OrderId>\n\t\t<OrderStatus>VALIDATION_FAILED</OrderStatus>\n\t\t<SubmittedTnCount>4670</SubmittedTnCount>\n\t\t<SuccessfulTnCount>0</SuccessfulTnCount>\n\t\t<BatchSize>4670</BatchSize>\n\t</Batch>\n\t<Batch>\n\t\t<BatchId>1111111111</BatchId>\n\t\t<OrderCreateDate>2014-04-10T16-54-04.001Z</OrderCreateDate>\n\t\t<OrderId>26afaae3-2a8b-4405-96aa-1c38fe1fb74b</OrderId>\n\t\t<OrderStatus>IMPORT_COMPLETE</OrderStatus>\n\t\t<SubmittedTnCount>2358</SubmittedTnCount>\n\t\t<SuccessfulTnCount>2358</SuccessfulTnCount>\n\t\t<BatchSize>2358</BatchSize>\n\t</Batch>\n</Batches>"
              schema:
                $ref: '#/components/schemas/Batches'
          description: >-
            The information has been successfully retrieved and displayed in the
            payload.
      summary: Fetch Import To Account orders status by batch id
      tags:
        - Import Tn to Account
  /accounts/{accountId}/importToAccount/{orderId}:
    get:
      description: Retrieve information about a import to account order with specified ID.
      operationId: ReadImportToAccountOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import To Account order's ID
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/importToAccountNumberOrderResponseForGet'
      summary: Fetch Import To Account order status
      tags:
        - Import Tn to Account
  /accounts/{accountId}/importToAccount/{orderId}/history:
    get:
      description: Retrieves the history of the specified importToAccount order.
      operationId: ReadImportToAccountOrderHistory
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Import to Account order's ID
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
          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\"?>\n<OrderHistoryWrapper>\n\t <OrderHistory>\n\t\t <OrderDate>2015-06-16T14:03:10.225Z</OrderDate>\n\t\t <Note>Import to Account is received.</Note>\n\t\t <Author>admin</Author>\n\t\t <Status>RECEIVED</Status>\n\t </OrderHistory>\n\t <OrderHistory>\n\t\t <OrderDate>2015-06-16T14:03:10.789Z</OrderDate>\n\t\t <Note>Import to Account is partial.</Note>\n\t\t <Author>admin</Author>\n\t\t <Status>PARTIAL</Status>\n\t </OrderHistory>\n </OrderHistoryWrapper>"
              schema:
                $ref: '#/components/schemas/OrderHistoryWrapper'
          description: >-
            The history has been successfully retrieved and displayed in the
            payload.
      summary: Fetch Import to Account order history
      tags:
        - Import Tn to Account
  /accounts/{accountId}/inserviceNumbers:
    get:
      description: >-
        Retrieves a list of in-service phone numbers associated with the account
        ID
      operationId: ReadInserviceTns
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The `page` to fetch in a paginated collection
          example: 1
          in: query
          name: page
          required: false
          schema:
            default: 1
            type: integer
        - description: The number of TNs to retrieve
          example: 300
          in: query
          name: size
          required: false
          schema:
            default: 300
            type: integer
        - description: >-
            An Area Code search filter - all returned TNs will be in the entered
            Area Code
          example: 919
          in: query
          name: areacode
          required: false
          schema:
            type: integer
        - description: >-
            An NPA NXX search filter - all returned TNs will be in the entered
            NPA NXX dial plan
          example: 919859
          in: query
          name: npanxx
          required: false
          schema:
            type: integer
        - description: >-
            A Rate Center search filter - all returned TNs will be in the
            entered Rate Center.  Typically this is a 3 or 5 digit value.
          example: 435
          in: query
          name: lata
          required: false
          schema:
            type: integer
        - description: >-
            A State search filter - all returned TNs will be in the entered
            State.  This is a 2-character State or Province abbreviation.
          example: TX
          in: query
          name: state
          required: false
          schema:
            type: string
        - description: >-
            A Rate Center search filter - all returned TNs will be in the
            entered Rate Center.  This `ratecenter` must be combined with a
            `state` in the query.  If State is not included in the query then
            the query will fail.
          example: PLANO
          in: query
          name: ratecenter
          required: false
          schema:
            type: string
        - description: >-
            The starting date of a date range that will filter numbers based on
            activation or other change date.
          example: yy-mm-dd
          in: query
          name: startdate
          required: false
          schema:
            format: date
            type: string
        - description: The ending date of a date range
          example: yy-mm-dd
          in: query
          name: enddate
          required: false
          schema:
            format: date
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TNs>
                       <TotalCount>59</TotalCount>
                       <Links>
                          <first>( a link goes here )</first>
                       </Links>
                       <TelephoneNumbers>
                          <Count>59</Count>
                          <TelephoneNumber>8043024183</TelephoneNumber>
                          <TelephoneNumber>8042121778</TelephoneNumber>
                          <TelephoneNumber>8042146066</TelephoneNumber>
                          <TelephoneNumber>8043814903</TelephoneNumber>
                          <TelephoneNumber>8043814905</TelephoneNumber>
                          <TelephoneNumber>8043814864</TelephoneNumber>
                          <TelephoneNumber>8043326094</TelephoneNumber>
                          <TelephoneNumber>8042121771</TelephoneNumber>
                          <TelephoneNumber>8043024182</TelephoneNumber>
                          <!-- SNIP -->
                          <TelephoneNumber>8043814900</TelephoneNumber>
                          <TelephoneNumber>8047672642</TelephoneNumber>
                          <TelephoneNumber>8043024368</TelephoneNumber>
                          <TelephoneNumber>8042147950</TelephoneNumber>
                          <TelephoneNumber>8043169931</TelephoneNumber>
                          <TelephoneNumber>8043325302</TelephoneNumber>
                       </TelephoneNumbers>
                    </TNs>
              schema:
                $ref: '#/components/schemas/AccountTelephoneNumbersHistoryResponse'
          description: A successful result that contains the response data.
        '204':
          content:
            application/xml: {}
          description: No Content - there are no numbers found using the search parameters
        '404':
          content:
            application/xml: {}
          description: >-
            Not Found - The search parameters are invalid and prevent finding
            any content
      summary: Fetch in-service phone numbers
      tags:
        - In-service Numbers
  /accounts/{accountId}/inserviceNumbers/totals:
    get:
      description: Returns the total number of in-service numbers for the given account.
      operationId: ReadInserviceTnsCount
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<Quantity>\n\t    <Count>62</Count>\n</Quantity>"
              schema:
                $ref: '#/components/schemas/TelephoneNumberTotalsHistory'
          description: >-
            The request has been successfully retrieved and displayed in the
            payload.
      summary: Fetch in-service phone numbers count
      tags:
        - In-service Numbers
  /accounts/{accountId}/inserviceNumbers/{tn}:
    get:
      description: >-
        A GET on the number desired will return a 200 OK if the number is
        in-service on the account, or a 404 not found.
      operationId: ReadInserviceTn
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The telephone number to check
          example: '8043024183'
          in: path
          name: tn
          required: true
          schema:
            type: string
      responses:
        '200':
          description: >-
            The telephone number is currently in-service. NOTE that there is no
            payload; a 200 status simply means that the phone is indeed an
            in-service number.
        '404':
          description: The telephone number is not currently in-service.
      summary: Fetch in-service phone number.
      tags:
        - In-service Numbers
  /accounts/{accountId}/lidbs:
    get:
      description: >-
        The LIDBs Resource represents the requests made to the Bandwidth App API
        to add or otherwise manage a request to add Calling Line Information
        with a telephone number. This API allows the creation and observation of
        a "Line Information Data Base (LIDB)" work order that causes an update
        of a person's calling name identification in a network Database. The
        entry of this information in the network database in turn causes the
        display of their name on the phone of the people that they call.


        GET /accounts/{accountId}/lidbs API call is used to retrieve information
        about outstanding LIDBs orders, and POST to create those orders.
        Retrieve a list of the LIDB 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.
      operationId: ListLidbOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: |
            A Telephone Number (TN) that is referenced in the order
          example: '9199918388'
          in: query
          name: tn
          required: true
          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: >-
            For Date-based searches, the starting date of a date range
            (inclusive) that will be used to find Lidb 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 Lidb 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"?>
                    <ResponseSelectWrapper>
                        <ListOrderIdUserIdDate>
                            <TotalCount>2122</TotalCount>
                            <OrderIdUserIdDate>
                                <accountId>9999999</accountId>
                                <CountOfTNs>0</CountOfTNs>
                                <lastModifiedDate>2014-02-25T16:02:43.195Z</lastModifiedDate>
                                <OrderType>lidb</OrderType>
                                <OrderDate>2014-02-25T16:02:43.195Z</OrderDate>
                                <orderId>abe36738-6929-4c6f-926c-88e534e2d46f</orderId>
                                <OrderStatus>FAILED</OrderStatus>
                                <TelephoneNumberDetails/>
                                <userId>team_ua</userId>
                            </OrderIdUserIdDate>
                            <!-- ...SNIP... -->
                            <OrderIdUserIdDate>
                                <accountId>9999999</accountId>
                                <CountOfTNs>0</CountOfTNs>
                                <lastModifiedDate>2014-02-25T16:02:39.021Z</lastModifiedDate>
                                <OrderType>lidb</OrderType>
                                <OrderDate>2014-02-25T16:02:39.021Z</OrderDate>
                                <orderId>ba5b6297-139b-4430-aab0-9ff02c4362f4</orderId>
                                <OrderStatus>FAILED</OrderStatus>
                                <userId>team_ua</userId>
                            </OrderIdUserIdDate>
                        </ListOrderIdUserIdDate>
                    </ResponseSelectWrapper>
              schema:
                $ref: '#/components/schemas/LidbOrderHistoryResponse'
          description: OK
        '404':
          description: NOT FOUND
      summary: List LIDB orders
      tags:
        - LIDB
    post:
      description: >-
        The LIDBs Resource represents the requests made to the Bandwidth App API
        to add or otherwise manage a request to add Calling Line Information
        with a telephone number. This API allows the creation and observation of
        a "Line Information Data Base (LIDB)" work order that causes an update
        of a person's calling name identification in a network Database. The
        entry of this information in the network database in turn causes the
        display of their name on the phone of the people that they call. 

        This API call supports GET to retrieve information about outstanding
        LIDBs orders, and POST to create those orders.


        Create a LIDB order to associate Calling Name Information with a TN or
        list of TNs.
      operationId: CreateLidbOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                description: example
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <LidbOrder>
                      <CustomerOrderId>[String]</CustomerOrderId>
                      <LidbTnGroups>
                          <LidbTnGroup>
                              <TelephoneNumbers>
                                  <TelephoneNumber>8045030097</TelephoneNumber>
                                  <TelephoneNumber>8045030098</TelephoneNumber>
                              </TelephoneNumbers>
                              <SubscriberInformation>Joes Garage</SubscriberInformation>
                              <UseType>RESIDENTIAL</UseType>
                              <Visibility>PUBLIC</Visibility>
                          </LidbTnGroup>
                          <LidbTnGroup>
                              <TelephoneNumbers>
                                  <TelephoneNumber>8888595935</TelephoneNumber>
                              </TelephoneNumbers>
                              <SubscriberInformation>Joes Storage</SubscriberInformation>
                              <UseType>RESIDENTIAL</UseType>
                              <Visibility>PRIVATE</Visibility>
                          </LidbTnGroup>
                      </LidbTnGroups>
                  </LidbOrder>
            schema:
              $ref: '#/components/schemas/LidbOrder'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LidbOrderResponse>
                        <LidbOrder>
                            <orderId>1d863522-c9bf-430c-8e79-cc63cad04a1d</orderId>
                            <CustomerOrderId>[String]</CustomerOrderId>
                            <ProcessingStatus>RECEIVED</ProcessingStatus>
                            <ErrorList>
                              <Error>
                                <TelephoneNumber>8888595935</TelephoneNumber>
                                <Code>11020</Code>
                                <Description>Cannot add LIDB to a telephone number that already has LIDB or is in process</Description>
                              </Error>
                            </ErrorList>
                            <LidbTnGroups>
                              <LidbTnGroup>
                                <TelephoneNumbers>
                                  <TelephoneNumber>8045030097</TelephoneNumber>
                                  <TelephoneNumber>8045030098</TelephoneNumber>
                                </TelephoneNumbers>
                                <SubscriberInformation>Joes Garage</SubscriberInformation>
                                <UseType>RESIDENTIAL</UseType>
                                <Visibility>PUBLIC</Visibility>
                              </LidbTnGroup>
                              <LidbTnGroup>
                                <TelephoneNumbers>
                                  <TelephoneNumber>8888595935</TelephoneNumber>
                                </TelephoneNumbers>
                                <SubscriberInformation>Joes Storage</SubscriberInformation>
                                <UseType>RESIDENTIAL</UseType>
                                <Visibility>PRIVATE</Visibility>
                              </LidbTnGroup>
                            </LidbTnGroups>
                        </LidbOrder>
                    </LidbOrderResponse>
              schema:
                $ref: '#/components/schemas/LidbOrderResponse'
          description: Created
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LidbOrderResponse>
                        <Status>
                            <Code>400</Code>
                            <Description>Validation Failed. Please check your input parameters.</Description>
                        </Status>
                        <ErrorList>
                            <Error>
                                <Code>11007</Code>
                                <Description>No visibility supplied. Visibility must be one of the following - PUBLIC, PRIVATE</Description>
                            </Error>
                        </ErrorList>
                        <LidbOrder>
                            <LidbTnGroups>
                              <LidbTnGroup>
                                <TelephoneNumbers>
                                  <TelephoneNumber>9199998830</TelephoneNumber>
                                </TelephoneNumbers>
                                <SubscriberInformation>Joes Garage</SubscriberInformation>
                                <UseType>RESIDENTIAL</UseType>
                              </LidbTnGroup>
                            </LidbTnGroups>
                        </LidbOrder>
                    </LidbOrderResponse>
              schema:
                $ref: '#/components/schemas/LidbOrderErrorResponse'
          description: Bad Request
      summary: >-
        Create LIDB order - associate Calling Name Information with a TN or list
        of TNs
      tags:
        - LIDB
  /accounts/{accountId}/lidbs/{lidbid}:
    get:
      description: >-
        The LIDBs Resource represents the requests made to the Bandwidth App API
        to add or otherwise manage a request to add Calling Line Information
        with a telephone number. This API allows the creation and observation of
        a "Line Information Data Base (LIDB)" work order that causes an update
        of a person's calling name identification in a network Database. The
        entry of this information in the network database in turn causes the
        display of their name on the phone of the people that they call. 

        This API call supports GET to retrieve information about outstanding
        LIDBs orders, and POST to create those orders.


        Retrieve information about a specific Lidb Order identified as the
        resource.

        The LIDBs Resource represents the requests made to the Bandwidth App API
        to add or otherwise manage a request to add Calling Line Information
        with a telephone number. This API allows the creation and observation of
        a "Line Information Data Base (LIDB)" work order that causes an update
        of a person's calling name identification in a network Database. The
        entry of this information in the network database in turn causes the
        display of their name on the phone of the people that they call. 

        This API call supports GET to retrieve information about outstanding
        LIDBs orders, and POST to create those orders.
      operationId: ReadLidbOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Lidb order id
          in: path
          name: lidbid
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LidbOrder>
                        <CustomerOrderId>testCustomerOrderId</CustomerOrderId>
                        <orderId>255bda29-fc57-44e8-a6c2-59b45388c6d0</orderId>
                        <OrderCreateDate>2014-05-28T14:46:21.724Z</OrderCreateDate>
                        <ProcessingStatus>RECEIVED</ProcessingStatus>
                        <CreatedByUser>jbm</CreatedByUser>
                        <LastModifiedDate>2014-02-20T19:33:17.600Z</LastModifiedDate>
                        <OrderCompleteDate>2014-02-20T19:33:17.600Z</OrderCompleteDate>
                        <ErrorList/>
                        <LidbTnGroups>
                            <LidbTnGroup>
                                <TelephoneNumbers>
                                    <TelephoneNumber>4082213311</TelephoneNumber>
                                </TelephoneNumbers>
                                <FullNumber>8042105618</FullNumber>
                                <SubscriberInformation>Fred</SubscriberInformation>
                                <UseType>BUSINESS</UseType>
                                <Visibility>PRIVATE</Visibility>
                            </LidbTnGroup>
                            <LidbTnGroup>
                                <TelephoneNumbers>
                                    <TelephoneNumber>4082212850</TelephoneNumber>
                                    <TelephoneNumber>4082213310</TelephoneNumber>
                                </TelephoneNumbers>
                                <FullNumber>8042105760</FullNumber>
                                <SubscriberInformation>Fred</SubscriberInformation>
                                <UseType>RESIDENTIAL</UseType>
                                <Visibility>PUBLIC</Visibility>
                            </LidbTnGroup>
                        </LidbTnGroups>
                    </LidbOrder>
              schema:
                $ref: '#/components/schemas/LidbOrderResponsePayload'
          description: OK
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <LidbOrderReportResponse>
                        <ResponseStatus>
                            <Description>The resource does not exist</Description>
                        </ResponseStatus>
                    </LidbOrderReportResponse>
              schema:
                $ref: '#/components/schemas/LidbOrderReportErrorResponse'
          description: NOT FOUND
      summary: Fetch LIDB order status
      tags:
        - LIDB
  /accounts/{accountId}/lnpchecker:
    post:
      description: >-
        This API endpoint is used to check whether a number or set of numbers
        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>
      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>4109255199</Tn>
                        <Tn>4109235436</Tn>
                        <Tn>4104685864</Tn>
                        <Tn>4103431313</Tn>
                        <Tn>4103154313</Tn>
                        <Tn>4103431561</Tn>
                        <Tn>2174101103</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>4109255199</Tn>
                                    <Tn>4104685864</Tn>
                                </TnList>
                            </RateCenterGroup>
                            <RateCenterGroup>
                                <RateCenter>SPARKSGLNC</RateCenter>
                                <City>SPARKS GLENCOE</City>
                                <State>MD</State>
                                <LATA>238</LATA>
                                <TnList>
                                    <Tn>4103431313</Tn>
                                    <Tn>4103431561</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>4109235436</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>2174101103</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>4109255199</Tn>
                                    <Tn>4104685864</Tn>
                                    <Tn>4103431313</Tn>
                                    <Tn>4103431561</Tn>
                                </TnList>
                            </LosingCarrierTnList>
                            <LosingCarrierTnList>
                                <LosingCarrierSPID>7482</LosingCarrierSPID>
                                <LosingCarrierName>IntegraTelecom</LosingCarrierName>
                                <LosingCarrierIsWireless>false</LosingCarrierIsWireless>
                                <LosingCarrierAccountNumberRequired>false</LosingCarrierAccountNumberRequired>
                                <LosingCarrierMinimumPortingInterval>1</LosingCarrierMinimumPortingInterval>
                                <TnList>
                                    <Tn>2174101103</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>61746052083 is not a valid NANP telephone number.</Description>
                        </Errors>
                        <Errors>
                            <Code>7201</Code>
                            <Description>61746052082 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: '9199918388'
          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>2526795000</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>2526795000</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>9192381468</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>9192381468</TelephoneNumber>
                          <TelephoneNumber>9192381467</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>9192381468</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>9192381468</TelephoneNumber>
                                <TelephoneNumber>9192381467</TelephoneNumber>
                                <TelephoneNumber>9192381469</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: [9192381468, 9192381468]</Description>
                          </LsrOrderError>
                          <LsrOrderError>
                              <Code>16002</Code>
                              <Description>Order contains invalid tns: [8882381468].</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>919238466</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>9192381468</TelephoneNumber>
                              <TelephoneNumber>9192381468</TelephoneNumber>
                              <TelephoneNumber>9192381468</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>9192381468</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>9192381467</TelephoneNumber>
                            <TelephoneNumber>9192381468</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>9192381468</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>9192381468</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>9192381468</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>9192381468</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>9192381468</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}/messagingPortouts/webhooks/subscriptions:
    get:
      description: >
        Provides a list of webhook subscriptions that are registered to receive
        status updates for the 

        messaging portout approvals submitted under this account (password will
        not be returned through this API; if `basicAuthentication` is defined, 

        the `password` property of that object will be null).
      operationId: listMessagingPortoutsWebhookSubscriptions
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          $ref: '#/components/responses/messagingPortoutWebhookSubscriptionsList'
        '400':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionBadRequestResponse
        '401':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionUnauthorizedResponse
        '403':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionForbiddenResponse
        '405':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionNotAllowedResponse
        '429':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionTooManyRequestsResponse
        '500':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionServerErrorResponse
        '503':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionServiceUnavailableResponse
      summary: >-
        List all the messaging portout webhook subscriptions registered for this
        account
      tags:
        - Messaging Portout
    post:
      callbacks:
        messagingPortoutCallback:
          $ref: '#/components/callbacks/messagingPortoutRequestCallback'
      description: >
        Create a new webhook subscription (this webhook will be called for every
        update on every submission). 

        In addition to a `callbackUrl`, this subscription can provide optional
        HTTP basic authentication credentials (a username and a password). 

        The returned subscription object will contain an ID that can be used to
        modify or delete the subscription at a later time.
      operationId: createMessagingPortoutsWebhookSubscription
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        $ref: '#/components/requestBodies/messagingPortoutWebhookSubscriptionRequest'
      responses:
        '201':
          $ref: '#/components/responses/messagingPortoutWebhookSubscriptionCreated'
        '400':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionBadRequestResponse
        '401':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionUnauthorizedResponse
        '403':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionForbiddenResponse
        '404':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionNotFoundResponse
        '405':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionNotAllowedResponse
        '429':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionTooManyRequestsResponse
        '500':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionServerErrorResponse
        '503':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionServiceUnavailableResponse
      summary: Create a new webhook subscription
      tags:
        - Messaging Portout
  /accounts/{accountId}/messagingPortouts/webhooks/subscriptions/{id}:
    delete:
      description: Delete a webhook subscription by ID.
      operationId: deleteMessagingPortoutsWebhookSubscription
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/WebhookSubscriptionIdPathParam'
      responses:
        '204':
          $ref: '#/components/responses/webhookSubscriptionDeleted'
        '400':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionDeleteBadRequestResponse
        '401':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionUnauthorizedResponse
        '403':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionForbiddenResponse
        '404':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionNotFoundResponse
        '405':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionNotAllowedResponse
        '429':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionTooManyRequestsResponse
        '500':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionServerErrorResponse
        '503':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionServiceUnavailableResponse
      summary: Delete a webhook subscription
      tags:
        - Messaging Portout
    put:
      description: >-
        Update an existing webhook subscription (`callbackUrl` and
        `basicAuthentication` can be updated).
      operationId: updateMessagingPortoutsWebhookSubscription
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/WebhookSubscriptionIdPathParam'
      requestBody:
        $ref: '#/components/requestBodies/messagingPortoutWebhookSubscriptionRequest'
      responses:
        '200':
          $ref: '#/components/responses/messagingPortoutWebhookSubscriptionUpdated'
        '400':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionBadRequestResponse
        '401':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionUnauthorizedResponse
        '403':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionForbiddenResponse
        '404':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionNotFoundResponse
        '405':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionNotAllowedResponse
        '429':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionTooManyRequestsResponse
        '500':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionServerErrorResponse
        '503':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionServiceUnavailableResponse
      summary: Update an existing webhook subscription
      tags:
        - Messaging Portout
  /accounts/{accountId}/messagingPortouts/{requestId}:
    put:
      description: >-
        This PUT request can be used to approve or deny messaging portout
        request.
      operationId: approveOrDenyMessagingPortoutRequest
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/RequestIdPathParam'
      requestBody:
        content:
          application/json:
            examples:
              ApprovePortoutRequest:
                $ref: '#/components/examples/ApproveMessagingPortoutRequest'
                summary: Approve Messaging Portout Request
              DenyPortoutRequest:
                $ref: '#/components/examples/DenyMessagingPortoutRequest'
                summary: Deny Messaging Portout Request
            schema:
              $ref: '#/components/schemas/MessagingPortoutRequest'
      responses:
        '200':
          $ref: '#/components/examples/MessagingPortout200Response'
        '202':
          $ref: '#/components/examples/MessagingPortout202Response'
        '400':
          $ref: '#/components/responses/messagingPortoutBadRequestResponse'
        '401':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionUnauthorizedResponse
        '403':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionForbiddenResponse
        '404':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionNotFoundResponse
        '405':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionNotAllowedResponse
        '410':
          $ref: '#/components/responses/messagingPortoutGoneResponse'
        '500':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionServerErrorResponse
        '503':
          $ref: >-
            #/components/responses/messagingPortoutWebhookSubscriptionServiceUnavailableResponse
      summary: Approve or Deny Messaging Portout Request
      tags:
        - Messaging Portout
  /accounts/{accountId}/moveTns:
    get:
      description: >-
        Retrieves the moveTns orders for the given account ID. 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: ReadMoveTnsOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The status of the moveTnsOrder being searched for
          example: PARTIAL
          in: query
          name: status
          required: false
          schema:
            type: string
        - description: A Telephone Number (TN) that is referenced in the order
          example: '9199918388'
          in: query
          name: tn
          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 importTnOrder
          example: ABCCorp12345
          in: query
          name: customerOrderId
          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: '2022-03-20'
          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: '2022-03-23'
          in: query
          name: createdDateTo
          required: false
          schema:
            type: string
        - 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: '2022-03-20'
          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 Import Tn Orders that were modified within
            the date range. It is in the form yyyy-MM-dd
          example: '2022-03-23'
          in: query
          name: modifiedDateTo
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <MoveTnsOrders>
                       <TotalCount>2</TotalCount>
                       <MoveTnsOrderSummary>
                          <accountId>1234567</accountId>
                          <SourceAccountId>15</SourceAccountId>
                          <CountOfTNs>1</CountOfTNs>
                          <CustomerOrderId>CustomerOrderId</CustomerOrderId>
                          <userId>systemUser</userId>
                          <lastModifiedDate>2022-01-24T11:08:09.770Z</lastModifiedDate>
                          <OrderDate>2022-01-24T11:08:09.770Z</OrderDate>
                          <OrderType>move_tn_orders</OrderType>
                          <OrderStatus>COMPLETE</OrderStatus>
                          <OrderId>211a103c-5f9c-4117-8833-c574bdc390fd</OrderId>
                       </MoveTnsOrderSummary>
                       <MoveTnsOrderSummary>
                          <accountId>14</accountId>
                          <SourceAccountId>15</SourceAccountId>
                          <CountOfTNs>2</CountOfTNs>
                          <CustomerOrderId>CustomerOrderId</CustomerOrderId>
                          <userId>systemUser</userId>
                          <lastModifiedDate>2022-01-24T10:43:16.934Z</lastModifiedDate>
                          <OrderDate>2022-01-24T10:43:16.934Z</OrderDate>
                          <OrderType>move_tn_orders</OrderType>
                          <OrderStatus>PARTIAL</OrderStatus>
                          <OrderId>8dc32f09-2329-4c73-b702-526f46b02712</OrderId>
                       </MoveTnsOrderSummary>
                    </MoveTnsOrders>
              schema:
                $ref: '#/components/schemas/MoveTnsOrders'
          description: >-
            The descriptive payload for the moveTnsOrder 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 description of any
            encountered errors
      summary: List Move Telephone Numbers orders
      tags:
        - Move Tns
    post:
      description: >-
        Creates a MoveTnsOrder request to move numbers to the given site ID and
        sippeer ID as specified in the body. 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 moved and "PARTIAL" if some
        of the telephone numbers were moved. A failed order will have a status
        of "FAILED" and no telephone numbers would have been moved.</p>


        <p>Numbers can be moved to sites/sippeers of a different account (if the
        user has access to both accounts and the proper roles). This can be done
        by specifying the SourceAccountId parameter. The user can also specify
        how to handle E911 service on the number (if it exists) using the
        optional e911ServiceAction parameter
      operationId: CreateMoveTnsOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <MoveTnsOrder>
                     <CustomerOrderId>ICPA123ABC</CustomerOrderId>
                     <SourceAccountId>12346159</SourceAccountId>
                     <E911ServiceAction>move</E911ServiceAction>
                     <SiteId>743</SiteId>
                     <SipPeerId>303716</SipPeerId>
                     <TelephoneNumbers>
                        <TelephoneNumber>9199918388</TelephoneNumber>
                        <TelephoneNumber>4158714245</TelephoneNumber>
                        <TelephoneNumber>4352154439</TelephoneNumber>
                        <TelephoneNumber>4352154466</TelephoneNumber>
                     </TelephoneNumbers>
                  </MoveTnsOrder>
            schema:
              $ref: '#/components/schemas/MoveTnsOrderRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <MoveTnsOrderResponse>
                       <MoveTnsOrder>
                          <OrderCreateDate>2020-09-15T16:36:22.076Z</OrderCreateDate>
                          <AccountId>9999999</AccountId>
                          <SourceAccountId>6555555</SourceAccountId>
                          <CreatedByUser>systemUser</CreatedByUser>
                          <OrderId>093a9f9b-1a78-4e47-b6e2-776a484596f4</OrderId>
                          <LastModifiedDate>2020-09-15T16:36:22.096Z</LastModifiedDate>
                          <SiteId>483</SiteId>
                          <TelephoneNumbers>
                             <TelephoneNumber>2032081004</TelephoneNumber>
                             <TelephoneNumber>2032081005</TelephoneNumber>
                          </TelephoneNumbers>
                          <ProcessingStatus>RECEIVED</ProcessingStatus>
                          <SipPeerId>500025</SipPeerId>
                       </MoveTnsOrder>
                    </MoveTnsOrderResponse>
              schema:
                $ref: '#/components/schemas/MoveTnsOrderResponse'
          description: >-
            The order has been created. An order ID will be specified in the
            payload and header
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <MoveTnsOrderResponse>
                       <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>
                    </MoveTnsOrderResponse>
          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
      summary: Move Telephone Numbers
      tags:
        - Move Tns
  /accounts/{accountId}/moveTns/{orderId}:
    get:
      description: Retrieve information about a MoveTnsOrder with specified ID
      operationId: ReadMoveTnsOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Move Telephone Numbers order's ID
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
          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"?>
                    <MoveTnsOrder>
                       <OrderCreateDate>2020-08-10T02:58:04.615Z</OrderCreateDate>
                       <AccountId>9900012</AccountId>
                       <SourceAccountId>9900013</SourceAccountId>
                       <CreatedByUser>jdb</CreatedByUser>
                       <OrderId>bf1305b8-8998-1111-2222-51ba3ce52d4e</OrderId>
                       <CustomerOrderId>123-456-789-abc</CustomerOrderId>
                       <LastModifiedDate>2018-01-09T02:58:05.298Z</LastModifiedDate>
                       <SiteId>65487</SiteId>
                       <SipPeerId>885544</SipPeerId>
                       <TelephoneNumbers>
                          <TelephoneNumber>2106078250</TelephoneNumber>
                          <TelephoneNumber>2109678273</TelephoneNumber>
                          <TelephoneNumber>2109678331</TelephoneNumber>
                          <TelephoneNumber>2109678337</TelephoneNumber>
                          <TelephoneNumber>2266401468</TelephoneNumber>
                       </TelephoneNumbers>
                       <ProcessingStatus>PARTIAL</ProcessingStatus>
                       <Errors>
                          <Error>
                             <Code>7518</Code>
                             <Description>Telephone Number Not Active.</Description>
                             <TelephoneNumbers>
                                <TelephoneNumber>2262665583</TelephoneNumber>
                             </TelephoneNumbers>
                          </Error>
                       </Errors>
                    </MoveTnsOrder>
              schema:
                $ref: '#/components/schemas/MoveTnsOrderPayload'
          description: >-
            The information has been successfully retrieved and displayed in the
            payload
      summary: Fetching Move Telephone Numbers order status
      tags:
        - Move Tns
  /accounts/{accountId}/moveTns/{orderId}/history:
    get:
      description: Retrieves the history of the specified MoveTnsOrder
      operationId: ReadMoveTnsOrderHistory
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Move Telephone Numbers order's ID
          example: 093a9f9b-1a78-4e47-b6e2-776a484596f4
          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>2020-09-17T08:56:39.607Z</OrderDate>
                          <Note>Move TNs order has been received by the system.</Note>
                          <Author>admin</Author>
                          <Status>received</Status>
                       </OrderHistory>
                       <OrderHistory>
                          <OrderDate>2020-09-17T08:56:39.743Z</OrderDate>
                          <Note>Move TNs order processing has started.</Note>
                          <Author>admin</Author>
                          <Status>processing</Status>
                       </OrderHistory>
                       <OrderHistory>
                          <OrderDate>2020-09-17T08:56:39.820Z</OrderDate>
                          <Note>Move TNs order is complete.</Note>
                          <Author>admin</Author>
                          <Status>complete</Status>
                       </OrderHistory>
                    </OrderHistoryWrapper>
              schema:
                $ref: '#/components/schemas/OrderHistoryWrapper'
          description: >-
            The history has been successfully retrieved and displayed in the
            payload
      summary: Fetching Move Telephone Numbers order history
      tags:
        - Move Tns
  /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: '9199918388'
          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>9199918388</TelephoneNumber>
                          <TelephoneNumber>4158714245</TelephoneNumber>
                          <TelephoneNumber>4352154439</TelephoneNumber>
                          <TelephoneNumber>4352154466</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>9199918388</TelephoneNumber>\n\t\t\t <TelephoneNumber>4158714245</TelephoneNumber>\n\t\t\t <TelephoneNumber>4352154439</TelephoneNumber>\n\t\t\t <TelephoneNumber>4352154466</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>9199918388</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>9199918388</TelephoneNumber>\n\t\t\t <TelephoneNumber>4158714245</TelephoneNumber>\n\t\t\t <TelephoneNumber>4352154439</TelephoneNumber>\n\t\t\t <TelephoneNumber>4352154466</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>9199918388</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}/orders:
    get:
      description: >-
        GET is used to retrieve order ids and order details for previously
        attempted Telephone Number orders. 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>Please visit <a
        href='/docs/numbers/guides/searchingForNumbers/'>Guides and
        Tutorials</a> to learn more.</p>
      operationId: ListOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            All Order retrievals must be paginated, using page and size
            indicators.  The page parameter contains the order-id that is to
            start the page, or "1" in the case of the first page
          example: cbdcfc94-81b1-4ce9-8b6d-f8d6b85381ba
          in: query
          name: page
          required: true
          schema:
            type: string
        - description: >-
            The size parameter indicates the number of orders to return in the
            payload
          example: 20
          in: query
          name: size
          required: true
          schema:
            type: integer
        - description: The order ID that the Customer / Account assigned to the Order
          example: ORD12345
          in: query
          name: customerOrderId
          required: true
          schema:
            type: string
        - description: The status of the orders that should be in the returned set
          example: BACKORDERED
          in: query
          name: status
          required: false
          schema:
            type: string
        - description: The userid of the user that submitted the new number order
          example: user@customer.com
          in: query
          name: userid
          required: false
          schema:
            type: string
        - description: >-
            The first day of the search date range for a date-range-limited
            search of net number orders. The format is YY-MM-DD
          example: 13-12-15
          in: query
          name: startdate
          required: false
          schema:
            format: date
            type: string
        - description: >-
            The last day of the search date range for a date-range-limited
            search of net number orders. The format is YY-MM-DD
          example: 13-12-31
          in: query
          name: enddate
          required: false
          schema:
            format: date
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ResponseSelectWrapper>
                        <ListOrderIdUserIdDate>
                            <TotalCount>122</TotalCount>
                            <Links>
                            <first>
                                <!-- Link=<https://api.bandwidth.com 443/v1.0/accounts/9900012/orders?page=1&size=3>;rel="first"; -->
                            </first>
                            <next>
                                <!-- Link=<https://api.bandwidth.com 443/v1.0/accounts/9900012/orders?page=cbdcfc94-81b1-4ce9-8b6d-f8d6b85381ba&size=3>;rel="next"; -->
                            </next>
                            </Links>
                            <OrderIdUserIdDate>
                                <CountOfTNs>1</CountOfTNs>
                                <lastModifiedDate>2013-12-20T06</lastModifiedDate>
                                <OrderDate>2013-12-20T06</OrderDate>
                                <orderId>c5d8d076-345c-45d7-87b3-803a35cca89b</orderId>
                                <OrderStatus>COMPLETE</OrderStatus>
                                <TelephoneNumberDetails>
                                    <States>
                                        <StateWithCount>
                                            <State>VA</State>
                                            <Count>1</Count>
                                        </StateWithCount>
                                    </States>
                                    <RateCenters>
                                        <RateCenterWithCount>
                                            <Count>1</Count>
                                            <RateCenter>LADYSMITH</RateCenter>
                                        </RateCenterWithCount>
                                    </RateCenters>
                                    <Cities>
                                        <CityWithCount>
                                            <City>LADYSMITH</City>
                                            <Count>1</Count>
                                        </CityWithCount>
                                    </Cities>
                                    <Tiers>
                                        <TierWithCount>
                                            <Tier>0</Tier>
                                            <Count>1</Count>
                                        </TierWithCount>
                                    </Tiers>
                                    <Vendors>
                                        <VendorWithCount>
                                            <VendorId>49</VendorId>
                                            <VendorName>Bandwidth CLEC</VendorName>
                                            <Count>1</Count>
                                        </VendorWithCount>
                                    </Vendors>
                                </TelephoneNumberDetails>
                                <userId>bwc_user</userId>
                            </OrderIdUserIdDate>
                            <OrderIdUserIdDate>
                                <CountOfTNs>0</CountOfTNs>
                                <lastModifiedDate>2013-11-05T17</lastModifiedDate>
                                <OrderDate>2013-11-05T17</OrderDate>
                                <orderId>27da9f39-81f3-44ed-80ce-05ddf2db612d</orderId>
                                <OrderStatus>FAILED</OrderStatus>
                                <userId>wandedemo_user</userId>
                            </OrderIdUserIdDate>
                            <OrderIdUserIdDate>
                                <CountOfTNs>1</CountOfTNs>
                                <lastModifiedDate>2013-12-11T20</lastModifiedDate>
                                <OrderDate>2013-12-11T20</OrderDate>
                                <orderId>2bab589e-2cda-453b-9999-8f35441d4a1a</orderId>
                                <OrderStatus>COMPLETE</OrderStatus>
                                <TelephoneNumberDetails>
                                    <!-- SNIP -->
                                </TelephoneNumberDetails>
                                <userId>bwc_user</userId>
                            </OrderIdUserIdDate>
                        </ListOrderIdUserIdDate>
                    </ResponseSelectWrapper>
              schema:
                $ref: '#/components/schemas/TnOrderHistoryResponse'
          description: >-
            The Order retrieval request will return a list of the orders that
            match the criteria imposed by the provided query parameters.  The
            orders list contains a detailed description of the order.  Notice
            that the first elements of the payload provide link information that
            can be used to page through a paginated list of orders.  Pagination
            can be controlled by use of the size and page query parameters
        '400':
          description: >-
            Bad Request - malformed Query Parameters can result in a 400 Bad
            request
        '404':
          description: >-
            Not Found - returned if the retrieval request cannot be satisfied,
            either because the order id cannot be found or the order id is not
            recognized
      summary: List Telephone Number orders
      tags:
        - Orders
    post:
      description: >-
        <span>A POST creates a request for Telephone Numbers</span>

        <br>

        A POST on the /orders resource is used to request that the system
        provide one or more TNs for use by the account. The post creates a new
        number order record to preserve the request, as well as the response of
        the Bandwidth App API to the request.  A well-formed POST on the /orders
        resource will create an order record, and return an order-id string that
        can be used to uniquely identify the new number order request. <p>Please
        visit <a href='/docs/numbers/guides/searchingForNumbers/'>Guides and
        Tutorials</a> to learn more.</p>
      operationId: CreateOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              AreaCodeSearchAndOrderType:
                description: >-
                  Allowed ranges ~ [2-9] for the first digit and [0, 9] for both
                  the second and third digits.
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Order>
                      <CustomerOrderId>123456789</CustomerOrderId>
                      <Name>Area Code Order</Name>
                      <BackOrderRequested>false</BackOrderRequested>
                      <AreaCodeSearchAndOrderType>
                          <AreaCode>435</AreaCode>
                          <Quantity>1</Quantity>
                      </AreaCodeSearchAndOrderType>
                      <PartialAllowed>true</PartialAllowed>
                      <SiteId>743</SiteId>
                  </Order>
              CitySearchAndOrderType:
                description: Specify the City and State to be ordered from.
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Order>
                      <CustomerOrderId>123456789</CustomerOrderId>
                      <Name>Area Code Order</Name>
                      <BackOrderRequested>false</BackOrderRequested>
                      <CitySearchAndOrderType>
                          <Quantity>1</Quantity>
                          <City>RALEIGH</City>
                          <State>NC</State>
                      </CitySearchAndOrderType>
                      <PartialAllowed>true</PartialAllowed>
                      <SiteId>743</SiteId>
                  </Order>
              CombinedSearchAndOrderType:
                description: >-
                  Specify the any combination of: AreaCode, RateCenter, State,
                  NpaNxx, NpaNxxX, Lata, City, Zip. But with following
                  limitations: AreaCode, NpaNxx and NpaNxxX are mutually
                  exclusive, LCA search is supported only for one of the
                  following criteria: NpaNxx, NpaNxxX, RateCenter and State. If
                  City or RateCenter is specified, then State is required.
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Order>
                      <CustomerOrderId>123456789</CustomerOrderId>
                      <Name>Area Code Order</Name>
                      <BackOrderRequested>false</BackOrderRequested>
                      <CombinedSearchAndOrderType>
                          <Quantity>1</Quantity>
                          <AreaCode>617</AreaCode>
                          <RateCenter>RALEIGH</RateCenter>
                          <State>NC</State>
                          <NpaNxx>919439</NpaNxx>
                          <NpaNxxX>9194391</NpaNxxX>
                          <Lata>224</Lata>
                          <City>RALEIGH</City>
                          <Zip>27606</Zip>
                          <EnableLCA>false</EnableLCA>
                      </CombinedSearchAndOrderType>
                      <PartialAllowed>true</PartialAllowed>
                      <SiteId>743</SiteId>
                  </Order>
              CombinedSearchAndOrderType (local vanity):
                description: >-
                  Specify AreaCode and LocalVanity to order telephone numbers
                  matching a specific alphanumeric pattern between 4 and 7
                  characters long.

                  Limitations: AreaCode is always required. No parameter
                  combinations are allowed here/ This order type is unsupported
                  with BackOrderRequested=true.
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Order>
                      <CustomerOrderId>123456789</CustomerOrderId>
                      <Name>Local Vanity Order</Name>
                      <CombinedSearchAndOrderType>
                          <AreaCode>617</AreaCode>
                          <LocalVanity>newcars</LocalVanity>
                          <Quantity>1</Quantity>
                          <EndsIn>false</EndsIn>
                      </CombinedSearchAndOrderType>
                      <SiteId>743</SiteId>
                  </Order>
              CombinedSearchAndOrderType (protected status):
                description: CombinedSearchAndOrderType with established Protected status
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Order>
                      <CustomerOrderId>123456789</CustomerOrderId>
                      <Name>Area Code Order</Name>
                      <BackOrderRequested>false</BackOrderRequested>
                      <CombinedSearchAndOrderType>
                          <NpaNxx>919439</NpaNxx>
                          <City>RALEIGH</City>
                          <State>NC</State>
                          <EnableLCA>false</EnableLCA>
                          <Quantity>1</Quantity>
                      </CombinedSearchAndOrderType>
                      <TnAttributes>
                              <TnAttribute>Protected</TnAttribute>
                              <TnAttribute>External</TnAttribute>
                              <TnAttribute>Imported</TnAttribute>
                      </TnAttributes>
                      <PartialAllowed>true</PartialAllowed>
                      <SiteId>743</SiteId>
                  </Order>
              ExistingTelephoneNumberOrderType:
                description: >-
                  Order a set of numbers known to be available. This often
                  results if the numbers have been found using a separate
                  availableNumbers search. If the numbers have previously been
                  reserved, a reservation id must be included
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Order>
                      <CustomerOrderId>123456789</CustomerOrderId>
                      <Name>Existing Number Order</Name>
                      <ExistingTelephoneNumberOrderType>
                          <TelephoneNumberList>
                              <TelephoneNumber>9193752369</TelephoneNumber>
                              <TelephoneNumber>9193752720</TelephoneNumber>
                              <TelephoneNumber>9193752648</TelephoneNumber>
                          </TelephoneNumberList>
                          <ReservationIdList>
                              <ReservationId>[GUID]</ReservationId>
                              <ReservationId>[GUID]</ReservationId>
                          </ReservationIdList>
                      </ExistingTelephoneNumberOrderType>
                      <SiteId>743</SiteId>
                  </Order>
              General:
                description: The 'wrapper' Request Payload'
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Order>
                     <CustomerOrderId>SJM00001</CustomerOrderId>
                     <!--
                          There are various types of orders, all of which are submitted in the 'xxxOrderType'
                          element of the Order Request payload. Replace
                          this comment to create a complete payload that includes the order type and the
                          common elements.
                          Take a look at the example payloads as well.
                      -->
                     <SiteId>202</SiteId>
                     <PeerId>518824</PeerId>
                     <TnAttributes/>
                  </Order>
              LATASearchAndOrderType:
                description: Specify the LATA to order telephone numbers from.
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Order>
                      <CustomerOrderId>123456789</CustomerOrderId>
                      <Name>Area Code Order</Name>
                      <BackOrderRequested>false</BackOrderRequested>
                      <LATASearchAndOrderType>
                          <Quantity>1</Quantity>
                          <Lata>224</Lata>
                      </LATASearchAndOrderType>
                      <PartialAllowed>true</PartialAllowed>
                      <SiteId>743</SiteId>
                  </Order>
              NPANXXSearchAndOrderType:
                description: >-
                  Specify the NpaNxx combination to be ordered. Valid Npa values
                  ~ [2-9] for the first digit, and [0-9] for both the second and
                  third digits. Valid Nxx values ~ [2-9] for the first digit,
                  and [0-9] for both the second and third digits. A similar
                  approach is viable for NPANXXXX. The EnableLCA flag turns LCA
                  search on or off.


                  Limitations:

                  These order types are unsupported with BackOrderRequested=true
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Order>
                      <CustomerOrderId>123456789</CustomerOrderId>
                      <Name>Area Code Order</Name>
                      <BackOrderRequested>false</BackOrderRequested>
                      <NPANXXSearchAndOrderType>
                          <NpaNxx>919439</NpaNxx>
                          <EnableTNDetail>true</EnableTNDetail>
                          <EnableLCA>false</EnableLCA>
                          <Quantity>1</Quantity>
                      </NPANXXSearchAndOrderType>
                      <PartialAllowed>true</PartialAllowed>
                      <SiteId>743</SiteId>
                  </Order>
              RateCenterSearchAndOrderType:
                description: Specify the Rate Center and the State.
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Order>
                      <CustomerOrderId>123456789</CustomerOrderId>
                      <Name>Area Code Order</Name>
                      <BackOrderRequested>false</BackOrderRequested>
                      <RateCenterSearchAndOrderType>
                          <RateCenter>RALEIGH</RateCenter>
                          <State>NC</State>
                          <Quantity>1</Quantity>
                      </RateCenterSearchAndOrderType>
                      <PartialAllowed>true</PartialAllowed>
                      <SiteId>743</SiteId>
                  </Order>
              StateSearchAndOrderType:
                description: Specify the State to be searched for telephone numbers.
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Order>
                      <CustomerOrderId>123456789</CustomerOrderId>
                      <Name>Area Code Order</Name>
                      <BackOrderRequested>false</BackOrderRequested>
                      <StateSearchAndOrderType>
                          <Quantity>1</Quantity>
                          <State>NC</State>
                      </StateSearchAndOrderType>
                      <PartialAllowed>true</PartialAllowed>
                      <SiteId>743</SiteId>
                  </Order>
              TollFreeVanitySearchAndOrderType:
                description: >-
                  Specify a Toll Free Vanity search, where the numbers ordered
                  match a specific alphanumeric pattern between 4 and 7
                  characters long.
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Order>
                      <CustomerOrderId>123456789</CustomerOrderId>
                      <Name>Area Code Order</Name>
                      <BackOrderRequested>false</BackOrderRequested>
                      <TollFreeVanitySearchAndOrderType>
                          <Quantity>1</Quantity>
                          <TollFreeVanity>newcars</TollFreeVanity>
                      </TollFreeVanitySearchAndOrderType>
                      <PartialAllowed>true</PartialAllowed>
                      <SiteId>743</SiteId>
                  </Order>
              TollFreeWildCharSearchAndOrderType:
                description: >-
                  Specify the Toll Free wild card pattern. To be ordered,
                  comprised of 3 digits beginning with '8'. Examples are 8**,
                  87*, etc.
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Order>
                      <CustomerOrderId>123456789</CustomerOrderId>
                      <Name>Area Code Order</Name>
                      <BackOrderRequested>false</BackOrderRequested>
                      <TollFreeWildCharSearchAndOrderType>
                          <Quantity>1</Quantity>
                          <TollFreeWildCardPattern>8**</TollFreeWildCardPattern>
                      </TollFreeWildCharSearchAndOrderType>
                      <PartialAllowed>true</PartialAllowed>
                      <SiteId>743</SiteId>
                  </Order>
              ZIPSearchAndOrderType:
                description: Specify the Zip Code to be ordered from.
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Order>
                      <CustomerOrderId>123456789</CustomerOrderId>
                      <Name>Area Code Order</Name>
                      <BackOrderRequested>false</BackOrderRequested>
                      <ZIPSearchAndOrderType>
                          <Quantity>1</Quantity>
                          <Zip>27606</Zip>
                      </ZIPSearchAndOrderType>
                      <PartialAllowed>true</PartialAllowed>
                      <SiteId>743</SiteId>
                  </Order>
            schema:
              oneOf:
                - $ref: '#/components/schemas/ExistingTelephoneNumberOrder'
                - $ref: '#/components/schemas/RateCenterSearchAndOrder'
                - $ref: '#/components/schemas/AreaCodeSearchAndOrder'
                - $ref: '#/components/schemas/NPANXXSearchAndOrder'
                - $ref: '#/components/schemas/TollFreeWildCharSearchAndOrder'
                - $ref: '#/components/schemas/TollFreeVanitySearchAndOrder'
                - $ref: '#/components/schemas/LATASearchAndOrder'
                - $ref: '#/components/schemas/ZIPSearchAndOrder'
                - $ref: '#/components/schemas/CitySearchAndOrder'
                - $ref: '#/components/schemas/StateSearchAndOrder'
                - $ref: '#/components/schemas/CombinedSearchAndOrder'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <OrderResponse>
                        <Order>
                            <CustomerOrderId>123456789</CustomerOrderId>
                            <id>34adcd9f-2c4a-4631-9dae-d1f318ed57bc</id>
                            <Name>Zip Order</Name>
                            <OrderCreateDate>2014-07-11T17:13:57.788Z</OrderCreateDate>
                            <BackOrderRequested>false</BackOrderRequested>
                            <ZIPSearchAndOrderType>
                                <Quantity>1</Quantity>
                                <Zip>27606</Zip>
                            </ZIPSearchAndOrderType>
                            <TnAttributes>
                                    <TnAttribute>Protected</TnAttribute>
                                    <TnAttribute>External</TnAttribute>
                                    <TnAttribute>Imported</TnAttribute>
                            </TnAttributes>
                            <PartialAllowed>true</PartialAllowed>
                            <SiteId>3013</SiteId>
                        </Order>
                    </OrderResponse>
              schema:
                $ref: '#/components/schemas/TnOrderCreatedResponse'
          description: An Order has been successfully placed
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <OrderResponse>
                        <ErrorList>
                            <Error>
                                <Code>5016</Code>
                                <Description>The SiteId submitted is invalid.</Description>
                            </Error>
                        </ErrorList>
                        <Order>
                            <CustomerOrderId>123456789</CustomerOrderId>
                            <Name>Area Code Order</Name>
                            <OrderCreateDate>2014-07-08T14:29:13.174Z</OrderCreateDate>
                            <BackOrderRequested>false</BackOrderRequested>
                            <AreaCodeSearchAndOrderType>
                                <AreaCode>435</AreaCode>
                                <Quantity>1</Quantity>
                            </AreaCodeSearchAndOrderType>
                            <TnAttributes>
                                    <TnAttribute>Protected</TnAttribute>
                                    <TnAttribute>External</TnAttribute>
                                    <TnAttribute>Imported</TnAttribute>
                            </TnAttributes>
                            <PartialAllowed>true</PartialAllowed>
                            <SiteId>763</SiteId>
                        </Order>
                    </OrderResponse>
              schema:
                $ref: '#/components/schemas/TnOrderBadResponse'
          description: One or more of the input parameters are invalid
      summary: Create Telephone Number orders
      tags:
        - Orders
  /accounts/{accountId}/orders/totals:
    get:
      description: Retrieves a total number of tn orders.
      operationId: getTotalOrdersByStatus
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - in: query
          name: status
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ResponseSelectWrapper>
                        <ListOrderIdUserIdDate>
                            <TotalCount>122</TotalCount>
                        </ListOrderIdUserIdDate>
                    </ResponseSelectWrapper>
              schema:
                $ref: '#/components/schemas/TnOrderHistoryResponse'
          description: ''
      summary: Get New Number Order TN Count Totals
      tags:
        - Orders
  /accounts/{accountId}/orders/{orderId}:
    get:
      description: >-
        GET all of the details associated with an identified order. <p>Please
        visit <a href='/docs/numbers/guides/searchingForNumbers/'>Guides and
        Tutorials</a> to learn more.</p>
      operationId: RetrieveOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Order id
          example: 34adcd9f-2c4a-4631-9dae-d1f318ed57bc
          in: path
          name: orderId
          required: true
          schema:
            type: string
        - description: >-
            if true, and extended payload describing details about the ordered
            telephone numbers will be provided
          example: true
          in: query
          name: tndetail
          required: false
          schema:
            default: false
            type: boolean
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <OrderResponse>
                        <CompletedQuantity>1</CompletedQuantity>
                        <CreatedByUser>jbm</CreatedByUser>
                        <LastModifiedDate>2014-01-06T19:09:44.027Z</LastModifiedDate>
                        <OrderCompleteDate>2014-01-06T19:09:44.041Z</OrderCompleteDate>
                        <Order>
                            <CustomerOrderId>123456789</CustomerOrderId>
                            <Name>Area Code Order</Name>
                            <OrderCreateDate>2014-01-06T19:09:43.695Z</OrderCreateDate>
                            <PeerId>303716</PeerId>
                            <BackOrderRequested>false</BackOrderRequested>
                            <AreaCodeSearchAndOrderType>
                                <AreaCode>804</AreaCode>
                                <Quantity>1</Quantity>
                            </AreaCodeSearchAndOrderType>
                            <TnAttributes>
                                    <TnAttribute>Protected</TnAttribute>
                                    <TnAttribute>External</TnAttribute>
                                    <TnAttribute>Imported</TnAttribute>
                            </TnAttributes>
                            <PartialAllowed>true</PartialAllowed>
                            <SiteId>743</SiteId>
                        </Order>
                        <OrderStatus>COMPLETE</OrderStatus>
                        <CompletedNumbers>
                            <TelephoneNumber>
                                <FullNumber>8042105666</FullNumber>
                            </TelephoneNumber>
                        </CompletedNumbers>
                        <FailedQuantity>0</FailedQuantity>
                    </OrderResponse>
              schema:
                $ref: '#/components/schemas/TnOrderUpdatedResponse'
          description: ''
      summary: Fetch Telephone Number order details
      tags:
        - Orders
    put:
      description: >-
        With the introduction of Backorder capabilities, new number orders may
        stay in backordered state while the order is filled. While in this state
        it is possible to update the modifiable fields in the record, as well as
        to request that backorder processing of the order be ended.

        The fields that can be updated are...


        <ul>

        <li>The order name</li>

        <li>The customer order id</li>

        <li>The backordered state.</li>

        </ul>


        Specifying a &lt;CloseOrder&gt; value of true will cancel the backorder
        request, leaving the currently ordered numbers on the account.  No
        further numbers will be added to the account as a result of the order.
        <p>Please visit <a
        href='/docs/numbers/guides/searchingForNumbers/'>Guides and
        Tutorials</a> to learn more.</p>
      operationId: UpdateOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Order id
          example: 34adcd9f-2c4a-4631-9dae-d1f318ed57bc
          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"?>

                  <Order>
                      <Name>Available Telephone Number order</Name>    
                      <CustomerOrderId>123456789</CustomerOrderId>
                  <!-- Only alphanumeric values, dashes and spaces are allowed.
                  Max length is 40 characters. -->
                      <CloseOrder>true</CloseOrder>
                  </Order>
            schema:
              $ref: '#/components/schemas/OrderUpdate'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <OrderResponse/>
              schema: {}
          description: >-
            The order has been successfully updated. The payload contains no
            content, but a 200 OK indicates success
        '400':
          description: The request payload is invalid
        '404':
          description: The order-id cannot be found
      summary: Update Telephone Number order
      tags:
        - Orders
  /accounts/{accountId}/orders/{orderId}/areaCodes:
    get:
      description: >-
        Retrieves the area codes of the phone numbers from the specified order.
        <p>Please visit <a
        href='/docs/numbers/guides/searchingForNumbers/'>Guides and
        Tutorials</a> to learn more.</p>
      operationId: ListOrderAreaCodes
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Order id
          example: 34adcd9f-2c4a-4631-9dae-d1f318ed57bc
          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>888</AreaCode>
                            <Count>1</Count>
                        </TelephoneDetailsReport>
                    </TelephoneDetailsReports>
              schema:
                $ref: '#/components/schemas/TelephoneDetailsAreaCodes'
          description: ''
      summary: List Telephone Number order area codes
      tags:
        - Orders
  /accounts/{accountId}/orders/{orderId}/history:
    get:
      description: >-
        Retrieve the history information associated with an order. <p>Please
        visit <a href='/docs/numbers/guides/searchingForNumbers/'>Guides and
        Tutorials</a> to learn more.</p>
      operationId: RetrieveOrderHistory
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Order id
          example: 34adcd9f-2c4a-4631-9dae-d1f318ed57bc
          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>2014-05-20T14:21:43.937Z</OrderDate>
                            <Note>Order backordered - awaiting additional numbers</Note>
                            <Author>System</Author>
                            <Status>BACKORDERED</Status>
                        </OrderHistory>
                        <OrderHistory>
                            <OrderDate>2014-05-20T14:24:43.428Z</OrderDate>
                            <Note>Order backordered - awaiting additional numbers</Note>
                            <Author>System</Author>
                            <Status>BACKORDERED</Status>
                            <Difference>CustomerOrderId : "" --&gt; hello</Difference>
                        </OrderHistory>
                    </OrderHistoryWrapper>
              schema:
                $ref: '#/components/schemas/OrderHistoryWrapper'
          description: >-
            The history payload is a set of history records, each of which
            contains:


            <ul>

            <li>the event date and time</li>

            <li>a message describing the event</li>

            <li>the user causing the event</li>

            <li>the order status at the time of the event</li>

            </ul>


            In the case of an order with no events other than creation, the
            payload will be empty
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ErrorResponse>
                        <ResponseStatus>
                            <Description>The resource does not exist</Description>
                        </ResponseStatus>
                    </ErrorResponse>
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: NOT FOUND - the order id does not exist in the system.
      summary: Retrieve Telephone Number order history
      tags:
        - Orders
  /accounts/{accountId}/orders/{orderId}/notes:
    get:
      description: >-
        Retrieve all notes associated with the order. <p>Please visit <a
        href='/docs/numbers/guides/searchingForNumbers/'>Guides and
        Tutorials</a> to learn more.</p>
      operationId: ListOrderNotes
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Order id
          example: 34adcd9f-2c4a-4631-9dae-d1f318ed57bc
          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/OrderNotesResponse'
          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 Telephone Number order notes
      tags:
        - Orders
    post:
      description: >-
        Updates the Notes resource by adding a note. Adding a note to 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.
        <p>Please visit <a
        href='/docs/numbers/guides/searchingForNumbers/'>Guides and
        Tutorials</a> to learn more.</p>
      operationId: CreateOrderNote
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Order id
          example: 34adcd9f-2c4a-4631-9dae-d1f318ed57bc
          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':
          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 Telephone Number order note
      tags:
        - Orders
  /accounts/{accountId}/orders/{orderId}/notes/{noteId}:
    put:
      description: >-
        Update a specified note. Notes may only be updated, not deleted.
        <p>Please visit <a
        href='/docs/numbers/guides/searchingForNumbers/'>Guides and
        Tutorials</a> to learn more.</p>
      operationId: UpdateOrderNote
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: 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 Telephone Number order note
      tags:
        - Orders
  /accounts/{accountId}/orders/{orderId}/npaNxx:
    get:
      description: >-
        Retrieves the Npa-Nxx of the phone numbers from the specified order.
        <p>Please visit <a
        href='/docs/numbers/guides/searchingForNumbers/'>Guides and
        Tutorials</a> to learn more.</p>
      operationId: ListOrderNpaNxx
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Order id
          example: 34adcd9f-2c4a-4631-9dae-d1f318ed57bc
          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>888424</NPA-NXX>
                            <Count>1</Count>
                        </TelephoneDetailsReport>
                    </TelephoneDetailsReports>
              schema:
                $ref: '#/components/schemas/TelephoneDetailsNpaNxx'
          description: ''
      summary: List Telephone Number order Npa-Nxx
      tags:
        - Orders
  /accounts/{accountId}/orders/{orderId}/tns:
    get:
      description: >-
        Returns a list of phone numbers associated with the ID of a given
        Telephone Number order. <p>Please visit <a
        href='/docs/numbers/guides/searchingForNumbers/'>Guides and
        Tutorials</a> to learn more.</p>
      operationId: ListOrderTns
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Order id
          example: 34adcd9f-2c4a-4631-9dae-d1f318ed57bc
          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>8042105666</TelephoneNumber>
                    </TelephoneNumbers>
              schema:
                $ref: '#/components/schemas/OrderTelephoneNumbersResponse'
          description: ''
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ErrorResponse>
                        <irisStatus>
                            <Code>404</Code>
                            <Description>Order id does not correspond to a given account.</Description>
                        </irisStatus>
                    </ErrorResponse>
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: NOT FOUND - the order id does not exist in the system.
      summary: List Telephone Number order tns
      tags:
        - Orders
  /accounts/{accountId}/orders/{orderId}/totals:
    get:
      description: >-
        Retrieves the total quantity of phone numbers from the specified
        Telephone Number order. <p>Please visit <a
        href='/docs/numbers/guides/searchingForNumbers/'>Guides and
        Tutorials</a> to learn more.</p>
      operationId: RetrieveOrderTotals
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Order id
          example: 34adcd9f-2c4a-4631-9dae-d1f318ed57bc
          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>
                            <Count>1</Count>
                        </TelephoneDetailsReport>
                    </TelephoneDetailsReports>
              schema:
                $ref: '#/components/schemas/TelephoneDetailsTotals'
          description: ''
      summary: Fetch Telephone Number order tn quantity
      tags:
        - Orders
  /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: 9191234567
          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: 9143982871
          in: query
          name: orderTn
          required: false
          schema:
            type: integer
        - 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
      responses:
        '200':
          content:
            application/xml:
              examples:
                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>9196247209</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>2174101100</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>
                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/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>8774809871</PhoneNumber>\n\t</ListOfPhoneNumbers>\n</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>9195551234</BillingTelephoneNumber>\n\t<NewBillingTelephoneNumber>9175131245</NewBillingTelephoneNumber>\n\t<SiteId>    SITE ID     </SiteId>\n\t<PeerId>  SIPPEER ID    </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>9194809871</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/OffNetNANPLnpOrderRequest'
                - $ref: '#/components/schemas/InternalNANPLnpOrderRequest'
                - $ref: '#/components/schemas/ManualNANPTollFreeLnpOrderRequest'
                - $ref: '#/components/schemas/AutomatedNANPTollFreeLnpOrderRequest'
                - $ref: '#/components/schemas/LnpOrderRequest'
      responses:
        '201':
          content:
            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>8774809871</PhoneNumber>\n\t</ListOfPhoneNumbers>\n\t<TollFreeValidationStatus>PROCESSING</TollFreeValidationStatus>\n\t<TollFreePortType>PHASE_1_TOLLFREE</TollFreePortType>\n\t<TargetRespOrgId>JYT01</TargetRespOrgId>\n</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>9195551234</BillingTelephoneNumber>\n\t<NewBillingTelephoneNumber>9175131245</NewBillingTelephoneNumber>\n\t<SiteId>    SITE ID     </SiteId>\n\t<PeerId>  SIPPEER ID    </PeerId>\n\t<ListOfPhoneNumbers>\n\t\t<PhoneNumber>9194809871</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:
                $ref: '#/components/schemas/LnpOrderResponse'
          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/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>9195551234</BillingTelephoneNumber>
                      <NewBillingTelephoneNumber>9175131245</NewBillingTelephoneNumber>
                      <ListOfPhoneNumbers>
                        <PhoneNumber>9194809871</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/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/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':
          description: The port-in order has been successfully deleted/cancelled.
        '400':
          content:
            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/xml:
              examples:
                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>9195551234</BillingTelephoneNumber>
                        <NewBillingTelephoneNumber>9175131245</NewBillingTelephoneNumber>
                        <ListOfPhoneNumbers>
                            <PhoneNumber>9194809871</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>8336521001</PhoneNumber>\n\t\t<PhoneNumber>8336522001</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>8336521001</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>8336522001</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>8336000001</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>8336000001</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>8336532112</PhoneNumber>
                        <PhoneNumber>8336532113</PhoneNumber>
                        <PhoneNumber>8336532114</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'
          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. As a result, we <b>STRONGLY
        RECOMMEND</b> performing a GET on the order and copying those element
        values to the PUT for any elements you are not explicitly trying to
        change the value of.</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/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>2019721004</PhoneNumber>
                      <PhoneNumber>2019721005</PhoneNumber>
                    </ListOfPhoneNumbers>
                    <LoaAuthorizingPerson>TestName TestLastName</LoaAuthorizingPerson>
                    <TargetRespOrgId>JYT01</TargetRespOrgId>
                  </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>8045030092</BillingTelephoneNumber>
                    <NewBillingTelephoneNumber>9175131245</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>2019721004</PhoneNumber>
                      <PhoneNumber>2019721005</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
      responses:
        '200':
          content:
            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>2019721004</PhoneNumber>
                        <PhoneNumber>2019721005</PhoneNumber>
                      </ListOfPhoneNumbers>
                      <LoaAuthorizingPerson>TestName TestLastName</LoaAuthorizingPerson>
                      <TargetRespOrgId>JYT01</TargetRespOrgId>
                    </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>8045030092</BillingTelephoneNumber>
                      <NewBillingTelephoneNumber>9175131245</NewBillingTelephoneNumber>
                      <Triggered>false</Triggered>
                      <LosingResellerName>My Current Provider Name</LosingResellerName>
                    </LnpOrderResponse>
              schema:
                $ref: '#/components/schemas/LnpOrderPutResponse'
          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/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>7138391156</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>2024551000</Tn>
                          <Tn>2018391156</Tn>
                          <Tn>2018391157</Tn>
                        </TelephoneNumbers>
                      </Errors>
                      <ProcessingStatus>EXCEPTION</ProcessingStatus>
                      <BillingTelephoneNumber>4352154438</BillingTelephoneNumber>
                    </LnpOrderResponse>
              schema:
                $ref: '#/components/schemas/LnpOrderPutResponse'
          description: >-
            List of telephone numbers cannot be changed due to validation
            errors.
        '409':
          content:
            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>2019721103</BillingTelephoneNumber>
                      <ListOfPhoneNumbers>
                        <PhoneNumber>2019721103</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}/activationStatus:
    get:
      description: >-
        Retrieve the status (activated or not activated) of TNs associated with
        the customer activated (triggered) order. <br><br>

        At this time all phone numbers associated with a PON will be activated
        at the same time.
      operationId: retrievePortinActivationStatus
      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"?>
                    <ActivationStatusResponse>
                        <ActivationStatus>
                            <AutoActivationDate>2014-08-29T18:30:00+03:00</AutoActivationDate>
                            <ActivatedTelephoneNumbersList>
                                <TelephoneNumber>6052609021</TelephoneNumber>
                            </ActivatedTelephoneNumbersList>
                            <NotYetActivatedTelephoneNumbersList/>
                        </ActivationStatus>
                    </ActivationStatusResponse>
              schema:
                $ref: '#/components/schemas/ActivationStatusResponse'
          description: Activation Status information is available for this order.
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ActivationStatusResponse>
                        <ResponseStatus>
                            <ErrorCode>7342</ErrorCode>
                            <Description>On demand port-in activation not yet allowed.</Description>
                        </ResponseStatus>
                    </ActivationStatusResponse>
          description: >-
            Return a 400 error if the port-in Order is not in FOC status, or if
            not executed on the day of FOC or within the delay interval.
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ActivationStatusResponse>
                     <ResponseStatus>
                     <ErrorCode>7348</ErrorCode>
                     <Description>The order is already complete</Description>
                     </ResponseStatus>
                     </ActivationStatusResponse>
          description: >
            <p>Return a 404 if the Port-in Order is missing, or if the
            activation is complete, and thus the ActivationStatus resource has
            been erased.</p>
      summary: Retrieve port-in order activation status
      tags:
        - Porting
    put:
      description: >
        Sets the activation time for the port-in order.  <br> <br>

        This API call is used to set the Activation time of the customer
        activated (triggered) port.</p>


        <ul>

        <li>If the time is in the past all of the TNs in the port-in request
        will be activated 'immediately'.</li>

        <li>For automated on-net port-ins, if the time is within three days
        after the approved FoC date, the auto-activation time for the port will
        be set to that time.</li>

        <li>For automated off-net port-ins, if the date matches the actual FOC
        date and the time is between 6:00 AM ET and 10:00 PM ET, the
        auto-activation time for the port will be set to that time.</li>

        </ul>
      operationId: UpdatePortinActivationStatus
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          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"?>
                  <ActivationStatus>
                      <AutoActivationDate>2014-08-30T18:30:00+03:00</AutoActivationDate>
                  </ActivationStatus>
            schema:
              $ref: '#/components/schemas/ActivationStatus'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ActivationStatusResponse>
                        <ActivationStatus>
                            <AutoActivationDate>2014-08-30T18:30:00+03:00</AutoActivationDate>
                        </ActivationStatus>
                    </ActivationStatusResponse>
          description: Activation status successfully updated
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ActivationStatusResponse>
                        <ResponseStatus>
                            <ErrorCode>7342</ErrorCode>
                            <Description>On demand port-in activation not yet allowed.</Description>
                        </ResponseStatus>
                    </ActivationStatusResponse>
          description: Bad request. Check input parameters.
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ActivationStatusResponse>
                        <ResponseStatus>
                            <ErrorCode>7348</ErrorCode>
                            <Description>The order is already complete</Description>
                        </ResponseStatus>
                    </ActivationStatusResponse>
          description: Order id was not found.
      summary: Update port-in order activation status
      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/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/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':
          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/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 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/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 Metatdata 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/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/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/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/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/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 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/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/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>9192809870</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
      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>
                        </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:
                example:
                  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}/products:
    get:
      description: |
        Discover what is currently enabled on the account
      operationId: ListProducts
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: 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>VirtualInventory</Name>
                            </Product>
                            <Product>
                                <Name>TollFree</Name>
                            </Product>
                            <Product>
                                <Name>Origination</Name>
                                <Features>
                                    <Feature>CallForwarding</Feature>
                                    <Feature>DlDa</Feature>
                                    <Feature>CNAM</Feature>
                                    <Feature>OrigHttpVoice</Feature>
                                </Features>
                            </Product>
                            <Product>
                                <Name>MESSAGING</Name>
                                <Features>
                                  <Feature>SMS</Feature>
                                  <Feature>MMS</Feature>
                                  <Feature>HTTP</Feature>
                                  <Feature>HTTPV2</Feature>
                                  <Feature>TollFree</Feature>
                                </Features>
                            </Product>
                            <Product>
                                <Name>NumberManagement</Name>
                                <Features>
                                  <Feature>ORDERING</Feature>
                                  <Feature>LNP</Feature>
                                  <Feature>EXTERNAL_TNS</Feature>
                                  <Feature>PROTECTED_TNS</Feature>
                                  <Feature>TN_ASSIGNMENT</Feature>
                                  <Feature>RESERVATION</Feature>
                                  <Feature>LSR</Feature>
                                </Features>
                            </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/termination/settings:
    get:
      description: Retrieve termination product settings on account.
      operationId: GetAccountTerminationProductSettings
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TerminationSettingResponse>
                        <TerminationSettings>
                            <RogerUsedForTerminationSettings>false</RogerUsedForTerminationSettings>
                            <LegacyTerminationSettings>
                                <CustomerTrafficAllowed>ALL</CustomerTrafficAllowed>
                                <CpsQueue>300</CpsQueue>
                                <ConcurrentOutboundCalls>15</ConcurrentOutboundCalls>
                                <ConcurrentBidirectionalCalls>0</ConcurrentBidirectionalCalls>
                                <BillingType>DNIS</BillingType>
                                <RateType>npanxx</RateType>
                                <DiscountPercentage>29</DiscountPercentage>
                                <GuaranteedTermination>false</GuaranteedTermination>
                            </LegacyTerminationSettings>
                            <RogerTerminationSettings/>
                        </TerminationSettings>
                        <!-- For Full Termination -->
                        <TerminationSettings>
                            <RogerUsedForTerminationSettings>true</RogerUsedForTerminationSettings>
                            <HttpVoiceProxyTermHost>[Host IP address]</HttpVoiceProxyTermHost>
                            <RogerTerminationSettings>
                                <SubnetAddressingAllowed>true</SubnetAddressingAllowed>
                            </RogerTerminationSettings>
                        </TerminationSettings>
                    </TerminationSettingResponse>
              schema:
                $ref: '#/components/schemas/TerminationSettingsResponse'
          description: ''
      summary: Retrieve termination 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:
    get:
      description: >-
        Retrieves the Remove Imported 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: ListRemoveImportedTnOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The status of the Remove Imported Tn Orders being searched for
          example: PARTIAL
          in: query
          name: status
          required: false
          schema:
            items:
              enum:
                - PROCESSING
                - COMPLETE
                - PARTIAL
                - FAILED
              type: string
            type: array
        - description: A Telephone Number (TN) that is referenced in the order
          example: '9199918388'
          in: query
          name: tn
          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 Remove Imported Tn Order
          example: ABCCorp12345
          in: query
          name: customerOrderId
          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: '2022-04-19'
          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: '2022-04-19'
          in: query
          name: createdDateTo
          required: false
          schema:
            type: string
        - description: >-
            For Date-based searches, the starting date of a date range
            (inclusive) that will be used to find Remove Imported Tn Orders that
            were modified within the date range. It is in the form yyyy-MM-dd
          example: '2022-04-19'
          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 Remove Imported Tn Orders that were
            modified within the date range. It is in the form yyyy-MM-dd
          example: '2022-04-19'
          in: query
          name: modifiedDateTo
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RemoveImportedTnOrders>
                       <TotalCount>2</TotalCount>
                       <RemoveImportedTnOrderSummary>
                          <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_tn_orders</OrderType>
                          <OrderStatus>COMPLETE</OrderStatus>
                          <OrderId>4f2d090b-ece7-49ab-9c40-06d1425c39c3</OrderId>
                       </RemoveImportedTnOrderSummary>
                       <RemoveImportedTnOrderSummary>
                          <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_tn_orders</OrderType>
                          <OrderStatus>PARTIAL</OrderStatus>
                          <OrderId>ca30ea6a-018a-4cae-9d49-3d419fefdbe3</OrderId>
                       </RemoveImportedTnOrderSummary>
                    </RemoveImportedTnOrders>
              schema:
                $ref: '#/components/schemas/RemoveImportedTnOrders'
          description: >-
            The descriptive payload for the Remove Imported 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 Tn Orders
      tags:
        - Hosted Messaging
    post:
      description: >-
        Creates a Remove Imported 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: CreateRemoveImportedTnOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <RemoveImportedTnOrder>
                     <CustomerOrderId>ICPA123ABC</CustomerOrderId>
                     <TelephoneNumbers>
                        <TelephoneNumber>9199918388</TelephoneNumber>
                        <TelephoneNumber>4158714245</TelephoneNumber>
                        <TelephoneNumber>4352154439</TelephoneNumber>
                        <TelephoneNumber>4352154466</TelephoneNumber>
                     </TelephoneNumbers>
                  </RemoveImportedTnOrder>
            schema:
              $ref: '#/components/schemas/RemoveImportedTnOrderRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RemoveImportedTnOrdersResponse>
                       <RemoveImportedTnOrder>
                          <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>9199918388</TelephoneNumber>
                             <TelephoneNumber>4158714245</TelephoneNumber>
                             <TelephoneNumber>4352154439</TelephoneNumber>
                             <TelephoneNumber>4352154466</TelephoneNumber>
                          </TelephoneNumbers>
                          <ProcessingStatus>PROCESSING</ProcessingStatus>
                          <Errors/>
                       </RemoveImportedTnOrder>
                    </RemoveImportedTnOrdersResponse>
              schema:
                $ref: '#/components/schemas/RemoveImportedTnOrdersResponse'
          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"?>
                    <RemoveImportedTnOrdersResponse>
                       <ProcessingStatus>FAILED</ProcessingStatus>
                       <Errors>
                          <Code>1234</Code>
                          <Description>The customer order id is invalid.</Description>
                       </Errors>
                    </RemoveImportedTnOrdersResponse>
          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
      summary: Create Remove Imported Tn Order
      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'
        - $ref: '#/components/parameters/SipPeerIdQueryParam'
      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>9199918388</TelephoneNumber>
                        <TelephoneNumber>4158714245</TelephoneNumber>
                        <TelephoneNumber>4352154439</TelephoneNumber>
                        <TelephoneNumber>4352154466</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>9199918388</TelephoneNumber>
                             <TelephoneNumber>4158714245</TelephoneNumber>
                             <TelephoneNumber>4352154439</TelephoneNumber>
                             <TelephoneNumber>4352154466</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>2106078250</TelephoneNumber>
                          <TelephoneNumber>2109678273</TelephoneNumber>
                          <TelephoneNumber>2109678331</TelephoneNumber>
                          <TelephoneNumber>2109678337</TelephoneNumber>
                          <TelephoneNumber>2266401468</TelephoneNumber>
                       </TelephoneNumbers>
                       <ProcessingStatus>PARTIAL</ProcessingStatus>
                       <Errors>
                          <Error>
                             <Code>7518</Code>
                             <Description>Telephone Number Not Active.</Description>
                             <TelephoneNumbers>
                                <TelephoneNumber>2262665583</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}/removeImportedTnOrders/{orderId}:
    get:
      description: Retrieve information about a removeImportedTnOrder with specified ID
      operationId: RetrieveRemoveImportedTnOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ID of `RemoveImportedTnOrder` to retrieve
          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"?>
                    <RemoveImportedTnOrder>
                       <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>2106078250</TelephoneNumber>
                          <TelephoneNumber>2109678273</TelephoneNumber>
                          <TelephoneNumber>2109678331</TelephoneNumber>
                          <TelephoneNumber>2109678337</TelephoneNumber>
                          <TelephoneNumber>2266401468</TelephoneNumber>
                       </TelephoneNumbers>
                       <ProcessingStatus>PARTIAL</ProcessingStatus>
                       <Errors>
                          <Error>
                             <Code>7518</Code>
                             <Description>Telephone Number Not Active.</Description>
                             <TelephoneNumbers>
                                <TelephoneNumber>2262665583</TelephoneNumber>
                             </TelephoneNumbers>
                          </Error>
                       </Errors>
                    </RemoveImportedTnOrder>
              schema:
                $ref: '#/components/schemas/RemoveImportedTnOrdersResponse'
          description: >-
            The information 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 Tn Order
      tags:
        - Hosted Messaging
  /accounts/{accountId}/removeImportedTnOrders/{orderId}/history:
    get:
      description: Retrieves the history of the specified Remove Imported 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 Tn Order history
      tags:
        - Hosted Messaging
  /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)
      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}/shortcodes:
    get:
      description: Retrieves all the short codes registered with an account.
      operationId: getAllShortCodesByAccount
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/shortCodeOffsetQueryParam'
        - $ref: '#/components/parameters/shortCodeLimitQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/shortCodeGetAllShortCodesByAccountResponse'
        '400':
          $ref: '#/components/responses/shortCode400'
        '401':
          $ref: '#/components/responses/shortCode401'
        '403':
          $ref: '#/components/responses/shortCode403'
        '404':
          $ref: '#/components/responses/shortCode404'
        '405':
          $ref: '#/components/responses/shortCode405'
        '429':
          $ref: '#/components/responses/shortCode429'
        '500':
          $ref: '#/components/responses/shortCode500'
      summary: Retrieve short codes by account.
      tags:
        - Short Codes
  /accounts/{accountId}/shortcodes/{shortCode}/{country}:
    get:
      description: >-
        Retrieve the details of an account's registration of a short code for a
        single country.
      operationId: getShortCodeByAccountIdCountryAndShortCode
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/shortCodePathParam'
        - $ref: '#/components/parameters/shortCodeCountryPathParam'
      responses:
        '200':
          $ref: >-
            #/components/responses/shortCodeGetShortCodeByAccountIdCountryAndShortCodeResponse
        '400':
          $ref: '#/components/responses/shortCode400'
        '401':
          $ref: '#/components/responses/shortCode401'
        '403':
          $ref: '#/components/responses/shortCode403'
        '404':
          $ref: '#/components/responses/shortCode404'
        '405':
          $ref: '#/components/responses/shortCode405'
        '429':
          $ref: '#/components/responses/shortCode429'
        '500':
          $ref: '#/components/responses/shortCode500'
      summary: Retrieve short code details.
      tags:
        - Short Codes
    patch:
      description: >-
        Update (field by field) an account's short code registration for a
        country. This utilizes [Json Patch](https://jsonpatch.com/).
      operationId: patchShortCodeLease
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/shortCodePathParam'
        - $ref: '#/components/parameters/shortCodeCountryPathParam'
      requestBody:
        $ref: '#/components/requestBodies/shortCodeJsonPatchShortCodeRequest'
      responses:
        '200':
          $ref: '#/components/responses/shortCodeUpdateShortCodeResponse'
        '400':
          $ref: '#/components/responses/shortCode400'
        '401':
          $ref: '#/components/responses/shortCode401'
        '403':
          $ref: '#/components/responses/shortCode403'
        '404':
          $ref: '#/components/responses/shortCode404'
        '405':
          $ref: '#/components/responses/shortCode405'
        '409':
          $ref: '#/components/responses/shortCode409'
        '429':
          $ref: '#/components/responses/shortCode429'
        '500':
          $ref: '#/components/responses/shortCode500'
      summary: >-
        Update the lease information of an account's short code registration for
        a country.
      tags:
        - Short Codes
  /accounts/{accountId}/shortcodes/{shortCode}/{country}/history:
    get:
      description: >-
        Retrieves a complete history of all updates associated with an account's
        registration of a short code for a single country.
      operationId: getShortCodeHistoryAccountIdCountryAndShortCode
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/shortCodePathParam'
        - $ref: '#/components/parameters/shortCodeCountryPathParam'
        - $ref: '#/components/parameters/shortCodeOffsetQueryParam'
        - $ref: '#/components/parameters/shortCodeLimitQueryParam'
        - $ref: '#/components/parameters/shortCodeHistoryShortCodeSortParam'
        - $ref: '#/components/parameters/shortCodeHistoryVersionSortParam'
      responses:
        '200':
          $ref: >-
            #/components/responses/shortCodeGetShortCodeHistoryAccountIdCountryAndShortCodeResponse
        '400':
          $ref: '#/components/responses/shortCode400'
        '401':
          $ref: '#/components/responses/shortCode401'
        '403':
          $ref: '#/components/responses/shortCode403'
        '404':
          $ref: '#/components/responses/shortCode404'
        '405':
          $ref: '#/components/responses/shortCode405'
        '429':
          $ref: '#/components/responses/shortCode429'
        '500':
          $ref: '#/components/responses/shortCode500'
      summary: Retrieve short code history.
      tags:
        - Short Codes
  /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:
    get:
      description: Retrieve a list of all Sites associated with the account
      operationId: ListSites
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: >-
            Provides response payload with total telephone numbers count for
            every Site on Account if specified as true
          example: true
          in: query
          name: tnCounts
          required: false
          schema:
            default: false
            type: boolean
        - description: >
            Provides response payload with list of every SipPeer for every Site
            on Account with fields:


            <ul>

            <li>PeerId</li>

            <li>PeerName</li>

            <li>Description</li>

            <li>IsDefaultPeer</li>

            <li>Address</li>

            <li>FinalDestinationUri</li>

            <li>PremiseTrunks</li>

            <li>CallingName</li>

            <li>SsSendToCustomer</li>

            </ul>


            <p>Also each site will contains a count of sippers on it:</p>


            <ul>

            <li>SipPeerCount</li>

            </ul>
          example: true
          in: query
          name: sipPeerDetails
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            Provides response payload with list of basic information about every
            SipPeer for every Site on Account and overrides sipPeerDetails
            parameter if specified as true
          example: true
          in: query
          name: summary
          required: false
          schema:
            default: false
            type: boolean
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SitesResponse>
                       <Sites>
                          <Site>
                             <Id>399</Id>
                             <Name>SiteName</Name>
                             <Description>NewSite</Description>
                          </Site>
                          <Site>
                             <Id>403</Id>
                             <Name>TestSite2</Name>
                             <Description>SomeOtherSite</Description>
                          </Site>
                       </Sites>
                    </SitesResponse>
              schema:
                $ref: '#/components/schemas/SitesResponse'
          description: >-
            A 200 OK response will contains a list of all the Sites associated
            with the account
      summary: List Sites
      tags:
        - Site Management
    post:
      description: Add a Site to the account
      operationId: CreateSite
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            For an account with a global address:
              value: |-
                <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                <Site>
                   <Name>Raleigh</Name>
                   <Description>Test Gateway</Description>
                   <CustomerName>BW</CustomerName>
                   <LinkedAddresses>
                     <LinkedAddress>
                       <AddressId>daa9dd0f-de97-4103-8530-b31bf4be8fc0</AddressId>
                       <AddressType>SERVICE</AddressType>
                       <Link>https://api.bandwidth.com/api/v2/accounts/14/addresses/daa9dd0f-de97-4103-8530-b31bf4be8fc0</Link>
                     </LinkedAddress>
                   </LinkedAddresses>  
                   <UcTrunkingConfiguration>
                      <Type>Seats</Type>
                      <UsageCategory>UC500</UsageCategory>
                   </UcTrunkingConfiguration>
                </Site>
            examples:
              For a Non UC account:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Site>
                     <Name>Raleigh</Name>
                     <Description>Test Gateway</Description>
                     <CustomerName>BW</CustomerName>
                     <Address>
                        <HouseNumber>1600</HouseNumber>
                        <StreetName>PENNSYLVANIA</StreetName>
                        <StreetSuffix>AVE</StreetSuffix>
                        <PostDirectional>NW</PostDirectional>
                        <City>WASHINGTON</City>
                        <StateCode>DC</StateCode>
                        <Zip>20006</Zip>
                        <Country>US</Country>
                     </Address>
                  </Site>
              For a UC account:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Site>
                     <Name>Raleigh</Name>
                     <Description>Test Gateway</Description>
                     <CustomerName>BW</CustomerName>
                     <Address>
                        <HouseNumber>1600</HouseNumber>
                        <StreetName>PENNSYLVANIA</StreetName>
                        <StreetSuffix>AVE</StreetSuffix>
                        <PostDirectional>NW</PostDirectional>
                        <City>WASHINGTON</City>
                        <StateCode>DC</StateCode>
                        <Zip>20006</Zip>
                        <Country>US</Country>
                     </Address>
                     <UcTrunkingConfiguration>
                        <Type>Seats</Type>
                        <UsageCategory>UC500</UsageCategory>
                     </UcTrunkingConfiguration>
                  </Site>
            schema:
              properties:
                Address:
                  description: Service Address for the Site
                  type: object
                CustomerName:
                  description: Customer can provide an optional name
                  type: string
                CustomerProvidedId:
                  description: >-
                    Customer can provide an optional id. Note that the customer
                    can use the same id across multiple orders.
                  maxLength: 10
                  type: integer
                Description:
                  description: Customer provided description of the Site
                  type: string
                Name:
                  description: The name of the Site
                  maxLength: 10
                  type: string
                UcTrunkingConfiguration:
                  description: >-
                    For UC Trunking accounts the UcTrunkingConfiguration element
                    describes the kind of UC trunking that is provided. The Type
                    parameter is one of Seats, Premise, or Cloud, and the
                    UsageCategory parameter is one of UC250, UC500 or UC1000.
                  properties:
                    Type:
                      enum:
                        - Seats
                        - Premise
                        - Cloud
                      type: string
                    UsageCategory:
                      enum:
                        - UC250
                        - UC500
                        - UC1000
                      type: string
                  type: object
              title: CreateSite
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SiteResponse>
                       <Site>
                          <Id>3013</Id>
                          <Name>Raleigh</Name>
                          <Description>Test Gateway</Description>
                          <CustomerName>BW</CustomerName>
                          <Address>
                             <HouseNumber>1600</HouseNumber>
                             <StreetName>PENNSYLVANIA</StreetName>
                             <StreetSuffix>AVE</StreetSuffix>
                             <PostDirectional>NW</PostDirectional>
                             <City>WASHINGTON</City>
                             <StateCode>DC</StateCode>
                             <Zip>20006</Zip>
                             <Country>US</Country>
                             <AddressType>Service</AddressType>
                          </Address>
                          <LinkedAddresses>
                            <LinkedAddress>
                              <AddressId>daa9dd0f-de97-4103-8530-b31bf4be8fc0</AddressId>
                              <AddressType>SERVICE</AddressType>
                              <Link>https://api.bandwidth.com/api/v2/accounts/14/addresses/daa9dd0f-de97-4103-8530-b31bf4be8fc0</Link>
                            </LinkedAddress>
                          </LinkedAddresses> 
                       </Site>
                    </SiteResponse>
              schema:
                $ref: '#/components/schemas/SiteResponse'
          description: The Site has been successfully added to the account
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SiteResponse>
                       <ResponseStatus>
                          <ErrorCode>1003</ErrorCode>
                          <Description>Address is required</Description>
                       </ResponseStatus>
                    </SiteResponse>
              schema:
                $ref: '#/components/schemas/SiteResponseBadRequest'
          description: Information is missing from the body of the add Site request
        '409':
          content:
            application/xml:
              examples:
                example:
                  value: >-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

                    <SiteResponse>
                       <ResponseStatus>
                          <ErrorCode>12112</ErrorCode>
                          <Description>The verifiable address closest to the submitted access is included below. Please use that street address or another valid street address in your next request</Description>
                       </ResponseStatus>
                       <AddressErrorDescription>
                          <AddressInconsistencies>Some adjustments are required to allow the address to pass geocoding:
                    Specified value - Street Name : "PENNSYLVANIO" Valid value -
                    "PENNSYLVANIA"</AddressInconsistencies>
                          <RecommendedAddress>
                             <AddressLine1>1600 PENNSYLVANIA AVE NW</AddressLine1>
                             <HouseNumber>1600</HouseNumber>
                             <StreetName>PENNSYLVANIA</StreetName>
                             <StreetSuffix>AVE</StreetSuffix>
                             <PostDirectional>NW</PostDirectional>
                             <City>WASHINGTON</City>
                             <StateCode>DC</StateCode>
                             <Zip>20006</Zip>
                             <Country>US</Country>
                          </RecommendedAddress>
                       </AddressErrorDescription>
                       <Site>
                          <Name>Raleigh</Name>
                          <Description>Test Gateway</Description>
                          <CustomerName>BW</CustomerName>
                          <Address>
                             <HouseNumber>1600</HouseNumber>
                             <StreetName>PENNSYLVANIO</StreetName>
                             <StreetSuffix>AVE</StreetSuffix>
                             <PostDirectional>NW</PostDirectional>
                             <City>WASHINGTON</City>
                             <StateCode>DC</StateCode>
                             <Zip>20006</Zip>
                             <Country>US</Country>
                          </Address>
                          <UcTrunkingConfiguration>
                             <Type>Seats</Type>
                             <UsageCategory>UC500</UsageCategory>
                          </UcTrunkingConfiguration>
                       </Site>
                    </SiteResponse>
              schema:
                $ref: '#/components/schemas/SiteResponseConflict'
          description: Address needs some changes
      summary: Create Site
      tags:
        - Site Management
  /accounts/{accountId}/sites/{siteId}:
    delete:
      description: >-
        Deletes the Site. Sites can only be deleted if there are no SIP Peers
        attached to it
      operationId: DeleteSite
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ID of the Site to delete
          example: '407'
          in: path
          name: siteId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: The Site has been successfully deleted
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SiteResponse>
                       <ResponseStatus>
                          <ErrorCode>12054</ErrorCode>
                          <Description>This site is currently locked for contract paperwork. Please contact support for further assistance.</Description>
                       </ResponseStatus>
                    </SiteResponse>
              schema:
                $ref: '#/components/schemas/SiteResponseBadRequest'
          description: DELETE request is invalid given the current state of the Site
      summary: Delete Site
      tags:
        - Site Management
    get:
      description: Retrieves the information associated with the Site id
      operationId: ReadSite
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ID of the Site to retrieve
          example: '407'
          in: path
          name: siteId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                For a Non UC account:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SiteResponse>
                       <Site>
                          <Id>3013</Id>
                          <Name>Raleigh</Name>
                          <Description>Test Gateway</Description>
                          <CustomerName>BW</CustomerName>
                          <Address>
                             <HouseNumber>1600</HouseNumber>
                             <StreetName>PENNSYLVANIA</StreetName>
                             <StreetSuffix>AVE</StreetSuffix>
                             <PostDirectional>NW</PostDirectional>
                             <City>WASHINGTON</City>
                             <StateCode>DC</StateCode>
                             <Zip>20006</Zip>
                             <Country>US</Country>
                             <AddressType>Service</AddressType>
                          </Address>
                          <LinkedAddresses>
                            <LinkedAddress>
                              <AddressId>daa9dd0f-de97-4103-8530-b31bf4be8fc0</AddressId>
                              <AddressType>SERVICE</AddressType>
                              <Link>https://api.bandwidth.com/api/v2/accounts/14/addresses/daa9dd0f-de97-4103-8530-b31bf4be8fc0</Link>
                            </LinkedAddress>
                          </LinkedAddresses>                     
                       </Site>
                    </SiteResponse>
                For a UC account:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SiteResponse>
                       <Site>
                          <Id>3013</Id>
                          <Name>Raleigh</Name>
                          <Description>Test Gateway</Description>
                          <CustomerName>BW</CustomerName>
                          <Address>
                             <HouseNumber>1600</HouseNumber>
                             <StreetName>PENNSYLVANIA</StreetName>
                             <StreetSuffix>AVE</StreetSuffix>
                             <PostDirectional>NW</PostDirectional>
                             <City>WASHINGTON</City>
                             <StateCode>DC</StateCode>
                             <Zip>20006</Zip>
                             <Country>US</Country>
                             <AddressType>Service</AddressType>
                          </Address>
                          <UcTrunkingConfiguration>
                             <Type>Seats</Type>
                             <UsageCategory>UC500</UsageCategory>
                          </UcTrunkingConfiguration>
                       </Site>
                    </SiteResponse>
              schema:
                $ref: '#/components/schemas/SiteResponse'
          description: Site information was successfully retrieved
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SiteResponse>
                       <ResponseStatus>
                          <ErrorCode>12016</ErrorCode>
                          <Description>Site '3014' does not exist</Description>
                       </ResponseStatus>
                    </SiteResponse>
              schema:
                $ref: '#/components/schemas/SiteResponseBadRequest'
          description: The Site was not found for supplied id
      summary: Retrieve Site
      tags:
        - Site Management
    put:
      description: Updates the contents of Site
      operationId: UpdateSite
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ID of the Site to update
          example: '407'
          in: path
          name: siteId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              For a Non Uc account:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Site>
                     <Name>Raleigh</Name>
                     <Description>SIP gateway</Description>
                     <CustomerName>BW</CustomerName>
                     <CustomerProvidedId>1234567890</CustomerProvidedId>
                     <Address>
                        <HouseNumber>1600</HouseNumber>
                        <StreetName>PENNSYLVANIA</StreetName>
                        <StreetSuffix>AVE</StreetSuffix>
                        <PostDirectional>NW</PostDirectional>
                        <City>WASHINGTON</City>
                        <StateCode>DC</StateCode>
                        <Zip>20006</Zip>
                        <Country>US</Country>
                        <AddressType>Service</AddressType>
                     </Address>
                  </Site>
              For a UC account:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Site>
                     <Name>Raleigh</Name>
                     <Description>SIP gateway</Description>
                     <CustomerName>BW</CustomerName>
                     <CustomerProvidedId>1234567890</CustomerProvidedId>
                     <Address>
                        <HouseNumber>1600</HouseNumber>
                        <StreetName>PENNSYLVANIA</StreetName>
                        <StreetSuffix>AVE</StreetSuffix>
                        <PostDirectional>NW</PostDirectional>
                        <City>WASHINGTON</City>
                        <StateCode>DC</StateCode>
                        <Zip>20006</Zip>
                        <Country>US</Country>
                        <AddressType>Service</AddressType>
                     </Address>
                     <UcTrunkingConfiguration>
                        <Type>Seats</Type>
                        <UsageCategory>UC500</UsageCategory>
                     </UcTrunkingConfiguration>
                  </Site>
            schema:
              properties:
                Address:
                  description: Service Address for the Site
                  type: object
                CustomerName:
                  description: Customer can provide an optional name
                  type: string
                CustomerProvidedId:
                  description: >-
                    Customer can provide an optional id. Note that the customer
                    can use the same id across multiple orders.
                  maxLength: 10
                  type: integer
                Description:
                  description: Customer provided description of the Site
                  type: string
                Name:
                  description: The name of the Site
                  maxLength: 10
                  type: string
                UcTrunkingConfiguration:
                  description: >-
                    For UC Trunking accounts the UcTrunkingConfiguration element
                    describes the kind of UC trunking that is provided. The Type
                    parameter is one of Seats, Premise, or Cloud, and the
                    UsageCategory parameter is one of UC250, UC500 or UC1000.
                  properties:
                    Type:
                      enum:
                        - Seats
                        - Premise
                        - Cloud
                      type: string
                    UsageCategory:
                      enum:
                        - UC250
                        - UC500
                        - UC1000
                      type: string
                  type: object
              title: CreateSite
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SiteResponse>
                       <Site>
                          <Id>3013</Id>
                          <Name>Raleigh</Name>
                          <Description>Test Gateway</Description>
                          <CustomerName>BW</CustomerName>
                          <Address>
                             <HouseNumber>1600</HouseNumber>
                             <StreetName>PENNSYLVANIA</StreetName>
                             <StreetSuffix>AVE</StreetSuffix>
                             <PostDirectional>NW</PostDirectional>
                             <City>WASHINGTON</City>
                             <StateCode>DC</StateCode>
                             <Zip>20006</Zip>
                             <Country>US</Country>
                             <AddressType>Service</AddressType>
                          </Address>
                       </Site>
                    </SiteResponse>
              schema:
                $ref: '#/components/schemas/SiteResponse'
          description: The Site has been successfully updated
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SiteResponse>
                       <ResponseStatus>
                          <ErrorCode>1003</ErrorCode>
                          <Description>Address is required</Description>
                       </ResponseStatus>
                    </SiteResponse>
              schema:
                $ref: '#/components/schemas/SiteResponseBadRequest'
          description: Information essential to the Site id is missing or invalid
        '409':
          content:
            application/xml:
              examples:
                example:
                  value: >-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

                    <SiteResponse>
                       <ResponseStatus>
                          <ErrorCode>12112</ErrorCode>
                          <Description>The verifiable address closest to the submitted access is included below. Please use that street address or another valid street address in your next request</Description>
                       </ResponseStatus>
                       <AddressErrorDescription>
                          <AddressInconsistencies>Some adjustments are required to allow the address to pass geocoding:
                    Specified value - Street Name : "PENNSYLVANIO" Valid value -
                    "PENNSYLVANIA"</AddressInconsistencies>
                          <RecommendedAddress>
                             <AddressLine1>1600 PENNSYLVANIA AVE NW</AddressLine1>
                             <HouseNumber>1600</HouseNumber>
                             <StreetName>PENNSYLVANIA</StreetName>
                             <StreetSuffix>AVE</StreetSuffix>
                             <PostDirectional>NW</PostDirectional>
                             <City>WASHINGTON</City>
                             <StateCode>DC</StateCode>
                             <Zip>20006</Zip>
                             <Country>US</Country>
                          </RecommendedAddress>
                       </AddressErrorDescription>
                       <Site>
                          <Name>Raleigh</Name>
                          <Description>SIP gateway</Description>
                          <CustomerName>BW</CustomerName>
                          <CustomerProvidedId>1234567890</CustomerProvidedId>
                          <Address>
                             <HouseNumber>1600</HouseNumber>
                             <StreetName>PENNSYLVANIO</StreetName>
                             <StreetSuffix>AVE</StreetSuffix>
                             <PostDirectional>NW</PostDirectional>
                             <City>WASHINGTON</City>
                             <StateCode>DC</StateCode>
                             <Zip>20006</Zip>
                             <Country>US</Country>
                             <AddressType>Service</AddressType>
                          </Address>
                          <!-- Following applies only to sites on UC Trunking accounts. -->
                          <UcTrunkingConfiguration>
                             <Type>Seats</Type>
                             <UsageCategory>UC500</UsageCategory>
                          </UcTrunkingConfiguration>
                       </Site>
                    </SiteResponse>
              schema:
                $ref: '#/components/schemas/SiteResponseConflict'
          description: Address needs some changes
      summary: Update Site
      tags:
        - Site Management
  /accounts/{accountId}/sites/{siteId}/inserviceNumbers:
    get:
      description: >-
        Retrieves all the telephone numbers currently in-service for the given
        Site
      operationId: RetrieveSiteInserviceNumbers
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ID of the Site to retrieve all INSERVICE numbers
          example: '407'
          in: path
          name: siteId
          required: true
          schema:
            type: string
        - description: >-
            The first in-service number displayed on the page. "1" is used as a
            convention for the first number on the list.
          example: 5555551845
          in: query
          name: page
          required: false
          schema:
            default: 1
            type: integer
        - description: The count of in-service numbers displayed on the page.
          example: 30
          in: query
          name: size
          required: false
          schema:
            default: 300
            type: integer
        - description: A maximum five-digit number
          example: 371
          in: query
          name: lata
          required: false
          schema:
            type: integer
        - description: ''
          example: 1
          in: query
          name: tier
          required: false
          schema:
            type: integer
        - description: ''
          example: ST GEORGE
          in: query
          name: rateCenter
          required: false
          schema:
            type: string
        - description: ''
          example: Raleigh
          in: query
          name: city
          required: false
          schema:
            type: string
        - description: A two-letter representation of the State
          example: NC
          in: query
          name: state
          required: false
          schema:
            type: string
        - description: ''
          example: '435'
          in: query
          name: areaCode
          required: false
          schema:
            type: string
        - description: ''
          example: '435215'
          in: query
          name: npaNxx
          required: false
          schema:
            type: string
        - description: ''
          example: '4352154'
          in: query
          name: npaNxxx
          required: false
          schema:
            type: string
        - description: Startdate and Enddate must be together
          example: 12-01-01
          in: query
          name: startdate
          required: false
          schema:
            type: string
        - description: Startdate and Enddate must be together
          example: 14-01-01
          in: query
          name: enddate
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TNs>
                       <TotalCount>54</TotalCount>
                       <Links>
                          <first>
                             <!-- SNIP -->
                          </first>
                          <next>
                             <!-- SNIP -->
                          </next>
                       </Links>
                       <TelephoneNumbers>
                          <Count>3</Count>
                          <TelephoneNumber>4352154855</TelephoneNumber>
                          <!-- SNIP -->
                          <TelephoneNumber>4352161523</TelephoneNumber>
                       </TelephoneNumbers>
                    </TNs>
              schema:
                $ref: '#/components/schemas/AccountTelephoneNumbersHistoryResponse'
          description: The numbers have been successfully retrieved
      summary: Retrieve Site in-service numbers
      tags:
        - In-service Numbers
  /accounts/{accountId}/sites/{siteId}/orders:
    get:
      description: Retrieves all orders associated with the given Site
      operationId: RetrieveSiteOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ID of the Site to retrieve associated Orders
          example: '407'
          in: path
          name: siteId
          required: true
          schema:
            type: string
        - description: Sets the amount of responses per page
          example: 30
          in: query
          name: size
          required: true
          schema:
            type: integer
        - description: >-
            The first orders ID to show on the page. "1" is used as a convention
            for the first page
          example: 1
          in: query
          name: page
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ResponseSelectWrapper>
                       <ListOrderIdUserIdDate>
                          <TotalCount>47</TotalCount>
                          <Links>
                             <first>Link=&lt;https://api.bandwidth.com/api/accounts/12346099/sites/743/orders?page=1&amp;size=30&gt;;rel="first";</first>
                             <next>Link=&lt;https://api.bandwidth.com/api/accounts/12346099/sites/743/orders?page=fa7bc01a-cb4d-4eae-9621-560020f45105&amp;size=30&gt;;rel="next";</next>
                          </Links>
                          <OrderIdUserIdDate>
                             <CountOfTNs>1</CountOfTNs>
                             <userId>jbm</userId>
                             <lastModifiedDate>2014-01-06T19:09:44.027Z</lastModifiedDate>
                             <OrderType>new_number</OrderType>
                             <OrderDate>2014-01-06T19:09:43.695Z</OrderDate>
                             <orderId>13c97416-9eee-4da3-aff8-ba85d1297ef2</orderId>
                             <OrderStatus>COMPLETE</OrderStatus>
                             <TelephoneNumberDetails>
                                <States>
                                   <StateWithCount>
                                      <State>VA</State>
                                      <Count>1</Count>
                                   </StateWithCount>
                                </States>
                                <RateCenters>
                                   <RateCenterWithCount>
                                      <Count>1</Count>
                                      <RateCenter>GLOUCESTER</RateCenter>
                                   </RateCenterWithCount>
                                </RateCenters>
                                <Cities>
                                   <CityWithCount>
                                      <City>GLOUCESTER</City>
                                      <Count>1</Count>
                                   </CityWithCount>
                                </Cities>
                                <Tiers>
                                   <TierWithCount>
                                      <Tier>0</Tier>
                                      <Count>1</Count>
                                   </TierWithCount>
                                </Tiers>
                                <Vendors>
                                   <VendorWithCount>
                                      <VendorId>49</VendorId>
                                      <VendorName>Bandwidth CLEC</VendorName>
                                      <Count>1</Count>
                                   </VendorWithCount>
                                </Vendors>
                             </TelephoneNumberDetails>
                          </OrderIdUserIdDate>
                       </ListOrderIdUserIdDate>
                    </ResponseSelectWrapper>
              schema:
                $ref: '#/components/schemas/SiteOrdersResponse'
          description: ''
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <Links>
                       <first>Link=&lt;https://api.bandwidth.com/api/accounts/12346099/sites/3013/orders?page=1&amp;size=300&gt;;rel="first";</first>
                    </Links>
          description: >-
            Orders cannot be found for that Site. Possible explanations:

            <ul><li>There are no orders associated with that Site.</li><li>The
            given parameters are invalid.</li></ul>
      summary: Retrieve Site Orders
      tags:
        - Orders
  /accounts/{accountId}/sites/{siteId}/orders/{orderId}:
    get:
      description: Retrieves order information associated with the given Site
      operationId: RetrieveSiteOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Site ID of the order
          example: '407'
          in: path
          name: siteId
          required: true
          schema:
            type: string
        - description: ID of the Order to retrieve
          example: ca8065d1-ec1a-43da-af40-1dcee43becb5
          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"?>
                    <OrderResponse>
                       <CompletedQuantity>1</CompletedQuantity>
                       <CreatedByUser>jbm</CreatedByUser>
                       <LastModifiedDate>2014-01-06T19:09:44.027Z</LastModifiedDate>
                       <OrderCompleteDate>2014-01-06T19:09:44.041Z</OrderCompleteDate>
                       <Order>
                          <CustomerOrderId>123456789</CustomerOrderId>
                          <Name>Area Code Order</Name>
                          <OrderCreateDate>2014-01-06T19:09:43.695Z</OrderCreateDate>
                          <PeerId>303716</PeerId>
                          <siteId>743</siteId>
                          <BackOrderRequested>false</BackOrderRequested>
                          <AreaCodeSearchAndOrderType>
                             <AreaCode>804</AreaCode>
                             <Quantity>1</Quantity>
                          </AreaCodeSearchAndOrderType>
                          <PartialAllowed>true</PartialAllowed>
                          <SiteId>743</SiteId>
                       </Order>
                       <OrderStatus>COMPLETE</OrderStatus>
                       <CompletedNumbers>
                          <TelephoneNumber>
                             <FullNumber>8042105666</FullNumber>
                          </TelephoneNumber>
                       </CompletedNumbers>
                       <FailedQuantity>0</FailedQuantity>
                    </OrderResponse>
              schema:
                $ref: '#/components/schemas/TnOrderUpdatedResponse'
          description: A successful result that contains the response data
      summary: Retrieve Site Order
      tags:
        - Orders
  /accounts/{accountId}/sites/{siteId}/orders/{orderId}/tns:
    get:
      description: Retrieves order TNs associated with the given Site
      operationId: RetrieveSiteOrderTns
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Site ID of the order
          example: '407'
          in: path
          name: siteId
          required: true
          schema:
            type: string
        - description: ID of the Order to retrieve a list of TNs
          example: ca8065d1-ec1a-43da-af40-1dcee43becb5
          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"?>
                    <TelephoneNumbers>
                       <Count>1</Count>
                       <TelephoneNumber>8042105666</TelephoneNumber>
                    </TelephoneNumbers>
              schema:
                $ref: '#/components/schemas/OrderTelephoneNumbersResponse'
          description: A successful result that contains the response data
      summary: Retrieve Order TNs of Site
      tags:
        - Tns
  /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>9192803466</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:
    get:
      description: Retrieve information about a Sip Peer or set of Sip Peers on Site
      operationId: ListSipPeers
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Site ID of Sip Peers
          example: '407'
          in: path
          name: siteId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TNSipPeersResponse>
                       <SipPeers>
                          <SipPeer>
                             <PeerId>304985</PeerId>
                             <PeerName>CNAM-TEST-778</PeerName>
                             <Description>description</Description>
                             <IsDefaultPeer>false</IsDefaultPeer>
                             <BillingIdentifier>Customer-Name-00010/01</BillingIdentifier>
                             <VoiceHosts/>
                             <VoiceHostGroups/>
                             <TerminationHosts/>
                             <OriginationRoutePlan/>
                             <Address>
                                <HouseNumber>1600</HouseNumber>
                                <HouseSuffix/>
                                <PreDirectional/>
                                <StreetName>Pennsylvania Avenue Northwest</StreetName>
                                <StreetSuffix/>
                                <PostDirectional/>
                                <AddressLine2/>
                                <City>Washington</City>
                                <StateCode>DC</StateCode>
                                <Zip>20500</Zip>
                                <PlusFour/>
                                <County/>
                                <Country>United States</Country>
                                <AddressType>Service</AddressType>
                             </Address>
                             <CallingName>
                                <Display>false</Display>
                                <Enforced>false</Enforced>
                             </CallingName>
                          </SipPeer>
                       </SipPeers>
                    </TNSipPeersResponse>
              schema:
                $ref: '#/components/schemas/TNSipPeersResponse'
          description: A successful result that contains the response data
      summary: List Sip Peers
      tags:
        - SipPeer Management
    post:
      description: Create Sip Peer
      operationId: CreateSipPeer
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: Site ID to create a Sip Peer
          example: '407'
          in: path
          name: siteId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            examples:
              With OriginationRoutePlan:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipPeer>
                    <PeerName>name</PeerName>
                    <Description>description</Description>
                    <IsDefaultPeer>false</IsDefaultPeer>
                    <OriginationRoutePlan>
                        <Route>
                            <Endpoint>6105552502</Endpoint>
                            <Priority>1</Priority>
                            <Weight>100</Weight>
                        </Route>
                        <Route>
                            <Endpoint>sip:clarkkent@dailyplanet.com</Endpoint>
                            <Priority>2</Priority>
                            <Weight>100</Weight>
                        </Route>
                        <Route>
                            <Endpoint>192.168.20.21</Endpoint>
                            <Priority>3</Priority>
                            <Weight>50</Weight>
                        </Route>
                        <Route>
                            <Endpoint>7075552509</Endpoint>
                            <Priority>3</Priority>
                            <Weight>50</Weight>
                        </Route>
                        <Route>
                            <Endpoint>myhost.bandwidth.example</Endpoint>
                            <Priority>4</Priority>
                            <Weight>100</Weight>
                        </Route>
                        <Action>asSpecified</Action>
                    </OriginationRoutePlan>
                    <TerminationHosts>
                        <TerminationHost>
                            <HostName>2.1.1.9</HostName>
                            <Port>0</Port>
                            <CustomerTrafficAllowed>DOMESTIC</CustomerTrafficAllowed>
                        </TerminationHost>
                        <TerminationHost>
                            <HostName>2.1.1.96/30</HostName>
                            <Port>0</Port>
                            <CustomerTrafficAllowed>DOMESTIC</CustomerTrafficAllowed>
                        </TerminationHost>
                    </TerminationHosts>
                  </SipPeer>
              With VoiceHostGroups:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipPeer>
                     <PeerName>name</PeerName>
                     <Description>description</Description>
                     <IsDefaultPeer>false</IsDefaultPeer>
                     <FinalDestinationUri>uri</FinalDestinationUri>
                     <BillingIdentifier>Customer-Name-00010/01</BillingIdentifier>
                     <VoiceHostGroups>
                        <VoiceHostGroup>
                           <Host>
                              <HostName>10.10.10.1</HostName>
                           </Host>
                           <Host>
                              <HostName>10.10.10.2</HostName>
                           </Host>
                        </VoiceHostGroup>
                     </VoiceHostGroups>
                     <TerminationHosts>
                        <TerminationHost>
                           <HostName>2.1.1.9</HostName>
                           <Port>0</Port>
                           <CustomerTrafficAllowed>DOMESTIC</CustomerTrafficAllowed>
                        </TerminationHost>
                        <TerminationHost>
                           <HostName>2.1.1.96/30</HostName>
                           <Port>0</Port>
                           <CustomerTrafficAllowed>DOMESTIC</CustomerTrafficAllowed>
                        </TerminationHost>
                     </TerminationHosts>
                     <SsSendToCustomer>NONE</SsSendToCustomer>
                  </SipPeer>
              With VoiceHosts:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <SipPeer>
                     <PeerName>name</PeerName>
                     <Description>description</Description>
                     <IsDefaultPeer>false</IsDefaultPeer>
                     <FinalDestinationUri>uri</FinalDestinationUri>
                     <BillingIdentifier>Customer-Name-00010/01</BillingIdentifier>
                     <VoiceHosts>
                        <Host>
                           <HostName>10.10.10.1</HostName>
                        </Host>
                        <Host>
                           <HostName>10.10.10.2</HostName>
                        </Host>
                     </VoiceHosts>
                     <TerminationHosts>
                        <TerminationHost>
                           <HostName>2.1.1.9</HostName>
                           <Port>0</Port>
                           <CustomerTrafficAllowed>DOMESTIC</CustomerTrafficAllowed>
                        </TerminationHost>
                        <TerminationHost>
                           <HostName>2.1.1.96/30</HostName>
                           <Port>0</Port>
                           <CustomerTrafficAllowed>DOMESTIC</CustomerTrafficAllowed>
                        </TerminationHost>
                     </TerminationHosts>
                     <Address>
                        <HouseNumber>1600</HouseNumber>
                        <HouseSuffix/>
                        <PreDirectional/>
                        <StreetName>PENNSYLVANIA AVE NW</StreetName>
                        <StreetSuffix/>
                        <PostDirectional/>
                        <AddressLine2/>
                        <City>WASHINGTON</City>
                        <StateCode>DC</StateCode>
                        <Zip>20500</Zip>
                        <PlusFour/>
                        <County/>
                        <Country>United States</Country>
                        <AddressType>Service</AddressType>
                     </Address>
                     <PremiseTrunks>PremiseTrunks</PremiseTrunks>
                     <CallingName>
                        <Display>true</Display>
                        <Enforced>true</Enforced>
                     </CallingName>
                     <SsSendToCustomer>NONE</SsSendToCustomer>
                  </SipPeer>
            schema:
              properties:
                Address:
                  description: >-
                    Billing or Service Address for the SIP Peer.  This element
                    is optional for accounts except for accounts with the UC
                    Trunking Product.  If the address element is provided the
                    following fields can be provided:
                  properties:
                    AddressType:
                      enum:
                        - Billing
                        - Service
                      type: string
                    City:
                      type: string
                    Country:
                      default: US
                      type: string
                    County:
                      type: string
                    HouseNumber:
                      type: string
                    HouseSuffix:
                      type: string
                    PlusFour:
                      type: string
                    PostDirectional:
                      type: string
                    PreDirectional:
                      type: string
                    StateCode:
                      type: string
                    StreetName:
                      type: string
                    StreetSuffix:
                      type: string
                    Zip:
                      type: string
                  required:
                    - HouseNumber
                    - StreetName
                    - City
                    - StateCode
                    - Zip
                    - AddressType
                  type: object
                BillingIdentifier:
                  description: >-
                    An optional field that offers a convenient way to segment
                    billing report for your customers. This same value can be
                    used across multiple locations.
                  maxLength: 50
                  type: string
                CallVerificationEnabled:
                  type: boolean
                CustomerTrafficAllowed:
                  description: >-
                    A TerminationHost can be configured to allow different
                    customer traffic types.  Allowed values are LITE, DOMESTIC
                    and ALL. This is an optional parameter
                  enum:
                    - LITE
                    - DOMESTIC
                    - ALL
                  type: string
                Description:
                  description: Description for the SIP Peer
                  type: string
                HostName:
                  description: >-
                    The IP Address or Host Name of the address to be used for
                    the VoiceHosts or VoiceHostGroups addresses
                  type: string
                IsDefaultPeer:
                  description: >-
                    Value is True or False. The Default SIP Peer is the default
                    "destination" for any Telephone Numbers that are ordered for
                    the Site in which the SIP Peer resides.  Each Site can have
                    only 1 default SIP Peer. You can configure multiple SIP
                    Peers on a Site
                  type: boolean
                OriginationRoutePlan:
                  $ref: '#/components/schemas/OriginationRoutePlan'
                PeerName:
                  description: Mandatory name for the SIP Peer
                  maxLength: 10
                  type: string
                PindropEnabled:
                  type: boolean
                Port:
                  description: >-
                    Optional Port Number for Voice and Termination hosts. This
                    is an optional parameter that has default values that are
                    dependent on the Application
                  type: integer
                SsSendToCustomer:
                  enum:
                    - NONE
                    - VERSTAT
                    - ENH_VERSTAT
                    - VERSTAT_AND_IDENTITY
                    - ENH_VERSTAT_AND_IDENTITY
                    - IDENTITY
                  type: string
                VoiceHostGroups:
                  description: >-
                    The VoiceHostGroups element is comprised of one
                    VoiceHostGroup element, which is used to randomly distribute
                    traffic amongst up to 10 IP addresses. Failover behavior is
                    retained within the group
                  items:
                    properties:
                      VoiceHostGroup:
                        items:
                          $ref: '#/components/schemas/Hosts'
                        type: array
                  type: array
                VoiceHosts:
                  description: >-
                    These addresses, comprised of HostName and optional Port,
                    are used by the Bandwidth network to send calls to for
                    Origination services. The VoiceHosts list of IP addresses
                    used for an active/standby address selection mechanism,
                    where the first address is attempted, followed by the second
                    address and so on. Except under failure situations the first
                    address in the list is preferred. Maximum of 10 hosts - can
                    be IP address or Fully Qualified Domain Name
                  items:
                    properties:
                      Host:
                        properties:
                          HostName:
                            type: string
                        type: object
                  type: array
              title: CreateSipPeer
      responses:
        '201':
          content: {}
          description: Sip Peer created
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerResponse>
                       <ResponseStatus>
                          <ErrorCode>13582</ErrorCode>
                          <Description>Enforce option is missing</Description>
                       </ResponseStatus>
                    </SipPeerResponse>
              schema:
                $ref: '#/components/schemas/SipPeerResponseBadRequest'
          description: |-
            Bad Request. Possible errors in response:
            <ul>
              <li>12113 - The provided street address could not be verified. Please submit a valid street address.</li>
              <li>13569 - A termination host with HostName = 2.1.1.9 is already in use</li>
              <li>13509 - 'wrong.ip' is not a valid host. Provide valid IP or domain name</li>
              <li>13553 - Duplicate host (and port) in VoiceHosts</li>
              <li>13510 - 'wrong.url' is not a valid Destination URI</li>
              <li>13522 - IsDefaultPeer cannot be false right now. The account requires at least one Default Sip Peer</li>
              <li>13552 - A termination host with HostName = %s and Port = %s is already in use</li>
              <li>12024 - Region with state '%s' and country '%s' does not exist</li>
              <li>13576 - Account 9999999 has no CNAM product feature</li>
              <li>13581 - Display option is missing</li>
              <li>13582 - Enforce option is missing</li>
              <li>13590 - The supplied CustomerTrafficAllowed value on host %s:%s are not allowed for this sippeer</li>
              <li>13591 - Termination Settings at the SIP Peer level are not allowed for accounts with the 'DedicatedPrivateNetworkTopology' product.</li>
              <li>13592 - Calling name 'Display' and 'Enforced' values can't be updated for 'DedicatedPrivateNetworkTopology' account.</li>
              <li>13593 - %s has invalid mask. Valid mask values: 20-32</li>
              <li>13594 - %s is not valid host</li>
              <li>13595 - The IP address provided: %s contains a non zero subnet portion. An equivalent IP address such as %s with a zero subnet value must be provided.</li>
              <li>13685 - Origination route plan action cannot be 'unchanged' when creating a new SIP peer</li>
              <li>13686 - Origination route plan action cannot be 'off' when creating a new SIP peer</li>
              <li>13687 - Voice hosts and host groups are not supported on this account, please add your hosts to the origination route plan for this SIP peer</li>
              <li>13688 - FinalDestinationUri is not supported on this account, to acheive the same thing, please add this URI to a fail-over group in the origination route plan for this SIP peer</li>
              <li>13691 - CallVerificationEnabled must be a boolean: true or false</li>
              <li>13692 - PindropEnabled must be a boolean: true or false</li>
              <li>13693 - CallVerificationEnabled and PindropEnabled are mutually exclusive and may not be used together</li>
              <li>13694 - CallVerificationEnabled is not allowed on this account</li>
              <li>13695 - PindropEnabled is not allowed on this account</li>
              <li>5200 - Origination route plan is not enabled for the account</li>
              <li>5207 - Specified Route Plan Action was invalid, must be one of 'asSpecified', 'unchanged' or 'off'</li>
              <li>5218 - Origination route cannot have private IP endpoint: %s</li>
              <li>5219 - Origination route sip endpoint %s cannot have invalid sip host %s</li>
              <li>5220 - Origination route sip endpoint %s cannot have private ipv4 %s as sip host</li>
              <li>5221 - Origination route priority %s cannot exceed maximum priority value %s</li>
              <li>5222 - Origination route weight %s cannot exceed maximum weight value %s</li>
              <li>5223 - Origination route priority should be a contiguous sequence of numbers starting with 1. Priority %d is missing.</li>
              <li>5251 - One of the provided origination route plan route names is too long, please ensure all names are less than 256 characters.</li>
              <li>5252 - The origination route name %s is invalid, please use only alphanumeric, whitespace, underscore, and/or dash characters</li>
              <li>5253 - Telephone number endpoints are not allowed on this account. Please contact Bandwidth support if you wish to add this feature to your account.</li>
              <li>13691 - Billing Identifier '%s' is too long. Max length 50 characters</li>
            </ul>
        '409':
          content:
            application/xml:
              examples:
                example:
                  value: >-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

                    <SipPeerResponse>
                       <ResponseStatus>
                          <ErrorCode>12112</ErrorCode>
                          <Description>The verifiable address closest to the submitted access is included below. Please use that street address or another valid street address in your next request</Description>
                       </ResponseStatus>
                       <AddressErrorDescription>
                          <AddressInconsistencies>Some adjustments are required to allow the address to pass geocoding:
                    Specified value - City : "WASHINGTUN" Valid value -
                    "WASHINGTON"</AddressInconsistencies>
                          <RecommendedAddress>
                             <AddressLine1>1600 PENNSYLVANIA AVE NW</AddressLine1>
                             <HouseNumber>1600</HouseNumber>
                             <StreetName>PENNSYLVANIA</StreetName>
                             <StreetSuffix>AVE</StreetSuffix>
                             <PostDirectional>NW</PostDirectional>
                             <City>WASHINGTON</City>
                             <StateCode>DC</StateCode>
                             <Zip>20500</Zip>
                             <Country>US</Country>
                          </RecommendedAddress>
                       </AddressErrorDescription>
                    </SipPeerResponse>
              schema:
                $ref: '#/components/schemas/SipPeerResponseConflict'
          description: >-
            Conflict - Sip Peer with such name already exists; address couldn't
            be geocoded perfectly and needs some changes
        '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>
              schema:
                $ref: '#/components/schemas/SipPeerResponseBadRequest'
          description: Service unavailable
      summary: Create Sip Peer
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}:
    delete:
      description: Delete Sip Peer
      operationId: DeleteSipPeer
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to delete
          example: '500017'
          in: path
          name: sipPeerId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Sip Peer deleted
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerResponse>
                       <ResponseStatus>
                          <ErrorCode>13613</ErrorCode>
                          <Description>Delete not allowed while a SIP Peer has SMS feature</Description>
                       </ResponseStatus>
                    </SipPeerResponse>
              schema:
                $ref: '#/components/schemas/SipPeerResponseBadRequest'
          description: >-
            Bad Request. Possible errors in response:

            <ul><li>Delete not allowed while a SIP Peer has SMS
            feature</li></ul>
        '404':
          description: Sip Peer not found
      summary: Delete Sip Peer
      tags:
        - SipPeer Management
    get:
      description: Retrieves the information associated with the sip peer id
      operationId: ReadSipPeer
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to retrieve
          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"?>
                    <SipPeerResponse>
                       <SipPeer>
                          <PeerId>304985</PeerId>
                          <PeerName>CNAM-TEST-778</PeerName>
                          <Description>description</Description>
                          <IsDefaultPeer>false</IsDefaultPeer>
                          <BillingIdentifier>Customer-Name-00010/01</BillingIdentifier>
                          <VoiceHosts/>
                          <VoiceHostGroups/>
                          <TerminationHosts/>
                          <OriginationRoutePlan/>
                          <Address>
                             <HouseNumber>1600</HouseNumber>
                             <HouseSuffix/>
                             <PreDirectional/>
                             <StreetName>PENNSYLVANIA AVE NW</StreetName>
                             <StreetSuffix/>
                             <PostDirectional/>
                             <AddressLine2/>
                             <City>Washington</City>
                             <StateCode>DC</StateCode>
                             <Zip>20500</Zip>
                             <PlusFour/>
                             <County/>
                             <Country>United States</Country>
                             <AddressType>Service</AddressType>
                          </Address>
                          <CallingName>
                             <Display>false</Display>
                             <Enforced>false</Enforced>
                          </CallingName>
                       </SipPeer>
                    </SipPeerResponse>
              schema:
                $ref: '#/components/schemas/SipPeerResponse'
          description: A successful result that contains the response data
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerResponse>
                       <ResponseStatus>
                          <ErrorCode>13563</ErrorCode>
                          <Description>Sip Peer '316167' account '9999999' and site '45' does not exist</Description>
                       </ResponseStatus>
                    </SipPeerResponse>
              schema:
                $ref: '#/components/schemas/SipPeerResponseBadRequest'
          description: Bad request - Sip Peer doesn't exists
      summary: Retrieve Sip Peer
      tags:
        - SipPeer Management
    put:
      description: >-
        Update Sip Peer

        There are a few rules used to eliminate IP address collisions.  The
        primary restriction is on the ability to share Term IP addresses across
        the Bandwidth App API structural elements. Essentially...


        <ul><li>Term Addresses cannot be shared anywhere</li>

        <li>VoiceHost and VoiceHostGroup addresses can be shared between SIP
        Peers, and can be different than or the same as Term IP Addresses </li>

        </ul>


        If the CallingName field is missing from the payload, CNAM will default
        to false on the Sip Peer
      operationId: UpdateSipPeer
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to update
          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"?>
                  <SipPeer>
                     <PeerName>name</PeerName>
                     <Description>description</Description>
                     <IsDefaultPeer>false</IsDefaultPeer>
                     <BillingIdentifier>Customer-Name-00010/01</BillingIdentifier>
                     <VoiceHosts>
                        <Host>
                           <HostName>10.10.10.1</HostName>
                        </Host>
                        <Host>
                           <HostName>10.10.10.2</HostName>
                        </Host>
                     </VoiceHosts>
                     <VoiceHostGroups/>
                     <TerminationHosts>
                        <TerminationHost>
                           <HostName>2.1.1.9</HostName>
                           <Port>0</Port>
                           <CustomerTrafficAllowed>DOMESTIC</CustomerTrafficAllowed>
                        </TerminationHost>
                        <TerminationHost>
                           <HostName>2.1.1.96/30</HostName>
                           <Port>0</Port>
                           <CustomerTrafficAllowed>DOMESTIC</CustomerTrafficAllowed>
                        </TerminationHost>
                     </TerminationHosts>
                     <CallingName>
                        <Display>true</Display>
                        <Enforced>true</Enforced>
                     </CallingName>
                  </SipPeer>
            schema:
              $ref: '#/components/schemas/SipPeerPayload'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerResponse>
                       <SipPeer>
                          <PeerId>304985</PeerId>
                          <PeerName>CNAM-TEST-778</PeerName>
                          <Description>description</Description>
                          <IsDefaultPeer>false</IsDefaultPeer>
                          <BillingIdentifier>Customer-Name-00010/01</BillingIdentifier>
                          <VoiceHosts/>
                          <VoiceHostGroups/>
                          <TerminationHosts/>
                          <OriginationRoutePlan/>
                          <Address>
                             <HouseNumber>1600</HouseNumber>
                             <HouseSuffix/>
                             <PreDirectional/>
                             <StreetName>PENNSYLVANIA AVE NW</StreetName>
                             <StreetSuffix/>
                             <PostDirectional/>
                             <AddressLine2/>
                             <City>Washington</City>
                             <StateCode>DC</StateCode>
                             <Zip>20500</Zip>
                             <PlusFour/>
                             <County/>
                             <Country>United States</Country>
                             <AddressType>Service</AddressType>
                          </Address>
                          <CallingName>
                             <Display>false</Display>
                             <Enforced>false</Enforced>
                          </CallingName>
                       </SipPeer>
                    </SipPeerResponse>
              schema:
                $ref: '#/components/schemas/SipPeerResponse'
          description: Sip Peer updated
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerResponse>
                       <ResponseStatus>
                          <ErrorCode>13582</ErrorCode>
                          <Description>Enforce option is missing</Description>
                       </ResponseStatus>
                    </SipPeerResponse>
              schema:
                $ref: '#/components/schemas/SipPeerResponseBadRequest'
          description: |-
            Bad Request. Possible errors in response:
            <ul>
              <li>12113 - The provided street address could not be verified. Please submit a valid street address.</li>
              <li>13569 - A termination host with HostName = 2.1.1.9 is already in use</li>
              <li>13509 - 'wrong.ip' is not a valid host. Provide valid IP or domain name</li>
              <li>13553 - Duplicate host (and port) in VoiceHosts</li>
              <li>13510 - 'wrong.url' is not a valid Destination URI</li>
              <li>13522 - IsDefaultPeer cannot be false right now. The account requires at least one Default Sip Peer</li>
              <li>13552 - A termination host with HostName = %s and Port = %s is already in use</li>
              <li>12024 - Region with state '%s' and country '%s' does not exist</li>
              <li>13576 - Account 9999999 has no CNAM product feature</li>
              <li>13581 - Display option is missing</li>
              <li>13582 - Enforce option is missing</li>
              <li>13563 - Sip Peer '316167' account '9999999' and site '45' does not exist</li>
              <li>13590 - The supplied CustomerTrafficAllowed value on host %s:%s are not allowed for this sippeer</li>
              <li>13591 - Termination Settings at the SIP Peer level are not allowed for accounts with the 'DedicatedPrivateNetworkTopology' product.</li>
              <li>13592 - Calling name 'Display' and 'Enforced' values can't be updated for 'DedicatedPrivateNetworkTopology' account.</li>
              <li>13593 - %s has invalid mask. Valid mask values: 24-32</li>
              <li>13594 - %s is not valid host</li>
              <li>13595 - The IP address provided: %s contains a non zero subnet portion. An equivalent IP address such as %s with a zero subnet value must be provided.</li>
              <li>13685 - Origination route plan action cannot be 'unchanged' when creating a new SIP peer</li>
              <li>13686 - Origination route plan action cannot be 'off' when creating a new SIP peer</li>
              <li>13687 - Voice hosts and host groups are not supported on this account, please add your hosts to the origination route plan for this SIP peer</li>
              <li>13688 - FinalDestinationUri is not supported on this account, to acheive the same thing, please add this URI to a fail-over group in the origination route plan for this SIP peer</li>
              <li>13691 - CallVerificationEnabled must be a boolean: true or false</li>
              <li>13692 - PindropEnabled must be a boolean: true or false</li>
              <li>13693 - CallVerificationEnabled and PindropEnabled are mutually exclusive and may not be used together</li>
              <li>13694 - CallVerificationEnabled is not allowed on this account</li>
              <li>13695 - PindropEnabled is not allowed on this account</li>
              <li>5200 - Origination route plan is not enabled for the account</li>
              <li>5207 - Specified Route Plan Action was invalid, must be one of 'asSpecified', 'unchanged' or 'off'</li>
              <li>5218 - Origination route cannot have private IP endpoint: %s</li>
              <li>5219 - Origination route sip endpoint %s cannot have invalid sip host %s</li>
              <li>5220 - Origination route sip endpoint %s cannot have private ipv4 %s as sip host</li>
              <li>5221 - Origination route priority %s cannot exceed maximum priority value %s</li>
              <li>5222 - Origination route weight %s cannot exceed maximum weight value %s</li>
              <li>5223 - Origination route priority should be a contiguous sequence of numbers starting with 1. Priority %d is missing.</li>
              <li>5251 - One of the provided origination route plan route names is too long, please ensure all names are less than 256 characters.</li>
              <li>5252 - The origination route name %s is invalid, please use only alphanumeric, whitespace, underscore, and/or dash characters</li>
              <li>5253 - Telephone number endpoints are not allowed on this account. Please contact Bandwidth support if you wish to add this feature to your account.</li>
              <li>13691 - Billing  Identifier '%s' is too long. Max length 50 characters</li>
            </ul>
        '409':
          content:
            application/xml:
              examples:
                example:
                  value: >-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

                    <SipPeerResponse>
                       <ResponseStatus>
                          <ErrorCode>12112</ErrorCode>
                          <Description>The verifiable address closest to the submitted access is included below. Please use that street address or another valid street address in your next request</Description>
                       </ResponseStatus>
                       <AddressErrorDescription>
                          <AddressInconsistencies>Some adjustments are required to allow the address to pass geocoding:
                    Specified value - City : "WASHINGTUN" Valid value -
                    "WASHINGTON"</AddressInconsistencies>
                          <RecommendedAddress>
                             <AddressLine1>1600 PENNSYLVANIA AVE NW</AddressLine1>
                             <HouseNumber>1600</HouseNumber>
                             <StreetName>PENNSYLVANIA</StreetName>
                             <StreetSuffix>AVE</StreetSuffix>
                             <PostDirectional>NW</PostDirectional>
                             <City>WASHINGTON</City>
                             <StateCode>DC</StateCode>
                             <Zip>20500</Zip>
                             <Country>US</Country>
                          </RecommendedAddress>
                       </AddressErrorDescription>
                    </SipPeerResponse>
              schema:
                $ref: '#/components/schemas/SipPeerResponseConflict'
          description: Address couldn't be geocoded perfectly and needs some changes
      summary: Update Sip Peer
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/associatedOutboundNumbers:
    get:
      description: >-
        Retrieve list of Associated Outbound Numbers associated with SIP Peer
        location. If none exist, then an empty list is returned.
      operationId: retrieveSipPeerAssociatedOutboundNumbers
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - $ref: '#/components/parameters/SipPeerIdPathParam'
        - $ref: '#/components/parameters/PaginationPageQueryParam'
        - $ref: '#/components/parameters/PaginationSizeQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/associatedOutboundNumbersResponse'
        '400':
          $ref: '#/components/responses/associatedOutboundNumbers400Response'
        '401':
          $ref: '#/components/responses/associatedOutboundNumbers401Response'
        '403':
          $ref: '#/components/responses/associatedOutboundNumbers403Response'
        '404':
          $ref: '#/components/responses/associatedOutboundNumbers404Response'
        '429':
          $ref: '#/components/responses/associatedOutboundNumbers429Response'
        '500':
          $ref: '#/components/responses/associatedOutboundNumbers500Response'
      summary: >-
        Retrieve list of Associated Outbound Numbers associated with SIP Peer
        location
      tags:
        - SipPeer Management
    post:
      description: Submit a list of new Associated Outbound Numbers.
      operationId: uploadSipPeerAssociatedOutboundNumbers
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - $ref: '#/components/parameters/SipPeerIdPathParam'
      requestBody:
        $ref: '#/components/requestBodies/associatedOutboundNumbersRequest'
      responses:
        '200':
          $ref: '#/components/responses/associatedOutboundNumbersResponse'
        '400':
          $ref: '#/components/responses/associatedOutboundNumbers400Response'
        '401':
          $ref: '#/components/responses/associatedOutboundNumbers401Response'
        '403':
          $ref: '#/components/responses/associatedOutboundNumbers403Response'
        '404':
          $ref: '#/components/responses/associatedOutboundNumbers404Response'
        '429':
          $ref: '#/components/responses/associatedOutboundNumbers429Response'
        '500':
          $ref: '#/components/responses/associatedOutboundNumbers500Response'
      summary: >-
        Associates a list of Associated Outbound Numbers with a SIP Peer
        location
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/associatedOutboundNumbers/{associatedOutboundNumberId}:
    delete:
      description: Delete Associated Outbound Number from SIP Peer
      operationId: deleteSipPeerAssociatedOutboundNumbers
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - $ref: '#/components/parameters/SipPeerIdPathParam'
        - $ref: '#/components/parameters/AssociatedOutboundNumberIdParam'
      responses:
        '200':
          content:
            application/xml: {}
          description: The Outbound Number has been successfully deleted
        '400':
          $ref: '#/components/responses/associatedOutboundNumbers400Response'
        '401':
          $ref: '#/components/responses/associatedOutboundNumbers401Response'
        '403':
          $ref: '#/components/responses/associatedOutboundNumbers403Response'
        '404':
          $ref: '#/components/responses/associatedOutboundNumbers404Response'
        '429':
          $ref: '#/components/responses/associatedOutboundNumbers429Response'
        '500':
          $ref: '#/components/responses/associatedOutboundNumbers500Response'
      summary: >-
        Provide a Associated Outbound Number Id which should be deleted from
        this SIP Peer.
      tags:
        - SipPeer Management
  /accounts/{accountId}/sites/{siteId}/sippeers/{sipPeerId}/movetns:
    post:
      description: >-
        The POST method moves all telephone numbers specified in the body to the
        given SIP peer.<br>The source SIP peer is determined by the Telephone
        Number, i.e. the PUT method can move multiple numbers from different
        source SIP peers.<br>The destination SIP peer is specified in the
        URL.<br>NOTE: only a maximum of 5000 Telephone Numbers can be moved in
        one operation.
      operationId: CreateSipPeerTelephoneNumberBulk
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - $ref: '#/components/parameters/SipPeerIdPathParam'
      requestBody:
        content:
          application/xml:
            schema:
              $ref: '#/components/schemas/SipPeerTelephoneNumberBulk'
      responses:
        '200':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/SipPeerTelephoneNumberBulkResponse'
          description: The request has been successfully received.
          headers:
            sunset:
              description: >-
                This api will no longer be available on Sun, 1 Jun 2025 23:59:59
                GMT. Replacement api:- /accounts/{accountId}/moveTNs
              schema:
                type: string
        '400':
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/SipPeerTelephoneNumberBulkErrorResponse'
          description: >-
            Bad Request. Possible errors in response:<ul>    <li>Shared TNs with
            messaging cannot be moved to a sippeer without the SMS feature
            enabled.</li>    <li>Shared TNs with voice cannot be moved to a
            sippeer with the SMS feature enabled.</li></ul>
          headers:
            sunset:
              description: >-
                This api will no longer be available on Sun, 1 Jun 2025 23:59:59
                GMT. Replacement api:- /accounts/{accountId}/moveTNs
              schema:
                type: string
      summary: Move bulk tns to sipper
      tags:
        - Move Tns
  /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:
    get:
      description: >-
        Retrieve information about a Telephone number or set of Telephone
        numbers
      operationId: ReadSipPeerTns
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - $ref: '#/components/parameters/SipPeerTnsPageQueryParam'
        - $ref: '#/components/parameters/SipPeerTnsSizeQueryParam'
        - description: ID of the Sip Peer to retrieve TNs information
          example: '500017'
          in: path
          name: sippeerId
          required: true
          schema:
            type: string
        - description: >-
            If the value is false SipPeerTelephoneNumber will contain FullNumber
            tags only. This makes processing faster
          example: false
          in: query
          name: includeAttributes
          required: false
          schema:
            default: true
            type: boolean
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerTelephoneNumbersResponse>
                       <SipPeerTelephoneNumbers>
                          <SipPeerTelephoneNumber>
                             <FullNumber>2052160148</FullNumber>
                             <CallingNameDisplay>true</CallingNameDisplay>
                             <TnAttributes>
                                <TnAttribute>Protected</TnAttribute>
                                <TnAttribute>External</TnAttribute>
                                <TnAttribute>Imported</TnAttribute>
                             </TnAttributes>
                             <MessagingSettings>
                                <SmsEnabled>true</SmsEnabled>
                             </MessagingSettings>
                          </SipPeerTelephoneNumber>
                          <SipPeerTelephoneNumber>
                             <FullNumber>2053161118</FullNumber>
                             <CallingNameDisplay>false</CallingNameDisplay>
                             <MessagingSettings>
                                <SmsEnabled>true</SmsEnabled>
                             </MessagingSettings>
                          </SipPeerTelephoneNumber>
                          <SipPeerTelephoneNumber>
                             <FullNumber>2053160118</FullNumber>
                             <CallForward>2014563025</CallForward>
                             <CallingNameDisplay>false</CallingNameDisplay>
                          </SipPeerTelephoneNumber>
                       </SipPeerTelephoneNumbers>
                    </SipPeerTelephoneNumbersResponse>
              schema:
                $ref: '#/components/schemas/SipPeerTelephoneNumbersResponse'
          description: A successful result that contains the response data
      summary: Retrieve Sip Peer TNs
      tags:
        - Tns
  /accounts/{accountId}/sites/{siteId}/sippeers/{sippeerId}/tns/{tn}:
    get:
      description: Retrieve information about telephone number on Sip Peer
      operationId: ReadSipPeerTn
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to retrieve TN information
          example: '500017'
          in: path
          name: sippeerId
          required: true
          schema:
            type: string
        - description: A 10 Digit Telephone Number
          example: '5209072451'
          in: path
          name: tn
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerTelephoneNumberResponse>
                        <SipPeerTelephoneNumber>
                            <FullNumber>5209072451</FullNumber>
                            <CallForward>7042661720</CallForward>
                            <CallingNameDisplay>true</CallingNameDisplay>
                            <TnAttributes>
                                <TnAttribute>Protected</TnAttribute>
                                <TnAttribute>External</TnAttribute>
                                <TnAttribute>Imported</TnAttribute>
                            </TnAttributes>
                            <MessagingSettings>
                                <SmsEnabled>true</SmsEnabled>
                            </MessagingSettings>
                        </SipPeerTelephoneNumber>
                    </SipPeerTelephoneNumberResponse>
              schema:
                $ref: '#/components/schemas/SipPeerTelephoneNumberResponse'
          description: A successful result that contains the response data
      summary: Retrieve Sip Peer TN
      tags:
        - Tns
    put:
      description: Update settings for a TN allocated to their account
      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 10 Digit Telephone Number to update
          example: '5209072451'
          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>2052160156</FullNumber>
                     <NumberFormat>10digit</NumberFormat>
                     <RPIDFormat>10digit</RPIDFormat>
                     <RewriteUser>false</RewriteUser>
                     <CallForward>7042661720</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>2174101601</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 7206083492 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}/sites/{siteId}/sippeers/{sippeerId}/totaltns:
    get:
      description: Retrieve count of Telephone numbers for Sip Peer
      operationId: RetrieveSipPeerTnsCount
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/SiteIdPathParam'
        - description: ID of the Sip Peer to retrieve TNs count
          example: '500017'
          in: path
          name: sippeerId
          required: true
          schema:
            type: string
        - description: Telephone number feature
          example:
            - DLDA
          in: query
          name: feature
          required: false
          schema:
            items:
              enum:
                - LIDB
                - DLDA
                - DA
              type: string
            type: array
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeerTelephoneNumbersCountResponse>
                       <SipPeerTelephoneNumbersCount>
                          <SipPeerTelephoneNumbersCount>4</SipPeerTelephoneNumbersCount>
                          <CnamCount>4</CnamCount>
                          <LidbCount>0</LidbCount>
                       </SipPeerTelephoneNumbersCount>
                    </SipPeerTelephoneNumbersCountResponse>
              schema:
                $ref: '#/components/schemas/SipPeerTelephoneNumbersCountResponse'
          description: A successful result that contains the response data
      summary: Retrieve Sip Peer TNs count
      tags:
        - Tns
  /accounts/{accountId}/sites/{siteId}/totaltns:
    get:
      description: Retrieves Site telephone numbers total count
      operationId: RetrieveSiteTnsCount
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ID of the Site to retrieve count of TNs
          example: '407'
          in: path
          name: siteId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SiteTNsResponse>
                       <SiteTNs>
                          <TotalCount>26</TotalCount>
                       </SiteTNs>
                    </SiteTNsResponse>
              schema:
                $ref: '#/components/schemas/SiteTNsResponse'
          description: The total count of Telephone Numbers associated with the Site.
      summary: Retrieve Site TNs count
      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>LEGACY</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>LEGACY</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>LEGACY</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>LEGACY</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>4283455101</Expiry>
                            <Status>200 OK</Status>
                            <NumberFormat>LEGACY</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>4283455101</Expiry>
                            <Status>200 OK</Status>
                            <NumberFormat>LEGACY</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>LEGACY</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>LEGACY</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}/tnPortoutPasscodes:
    get:
      description: >-
        Retrieve information about one or more Telephone Numbers (TNs) with port
        out passcode.
      operationId: GetTnPortOutPasscode
      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.  Note in the example that the page is the TN that begins
            the page. The initial page is tagged with the ID `1`.
          example: '9199918388'
          in: query
          name: page
          required: true
          schema:
            default: '1'
            type: string
        - description: The number of items to include in a page.
          example: 250
          in: query
          name: size
          required: true
          schema:
            default: 500
            type: integer
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumbersResponse>
                      <TelephoneNumbers>
                        <TelephoneNumber>
                          <FullNumber>2018391000</FullNumber>
                          <Passcode>1234</Passcode>
                        </TelephoneNumber>
                        <TelephoneNumber>
                          <FullNumber>2024551000</FullNumber>
                          <Passcode>1234</Passcode>
                        </TelephoneNumber>
                      </TelephoneNumbers>
                    </TelephoneNumbersResponse>
              schema:
                $ref: '#/components/schemas/TnPortOutPasscodesResponse'
          description: >-
            The descriptive payload provides information about the TN(s) and
            their Passcode. Links to assist in pagination are also provided.
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumbersResponse>
                      <ResponseStatus>
                        <ErrorCode>15610</ErrorCode>
                        <Description>Telephone Numbers cannot be found on account(s) 2002013</Description>
                        <TelephoneNumbers>
                          <TelephoneNumber>2012035088</TelephoneNumber>
                        </TelephoneNumbers>
                      </ResponseStatus>
                    </TelephoneNumbersResponse>
              schema:
                $ref: '#/components/schemas/TnPortOutPasscodesErrorResponse'
          description: >-
            Bad Request - any syntax error in the parameters will cause a 400
            error with a payload similar to the payload in the example, with an
            error code and text description.
      summary: Retrieve tn port-out passcode
      tags:
        - Porting
    post:
      description: >-
        Retrieve information about one or more Telephone Numbers (TNs), where
        the TNs are specified in POST body.
      operationId: Retrieve tn port-out passcodes
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <TnList>
                    <Tn>3172000285</Tn>
                    <Tn>3172000207</Tn>
                    <Tn>3172000000</Tn>
                    <Tn>3172000100</Tn>
                    <Tn>3172110285</Tn>
                    <Tn>3172100285</Tn>
                    <Tn>99999999999</Tn>
                    <Tn>111111111111</Tn>
                  </TnList>
            schema:
              $ref: '#/components/schemas/TnListRequest'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumbersResponse>
                      <TelephoneNumberCount>4</TelephoneNumberCount>
                      <TelephoneNumbers>
                        <TelephoneNumber>
                          <FullNumber>3172000285</FullNumber>
                          <Passcode>1234</Passcode>
                        </TelephoneNumber>
                        <TelephoneNumber>
                          <FullNumber>3172000207</FullNumber>
                          <Passcode>1234</Passcode>
                        </TelephoneNumber>
                        </TelephoneNumbers>
                        <ErrorList>
                          <Error>
                            <Code>15619</Code>
                            <Description>Passcode was not found on tn(s)</Description>
                            <TelephoneNumbers>
                              <TelephoneNumber>3172000000</TelephoneNumber>
                            </TelephoneNumbers>
                          </Error>
                          <Error>
                            <Code>15610</Code>
                            <Description>Telephone Numbers cannot be found on accounts</Description>
                            <TelephoneNumbers>
                              <TelephoneNumber>3172110285</TelephoneNumber>
                              <TelephoneNumber>3172100285</TelephoneNumber>
                            </TelephoneNumbers>
                          </Error>
                        </ErrorList>
                    </TelephoneNumbersResponse>
              schema:
                $ref: '#/components/schemas/TnPortOutPasscodesResponse'
          description: >-
            The descriptive payload provides information about the TN(s) and
            their Passcode. The Payload also can contain <ErrorList> where
            invalid or non-existing  on account(s) TNs are specified. Pagination
            doesn't work in this case.
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumbersResponse>
                      <ResponseStatus>
                        <ErrorCode>15607</ErrorCode>
                        <Description>The count of Telephone numbers in POST body exceeds the maximum size of 2500</Description>
                      </ResponseStatus>
                    </TelephoneNumbersResponse>
              schema:
                $ref: '#/components/schemas/TnPortOutPasscodesErrorResponse'
          description: >-
            Bad Request - when in the POST body specified more then
            {pagination.maxsize} TNs.
      tags:
        - Porting
  /accounts/{accountId}/tnoptions:
    get:
      description: >-
        Retrieve a list of the TN Option 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>*</b> below) is
        provided, the order results will be limited to the last two years.
      operationId: GetTnOptionOrders
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: The status of the TN Option order being searched for.
          example: PROCESSING
          in: query
          name: status
          required: false
          schema:
            items:
              type: string
            type: array
        - description: <b>*</b> A Telephone Number (TN) that is referenced in the order.
          example: '9199918388'
          in: query
          name: tn
          required: false
          schema:
            type: string
        - description: >-
            <b>*</b> The Customer Order ID is an ID assigned by the account
            owner to provide a reference number for the TN Option order.
          example: ABCCorp12345
          in: query
          name: customerOrderId
          required: false
          schema:
            type: string
        - description: >-
            For Date-based searches, the starting date of a date range
            (inclusive) that will be used to find TN Option 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 TN Option 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 TN Option
            Order.
          example: smckinnon
          in: query
          name: lastModifiedBy
          required: false
          schema:
            type: string
        - description: >-
            <b>*</b> This search parameter represents the internal Bandwidth App
            API ID that has been assigned to the TN Option 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: >-
            If set to true, a list of order details will be displayed instead
            the summary information.
          in: query
          name: orderDetails
          required: false
          schema:
            type: boolean
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TnOptionOrderReportResponse>
                       <TnOptionOrders>
                          <TotalCount>2</TotalCount>
                          <TnOptionOrderSummary>
                             <accountId>14</accountId>
                             <CountOfTNs>2</CountOfTNs>
                             <userId>jbm</userId>
                             <lastModifiedDate>2016-01-15T12:01:14.363Z</lastModifiedDate>
                             <OrderDate>2016-01-15T12:01:14.324Z</OrderDate>
                             <OrderType>tn_option</OrderType>
                             <OrderStatus>FAILED</OrderStatus>
                             <OrderId>ddbdc72e-dc27-490c-904e-d0c11291b095</OrderId>
                          </TnOptionOrderSummary>
                          <TnOptionOrderSummary>
                             <accountId>14</accountId>
                             <CountOfTNs>3</CountOfTNs>
                             <userId>jbm</userId>
                             <lastModifiedDate>2016-01-15T11:22:58.969Z</lastModifiedDate>
                             <OrderDate>2016-01-15T11:22:58.789Z</OrderDate>
                             <OrderType>tn_option</OrderType>
                             <OrderStatus>COMPLETE</OrderStatus>
                             <OrderId>409033ee-88ec-43e3-85f3-538f30733963</OrderId>
                          </TnOptionOrderSummary>
                       </TnOptionOrders>
                       <!-- OR -->
                       <TnOptionOrders>
                          <TotalCount>2</TotalCount>
                          <TnOptionOrder>
                             <OrderCreateDate>2016-01-15T12:01:14.324Z</OrderCreateDate>
                             <AccountId>14</AccountId>
                             <CreatedByUser>jbm</CreatedByUser>
                             <OrderId>ddbdc72e-dc27-490c-904e-d0c11291b095</OrderId>
                             <LastModifiedDate>2016-01-15T12:01:14.363Z</LastModifiedDate>
                             <ProcessingStatus>FAILED</ProcessingStatus>
                             <TnOptionGroups>
                                <TnOptionGroup>
                                   <NumberFormat>10digit</NumberFormat>
                                   <RPIDFormat>10digit</RPIDFormat>
                                   <RewriteUser>testUser1</RewriteUser>
                                   <CallForward>6042661720</CallForward>
                                   <CallingNameDisplay>on</CallingNameDisplay>
                                   <Protected>true</Protected>
                                   <Sms>on</Sms>
                                   <FinalDestinationURI>sip:+12345678901@1.2.3.4:5060</FinalDestinationURI>
                                   <TelephoneNumbers>
                                      <TelephoneNumber>2018551020</TelephoneNumber>
                                   </TelephoneNumbers>
                                </TnOptionGroup>
                                <TnOptionGroup>
                                   <CallingNameDisplay>off</CallingNameDisplay>
                                   <Protected>false</Protected>
                                   <Sms>off</Sms>
                                   <TelephoneNumbers>
                                      <TelephoneNumber>2018551025</TelephoneNumber>
                                   </TelephoneNumbers>
                                </TnOptionGroup>
                             </TnOptionGroups>
                             <ErrorList>
                                <Error>
                                   <Code>5076</Code>
                                   <Description>Telephone number is not available.</Description>
                                   <TelephoneNumber>2018551025</TelephoneNumber>
                                </Error>
                                <Error>
                                   <Code>5076</Code>
                                   <Description>Telephone number is not available.</Description>
                                   <TelephoneNumber>2018551020</TelephoneNumber>
                                </Error>
                             </ErrorList>
                          </TnOptionOrder>
                          <TnOptionOrder>
                             <OrderCreateDate>2016-01-15T11:22:58.789Z</OrderCreateDate>
                             <AccountId>14</AccountId>
                             <CreatedByUser>jbm</CreatedByUser>
                             <OrderId>409033ee-88ec-43e3-85f3-538f30733963</OrderId>
                             <LastModifiedDate>2016-01-15T11:22:58.969Z</LastModifiedDate>
                             <ProcessingStatus>COMPLETE</ProcessingStatus>
                             <TnOptionGroups>
                                <TnOptionGroup>
                                   <CallingNameDisplay>on</CallingNameDisplay>
                                   <TelephoneNumbers>
                                      <TelephoneNumber>2174101601</TelephoneNumber>
                                   </TelephoneNumbers>
                                </TnOptionGroup>
                                <TnOptionGroup>
                                   <CallingNameDisplay>off</CallingNameDisplay>
                                   <TelephoneNumbers>
                                      <TelephoneNumber>2174101602</TelephoneNumber>
                                   </TelephoneNumbers>
                                </TnOptionGroup>
                                <TnOptionGroup>
                                   <CallingNameDisplay>systemdefault</CallingNameDisplay>
                                   <TelephoneNumbers>
                                      <TelephoneNumber>2174101603</TelephoneNumber>
                                   </TelephoneNumbers>
                                </TnOptionGroup>
                             </TnOptionGroups>
                             <ErrorList/>
                          </TnOptionOrder>
                       </TnOptionOrders>
                    </TnOptionOrderReportResponse>
              schema:
                oneOf:
                  - $ref: '#/components/schemas/TnOptionOrderReportSummaryResponse'
                  - $ref: '#/components/schemas/TnOptionOrderReportDetailedResponse'
          description: >-
            The descriptive payload for the TN Option Orders query provides a
            broad range of information about the TN Option 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':
          content:
            application/xml: {}
          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: Retrieve list TN Option orders
      tags:
        - Tn Option
    post:
      description: >-
        Create TN Option order to assign line features to the telephone
        number.<br><br>Attribute description:<ul><li>for A2pSettings
        attribute</li><table style="text-align: left; width: 80%;" border="1"
        cellpadding="2" cellspacing="0"><tbody><tr><th>Number
        attribute</th><th>Action value</th><th>Description of
        action</th></tr><tr><td>LongCode</td><td><i>systemDefault</i></td><td>Removes
        the per-TN A2P attributes, and it reverts to the Location/SIP Peer
        characteristics. Any values for Class or Campaign ID are not
        valid</td></tr><tr><td>LongCode</td><td><i>asSpecified</i></td><td>Sets
        the message class and campaign ID - this is the default if
        unspecified</td></tr><tr><td>LongCode</td><td><i>off</i></td><td>Will
        set the TN as a 'P' TN. Any values for Class or Campaign ID are not
        valid</td></tr><tr><td>LongCode</td><td><i>delete</i></td><td>Will
        delete the campaign ID from TN. Any values for Class or Campaign ID are
        not valid</td></tr><tr><td>LongCode</td><td><i>unchanged</i></td><td>Do
        nothing with respect to
        A2P</td></tr><tr><td>TollFree</td><td><i>systemDefault</i></td><td>Removes
        the per-TN A2P attributes, and it reverts to the Location/SIP Peer
        characteristics. Any values for Class or Campaign ID are not
        valid</td></tr><tr><td>TollFree</td><td><i>asSpecified</i></td><td>Sets
        the message class and campaign ID - this is the default if
        unspecified</td></tr><tr><td>TollFree</td><td><i>off</i></td><td>If the
        Togglz value is set to 'on' this is invalid for Toll Free telephone
        numbers. Any values for Class or Campaign ID in the payload are invalid.
        If the Togglz value is set to off this behaves like and A2P TN, where
        the characteristics of the TNs is set to
        'P'</td></tr><tr><td>TollFree</td><td><i>unchanged</i></td><td>Do
        nothing with respect to A2P</td></tr></tbody></table><li>for Origination
        Route plan attribute</li><table style="text-align: left; width: 80%;"
        border="1" cellpadding="2" cellspacing="0"><tbody><tr><th>Action
        value</th><th>Description of
        action</th></tr><tr><td>asSpecified</td><td>Creates/updates the
        origination route plan for the TN with route plan details provided in
        the request </td></tr><tr><td>off</td><td>Removes the origination route
        plan for the TN. Route list is the request must be
        empty</td></tr><tr><td>unchanged</td><td>Doesn't update/create the
        origination route plan, even when route plan details exist in the
        request</td></tr></tbody></table><ul><li> Origination route plan is
        validated against CallForward and RewriteUser</li><ul><li
        type="square">Route plan and CallForward cannot co-exist. Order is
        accepted but will respond with error messages on GET.</li><li
        type="square">Route plan and RewriteUser cannot co-exist. Order is
        accepted but will respond with error messages on
        GET.</li></ul></ul><li>for Pindrop Enabled attribute</li><table
        style="text-align: left; width: 80%;" border="1" cellpadding="2"
        cellspacing="0"><tbody><tr><th>Action value</th><th>Description of
        action</th></tr><tr><td>true</td><td>Enables Pindrop integration on each
        phone number in the option
        group</td></tr><tr><td>false</td><td>Explicitly disables Pindrop
        integration on each phone number in the option
        group</td></tr></tbody></table><li>for Call Verification Enabled
        attribute</li><table style="text-align: left; width: 80%;" border="1"
        cellpadding="2" cellspacing="0"><tbody><tr><th>Action
        value</th><th>Description of
        action</th></tr><tr><td>true</td><td>Enables Call Verification on each
        phone number in the option
        group</td></tr><tr><td>false</td><td>Explicitly disables Call
        Verification on each phone number in the option
        group</td></tr></tbody></table><li>for other attribute</li><ul><li
        type="square"> <i>systemDefault</i> - implies that the element profile
        value should be removed so that the TN changes back to the default
        system behavior;</li><li type="square"> <i>unchanged</i> - the value
        should remain unchanged - implies a read before write model.</li><li
        type="square"><u>Leaving the element out of the payload is equivalent to
        <i>unchanged</i>.</u></li></ul></ul>
      operationId: CreateTnOptionOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <TnOptionOrder>
                    <CustomerOrderId>TnOptionOrder1</CustomerOrderId>
                    <TnOptionGroups>
                      <TnOptionGroup>
                        <NumberFormat>10digit</NumberFormat>
                        <RPIDFormat>10digit</RPIDFormat>
                        <RewriteUser>testUser1</RewriteUser>
                        <CallForward>6042661720</CallForward>
                        <CallingNameDisplay>on</CallingNameDisplay>
                        <PortOutPasscode>a1b2c3</PortOutPasscode>
                        <Protected>true</Protected>
                        <Sms>on</Sms>
                        <FinalDestinationURI>sip:+12345678901@1.2.3.4:5060</FinalDestinationURI>
                        <A2pSettings>
                          <MessageClass>M</MessageClass>
                          <CampaignId>campaignId010</CampaignId>
                          <Action>asSpecified</Action>
                        </A2pSettings>
                        <TelephoneNumbers>
                          <TelephoneNumber>2018551020</TelephoneNumber>
                        </TelephoneNumbers>
                      </TnOptionGroup>
                      <TnOptionGroup>
                        <CallingNameDisplay>off</CallingNameDisplay>
                        <Protected>false</Protected>
                        <Sms>off</Sms>
                        <OriginationRoutePlan>
                          <Route>
                            <Endpoint>6105552502</Endpoint>
                            <Priority>1</Priority>
                            <Weight>100</Weight>
                          </Route>
                          <Route>
                            <Endpoint>sip:clarkkent@dailyplanet.com</Endpoint>
                            <Priority>2</Priority>
                            <Weight>100</Weight>
                          </Route>
                          <Route>
                            <Endpoint>192.168.20.21</Endpoint>
                            <Priority>3</Priority>
                            <Weight>50</Weight>
                          </Route>
                          <Route>
                            <Endpoint>7075552509</Endpoint>
                            <Priority>3</Priority>
                            <Weight>50</Weight>
                          </Route>
                          <Route>
                            <Endpoint>myhost.bandwidth.example</Endpoint>
                            <Priority>4</Priority>
                            <Weight>100</Weight>
                          </Route>
                          <Action>asSpecified</Action>
                        </OriginationRoutePlan>
                        <TelephoneNumbers>
                          <TelephoneNumber>2018551025</TelephoneNumber>
                        </TelephoneNumbers>
                      </TnOptionGroup>
                      <TnOptionGroup>
                        <PindropEnabled>true</PindropEnabled>
                        <TelephoneNumbers>
                          <TelephoneNumber>2018551026</TelephoneNumber>
                        </TelephoneNumbers>
                      </TnOptionGroup>
                      <TnOptionGroup>
                        <CallVerificationEnabled>true</CallVerificationEnabled>
                        <TelephoneNumbers>
                          <TelephoneNumber>2018551027</TelephoneNumber>
                        </TelephoneNumbers>
                      </TnOptionGroup>
                    </TnOptionGroups>
                  </TnOptionOrder>
            schema:
              $ref: '#/components/schemas/TnOptionOrderRequest'
      responses:
        '201':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TnOptionOrderResponse>
                      <TnOptionOrder>
                        <OrderCreateDate>2016-01-15T12:01:14.324Z</OrderCreateDate>
                        <AccountId>14</AccountId>
                        <CreatedByUser>jbm</CreatedByUser>
                        <OrderId>ddbdc72e-dc27-490c-904e-d0c11291b095</OrderId>
                        <LastModifiedDate>2016-01-15T12:01:14.324Z</LastModifiedDate>
                        <ProcessingStatus>RECEIVED</ProcessingStatus>
                        <TnOptionGroups>
                          <TnOptionGroup>
                            <NumberFormat>10digit</NumberFormat>
                            <RPIDFormat>10digit</RPIDFormat>
                            <RewriteUser>testUser1</RewriteUser>
                            <CallForward>6042661720</CallForward>
                            <CallingNameDisplay>on</CallingNameDisplay>
                            <Protected>true</Protected>
                            <Sms>on</Sms>
                            <TelephoneNumbers>
                              <TelephoneNumber>2018551020</TelephoneNumber>
                            </TelephoneNumbers>
                          </TnOptionGroup>
                          <TnOptionGroup>
                            <CallingNameDisplay>off</CallingNameDisplay>
                            <Protected>false</Protected>
                            <Sms>off</Sms>
                            <TelephoneNumbers>
                              <TelephoneNumber>2018551025</TelephoneNumber>
                            </TelephoneNumbers>
                          </TnOptionGroup>
                        </TnOptionGroups>
                        <ErrorList/>
                      </TnOptionOrder>
                    </TnOptionOrderResponse>
              schema:
                $ref: '#/components/schemas/TnOptionOrderResponse'
          description: Created
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TnOptionOrderResponse>
                      <ResponseStatus>
                        <ErrorCode>5081</ErrorCode>
                        <Description>Number Format 'wrong' is invalid.</Description>
                      </ResponseStatus>
                    </TnOptionOrderResponse>
              schema:
                $ref: '#/components/schemas/TnOptionOrderErrorResponse'
          description: >-
            Bad Request A 400 response Indicates that the order could not be
            created. Error text and an error code will be provided in the
            ErrorList element.
        '409':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TnOptionOrderResponse>
                      <ResponseStatus>
                        <ErrorCode>5200</ErrorCode>
                        <Description>Origination route plan is not enabled for the account.</Description>
                      </ResponseStatus>
                    </TnOptionOrderResponse>
              schema:
                $ref: '#/components/schemas/TnOptionOrderErrorResponse'
          description: >-
            Conflict. Error text and an error code will be provided in the
            ErrorList element.
      summary: Create TN Option order
      tags:
        - Tn Option
  /accounts/{accountId}/tnoptions/{orderId}:
    get:
      description: Retrieve information about a TN Option Order with specified ID.
      operationId: GetTnOptionOrder
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          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"?>
                    <TnOptionOrder>
                      <OrderCreateDate>2016-01-15T11:22:58.789Z</OrderCreateDate>
                      <AccountId>14</AccountId>
                      <CreatedByUser>jbm</CreatedByUser>
                      <OrderId>409033ee-88ec-43e3-85f3-538f30733963</OrderId>
                      <LastModifiedDate>2016-01-15T11:22:58.969Z</LastModifiedDate>
                      <ProcessingStatus>COMPLETE</ProcessingStatus>
                      <TnOptionGroups>
                        <TnOptionGroup>
                          <CallingNameDisplay>on</CallingNameDisplay>
                          <Sms>on</Sms>
                          <TelephoneNumbers>
                            <TelephoneNumber>2174101601</TelephoneNumber>
                          </TelephoneNumbers>
                        </TnOptionGroup>
                        <TnOptionGroup>
                          <CallingNameDisplay>off</CallingNameDisplay>
                          <TelephoneNumbers>
                            <TelephoneNumber>2174101602</TelephoneNumber>
                          </TelephoneNumbers>
                          </TnOptionGroup>
                        <TnOptionGroup>
                          <CallingNameDisplay>systemdefault</CallingNameDisplay>
                          <FinalDestinationURI>sip:+12345678901@1.2.3.4:5060</FinalDestinationURI>
                          <TelephoneNumbers>
                            <TelephoneNumber>2174101603</TelephoneNumber>
                          </TelephoneNumbers>
                        </TnOptionGroup>
                      </TnOptionGroups>
                      <ErrorList/>
                      <Warnings>
                        <Warning>
                          <TelephoneNumber>2174101601</TelephoneNumber>
                          <Description>SMS is already Enabled or number is in processing.</Description>
                        </Warning>
                      </Warnings>
                    </TnOptionOrder>
              schema:
                $ref: '#/components/schemas/TnOptionOrderReportDetailedResponse'
          description: >-
            The descriptive payload for the TN Option Orders query provides a
            broad range of information about the TN Option Order identified in
            the URL.  Included amongst the information is: <ul><li>ErrorList -
            the errors discovered with codes and explanations</li><li>Warnings -
            the warnings discovered with
            explanations</li><li>ProcessingStatus(RECEIVED, PROCESSING,
            COMPLETE, PARTIAL, FAILED) - the overall status of the
            order</li></ul>
        '404':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TnOptionOrderReportResponse>
                      <ResponseStatus>
                        <Description>The resource does not exist</Description>
                      </ResponseStatus>
                    </TnOptionOrderReportResponse>
              schema:
                $ref: '#/components/schemas/TnOptionOrderReportErrorResponse'
          description: Not found. The order id does not exist in the system.
      summary: Retrieve TN Option order
      tags:
        - Tn Option
  /accounts/{accountId}/tnoptions/{orderId}/history:
    get:
      description: Retrieve the history information associated with an order.
      operationId: GetOrderHistory
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - description: ''
          in: path
          name: orderId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                application/xml:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <OrderHistoryWrapper>
                       <OrderHistory>
                          <OrderDate>2020-09-17T08:56:39.607Z</OrderDate>
                          <Note>Order has been received by the system.</Note>
                          <Author>admin</Author>
                          <Status>received</Status>
                       </OrderHistory>
                       <OrderHistory>
                          <OrderDate>2020-09-17T08:56:39.743Z</OrderDate>
                          <Note>Order processing has started.</Note>
                          <Author>admin</Author>
                          <Status>processing</Status>
                       </OrderHistory>
                       <OrderHistory>
                          <OrderDate>2020-09-17T08:56:39.820Z</OrderDate>
                          <Note>Order is complete.</Note>
                          <Author>admin</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>OrderDate</td>
                            <td>The date that the order history event happened</td></tr><tr><td>Status</td><td>The new state of the TN Option 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></p>
        '404':
          content:
            application/xml: {}
          description: Not found. The order id does not exist in the system.
      summary: Retrieve TN Option order history
      tags:
        - Tn Option
  /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/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <Reservation>
                    <ReservedTn>4354770625</ReservedTn>
                  </Reservation>
            schema:
              $ref: '#/components/schemas/ReservationRequest'
      responses:
        '201':
          description: >-
            The TN has been successfully reserved, with the link to the
            reservation in the Location Header.
          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
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <ReservationResponse>
                      <ResponseStatus>
                        <ErrorCode>5041</ErrorCode>
                        <Description>Reservation failed: telephone number 4354776010 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'
      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/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>4354776010</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: '8442948899'
          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>8442948899</TollFreeNumber>
                            <TollFreeNumber>8774024485</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>8442948899</TollFreeNumber>
                            <TollFreeNumber>8774024485</TollFreeNumber>
                          </TollFreeNumberList>
                          <Breakdown>
                            <PortableTollFreeNumberList>
                              <RespOrgList>
                                <RespOrg>
                                  <Id>RespOrg1</Id>
                                  <RespOrgException>true</RespOrgException>
                                  <TollFreeNumberList>
                                    <TollFreeNumber>8442948899</TollFreeNumber>
                                    <TollFreeNumber>8774024485</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>8442948899</TollFreeNumber>
                            <TollFreeNumber>8774024485</TollFreeNumber>
                            <TollFreeNumber>8662894621</TollFreeNumber>
                            <TollFreeNumber>8773732047</TollFreeNumber>
                            <TollFreeNumber>8449978331</TollFreeNumber>
                            <TollFreeNumber>8003985992</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>8662894621</TollFreeNumber>
                                  </TollFreeNumberList>
                                </RespOrg>
                              </RespOrgList>
                            </PortableTollFreeNumberList>
                            <ManuallyPortableTollFreeNumberList>
                              <DisconnectedTollFreeNumberList>
                                <TollFreeNumber>8449978331</TollFreeNumber>
                              </DisconnectedTollFreeNumberList>
                              <TransitionalTollFreeNumberList>
                                <TollFreeNumber>8003985992</TollFreeNumber>
                              </TransitionalTollFreeNumberList>
                            </ManuallyPortableTollFreeNumberList>
                            <NonPortableTollFreeNumberList>
                              <SpareTollFreeNumberList>
                                <TollFreeNumber>8442948899</TollFreeNumber>
                              </SpareTollFreeNumberList>
                              <UnavailableTollFreeNumberList>
                                <TollFreeNumber>8774024485</TollFreeNumber>
                              </UnavailableTollFreeNumberList>
                              <DeniedTollFreeNumberList>
                                <DeniedTollFreeNumber>
                                  <TollFreeNumber>8773732047</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>8442948899</TollFreeNumber>
                            <TollFreeNumber>8774024485</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>8442948899</TollFreeNumber>
                      <TollFreeNumber>8774024485</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>8442948899</TollFreeNumber>
                          <TollFreeNumber>8774024485</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>8442948899</TollFreeNumber>
                          <TollFreeNumber>8774024485</TollFreeNumber>
                        </TollFreeNumberList>
                        <Breakdown>
                          <PortableTollFreeNumberList>
                            <RespOrgList>
                              <RespOrg>
                                <Id>RespOrg1</Id>
                                <RespOrgException>true</RespOrgException>
                                <TollFreeNumberList>
                                  <TollFreeNumber>8442948899</TollFreeNumber>
                                  <TollFreeNumber>8774024485</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>8442948899</TollFreeNumber>
                          <TollFreeNumber>8774024485</TollFreeNumber>
                          <TollFreeNumber>8662894621</TollFreeNumber>
                          <TollFreeNumber>8773732047</TollFreeNumber>
                          <TollFreeNumber>8449978331</TollFreeNumber>
                          <TollFreeNumber>8003985992</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>8662894621</TollFreeNumber>
                                </TollFreeNumberList>
                              </RespOrg>
                            </RespOrgList>
                          </PortableTollFreeNumberList>
                          <ManuallyPortableTollFreeNumberList>
                            <DisconnectedTollFreeNumberList>
                              <TollFreeNumber>8449978331</TollFreeNumber>
                            </DisconnectedTollFreeNumberList>
                            <TransitionalTollFreeNumberList>
                              <TollFreeNumber>8003985992</TollFreeNumber>
                            </TransitionalTollFreeNumberList>
                          </ManuallyPortableTollFreeNumberList>
                          <NonPortableTollFreeNumberList>
                            <SpareTollFreeNumberList>
                              <TollFreeNumber>8442948899</TollFreeNumber>
                            </SpareTollFreeNumberList>
                            <UnavailableTollFreeNumberList>
                              <TollFreeNumber>8774024485</TollFreeNumber>
                            </UnavailableTollFreeNumberList>
                            <DeniedTollFreeNumberList>
                              <DeniedTollFreeNumber>
                                <TollFreeNumber>8773732047</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>8442948899</TollFreeNumber>
                          <TollFreeNumber>8774024485</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>8442948899</TollFreeNumber>
                                <TollFreeNumber>8774024485</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>8442948899</TollFreeNumber>
                                <TollFreeNumber>8774024485</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>8442948899</TollFreeNumber>
                                <TollFreeNumber>8774024485</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>8442948899</TollFreeNumber>
                          <TollFreeNumber>8774024485</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>8442948899</TollFreeNumber>
                          <TollFreeNumber>8774024485</TollFreeNumber>
                        </TollFreeNumberList>
                        <Breakdown>
                          <PortableTollFreeNumberList>
                            <RespOrgList>
                              <RespOrg>
                                <Id>RespOrg1</Id>
                                <RespOrgException>true</RespOrgException>
                                <TollFreeNumberList>
                                  <TollFreeNumber>8442948899</TollFreeNumber>
                                  <TollFreeNumber>8774024485</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>8442948899</TollFreeNumber>
                          <TollFreeNumber>8774024485</TollFreeNumber>
                          <TollFreeNumber>8662894621</TollFreeNumber>
                          <TollFreeNumber>8773732047</TollFreeNumber>
                          <TollFreeNumber>8449978331</TollFreeNumber>
                          <TollFreeNumber>8003985992</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>8662894621</TollFreeNumber>
                                </TollFreeNumberList>
                              </RespOrg>
                            </RespOrgList>
                          </PortableTollFreeNumberList>
                          <ManuallyPortableTollFreeNumberList>
                            <DisconnectedTollFreeNumberList>
                              <TollFreeNumber>8449978331</TollFreeNumber>
                            </DisconnectedTollFreeNumberList>
                            <TransitionalTollFreeNumberList>
                              <TollFreeNumber>8003985992</TollFreeNumber>
                            </TransitionalTollFreeNumberList>
                          </ManuallyPortableTollFreeNumberList>
                          <NonPortableTollFreeNumberList>
                            <SpareTollFreeNumberList>
                              <TollFreeNumber>8442948899</TollFreeNumber>
                            </SpareTollFreeNumberList>
                            <UnavailableTollFreeNumberList>
                              <TollFreeNumber>8774024485</TollFreeNumber>
                            </UnavailableTollFreeNumberList>
                            <DeniedTollFreeNumberList>
                              <DeniedTollFreeNumber>
                                <TollFreeNumber>8773732047</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>8442948899</TollFreeNumber>
                          <TollFreeNumber>8774024485</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>8442948899</TollFreeNumber>
                          <TollFreeNumber>8774024485</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>8442948899</TollFreeNumber>
                                <TollFreeNumber>8774024485</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}/{orderType}/{orderId}/adminparameters:
    get:
      description: Get order admin parameters
      operationId: GetOrderAdminParameters
      parameters:
        - $ref: '#/components/parameters/AccountIdPathParam'
        - $ref: '#/components/parameters/OrderTypePathParam'
        - $ref: '#/components/parameters/OrderIdPathParam'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <AdminParametersResponse>
                     <AdminParameters>
                      <ActivityState>seen<ActivityState>
                      <BandwidthPrime>John</BandwidthPrime>
                     </AdminParameters>
                    </AdminParametersResponse>
              schema:
                $ref: '#/components/schemas/AdminParametersResponse'
          description: >-
            The information has been successfully retrieved and displayed in the
            payload
      summary: Get Order Admin Parameters
      tags:
        - Orders
  /admin/data/a2pClasses:
    get:
      description: Retrieves A2P Classes.
      operationId: ReadA2pClasses
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <A2pClassList>
                        <A2pClass>
                          <MessageClass>TestClass</MessageClass>
                          <ClassDescription>This is a test.</ClassDescription>
                        </A2pClass>
                        <A2pClass>
                          <MessageClass>Test_Class</MessageClass>
                          <ClassDescription>Another test.</ClassDescription>
                        </A2pClass>
                      </A2pClassList>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/A2pClassListResponse'
          description: Return existing A2P Classes.
      summary: List A2pClasses
      tags:
        - Admin Data
  /admin/data/a2pClasses/{messageClass}:
    get:
      description: Retrieve A2P Class.
      operationId: ReadA2PClass
      parameters:
        - description: Message Class name
          example: TestClass
          in: path
          name: messageClass
          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>
                      <A2pClass>
                        <MessageClass>TestClass</MessageClass>
                        <ClassDescription>This is a test.</ClassDescription>
                      </A2pClass>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/A2pClassResponse'
          description: Return A2P Class.
        '404':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AdminDataResponse>
                      <ResponseStatus>
                        <ErrorCode>12114</ErrorCode>
                        <Description>A2P Class with Id 'TestClass' not found</Description>
                      </ResponseStatus>
                    </AdminDataResponse>
              schema:
                $ref: '#/components/schemas/AdminDataErrorResponse'
          description: A2P Class not found.
      summary: Retrieve A2P Class
      tags:
        - Admin Data
  /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
  /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></ul>. <p>Please visit <a
        href='/docs/numbers/webhooks/portoutValidationWebhook'>Webhooks</a></p>
      operationId: PortOutValidationWebhook
      parameters: []
      requestBody:
        content:
          application/xml:
            examples:
              example:
                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>2223331000</TelephoneNumber>
                      <TelephoneNumber>2223331001</TelephoneNumber>
                    </TelephoneNumbers>
                  </PortOutValidationRequest>
            schema:
              $ref: '#/components/schemas/PortOutValidationRequest'
      responses:
        '200':
          content:
            application/xml:
              examples:
                Validation Failed:
                  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>2223331000</TelephoneNumber>
                        </TelephoneNumbers>
                      </AcceptableValues>
                    </PortOutValidationResponse>
                Validation Passed:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <PortOutValidationResponse>
                      <Portable>true</Portable>
                      <PON>some_pon</PON>
                    </PortOutValidationResponse>
              schema:
                $ref: '#/components/schemas/PortOutValidationResponse'
          description: >
            <h3>Validation Passed</h3>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 play back the PON.<p>&nbsp;</p>
            <h3>Validation Failed</h3><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 values <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 above.</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>
        '400':
          description: >
            <p>Numbers <b>will be ported out</b> if a 4xx series response is
            received by Bandwidth</p>
        '500':
          description: >
            <p>An error in the customer's server - indicating that the request
            cannot be serviced by the customer.

            Numbers <b>will be ported out</b> if a 5xx series response is
            received by Bandwidth</p>
      summary: Port-out validation webhook
      tags:
        - Callbacks
  /cities:
    get:
      description: >-
        The /cities resource returns all of the Cities in the indicated State
        that are supported from a coverage perspective, and, if requested, that
        contain orderable inventory. The values returned indicate the names of
        the Cities and, if <b>available</b> is specified, returns the available
        inventory by City. Note that the mapping between Rate Center and City is
        not completely predictable because multiple cities can be served by a
        single Rate Center and it may take multiple Rate Centers to serve a
        city. The Rate Centers results are more predictable because they are
        defined strictly in telecommunication terms. The Rate Centers and Cities
        API Calls return information about the Bandwidth CLEC Network, including
        coverage data, indicating both the extent of on-net and off-net
        coverage, as well as number availability, again from an on-net and
        off-net perspective. The rules are as follows: <ul><li>If supported=true
        is specified, then the coverage or availability is reported for the
        Bandwidth CLEC only. </li><li>If supported is omitted or false, then the
        coverage or availability is reported for the combination of the
        Bandwidth CLEC and our partners </li><li>If available=true is specified,
        then only Rate Centers in which we have available numbers are reported.
        </li><li>If available is omitted or false, then all Rate Centers within
        the scope defined by supported will be returned. </li></ul>These rules
        apply for both the /rateCenters and /cities API calls. <table border="1"
        cellpadding="0" cellspacing="0"> <tbody> <tr> <td valign="top"> </td>
        <td valign="top"> Supported = true </td> <td valign="top"> Supported is
        missing </td> </tr> <tr> <td valign="top"> available = true </td> <td
        valign="top"> Available numbers within the Bandwidth CLEC network </td>
        <td valign="top"> Available numbers within the Bandwidth CLEC network
        combined with our partner networks </td> </tr> <tr> <td valign="top">
        available is missing </td> <td valign="top"> Coverage in the Bandwidth
        CLEC </td> <td valign="top"> Coverage of the combined Bandwidth CLEC +
        Partner networks </td> </tr> </tbody> </table>
      operationId: ListCities
      parameters:
        - description: 2 character state code.
          example: NC
          in: query
          name: state
          required: true
          schema:
            type: string
        - description: >-
            If available is set as true then the result includes the quantity of
            the available telephone numbers in that City.
          example: true
          in: query
          name: available
          required: false
          schema:
            type: boolean
        - description: >-
            If supported is set to true the payload will show those Rate Centers
            that Bandwidth serves directly.
          example: true
          in: query
          name: supported
          required: false
          schema:
            type: boolean
      responses:
        '200':
          content:
            application/xml:
              examples:
                Response with TN count:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <CityResponse>
                      <ResultCount>129</ResultCount>
                      <Cities>
                       <City>
                          <RcAbbreviation>FILLEY</RcAbbreviation>
                          <AvailableTelephoneNumberCount>266</AvailableTelephoneNumberCount>
                          <Name>ADAMS</Name>
                        </City>
                        <City>
                          <RcAbbreviation>DOUGLAS</RcAbbreviation>
                          <AvailableTelephoneNumberCount>378</AvailableTelephoneNumberCount>
                          <Name>ADAMS</Name>
                        </City>
                        <City>
                          <RcAbbreviation>WAKEFIELD</RcAbbreviation>
                          <AvailableTelephoneNumberCount>272</AvailableTelephoneNumberCount>
                          <Name>ALLEN</Name>
                        </City>
                        <City>
                          <RcAbbreviation>ASHLAND</RcAbbreviation>
                          <AvailableTelephoneNumberCount>129</AvailableTelephoneNumberCount>
                          <Name>ASHLAND</Name>
                        </City>
                        <City>
                          <RcAbbreviation>WEST POINT</RcAbbreviation>
                          <AvailableTelephoneNumberCount>85</AvailableTelephoneNumberCount>
                          <Name>WEST POINT</Name>
                        </City>
                        <City>
                          <RcAbbreviation>OAKLAND</RcAbbreviation>
                          <AvailableTelephoneNumberCount>290</AvailableTelephoneNumberCount>
                          <Name>WEST POINT</Name>
                        </City>
                        <City>
                          <RcAbbreviation>WESTERN</RcAbbreviation>
                          <AvailableTelephoneNumberCount>134</AvailableTelephoneNumberCount>
                          <Name>WESTERN</Name>
                        </City>
                        <City>
                          <RcAbbreviation>WAYNE</RcAbbreviation>
                          <AvailableTelephoneNumberCount>434</AvailableTelephoneNumberCount>
                          <Name>WINSIDE</Name>
                        </City>
                        <City>
                          <RcAbbreviation>BRADSHAW</RcAbbreviation>
                          <AvailableTelephoneNumberCount>274</AvailableTelephoneNumberCount>
                          <Name>YORK</Name>
                        </City>
                      </Cities>
                    </CityResponse>
                Simple response:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <CityResponse>
                      <ResultCount>449</ResultCount>
                      <Cities>
                        <City>
                         <RcAbbreviation>DOUGLAS</RcAbbreviation>
                         <Name>ADAMS</Name>
                       </City>
                        <City>
                          <RcAbbreviation>FILLEY</RcAbbreviation>
                          <Name>ADAMS</Name>
                        </City>
                        <City>
                          <RcAbbreviation>AINSWORTH</RcAbbreviation>
                          <Name>AINSWORTH</Name>
                        </City>
                        <!-- ... SNIP ... -->
                        <City>
                          <RcAbbreviation>LONG PINE</RcAbbreviation>
                          <Name>AINSWORTH</Name>
                        </City>
                        <City>
                          <RcAbbreviation>ODELL</RcAbbreviation>
                          <Name>WYMORE</Name>
                        </City>
                        <City>
                          <RcAbbreviation>BRADSHAW</RcAbbreviation>
                          <Name>YORK</Name>
                        </City>
                        <City>
                          <RcAbbreviation>YORK</RcAbbreviation>
                          <Name>YORK</Name>
                        </City>
                        <City>
                          <RcAbbreviation>WACO</RcAbbreviation>
                          <Name>YORK</Name>
                        </City>
                      </Cities>
                    </CityResponse>
              schema:
                $ref: '#/components/schemas/CitySearchResults'
          description: >-
            This response returns the list of cities, along with the Rate
            Centers that serve those Cities.  If 'available' is specified then
            the number of TNs available in that city / RC combination is also
            included.
      summary: List Cities
      tags:
        - Cities
  /coveredRateCenters:
    get:
      description: >-
        The Covered Rate Centers API Call return information about the Bandwidth
        CLEC Network, including coverage data, indicating both the extent of
        on-net and off-net coverage, as well as number availability.
      operationId: ListCoveredRateCenters
      parameters:
        - description: >
            The starting value for a paginated response. The default is '1'
            indicating the first page of results.
          example: 1
          in: query
          name: page
          required: true
          schema:
            type: number
        - description: The number of rate centers to include in a paginated result payload.
          example: 50
          in: query
          name: size
          required: true
          schema:
            type: number
        - description: >-
            A set of fields that needs to be included in response. A lists of
            zip codes, cities, vendors, NpaNxxXs and count of available/limited
            available TNs are not included for each rate center by default. For
            example if the payload should contain a list of the Cities covered
            by the Rate Centers then embed=cities would be included as a query
            parameter. A list of vendors is available only for admin users. 

            No filter parameters are supported if LocalRateCenters is specified.
            In this case only size, page and any other embed parameters are
            supported.
          in: query
          name: embed
          required: false
          schema:
            items:
              type: string
            type: array
        - description: A 2 character State code
          example: OK
          in: query
          name: state
          required: false
          schema:
            type: string
        - description: A rate center's abbreviation.
          example: BARTLESVL
          in: query
          name: abbreviation
          required: false
          schema:
            type: string
        - description: A name of rate center.
          example: BARTLESVILLE
          in: query
          name: name
          required: false
          schema:
            type: string
        - description: A 5 digit zip code of the area covered by rate center.
          example: '74029'
          in: query
          name: zip
          required: false
          schema:
            type: string
        - description: A name of city covered by rate center.
          example: DEWEY
          in: query
          name: city
          required: false
          schema:
            type: string
        - description: A 3 or 5 digit rate center's LATA.
          example: 538
          in: query
          name: lata
          required: false
          schema:
            type: number
        - description: The tier associated with covered rate center; a value from 0 to 5.
          example: 0
          in: query
          name: tier
          required: false
          schema:
            type: number
        - description: The 3 digit NPA or Area Code covered by rate center.
          example: 918
          in: query
          name: npa
          required: false
          schema:
            type: number
        - description: The 6 digits NPA and NXX values covered by rate center.
          example: 918886
          in: query
          name: npaNxx
          required: false
          schema:
            type: number
        - description: >-
            7 digits of NPA, NXX and thousands block values covered by rate
            center.
          example: 9188862
          in: query
          name: npaNxxX
          required: false
          schema:
            type: number
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <CoveredRateCenters>
                      <TotalCount>18</TotalCount>
                      <CoveredRateCenter>
                        <Name>AVALON</Name>
                        <Abbreviation>AVALON</Abbreviation>
                        <State>CA</State>
                        <Lata>730</Lata>
                        <AvailableNumberCount>1</AvailableNumberCount>
                        <LimitedAvailableNumberCount>1</LimitedAvailableNumberCount>
                        <ZipCodes>
                          <ZipCode>90731</ZipCode>
                        </ZipCodes>
                      <Cities>
                        <City>SAN PEDRO</City>
                      </Cities>
                      <Tiers>
                        <Tier>0</Tier>
                      </Tiers>
                      <NpaNxxXs>
                        <NpaNxxX>3105100</NpaNxxX>
                        <NpaNxxX>3105101</NpaNxxX>
                        <NpaNxxX>3109498</NpaNxxX>
                        <NpaNxxX>3109499</NpaNxxX>
                        <NpaNxxX>4242260</NpaNxxX>
                      </NpaNxxXs>
                      <Id>3151</Id>
                      <LocalRateCenters>
                        <RateCenterId>369</RateCenterId>
                        <RateCenterId>7843</RateCenterId>
                        <RateCenterId>7945</RateCenterId>
                        <RateCenterId>2461</RateCenterId>
                        <RateCenterId>10741</RateCenterId>
                        <RateCenterId>7059</RateCenterId>
                      </LocalRateCenters>
                     </CoveredRateCenter>
                    <CoveredRateCenter>
                      <Name>BEVERLY HILLS</Name>
                      <Abbreviation>BEVERLYHLS</Abbreviation>
                      <State>CA</State>
                      <Lata>730</Lata>
                      <AvailableNumberCount>25</AvailableNumberCount>
                      <LimitedAvailableNumberCount>20</LimitedAvailableNumberCount>
                      <ZipCodes>
                        <ZipCode>90013</ZipCode>
                        <ZipCode>90014</ZipCode>
                        <ZipCode>90015</ZipCode>
                        <ZipCode>90017</ZipCode>
                        <ZipCode>90044</ZipCode>
                        <ZipCode>90048</ZipCode>
                        <ZipCode>90059</ZipCode>
                        <ZipCode>90061</ZipCode>
                        <ZipCode>90071</ZipCode>
                        <ZipCode>90079</ZipCode>
                        <ZipCode>90210</ZipCode>
                        <ZipCode>90211</ZipCode>
                        <ZipCode>90212</ZipCode>
                        <ZipCode>90247</ZipCode>
                        <ZipCode>90248</ZipCode>
                        <ZipCode>90249</ZipCode>
                        <ZipCode>91352</ZipCode>
                        <ZipCode>91403</ZipCode>
                        <ZipCode>91411</ZipCode>
                        <ZipCode>91423</ZipCode>
                        <ZipCode>91504</ZipCode>
                        <ZipCode>91505</ZipCode>
                      </ZipCodes>
                      <Cities>
                        <City>BEVERLY HILLS</City>
                        <City>BURBANK</City>
                        <City>GARDENA</City>
                        <City>LOS ANGELES</City>
                        <City>SHERMAN OAKS</City>
                        <City>SUN VALLEY</City>
                        <City>VAN NUYS</City>
                      </Cities>
                      <Tiers>
                        <Tier>0</Tier>
                      </Tiers>
                      <NpaNxxXs>
                        <NpaNxxX>3102010</NpaNxxX>
                        <NpaNxxX>3102011</NpaNxxX>
                        <NpaNxxX>3102012</NpaNxxX>
                        <NpaNxxX>3102013</NpaNxxX>
                        <NpaNxxX>3102014</NpaNxxX>
                        <NpaNxxX>3102015</NpaNxxX>
                        <NpaNxxX>3102016</NpaNxxX>
                        <NpaNxxX>3102017</NpaNxxX>
                        <NpaNxxX>3102018</NpaNxxX>
                        <NpaNxxX>3102019</NpaNxxX>
                        <NpaNxxX>4246669</NpaNxxX>
                        <NpaNxxX>4247770</NpaNxxX>
                        <NpaNxxX>4247771</NpaNxxX>
                        <NpaNxxX>4247772</NpaNxxX>
                        <NpaNxxX>4247773</NpaNxxX>
                        <NpaNxxX>4247774</NpaNxxX>
                        <NpaNxxX>4247775</NpaNxxX>
                        <NpaNxxX>4247776</NpaNxxX>
                        <NpaNxxX>4247777</NpaNxxX>
                        <NpaNxxX>4247778</NpaNxxX>
                        <NpaNxxX>4247779</NpaNxxX>
                      </NpaNxxXs>
                      <Id>3538</Id>
                      <LocalRateCenters>
                      <RateCenterId>4421</RateCenterId>
                      <RateCenterId>14259</RateCenterId>
                      </LocalRateCenters>
                      </CoveredRateCenter>
                    </CoveredRateCenters>
              schema:
                $ref: '#/components/schemas/CoveredRateCenterSearchResponse'
          description: >-
            This response returns the list of Covered Rate Centers.
            <i><b>TotalCount</b></i> element's value represents the total number
            of rate centers for specified query parameters starting from the
            current page and included in response only if more rate centers
            available.
        '303':
          content:
            application/xml: {}
          description: >-
            No <i><b>page</b></i> or <i><b>size</b></i> query parameters
            specified. Link to first page of results provided in
            <i><b>Location</b></i> header
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <CoveredRateCenters>
                      <ResponseStatus>
                        <ErrorCode>4002</ErrorCode>
                        <Description>Please verify that your NPA, NPA-NXX, or NPA-NXX-X search input parameters are correct.</Description>
                      </ResponseStatus>
                      </CoveredRateCenters>
              schema:
                $ref: '#/components/schemas/CoveredRateCenterSearchErrorResponse'
          description: Invalid query parameter value.
      summary: List Covered Rate Centers
      tags:
        - Rate Centers
  /coveredRateCenters/{rateCenterId}:
    get:
      description: >-
        Retrieve information about a specific covered rate center identified as
        the resource.
      operationId: GetCoveredRateCenter
      parameters:
        - description: ''
          in: path
          name: rateCenterId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <CoveredRateCenter>
                       <Name>LOMITA</Name>
                       <Abbreviation>LOMITA</Abbreviation>
                       <State>CA</State>
                       <Lata>730</Lata>
                       <AvailableNumberCount>5536</AvailableNumberCount>
                       <LimitedAvailableNumberCount>5236</LimitedAvailableNumberCount>
                       <ZipCodes>
                          <ZipCode>90044</ZipCode>
                          <ZipCode>90059</ZipCode>
                          <ZipCode>90061</ZipCode>
                          <ZipCode>90247</ZipCode>
                          <ZipCode>90248</ZipCode>
                          <ZipCode>90249</ZipCode>
                          <ZipCode>90717</ZipCode>
                          <ZipCode>90802</ZipCode>
                          <ZipCode>90813</ZipCode>
                          <ZipCode>90822</ZipCode>
                          <ZipCode>90831</ZipCode>
                          <ZipCode>90834</ZipCode>
                       </ZipCodes>
                       <Cities>
                          <City>GARDENA</City>
                          <City>LOMITA</City>
                          <City>LONG BEACH</City>
                          <City>LOS ANGELES</City>
                       </Cities>
                       <Tiers>
                          <Tier>0</Tier>
                       </Tiers>
                       <NpaNxxXs>
                          <NpaNxxX>3102570</NpaNxxX>
                          <NpaNxxX>3102571</NpaNxxX>
                       </NpaNxxXs>
                       <Id>6854</Id>
                       <LocalRateCenters>
                          <RateCenterId>369</RateCenterId>
                          <RateCenterId>7843</RateCenterId>
                          <RateCenterId>7945</RateCenterId>
                       </LocalRateCenters>
                    </CoveredRateCenter>
              schema:
                $ref: '#/components/schemas/CoveredRateCenterResponse'
          description: ''
        '404':
          content:
            application/xml: {}
          description: NOT FOUND - the rate center id does not exist in the system.
      summary: Retrieve Covered Rate Centers
      tags:
        - Rate Centers
  /rateCenters:
    get:
      description: >-
        The rateCenters resource returns all of the Rate Centers in the
        indicated State that are supported from a coverage perspective, and, if
        requested, that contain orderable inventory. The values returned
        indicate the names of the Rate Centers and, if the query parameter
        <b>available</b> is specified, the available inventory by Rate Center.
        The Rate Centers API Call returns information about the Bandwidth CLEC
        Network, including coverage data, indicating both the extent of on-net
        and off-net coverage, as well as number availability, again from an
        on-net and off-net perspective. The rules are as follows: <ul><li>If
        supported=true is specified, then the coverage or availability is
        reported for the Bandwidth CLEC only. </li><li>If supported=true is
        omitted or false, then the coverage or availability is reported for the
        combination of the Bandwidth CLEC and our partners </li><li>If
        available=true is specified, then only Rate Centers in which we have
        available numbers are reported. </li><li>If available is omitted or
        false then all Rate Centers within the scope defined by supported will
        be returned. </li></ul>These rules apply for both the /rateCenters and
        /cities API calls. <table border="1" cellpadding="0" cellspacing="0">
        <tbody> <tr> <td valign="top"> </td> <td valign="top"> Supported = true
        </td> <td valign="top"> Supported is missing </td> </tr> <tr> <td
        valign="top"> available = true </td> <td valign="top"> Available numbers
        within the Bandwidth CLEC network </td> <td valign="top"> Available
        numbers within the Bandwidth CLEC network combined with our partner
        networks </td> </tr> <tr> <td valign="top"> available is missing </td>
        <td valign="top"> Coverage in the Bandwidth CLEC </td> <td valign="top">
        Coverage of the combined Bandwidth CLEC + Partner networks
        </td></tr></tbody></table></p>
      operationId: ListRateCenters
      parameters:
        - description: 2 character state code.
          example: NC
          in: query
          name: state
          required: true
          schema:
            type: string
        - description: >-
            If available is set as true then the result includes the quantity of
            the available telephone numbers in that Rate Center.
          example: true
          in: query
          name: available
          required: false
          schema:
            type: boolean
        - description: >-
            If supported is set to true the payload will show those Rate Centers
            that Bandwidth serves directly.
          example: true
          in: query
          name: supported
          required: false
          schema:
            type: boolean
      responses:
        '200':
          content:
            application/xml:
              examples:
                Response with TN counts:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RateCenterResponse>
                      <ResultCount>131</ResultCount>
                      <RateCenters>
                        <RateCenter>
                          <Abbreviation>ADAMS</Abbreviation>
                          <AvailableTelephoneNumberCount>108</AvailableTelephoneNumberCount>
                          <Name>ADAMS</Name>
                        </RateCenter>
                        <RateCenter>
                          <Abbreviation>ALEXANDRIA</Abbreviation>
                          <AvailableTelephoneNumberCount>230</AvailableTelephoneNumberCount>
                          <Name>ALEXANDRIA</Name>
                        </RateCenter>
                        <RateCenter>
                          <Abbreviation>ASHLAND</Abbreviation>
                          <AvailableTelephoneNumberCount>129</AvailableTelephoneNumberCount>
                          <Name>ASHLAND</Name>
                        </RateCenter>
                        <!-- ... SNIP ... -->
                        <RateCenter>
                          <Abbreviation>WEST POINT</Abbreviation>
                          <AvailableTelephoneNumberCount>85</AvailableTelephoneNumberCount>
                          <Name>WEST POINT</Name>
                        </RateCenter>
                        <RateCenter>
                          <Abbreviation>WESTERN</Abbreviation>
                          <AvailableTelephoneNumberCount>134</AvailableTelephoneNumberCount>
                          <Name>WESTERN</Name>
                        </RateCenter>
                        <RateCenter>
                          <Abbreviation>WILBER</Abbreviation>
                          <AvailableTelephoneNumberCount>135</AvailableTelephoneNumberCount>
                          <Name>WILBER</Name>
                        </RateCenter>
                        <RateCenter>
                          <Abbreviation>WYMORE</Abbreviation>
                          <AvailableTelephoneNumberCount>132</AvailableTelephoneNumberCount>
                          <Name>WYMORE</Name>
                        </RateCenter>
                        <RateCenter>
                          <Abbreviation>YUTAN</Abbreviation>
                          <AvailableTelephoneNumberCount>588</AvailableTelephoneNumberCount>
                          <Name>YUTAN</Name>
                        </RateCenter>
                      </RateCenters>
                    </RateCenterResponse>
                Simple response:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <RateCenterResponse>
                      <ResultCount>450</ResultCount>
                      <RateCenters>
                        <RateCenter>
                         <Abbreviation>ADAMS</Abbreviation>
                         <Name>ADAMS</Name>
                       </RateCenter>
                       <RateCenter>
                         <Abbreviation>AINSWORTH</Abbreviation>
                         <Name>AINSWORTH</Name>
                       </RateCenter>
                       <RateCenter>
                         <Abbreviation>ALBION</Abbreviation>
                         <Name>ALBION</Name>
                       </RateCenter>
                       <RateCenter>
                         <Abbreviation>ALEXANDRIA</Abbreviation>
                         <Name>ALEXANDRIA</Name>
                       </RateCenter>
                       <!-- ... SNIP ... -->
                       <RateCenter>
                         <Abbreviation>WOOD RIVER</Abbreviation>
                         <Name>WOOD RIVER</Name>
                       </RateCenter>
                       <RateCenter>
                         <Abbreviation>WYMORE</Abbreviation>
                         <Name>WYMORE</Name>
                       </RateCenter>
                       <RateCenter>
                         <Abbreviation>WYFRYCSTHL</Abbreviation>
                         <Name>WYNOT FORDYCE SAINT HELENA</Name>
                       </RateCenter>
                       <RateCenter>
                         <Abbreviation>YORK</Abbreviation>
                         <Name>YORK</Name>
                       </RateCenter>
                       <RateCenter>
                         <Abbreviation>YUTAN</Abbreviation>
                         <Name>YUTAN</Name>
                       </RateCenter>
                     </RateCenters>
                    </RateCenterResponse>
              schema:
                $ref: '#/components/schemas/RateCenterSearchResults'
          description: >-
            This response returns the list of Rate Center names and
            abbreviations.  If 'available' is specified then the number of TNs
            available in that Rate Center is also included.
      summary: List Rate Centers
      tags:
        - Rate Centers
  /tns:
    get:
      description: >-
        Retrieve information about one or more Telephone Numbers (TNs), where
        the TNs are chosen based on the search parameters provided in the API
        Call.
      operationId: ListTnsByGet
      parameters:
        - 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.  Note in the example that the page is the TN that begins
            the page. The initial page is tagged with the ID "1"
          example: '5'
          in: query
          name: page
          required: true
          schema:
            default: '1'
            type: string
        - description: The number of items to include in a page.
          example: 250
          in: query
          name: size
          required: true
          schema:
            default: 500
            type: integer
        - description: The internal account id assigned to the customer that "owns" the TN.
          example: 5000125
          in: query
          name: accountId
          required: false
          schema:
            type: integer
        - description: >-
            The geographic city most likely to serve the Telephone Number. City
            and other geographic data is determined statistically, and is not as
            reliable as Rate Center information for pinpointing the service
            location of a TN.
          example: CARY
          in: query
          name: city
          required: false
          schema:
            type: string
        - description: A 10 Digit TN.
          example: '9199918388'
          in: query
          name: fullNumber
          required: false
          schema:
            type: string
        - description: >-
            An IP address or subnet (CIDR format) associated with the TN. Filter
            for subnet applies by exact match.
          example: 47.16.211.63 or 69.22.181.68/30
          in: query
          name: host
          required: false
          schema:
            type: string
        - description: >-
            The LATA (Local Access Transport Area) that the TN is served from,
            typically 3 digits (5 in FLA).
          example: 423
          in: query
          name: lata
          required: false
          schema:
            type: integer
        - description: The first 3 digits of a 10 Digit NA Telephone Number, the Area Code.
          example: '919'
          in: query
          name: npa
          required: false
          schema:
            type: string
        - description: The first 6 digits of a 10 Digit NA Telephone Number.
          example: '919991'
          in: query
          name: npaNxx
          required: false
          schema:
            type: string
        - description: The first 7 digits of a 10 Digit NA Telephone Number.
          example: '9199918'
          in: query
          name: npaNxxX
          required: false
          schema:
            type: string
        - description: A service type value to filter the TNs returned in the payload.
          example: E911
          in: query
          name: service
          required: false
          schema:
            enum:
              - E911
              - Voice
              - Hosted_E911
            type: string
        - description: >-
            The Rate Center designation that the number is served from. If not
            combined with a State search the results will span states.
          example: RALEIGH
          in: query
          name: rateCenter
          required: false
          schema:
            type: string
        - description: >-
            A 2 character State or Province designation - TX for Texas for
            example.
          example: TX
          in: query
          name: state
          required: false
          schema:
            type: string
        - description: >-
            A service tier indicating the the vendor class that the TN is
            associated with.  Tier indicates whether the TN is on-net, domestic
            offnet, Canadian, etc.
          example: 5
          in: query
          name: tier
          required: false
          schema:
            type: integer
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumbersResponse>
                        <TelephoneNumberCount>5</TelephoneNumberCount>
                        <Links>
                            <first>Link=&lt;https://api.bandwidth.com:443/v1.0/tns?account=9500012&amp;page=1&amp;size=500&gt;;rel="first";</first>
                            <next>Link=&lt;https://api.bandwidth.com:443/v1.0/tns?account=9500012&amp;page=2012082912&amp;size=500&gt;;rel="next";</next>
                        </Links>
                        <TelephoneNumbers>
                            <TelephoneNumber>
                                <City>CARY</City>
                                <Lata>426</Lata>
                                <State>NC</State>
                                <FullNumber>9192381138</FullNumber>
                                <Tier>0</Tier>
                                <VendorId>49</VendorId>
                                <VendorName>Bandwidth CLEC</VendorName>
                                <RateCenter>CARY</RateCenter>
                                <Status>Inservice</Status>
                                <AccountId>9900008</AccountId>
                                <LastModified>2013-12-05T05:58:27.000Z</LastModified>
                                <InServiceDate>2013-12-05T05:58:27.000Z</InServiceDate>
                            </TelephoneNumber>
                            <TelephoneNumber>
                                <City>CARY</City>
                                <Lata>426</Lata>
                                <State>NC</State>
                                <FullNumber>9192381139</FullNumber>
                                <Tier>0</Tier>
                                <VendorId>49</VendorId>
                                <VendorName>Bandwidth CLEC</VendorName>
                                <RateCenter>CARY</RateCenter>
                                <Status>Inservice</Status>
                                <AccountId>9900000</AccountId>
                                <LastModified>2013-12-05T05:58:27.000Z</LastModified>
                                <InServiceDate>2013-12-05T05:58:27.000Z</InServiceDate>
                            </TelephoneNumber>
                            <TelephoneNumber>
                                <City>CARY</City>
                                <Lata>426</Lata>
                                <State>NC</State>
                                <FullNumber>9192381141</FullNumber>
                                <Tier>0</Tier>
                                <VendorId>49</VendorId>
                                <VendorName>Bandwidth CLEC</VendorName>
                                <RateCenter>CARY</RateCenter>
                                <Status>Inservice</Status>
                                <AccountId>9900000</AccountId>
                                <LastModified>2013-12-05T05:58:27.000Z</LastModified>
                                <InServiceDate>2013-12-05T05:58:27.000Z</InServiceDate>
                            </TelephoneNumber>
                            <TelephoneNumber>
                                <City>CARY</City>
                                <Lata>426</Lata>
                                <State>NC</State>
                                <FullNumber>9192381142</FullNumber>
                                <Tier>0</Tier>
                                <VendorId>49</VendorId>
                                <VendorName>Bandwidth CLEC</VendorName>
                                <RateCenter>CARY</RateCenter>
                                <Status>Inservice</Status>
                                <AccountId>9900000</AccountId>
                                <LastModified>2013-12-05T05:58:27.000Z</LastModified>
                                <InServiceDate>2013-12-05T05:58:27.000Z</InServiceDate>
                            </TelephoneNumber>
                            <TelephoneNumber>
                                <City>CARY</City>
                                <Lata>426</Lata>
                                <State>NC</State>
                                <FullNumber>9192381144</FullNumber>
                                <Tier>0</Tier>
                                <VendorId>49</VendorId>
                                <VendorName>Bandwidth CLEC</VendorName>
                                <RateCenter>CARY</RateCenter>
                                <Status>Aging</Status>
                                <AccountId>753</AccountId>
                                <LastModified>2013-12-05T05:58:27.000Z</LastModified>
                                <InServiceDate>2013-12-05T05:58:27.000Z</InServiceDate>
                            </TelephoneNumber>
                        </TelephoneNumbers>
                    </TelephoneNumbersResponse>
              schema:
                $ref: '#/components/schemas/TelephoneNumbersHistoryResponse'
          description: >-
            The descriptive payload for the TNs query provides information about
            the TN(s) that were found in the Query. Information about the City,
            State, LATA, Rate Center, Tier, Vendor, Status, Owning Account and
            Last Modified Date is provided for each TN in the payload. Links to
            assist in pagination are also provided.
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumbersResponse>
                        <ResponseStatus>
                            <ErrorCode>15511</ErrorCode>
                            <Description>The NPA_NXX '9192384' is invalid</Description>
                        </ResponseStatus>
                    </TelephoneNumbersResponse>
              schema:
                $ref: '#/components/schemas/TelephoneNumbersErrorResponse'
          description: >-
            Bad Request - any syntax error in the parameters will cause a 400
            error with a payload similar to the payload in the example, with an
            error code and text description.
      summary: List tns
      tags:
        - Tns
    post:
      description: >-
        Retrieve information about one or more Telephone Numbers (TNs), where
        the TNs are specified in POST body.
      operationId: ListTnsByPost
      parameters: []
      requestBody:
        content:
          application/xml:
            examples:
              example:
                value: |-
                  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                  <TnList>
                      <Tn>3172000285</Tn>
                      <Tn>3172000207</Tn>
                      <Tn>3172000000</Tn>
                      <Tn>3172000100</Tn>
                      <Tn>3172110285</Tn>
                      <Tn>3172100285</Tn>
                      <Tn>99999999999</Tn>
                      <Tn>111111111111</Tn>
                  </TnList>
            schema:
              $ref: '#/components/schemas/TnListRequest'
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumbersResponse>
                        <TelephoneNumberCount>4</TelephoneNumberCount>
                        <Links>
                            <first>Link=&lt;https://api.bandwidth.com/api/tns&gt;;rel="first";</first>
                        </Links>
                        <TelephoneNumbers>
                            <TelephoneNumber>
                                <City>INDIANAPOLIS</City>
                                <Lata>336</Lata>
                                <State>IN</State>
                                <FullNumber>3172000000</FullNumber>
                                <Tier>0</Tier>
                                <VendorId>49</VendorId>
                                <VendorName>Bandwidth CLEC</VendorName>
                                <RateCenter>INDIANAPLS</RateCenter>
                                <Status>Available</Status>
                                <AccountId>753</AccountId>
                                <LastModified>2016-11-16T19:34:22.000Z</LastModified>
                            </TelephoneNumber>
                            <TelephoneNumber>
                                <City>INDIANAPOLIS</City>
                                <Lata>336</Lata>
                                <State>IN</State>
                                <FullNumber>3172000500</FullNumber>
                                <Tier>0</Tier>
                                <VendorId>49</VendorId>
                                <VendorName>Bandwidth CLEC</VendorName>
                                <RateCenter>INDIANAPLS</RateCenter>
                                <Status>Aging</Status>
                                <AccountId>14</AccountId>
                                <LastModified>2016-11-16T19:34:22.000Z</LastModified>
                            </TelephoneNumber>
                            <TelephoneNumber>
                                <City>INDIANAPOLIS</City>
                                <Lata>336</Lata>
                                <State>IN</State>
                                <FullNumber>3172000100</FullNumber>
                                <Tier>0</Tier>
                                <VendorId>49</VendorId>
                                <VendorName>Bandwidth CLEC</VendorName>
                                <RateCenter>INDIANAPLS</RateCenter>
                                <Status>Available</Status>
                                <AccountId>753</AccountId>
                                <LastModified>2016-11-16T19:34:22.000Z</LastModified>
                            </TelephoneNumber>
                            <TelephoneNumber>
                                <City>INDIANAPOLIS</City>
                                <Lata>336</Lata>
                                <State>IN</State>
                                <FullNumber>3172000207</FullNumber>
                                <Tier>0</Tier>
                                <VendorId>49</VendorId>
                                <VendorName>Bandwidth CLEC</VendorName>
                                <RateCenter>INDIANAPLS</RateCenter>
                                <Status>Available</Status>
                                <AccountId>753</AccountId>
                                <LastModified>2016-11-16T19:34:22.000Z</LastModified>
                            </TelephoneNumber>
                            <TelephoneNumber>
                                <City>INDIANAPOLIS</City>
                                <Lata>336</Lata>
                                <State>IN</State>
                                <FullNumber>3172000285</FullNumber>
                                <Tier>0</Tier>
                                <VendorId>49</VendorId>
                                <VendorName>Bandwidth CLEC</VendorName>
                                <RateCenter>INDIANAPLS</RateCenter>
                                <Status>Available</Status>
                                <AccountId>753</AccountId>
                                <LastModified>2016-11-16T19:34:22.000Z</LastModified>
                            </TelephoneNumber>
                        </TelephoneNumbers>
                        <ErrorList>
                            <Error>
                                <Code>15608</Code>
                                <Description>Input contains invalid Telephone Numbers</Description>
                                <TelephoneNumbers>
                                    <TelephoneNumber>111111111111</TelephoneNumber>
                                    <TelephoneNumber>99999999999</TelephoneNumber>
                                </TelephoneNumbers>
                            </Error>
                            <Error>
                                <Code>15610</Code>
                                <Description>Telephone Numbers cannot be found on accounts</Description>
                                <TelephoneNumbers>
                                    <TelephoneNumber>3172110285</TelephoneNumber>
                                    <TelephoneNumber>3172100285</TelephoneNumber>
                                </TelephoneNumbers>
                            </Error>
                        </ErrorList>
                    </TelephoneNumbersResponse>
              schema:
                $ref: '#/components/schemas/TelephoneNumbersHistoryResponse'
          description: >-
            The descriptive payload for the TNs query provides information about
            the TN(s) that were found in the Query. Information about the City,
            State, LATA, Rate Center, Tier, Vendor, Status, Owning Account and
            Last Modified Date is provided for each TN in the payload. The
            Payload also can contain <ErrorList> where invalid or non-existing 
            on account(s) TNs are specified. Aging numbers will be displayed if
            user has access to the previous accountId. Pagination doesn't work
            in this case.
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumbersResponse>
                        <ResponseStatus>
                            <ErrorCode>15607</ErrorCode>
                            <Description>The count of Telephone numbers in POST body exceeds the maximum size of 2500</Description>
                        </ResponseStatus>
                    </TelephoneNumbersResponse>
              schema:
                $ref: '#/components/schemas/TelephoneNumbersErrorResponse'
          description: >-
            Bad Request - when in the POST body specified more then
            {pagination.maxsize} TNs.
      summary: List tns
      tags:
        - Tns
  /tns/{tn}:
    get:
      description: Retrieves the telephone number's information.
      operationId: RetrieveTn
      parameters:
        - description: ''
          example: '9199918388'
          in: path
          name: tn
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumberResponse>
                      <TelephoneNumber>2012035013</TelephoneNumber>
                      <Status>Inservice</Status>
                      <LastModifiedDate>2014-03-25 12:55:11.0</LastModifiedDate>
                      <OrderCreateDate>2014-03-25T12:55:11.810Z</OrderCreateDate>
                      <OrderId>cf79d3c3-21b7-4db7-9867-273a1867f934</OrderId>
                      <OrderType>NEW_NUMBER_ORDER</OrderType>
                      <InServiceDate>2014-03-25T12:55:11.810Z</InServiceDate>
                      <SiteId>2409</SiteId>
                      <AccountId>8000273</AccountId>
                    </TelephoneNumberResponse>
              schema:
                $ref: '#/components/schemas/TelephoneNumberStatusShortWrapper'
          description: >-
            OK - The information has been successfully retrieved and
            displayed.<br><h3>TN
            Attributes</h3><h4>status:</h4></br><ul><li>Inservice: The TN is
            currently in use by the customer that owns the
            TN.</li><li>Available: The TN is available to be ordered. If the TN
            is "protected" only the account owning the TN can order it,
            otherwise it should be generally available.</li><li>Aging: The TN is
            disconnected by the customer owning the TN. At this time, the TN
            will go into aging for some period of time (typically 30 days) and
            the customer owning the TN can order it again. If the allotted time
            has passed and the TN is not ordered by the owning customer, the TN
            will go back to Available.</li><li>PortInPendingFoc: TN is in FOC
            and waiting for the FOC date.</li><li>Reserved: A TN is reserved by
            a customer to order at a later time.</li></ul>
      summary: Retrieve tn
      tags:
        - Tns
  /tns/{tn}/availableNnRoutes:
    get:
      description: Retrieves information about available NnRoutes for the phone number.
      operationId: RetrieveRouteForThatTn
      parameters:
        - description: ''
          example: '9199918388'
          in: path
          name: tn
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AvailableNnRoutes>
                      <NNRoute>
                        <Nnid>101601</Nnid>
                        <Name>USA Mobility</Name>
                      </NNRoute>
                      <NNRoute>
                        <Nnid>102787</Nnid>
                        <Name>Globe Wireless - Bandwidth.com - SVR</Name>
                      </NNRoute>
                    </AvailableNnRoutes>
              schema:
                $ref: '#/components/schemas/TelephoneNumberAvailableNnRoutesResponse'
          description: >-
            OK - the detailed information about available NnRoutes has been
            successfully retrieved and displayed.
        '400':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <AvailableNnRoutes>
                      <ResponseStatus>
                        <ErrorCode>12512</ErrorCode>
                        <Description>Telephone number '123456789' is not valid</Description>
                      </ResponseStatus>
                    </AvailableNnRoutes>
              schema:
                $ref: >-
                  #/components/schemas/TelephoneNumberAvailableNnRoutesErrorResponse
          description: >-
            Bad Request - failed to get available NnRoutes information for the
            current phone number.
      summary: Retrieve routes for that tn
      tags:
        - Tns
  /tns/{tn}/e911:
    get:
      description: Retrieves the e911 information associated with that telephone number
      operationId: RetrieveTnE911Info
      parameters:
        - description: A 10 Digit TN
          example: '9199918388'
          in: path
          name: tn
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TnE911AddressResponse>
                       <Address>
                          <Name>Test address</Name>
                          <City>RALEIGH</City>
                          <HouseNumber>900</HouseNumber>
                          <StateCode>NC</StateCode>
                          <StreetName>MAIN CAMPUS DR</StreetName>
                          <Zip>27606</Zip>
                          <PlusFour>5214</PlusFour>
                       </Address>
                       <EmergencyNotificationGroup>
                          <Identifier>63865500-0904-46b1-9b4f-7bd237a26363</Identifier>
                          <Description>Building 5, 5th Floor.</Description>
                       </EmergencyNotificationGroup>
                    </TnE911AddressResponse>
              schema:
                $ref: '#/components/schemas/TnE911AddressResponse'
          description: The e911 address have been successfully retrieved and displayed
      summary: Retrieve e911 for that tn
      tags:
        - Tns
  /tns/{tn}/lata:
    get:
      description: Retrieves the lata associated with that telephone number.
      operationId: RetrieveLataForThatTn
      parameters:
        - description: ''
          example: '9199918388'
          in: path
          name: tn
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumberResponse>
                      <TelephoneNumberDetails>
                        <Lata>224</Lata>
                      </TelephoneNumberDetails>
                    </TelephoneNumberResponse>
              schema:
                $ref: '#/components/schemas/TelephoneNumberLataResponse'
          description: The lata have been successfully retrieved.
      summary: Retrieve lata for that tn
      tags:
        - Tns
  /tns/{tn}/lca:
    get:
      description: Retrieves the LCAs associated with that telephone number.
      operationId: RetrieveLCAForThatTn
      parameters:
        - description: ''
          example: '9199918388'
          in: path
          name: tn
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SearchResult>
                      <ListofNPANXX>
                        <NPANXX>201202</NPANXX>
                        <NPANXX>201203</NPANXX>
                        <NPANXX>201206</NPANXX>
                        <!-- SNIP -->
                        <NPANXX>973930</NPANXX>
                        <NPANXX>973931</NPANXX>
                        <NPANXX>973955</NPANXX>
                      </ListofNPANXX>
                      <Location>
                        <RateCenters>
                         <State>NJ</State>
                          <RCs>
                           <RC>CLIFFSIDE</RC>
                           <RC>DUMONT</RC>
                           <!-- SNIP -->
                           <RC>UNION CITY</RC>
                           <RC>WESTWOOD</RC>
                         </RCs>
                        </RateCenters>
                      </Location>
                    </SearchResult>
              schema:
                $ref: '#/components/schemas/NpaNxxRcLcaSearchResult'
          description: The LCAs have been successfully retrieved and displayed.
      summary: Retrieve LCA for that tn
      tags:
        - Tns
  /tns/{tn}/ratecenter:
    get:
      description: Retrieves the rate centers associated with that telephone number.
      operationId: RetrieveRateCenterForThatTn
      parameters:
        - description: ''
          example: '9199918388'
          in: path
          name: tn
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  description: example
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumberResponse>
                      <TelephoneNumberDetails>
                        <State>NJ</State>
                        <RateCenter>HACKENSACK</RateCenter>
                      </TelephoneNumberDetails>
                    </TelephoneNumberResponse>
              schema:
                $ref: '#/components/schemas/TelephoneNumberRateCenterResponse'
          description: The rate centers have been successfully retrieved and displayed.
      summary: Retrieve rate center for that tn
      tags:
        - Tns
  /tns/{tn}/sippeers:
    get:
      description: Retrieves the sippeers associated with that telephone number.
      operationId: RetrieveSippeerForThatTn
      parameters:
        - description: ''
          example: '9199918388'
          in: path
          name: tn
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <SipPeer>
                      <Id>305643</Id>
                      <Name>PeerOneSiteThree</Name>
                    </SipPeer>
              schema:
                $ref: '#/components/schemas/TnSipPeer'
          description: The sippeers have been successfully retrieved and displayed.
      summary: Retrieve sippeer for that tn
      tags:
        - Tns
  /tns/{tn}/sites:
    get:
      description: Retrieves the sites associated with that telephone number
      operationId: RetrieveSiteForThatTn
      parameters:
        - description: ''
          example: '9199918388'
          in: path
          name: tn
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <Site>
                        <Id>2409</Id>
                        <Name>siteName</Name>
                      </Site>
              schema:
                $ref: '#/components/schemas/TnSite'
          description: The sites have been successfully retrieved and displayed.
      summary: Retrieve site for that tn
      tags:
        - Tns
  /tns/{tn}/tndetails:
    get:
      description: >-
        Retrieves detailed information about the phone number. TnAttributes -
        Does this telephone number is protected or not.
      operationId: RetrieveTnDetails
      parameters:
        - description: ''
          example: '9199918388'
          in: path
          name: tn
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/xml:
              examples:
                Non-NANP details:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumberResponse>
                      <TelephoneNumberDetails>
                        <FullNumber>+33140289562</FullNumber>
                        <Country>FR</Country>
                        <TnType>geographic</TnType>
                        <VendorId>49</VendorId>
                        <VendorName>Bandwidth CLEC</VendorName>
                        <OnNetVendor>true</OnNetVendor>
                        <Status>Inservice</Status>
                        <AccountId>12345678</AccountId>
                        <Site>
                          <Id>123</Id>
                          <Name>site</Name>
                        </Site>
                        <SipPeer>
                          <PeerId>500001</PeerId>
                          <PeerName>sippeer</PeerName>
                          <IsDefaultPeer>false</IsDefaultPeer>
                        </SipPeer>
                        <ServiceTypes>
                          <ServiceType>Voice</ServiceType>
                        </ServiceTypes>
                        <LastModified>2020-03-03T15:30:07.000Z</LastModified>
                        <InServiceDate>2020-03-03T15:30:07.518Z</InServiceDate>
                        <RequirementsPackageId>55f9f932-6136-48cf-a724-401ec8fe5ff2</RequirementsPackageId>
                      </TelephoneNumberDetails>
                    </TelephoneNumberResponse>
                Shared TN details:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumberResponse>
                      <TelephoneNumberDetails>
                        <City>JERSEY CITY</City>
                        <Lata>224</Lata>
                        <State>NJ</State>
                        <FullNumber>2018981023</FullNumber>
                        <Tier>0</Tier>
                        <VendorId>49</VendorId>
                        <VendorName>Bandwidth CLEC</VendorName>
                        <RateCenter>JERSEYCITY</RateCenter>
                        <Status>Inservice</Status>
                        <AccountId>14</AccountId>
                        <Site>
                          <Id>479</Id>
                          <Name>site_9b08f</Name>
                        </Site>
                        <SipPeer>
                          <PeerId>500014</PeerId>
                          <PeerName>a2750fad-3</PeerName>
                        </SipPeer>
                        <ServiceTypes>
                          <ServiceType>Voice</ServiceType>
                        </ServiceTypes>
                        <LastModified>2014-07-30T11:29:37.000Z</LastModified>
                        <InServiceDate>2014-07-30T11:29:37.000Z</InServiceDate>
                        <Features>
                          <E911>
                            <AccountId>14</AccountId>
                            <LastE911OrderOutcome>SUCCESS</LastE911OrderOutcome>
                            <SipPeerAddress>false</SipPeerAddress>
                            <CallerName>Test CallerName</CallerName>
                            <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>
                            </Address>
                            <EmergencyNotificationGroup>
                              <Identifier>625e3ad9-c95e-4148-b2f7-d47a8dbdd0d9</Identifier>
                              <Description>Building A</Description>
                            </EmergencyNotificationGroup>
                          </E911>
                          <Lidb>
                            <Status>Pending</Status>
                            <SubscriberInformation>Fred</SubscriberInformation>
                            <UseType>BUSINESS</UseType>
                            <Visibility>PUBLIC</Visibility>
                          </Lidb>
                          <Dlda>
                            <Status>Success</Status>
                            <SubscriberType>BUSINESS</SubscriberType>
                            <ListingType>LISTED</ListingType>
                            <ListingName>
                              <FirstName>Joe</FirstName>
                              <LastName>Smith</LastName>
                            </ListingName>
                            <ListAddress>true</ListAddress>
                            <Address>
                            <HouseNumber>12</HouseNumber>
                            <StreetName>ELM</StreetName>
                            <City>New York</City>
                            <StateCode>NY</StateCode>
                             <Zip>10007</Zip>
                            <Country>United States</Country>
                            <AddressType>Dlda</AddressType>
                            </Address>
                          </Dlda>
                        </Features>
                        <TnAttributes>
                          <TnAttribute>Hosted</TnAttribute>
                        </TnAttributes>
                        <HostedTelephoneNumberDetails>
                          <HostedTelephoneNumberDetail>
                            <AccountId>12346160</AccountId>
                            <Site>
                              <Id>487</Id>
                              <Name>site_Mw4FX</Name>
                            </Site>
                            <SipPeer>
                              <PeerId>500026</PeerId>
                              <PeerName>sippeeremhlO</PeerName>
                              <IsDefaultPeer>true</IsDefaultPeer>
                            </SipPeer>
                            <ServiceTypes>
                              <ServiceType>Hosted Messaging</ServiceType>
                            </ServiceTypes>
                            <MessagingSettings>
                              <SmsEnabled>true</SmsEnabled>
                              <CampaignId>CVWGTGE</CampaignId>
                              <CampaignFullyProvisioned>true</CampaignFullyProvisioned>
                              <MessageClass>A</MessageClass>
                              <A2pState>overridden</A2pState>
                              <AssignedNnRoute>
                              <Nnid>2183991</Nnid>
                              <Name>7ae5LXMn</Name>
                              </AssignedNnRoute>
                            </MessagingSettings>
                            <TnAttributes>
                              <TnAttribute>Hosted</TnAttribute>
                            </TnAttributes>
                         </HostedTelephoneNumberDetail>
                        </HostedTelephoneNumberDetails>
                      </TelephoneNumberDetails></TelephoneNumberResponse>
                Simple response:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumberResponse>
                      <TelephoneNumberDetails>
                        <City>JERSEY CITY</City>
                        <Lata>224</Lata>
                        <State>NJ</State>
                        <FullNumber>2018981023</FullNumber>
                        <Tier>0</Tier>
                        <VendorId>49</VendorId>
                        <VendorName>Bandwidth CLEC</VendorName>
                        <OnNetVendor>true</OnNetVendor>
                        <RateCenter>JERSEYCITY</RateCenter>
                        <Status>Inservice</Status>
                        <AccountId>14</AccountId>
                        <Site>
                          <Id>479</Id>
                          <Name>site_9b08f</Name>
                        </Site>
                        <SipPeer>
                          <PeerId>500014</PeerId>
                          <PeerName>a2750fad-3</PeerName>
                        </SipPeer>
                        <ServiceTypes>
                          <ServiceType>Voice</ServiceType>
                          <ServiceType>Messaging</ServiceType>
                        </ServiceTypes>
                        <LastModified>2014-07-30T11:29:37.000Z</LastModified>
                        <InServiceDate>2014-07-30T11:29:37.000Z</InServiceDate>
                        <Features>
                          <E911>
                            <AccountId>14</AccountId>
                            <LastE911OrderOutcome>SUCCESS</LastE911OrderOutcome>
                            <SipPeerAddress>false</SipPeerAddress>
                            <CallerName>Test CallerName</CallerName>
                            <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>
                            </Address>
                            <EmergencyNotificationGroup>
                              <Identifier>625e3ad9-c95e-4148-b2f7-d47a8dbdd0d9</Identifier>
                              <Description>Building A</Description>
                            </EmergencyNotificationGroup>
                          </E911>
                          <Lidb>
                            <Status>Pending</Status>
                            <SubscriberInformation>Fred</SubscriberInformation>
                            <UseType>BUSINESS</UseType>
                            <Visibility>PUBLIC</Visibility>
                          </Lidb>
                          <Dlda>
                            <Status>Success</Status>
                            <SubscriberType>BUSINESS</SubscriberType>
                            <ListingType>LISTED</ListingType>
                            <ListingName>
                              <FirstName>Joe</FirstName>
                              <LastName>Smith</LastName>
                            </ListingName>
                            <ListAddress>true</ListAddress>
                            <Address>
                              <HouseNumber>12</HouseNumber>
                              <StreetName>ELM</StreetName>
                             <City>New York</City>
                              <StateCode>NY</StateCode>
                              <Zip>10007</Zip>
                              <Country>United States</Country>
                              <AddressType>Dlda</AddressType>
                            </Address>
                          </Dlda>
                        </Features>
                        <OriginationRoutePlan>
                          <Id>cfa6ef74-4944-47c2-b112-0cf4360b1fa5</Id>
                          <Route>
                            <Endpoint>6107622689</Endpoint>
                            <Priority>1</Priority>
                            <Weight>100</Weight>
                            <EndpointType>TN</EndpointType>
                          </Route>
                          <Route>
                            <Endpoint>sip:abcd@domain.com</Endpoint>
                            <Priority>2</Priority>
                            <Weight>100</Weight>
                            <EndpointType>SIP</EndpointType>
                          </Route>
                          <Route>
                            <Endpoint>7610762269</Endpoint>
                            <Priority>3</Priority>
                            <Weight>50</Weight>
                            <EndpointType>TN</EndpointType>
                          </Route>
                          <Route>
                            <Endpoint>192.0.2.0/24</Endpoint>
                            <Priority>3</Priority>
                            <Weight>50</Weight>
                            <EndpointType>Ipv4</EndpointType>
                          </Route>
                          <Route>
                            <Endpoint>myhost.bandwidth.example</Endpoint>
                            <Priority>4</Priority>
                            <Weight>100</Weight>
                            <EndpointType>FQDN</EndpointType>
                          </Route>
                        </OriginationRoutePlan>
                        <MessagingSettings>
                          <SmsEnabled>true</SmsEnabled>
                          <AssignedNNRoute>
                          <Nnid>101601</Nnid>
                          <Name>USA Mobility</Name>
                          </AssignedNNRoute>
                        </MessagingSettings>
                        <TnAttributes>
                          <TnAttribute>Protected</TnAttribute>
                          <TnAttribute>External</TnAttribute>
                        </TnAttributes>
                      </TelephoneNumberDetails>
                    </TelephoneNumberResponse>
                Tn details with Voice:
                  description: >-
                    Tn details with Voice, Hosted messaging and Hosted E911 on
                    different accounts
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumberResponse>
                      <TelephoneNumberDetails>
                        <City>GUSTINE</City>
                        <Lata>738</Lata>
                        <State>CA</State>
                        <FullNumber>2092151016</FullNumber>
                        <Tier>0</Tier>
                        <VendorId>49</VendorId>
                        <VendorName>Bandwidth CLEC</VendorName>
                        <OnNetVendor>true</OnNetVendor>
                        <RateCenter>GUSTINE</RateCenter>
                        <Status>Inservice</Status>
                        <AccountId>12346167</AccountId>
                        <Site>
                          <Id>494</Id>
                          <Name>site_WDSZl</Name>
                        </Site>
                        <SipPeer>
                          <PeerId>500033</PeerId>
                          <PeerName>sippeerBxxygpCJrw</PeerName>
                          <IsDefaultPeer>true</IsDefaultPeer>
                        </SipPeer>
                        <ServiceTypes>
                          <ServiceType>Voice</ServiceType>
                        </ServiceTypes>
                        <LastModified>2021-02-10T11:22:57.000Z</LastModified>
                        <Features/>
                        <TnAttributes>
                           <TnAttribute>Hosted</TnAttribute>
                        </TnAttributes>
                        <HostedTelephoneNumberDetails>
                          <HostedTelephoneNumberDetail>
                            <AccountId>12346168</AccountId>
                            <Site>
                              <Id>495</Id>
                              <Name>site_1KU9l</Name>
                            </Site>
                            <SipPeer>
                              <PeerId>500034</PeerId>
                              <PeerName>sippeere0fDdHYzRb</PeerName>
                              <IsDefaultPeer>true</IsDefaultPeer>
                            </SipPeer>
                            <ServiceTypes>
                              <ServiceType>Hosted Messaging</ServiceType>
                            </ServiceTypes>
                            <MessagingSettings>
                              <SmsEnabled>true</SmsEnabled>
                              <A2pState>system_default</A2pState>
                              <AssignedNnRoute>
                                <Nnid>112233</Nnid>
                                <Name>9417</Name>
                              </AssignedNnRoute>
                            </MessagingSettings>
                            <TnAttributes>
                              <TnAttribute>Hosted</TnAttribute>
                            </TnAttributes>
                        </HostedTelephoneNumberDetail>
                        <HostedTelephoneNumberDetail>
                          <AccountId>12346169</AccountId>
                          <ServiceTypes>
                            <ServiceType>Hosted E911</ServiceType>
                          </ServiceTypes>
                          <Features>
                            <E911>
                              <Status>Success</Status>
                              <AccountId>12346169</AccountId>
                              <LastE911OrderOutcome>SUCCESS</LastE911OrderOutcome>
                              <SipPeerAddress>false</SipPeerAddress>
                              <CallerName>ojjucTKANd</CallerName>
                              <Address>
                                <HouseNumber>6518</HouseNumber>
                                <HouseSuffix/>
                                <StreetName>MAIN CAMPUS</StreetName>
                                <StreetSuffix>DR</StreetSuffix>
                                <City>RALEIGH</City>
                                <StateCode>NC</StateCode>
                                <Zip>27606</Zip>
                                <PlusFour>5244</PlusFour>
                                <AddressType>E911</AddressType>
                                <Latitude>35.848359</Latitude>
                                <Longitude>-75.000000</Longitude>
                              </Address>
                            </E911>
                          </Features>
                          <TnAttributes>
                            <TnAttribute>Hosted</TnAttribute>
                          </TnAttributes>
                        </HostedTelephoneNumberDetail>
                        </HostedTelephoneNumberDetails>
                      </TelephoneNumberDetails>
                    </TelephoneNumberResponse>
              schema:
                $ref: '#/components/schemas/TelephoneNumberDetailHistoryResponse'
          description: >-
            OK - the detailed information about the phone number has been
            successfully retrieved and displayed.<br>TnAttributes is not
            required in the response.
        '400':
          content:
            application/xml:
              examples:
                example:
                  value: |-
                    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                    <TelephoneNumberResponse>
                     <ResponseStatus>
                     <ErrorCode>12512</ErrorCode>
                     <Description>Telephone number '123456789' is not valid</Description>
                     </ResponseStatus>
                     </TelephoneNumberResponse>
              schema:
                $ref: '#/components/schemas/TelephoneNumbersErrorResponse'
          description: >-
            Bad Request - failed to get detailed information about the current
            phone number.
      summary: Retrieve tn details
      tags:
        - Tns
security:
  - Basic: []
  - Bearer: []
servers:
  - description: Production
    url: https://api.bandwidth.com/api/v1
    variables: {}
tags:
  - description: >-
      Bandwidth rate limits all Campaign Management endpoints at 30 requests a
      minute with a burst rate of 20 requests for all the GET endpoints and 10
      requests for PUT/POST/DELETE. Accounts enabled for Registration Center v2
      (https://dev.bandwidth.com/apis/messaging-apis/tendlc) may not use the
      Campaign Management v1 APIs.
    name: 10DLC
  - name: Account
  - name: Addresses
  - description: >-
      Bandwidth uses HTTP webhooks to send message & voice events to any
      publicly addressable url.
    externalDocs:
      description: Application guide
      url: /docs/account/applications/
    name: Applications
  - name: Available Tns
  - description: Manage bulk port-in orders
    externalDocs:
      description: Bulk port-in guide
      url: /docs/numbers/porting/port-ins/bulkPortIns
    name: Bulk Port-In
  - name: Callbacks
  - name: Cities
  - description: >-
      Directory Listing and Directory Assistance (DLDA) allows to associate
      telephone numbers with street addresses in network databases. 

      This enables directory assistance services and ensures accurate caller
      information in telecommunication directories.
    externalDocs:
      description: DLDA guide
      url: >-
        /docs/numbers/guides/manageNumberFeatures/#directory-listing-and-directory-assistance-dlda
    name: DLDA
  - 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
  - name: External Tn
  - name: Hosted Messaging
  - name: Hosted Voice
  - name: Import Tn to Account
  - name: In-service Numbers
  - description: >-
      Line Information Database (LIDB) manages Calling Name (CNAM) display
      information for telephone numbers.

      LIDB orders allows to update the caller ID name that appears when someone
      calls from number.
    externalDocs:
      description: LIDB guide
      url: >-
        /docs/numbers/guides/manageNumberFeatures/#calling-name-display-update-lidb
    name: LIDB
  - description: >-
      Approving or denying Messaging Portout requests. 

      **Note: These APIs are not available to all the customers. Please check
      with your Account Manager or Customer Support Manager if you have
      questions or want to start using these.**
    name: Messaging Portout
  - name: Move Tns
  - name: Numbers Assignment
  - name: Orders
  - description: ''
    externalDocs:
      description: Porting guide
      url: /docs/numbers/porting/
    name: Porting
  - name: Rate Centers
  - externalDocs:
      description: Reports guide
      url: /docs/numbers/guides/setup-reports/accountReports/
    name: Reports
  - name: Short Codes
  - externalDocs:
      description: Sip Registrar guide
      url: /docs/account/sipRegistrar/#create-sip-credentials
    name: Sip Registrar
  - name: SipPeer Management
  - name: Site Management
  - externalDocs:
      description: Subscriptions details
      url: /docs/account/subscriptions/
    name: Subscriptions
  - name: Tn Option
  - name: Tn Reservation
  - name: Tns
  - name: Admin Data
