# Change Control
# ===============
# Version    Date       Author         Change Description
# -----------------------------------------------------------------------------
# 1.0.0      26/04/2024 Kalpanah H V    First release of the Number Hosting REST APIs
#                       Viswanathan K   
#
# 1.1.0      01/04/2025 Kalpanah H V    R19 Updates:
#                                     1. Added new API: Bulk Return Order
#                                     2. Updated changes for DLOA project.
#                                        Impacted APIs: Port-In number(s),
#                                        Update Porting Details, Order details,
#                                        Bulk Port-In Order
#                                     3. US-711902 changes:
#                                        Added new field legitimateSignee in request
#                                        for "Activate number(s)" API,
#                                        "Port-In number(s)" API,
#                                        "Update Customer Details" API and in
#                                        response of "Order details" API and
#                                        "Number Details" API
#                                     4. US-657191 changes:
#                                        Added new order type (Free Number Request)
#                                        in allowedOrderTypeV1
#                                        Added new fields (freeNumberDetails,
#                                        requestReason) in "Order details" API
#                                        response
#                                     5. US-646823 changes:
#                                        Added new resource status
#                                        (Deactivation In Progress) in
#                                        nonFreeNumberStatusTypeV1 &
#                                        numberStatusTypeV1
#                                     6. CR-352496 changes:
#                                        Added newCustomerAdress in the response
#                                        of "Order details" API
#                                     7. Other improvements:
#                                        - Renamed addressID to addressId
#                                        - Renamed custom data type:
#                                          addressIDTypeV1 to addressIdTypeV1
#                                        - Renamed invoicedocumentFileContent to
#                                          invoiceDocumentFileContent
#                                        - Updated API descriptions
#                                        - Updated the list of tags
#                                      8. Updated http status code of Bulk Order 
#                                         APIs to 200-OK
#
# 1.2.0      25/06/2025 Viswanathan K   R19 Updates:
#                                     1. Added province and city to orderFreeNumberDetailsTypeV1
#
#
openapi: 3.0.0
info: 
  title: numberManagement
  version: 1.1.0
  description: "Wholesale SIP is for Hyperscalers, Cloud Voice, UCaaS & CCaaS providers and resellers who want regulatory compliant Voice with PSTN breakout. Wholesale SIP includes carrier-grade SIP interconnect(s) between your network and ours for call termination together with the ability to order new geographic & nomadic numbers and Port-In numbers over API, or through our portal Numbers on Demand. You can simplify your business processes, build E2E automation and deliver a good end-customer experience. We can support you with a quick market entry in a flexible & scaleable way. This API specification is for managing the numbers, performing number and order management operations like number search, reservation, activation, port-in etc."
   
  contact: 
    name: Colt Reseller Support Voice
    email: ResellerSupport.Voice@colt.net
    
servers:
  - url: https://sit.apis.colt.net/numberManagement
    description: SIT server 
  - url: https://uat.apis.colt.net/numberManagement
    description: UAT server 
security:
  - OAuth2: []
  - bearerAuth: []

tags: 
  - name: Reserve number(s)
  - name: Activate number(s)
  - name: Order details
  - name: Return number(s)
  - name: Port-In number(s)
  - name: Search Free Numbers
  - name: Number Details
  - name: Update Customer Details
  - name: Update Porting Details  
  - name: Search list of orders
  - name: Number order history
  - name: Bulk Activation Order
  - name: Bulk Port-In Order 
  - name: Bulk Update Customer Details Order
  - name: Bulk Return Order  
  - name: Number portability check  
  - name: Reactivate number(s)
  - name: Search Free Number Count
  - name: Lock free number(s)
  - name: Number backfill request
  - name: Cancel backfill request
  
paths:

  /v1/reservation/order:
    post:
      operationId: reserveNumbers
      tags: 
        - Reserve number(s)
      description: "Allows you to add or reserve number in stock without endcustomer assignment nor network configuration. Number will be reserved for 90 calendar days."    
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/reservationOrderV1'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/asyncResponseTypeV1'
          headers:
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
            content-type: 
              schema:
                type: string
                enum:
                  - application/json                
        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'             
                
  /v1/activation/order:
    post:
      operationId: activateNumbers
      tags: 
        - Activate number(s)
      description: "Allows you to activate number on Colt network and assign to an end customer. Activation can be done on Free and Reserved numbers. In Italy, activation can only be done on Reserved numbers. Premium customers can activate the number without providing the end customer details in all countries except Germany."
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/activationOrderV1'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/asyncResponseTypeV1'
          headers:
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
            content-type: 
              schema:
                type: string
                enum:
                  - application/json                
        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'                    

  /v1/order/{orderId}:
    get:
      operationId: getOrderById
      tags: 
        - Order details
      description: "Returns the order status & details for a given orderId"
      parameters:
      - name: orderId
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/orderIdTypeV1'
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      - name: country
        in: query
        required: true
        schema:      
          $ref: '#/components/schemas/coltOperatingCountryListV1'          
      - name: serviceProfile
        in: query
        schema:
          $ref: '#/components/schemas/serviceProfileTypeV1'

          

      responses:
        "200":
          description: OK
          headers:
            content-type: 
              schema:
                type: string
                enum:
                  - application/json
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/orderDetailsResponseV1'

        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'                                                    

  /v1/return/order:
    post:
      operationId: returnNumbers
      tags: 
        - Return number(s)
      description: "Allows you to return the number to Colt by cancelling the reservation of reserved numbers and deactivating Activated/Port-in Activated numbers."      
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/returnOrderV1'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/asyncResponseTypeV1'
          headers:
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
            content-type: 
              schema:
                type: string
                enum:
                  - application/json                
        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'     

  /v1/checkPortability:
    post:
      operationId: checkPortability
      tags: 
        - Number portability check
      description: "API to allow you to confirm whether a number/range can be ported-in"    
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/checkPortabilityRequestTypeV1'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/checkPortabilityResponseTypeV1'
          headers:
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
            content-type: 
              schema:
                type: string
                enum:
                  - application/json     
        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'    

  /v1/portIn/order:
    post:
      operationId: portInNumbers
      tags: 
        - "Port-In number(s)"
      description: |
        The portIn API allows you to request a new port-in request to Colt. <br>
        Request can be summarized as below: <br>
        Port-In order information <br>
        a. End-customer information (name, address…) <br>
        b. List of numbers to be ported-in.<br>
        c. Porting information (porting form, porting date & time, ….) <br>
        d. Phonebook publication details <br>
        e. port attachments (LOA, invoice,etc.) <br>
        f. Email notification contact details. <br>      
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/portInOrderV1'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/asyncResponseTypeV1'
          headers:
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
            content-type: 
              schema:
                type: string
                enum:
                  - application/json                
        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'     
               
  /v1/freeNumber:
    get:
      operationId: searchFreeNumbers
      tags: 
        - Search Free Numbers
      description: "Allows you to search for free numbers only"      
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      - name: country
        in: query
        required: true
        schema:      
          $ref: '#/components/schemas/coltOperatingCountryListV1'
      - name: numberType
        in: query
        description: "Type of number to find numbers."       
        schema:        
          $ref: '#/components/schemas/allowedNumberTypesV1'
      - name: blockSize
        in: query
        description: "Range size for your free number search. Mandatory for 'Free' number search. Allowed block size for \n\n
        AT: 1 \n\n
        DE: 1,10,20,30,40,50,100,200,300,400,500,600,700,800,900, 1000,2000,3000, 4000,5000,6000,7000,8000,9000,10000 \n\n
        PL: 100 \n\n
        Others: 1, 10, 100"        
        schema:
          type: integer
          minimum: 1
      - name: quantity
        in: query 
        description: "Quantity of free numbers you require in response. \n\n \
        Default: 1. \n\n \
        Field not required for DE"        
        schema:
          type: integer
          minimum: 1
      - name: numberPrefix
        in: query
        description: "Field is required for Geo free number search. <br> 
                      Accepted format: +<country_code>&lt;LAC&gt; in url encoded format"
        schema:
          $ref: '#/components/schemas/numberPrefixTypeV1'
      - name: province
        in: query
        description: "Applicable for ES only for search by location"
        example: Barcelona, Madrid
        schema:
          $ref: '#/components/schemas/provinceTypeV1'          
      - name: city
        in: query
        description: "Applicable for ES only for search by location"
        example: BARCELONA, MADRID
        schema:
          $ref: '#/components/schemas/cityTownTypeV1'
      - name: postalCode
        in: query
        description: "Applicable for DE only if numberPrefix is +49621"
        example: 68163
        schema:
          $ref: '#/components/schemas/postalZipCodeTypeV1'
      - name: numberRangeStart
        in: query
        description: "Start range of your block. Applicable only for FR.
        The number should be specified in E164 format and URL-encoded"
        example: "%2B33173158533"
        schema:
          $ref: '#/components/schemas/E164NumberTypeV1'
      - name: numberRangeEnd
        in: query
        description: "End range of your block. Applicable only for FR.        The number should be specified in E164 format and URL-encoded"
        example: "%2B33173158533"
        schema:
          $ref: '#/components/schemas/E164NumberTypeV1'
      - name: serviceProfile
        in: query
        schema:
          $ref: '#/components/schemas/serviceProfileTypeV1'          
          
      responses:
        "200": 
          description: OK
          headers:
            content-type: 
              schema:
                type: string
                enum:
                  - application/json
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1' 
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/freeNumberResponse'

        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'                                                    

  /v1/number:
    get:
      operationId: getNumberDetail
      tags: 
        - Number Details
      description: "Allows you to search your number from your number inventory with multiple search criteria (by status, customer reference, orderId, CLI details). You can also fetch the number details (end customer name, status, address, customer Registration Number) by providing numberRangeStart and numberRangeEnd parameters"
      
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      - name: country
        in: query
        required: true
        schema:      
          $ref: '#/components/schemas/coltOperatingCountryListV1'          
      - name: serviceProfile
        in: query
        schema:
          $ref: '#/components/schemas/serviceProfileTypeV1'          
      - name: customerReference
        in: query
        required: false
        description: "Customer reference associated wth number range. If customerReference contains special characters, it should be URL-encoded"
        schema:
          $ref: '#/components/schemas/customerRefTypeV1'          
      - name: numberRangeStart
        in: query
        description: "Start range of your block. The number should be
        specified in E164 format and URL-encoded"
        example: "%2B442081324758"
        schema:
          $ref: '#/components/schemas/E164NumberTypeV1'
      - name: numberRangeEnd
        in: query
        description: "End range of your block. The number should be
        specified in E164 format and URL-encoded"
        example: "%2B442081324758"    
        schema:
          $ref: '#/components/schemas/E164NumberTypeV1'
      - name: resourceStatus
        in: query
        description: "Field is required for search by status"
        schema:
          $ref: '#/components/schemas/nonFreeNumberStatusTypeV1'          
      - name: order.id
        in: query
        description: "Field is required for search by order ID"
        schema:
          $ref: '#/components/schemas/orderIdTypeV1'
          
      responses:
        "200": 
          description: OK
          headers:
            content-type: 
              schema:
                type: string
                enum:
                  - application/json
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1' 
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/getNumberResponse'

        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 

  /v1/updateCustomer/order:
    post:
      operationId: updateCustomerDetails
      tags: 
        - Update Customer Details
      description: |
        Allows you to update an emergency address and directory services details. 
        
        In Austria,  Belgium, Ireland, Italy, Portugal, Sweden, Switzerland,  
        Netherlands, Spain and UK, Colt APIs allows you to provide and update Directory
        Service as well. 
        
        In the Netherlands, you can use the activation, Port-In and address update
        functionality to provide new or additional Address and Directory Services
        information at an order and/or at a CLI level.
        
        Update is available only if cliStatus = ‘Activated’ or ‘PortIn_Activated’.<br>
        Applicable actions: ADD, MODIFY (Default), REMOVE (Restricted use only) <br>
        ADD  is only applicable to Premium customers where end customer details can be
        added for the pre-activated numbers. Applicable for all countries excet DE.<br>
        MODIFY is applicable for both Standard and Premium customers. Either end
        customer details or directory service details or both can be modified. <br>
        
        For ES, DE, BE - both end customer details and directory service details are
        required in the request (Action: ADD and MODIFY) <br>
        For NL:  both end customer details and directory service details are required
        in the request (Action: ADD).  either end customer details or emergency address
        or directory service details or any combination is required in the request
        (Action: MODIFY) 
                 
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/updateCustomerDetailsOrderV1'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/asyncResponseTypeV1'
          headers:
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
            content-type: 
              schema:
                type: string
                enum:
                  - application/json                
        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1' 

  /v1/portUpdate/order:
    post:
      operationId: updatePortingOrder
      tags: 
        - Update Porting Details    
      description: |
        **For port-in order,** you can submit following requests using this API:<br>
        1. change porting date
        * applicable for all countries except NL
        * portUpdateType= Update Port Date, no value in 'action' is required.
        * Only portingDate and portingWindow is required
        2. cancel port
        * applicable for all countries except NL
        * portUpdateType= Cancel, no value in 'action' is required
        * NL: portUpdateType=Status and portAction='Cancel'
        3. modify port - CLI details, porting date/window, current operator, main
        billing number, notes can be modified
        * applicable for all countries except NL
        * portUpdateType=Status and portAction='Modify Port'
        4. schedule port- to set a porting date for NL port In request
        * portUpdateType=Status and portAction='Schedule Porting'
        * portUpdateType=Status and portAction='Activate Port-In'
        * applicable for all countries except NL
        * portUpdateType=Status and portAction='Quick Note' 
        5. activate porting - to initiate the activation of NL port In request
        6. send notes
        
        **For port-out order,** you can submit following requests using this API:<br>
        1. change porting date
        * applicable for DE Registered Reseller only
        * portUpdateType= Update Port Date, no value in 'action' is required.
        * Only portingDate and portingWindow is required
        2. cancel port
        * applicable for DE Registered Reseller only
        * portUpdateType= Cancel, no value in 'action' is required
        3. send notes
        * applicable for all countries except NL
        * portUpdateType=Status and portAction='Quick Note'
        4. accept or reject port-out request
        * applicable for AT, BE, CH, DE and NL
        * portUpdateType=Status and portAction='Accept' or 'Reject' 
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/portUpdateOrderV1'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/asyncResponseTypeV1'
          headers:
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
            content-type: 
              schema:
                type: string
                enum:
                  - application/json                
        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'

  /v1/order:
    get:
      operationId: getOrderList
      tags: 
        - Search list of orders
      description: "Returns the list of orders placed or updated during the provided timeframe. This feature returns a list of orders based on your search criteria (e.g., all completed activations over the past week). \n\n
        Business rules:  \n\n
        1. date range (created date/modified date) should be less than or equal to 30 days \n\n
        2. at least one of the date ranges is specified in the input: either dateFrom and dateTo OR lastModifiedDateFrom and lastModifiedDateTo OR both"  
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      - name: country
        in: query
        required: true
        schema:      
          $ref: '#/components/schemas/coltOperatingCountryListV1'          
      - name: serviceProfile
        in: query
        schema:
          $ref: '#/components/schemas/serviceProfileTypeV1'          
      - name: dateFrom
        in: query
        schema:
          $ref: '#/components/schemas/dateFormatV1'
      - name: dateTo
        in: query
        schema:
          $ref: '#/components/schemas/dateFormatV1'
      - name: lastModifiedDateFrom
        in: query
        schema:
          $ref: '#/components/schemas/dateFormatV1'
      - name: lastModifiedDateTo
        in: query
        schema:
          $ref: '#/components/schemas/dateFormatV1'
      - name: customerReference
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/customerRefTypeV1'
      - name: type
        in: query
        schema:
          $ref: '#/components/schemas/allowedOrderTypeV1'
      - name: status
        in: query
        schema:
          $ref: '#/components/schemas/allowedOrderStatusV1'          

      responses:
        "200":
          description: OK
          headers:
            content-type: 
              schema:
                type: string
                enum:
                  - application/json
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/orderListResponseV1'

        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'                                                    

  /v1/CLIOrderHistory:  
    get:
      operationId: getCliOrderHistory
      tags:
        - Number order history
      description: "Returns the order history associated with the CLI/range provided"
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      - name: country
        in: query
        required: true
        schema:      
          $ref: '#/components/schemas/coltOperatingCountryListV1'          
      - name: serviceProfile
        in: query
        schema:
          $ref: '#/components/schemas/serviceProfileTypeV1'          
      - name: numberRangeStart
        in: query
        required: true        
        description: "Start range of your block"
        example: "+442081324758"
        schema:
          $ref: '#/components/schemas/E164NumberTypeV1'
      - name: numberRangeEnd
        in: query
        description: "End range of your block"
        example: "+442081324758"        
        schema:
          $ref: '#/components/schemas/E164NumberTypeV1'
          
      responses:
        "200":
          description: OK
          headers:
            content-type: 
              schema:
                type: string
                enum:
                  - application/json
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/cliOrderHistoryResponseV1'

        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'                                                    

  /v1/bulkActivationOrder:
    post:
      operationId:  createBulkActivationOrder
      tags: 
        - Bulk Activation Order
      description: "Allows you to send bulk requests for activation API"
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/bulkActivationOrderV1'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/bulkOrderResponseTypeV1'   
          headers:
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
            content-type: 
              schema:
                type: string
                enum:
                  - application/json                
        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'    

  /v1/bulkPortInOrder:
    post:
      operationId:  createBulkPortInOrder
      tags: 
        - Bulk Port-In Order
      description: "Allows you to send bulk requests for portIn API"
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/bulkPortInOrderV1'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/bulkOrderResponseTypeV1'   
          headers:
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
            content-type: 
              schema:
                type: string
                enum:
                  - application/json                
        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'      
  
  /v1/bulkUpdateCustomerDetailsOrder:
    post:
      operationId:  createBulkUpdateCustomerDetailsOrder
      tags: 
        - Bulk Update Customer Details Order
      description: "Allows you to send bulk requests for update customer details API"
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/bulkUpdateCustomerDetailsOrderV1'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/bulkOrderResponseTypeV1'   
          headers:
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
            content-type: 
              schema:
                type: string
                enum:
                  - application/json                
        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'        

  /v1/reactivation/order:
    post:
      operationId: reactivateNumbers
      tags: 
        - Reactivate number(s)    
      description: |
        Allows you to reactivate colt owned or ported in numbers. Number will be
        reassigned to the same end-user, meaning end-user information such as name,
        address, etc. will be fetched from the previous record and are not required.
        Network will be reconfigured, and number will be ready to be used again.<br>
        NL: for pre-activated numbers: reclaim can be done within first 60 days only.   

      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/reactivationOrderRequestV1'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/asyncResponseTypeV1'
          headers:
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
            content-type: 
              schema:
                type: string
                enum:
                  - application/json                
        "400":
          description: Bad Request
          headers:          
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system :
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1' 
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1' 
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1' 
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'

  /v1/freeNumberCount:
    get:
      operationId: searchFreeNumberCount
      tags: 
        - Search Free Number Count
      description: "RESTRICTED use only. \n\n
        Returns the count of free numbers available for a given prefix \n\n
        Not applicable for DE, FR and Zone B countries"
        
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"  
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      - name: numberPrefix
        in: query
        required: true        
        schema:
          $ref: '#/components/schemas/numberPrefixTypeV1'
      - name: numberType
        in: query
        required: true
        schema:
          $ref: '#/components/schemas/allowedNumberTypesV1'
      - name: quantity
        in: query
        schema:
          type: integer
          minimum: 1
      - name: searchType
        in: query
        required: true
        schema:
          $ref: '#/components/schemas/allowedSearchTypeV1'
      - name: productOffering
        in: query
        required: true
        schema:
          $ref: '#/components/schemas/allowedProductOfferingTypeV1'

      responses:
        "200": 
          description: OK
          headers:
            content-type: 
              schema:
                type: string
                enum:
                  - application/json
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1' 
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/freeNumberCountResponseV1'

        "400":
          description: Bad Request
          headers:          
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1' 
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1' 
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1' 
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
                
  /v1/lockFreeNumbers:
    post:
      operationId: lockFreeNumbers
      tags: 
        - Lock free number(s)    
      description: "RESTRICTED use only \n\n
        Returns the free numbers, count of free numbers available and lock the returned numbers for 10 mins for a given prefix \n\n
        Not applicable for DE, FR and Zone B countries"

      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/lockFreeNumbersRequestV1'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/lockFreeNumbersResponseV1'
          headers:
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
            content-type: 
              schema:
                type: string
                enum:
                  - application/json                
        "400":
          description: Bad Request
          headers:          
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1' 
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
                
  /v1/freeNumberBackfill/order:
    post:
      operationId: freeNumberBackfill
      tags: 
        - Number backfill request    
      description: "Request for free number backfill for a specific location. \n\n
         Not applicable for DE, FR and Zone B countries"

      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/freeNumberBackfillOrderRequestV1'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/asyncResponseTypeV1'
          headers:
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
            content-type: 
              schema:
                type: string
                enum:
                  - application/json                
        "400":
          description: Bad Request
          headers:          
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1' 
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1' 
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1' 
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
                
  /v1/cancelFreeNumberBackfill/order:
    post:
      operationId: cancelFreeNumberBackfill
      tags: 
        - Cancel backfill request    
      description: "Cancel a free number backfill request which has been submitted and which is not yet fulfilled. \n\n
        Not applicable for DE, FR and Zone B countries"

      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/cancelFreeNumberBackfillOrderRequestV1'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/asyncResponseTypeV1'
          headers:
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
            content-type: 
              schema:
                type: string
                enum:
                  - application/json                
        "400":
          description: Bad Request
          headers:          
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system : 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'

  /v1/bulkReturnOrder:
    post:
      operationId: createBulkReturnOrder
      tags: 
        - Bulk Return Order
      description: "Allows you to return multiple numbers to Colt by cancelling the reservation of reserved numbers and deactivating Activated/Port-in Activated numbers."      
      parameters:
      - name: x-tracking-id
        in: "header"
        required: true
        description: "Unique identifier for the request"        
        schema:
          $ref: '#/components/schemas/trackingIdTypeV1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/bulkReturnOrderV1'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/bulkOrderResponseTypeV1'   
          headers:
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                
            content-type: 
              schema:
                type: string
                enum:
                  - application/json                               
        "400":
          description: Bad Request
          headers:          
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'              
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "401":
          description: Unauthorized
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "403":
          description: Forbidden
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "404":
          description: Not Found
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "405":
          description: Method Not allowed
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'
        "406":
          description: Not Acceptable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                
        "413":
          description: Payload Too Large
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "415":
          description: Unsupported Media Type
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1' 
        "429":
          description: Too Many Requests
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'                 
        "500":
          description: Internal Server Error
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'                                                  
          content:
            application/json:          
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "503":
          description: Service Unavailable
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'  
        "504":
          description: Gateway Timeout
          headers:
            x-exception-system: 
              schema:
                $ref: '#/components/schemas/exceptionSystemTypeV1'
            x-tracking-id:
              description: "Unique identifier for the request"
              schema: 
                $ref: '#/components/schemas/trackingIdTypeV1'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorTypeV1'     
  
components:
  securitySchemes:
    OAuth2:
      type: oauth2
      description: Token URL
      flows:
        clientCredentials:
          tokenUrl: https://apimgd01.colt.net/api/oauth/token
          scopes: {}

    bearerAuth:            
      type: http
      scheme: bearer
      bearerFormat: JWT 
    
  schemas:
    trackingIdTypeV1: 
      type: string
      description: "Unique identifier for the request"
      example: abcd456e-d45645-dfaafda-1232345667dd
      pattern: "^[a-zA-Z0-9_.~:@-]{1,255}$"
      maxLength: 255

    exceptionSystemTypeV1:
      type: string
      enum:
        - 'APIGW'
        - 'ESB'
        - 'OMS'
        - 'IMS'
        - 'RIMS'
        - 'EXT_NUM_API'
        - 'EXT_VAT_API'

    serviceProfileTypeV1:
      type: string
      maxLength: 3
      example: "ANH"
      description: "Service profile associated with your request"

      
    coltOperatingCountryListV1:
      type: string
      enum:
        - 'GB'
        - 'ES'
        - 'FR'
        - 'DE'
        - 'AT'
        - 'BE'
        - 'NL'
        - 'IE'
        - 'IT'
        - 'SE'
        - 'DK'
        - 'PT'
        - 'CH'
        - 'CZ'
        - 'NO'
        - 'RO'
        - 'PL'
        - 'FI'
        - 'LU'
        - 'SK'

    countryCodeListV1:
      type: string
      enum:
      - 'AT'
      - 'BE'
      - 'BG'
      - 'CH'
      - 'CY'
      - 'CZ'
      - 'DE'
      - 'DK'
      - 'EE'
      - 'ES'
      - 'FI'
      - 'FR'
      - 'GB'
      - 'GR'
      - 'HR'
      - 'HU'
      - 'IE'
      - 'IS'
      - 'IT'
      - 'LI'
      - 'LT'
      - 'LU'
      - 'LV'
      - 'MT'
      - 'NL'
      - 'NO'
      - 'PL'
      - 'PT'
      - 'RO'
      - 'SE'
      - 'SI'
      - 'SK'
      

    phoneNumberTypeV1:
      type: string
      minLength: 6
      maxLength: 20

    streetTypeSchemaV1:
      type: string
      description: "Mandatory for IT, ES, RO \n\n
        Optional for FR \n\n
        Max allowed length is listed below: \n\n
        FR: 40 \n\n
        ES, RO: 50 \n\n
        IT: 30"
      maxLength: 50
      example: "via"
      
    provinceTypeV1:
      type: string
      description: "Mandatory field \n\n
        Applicable for Italy and Spain"
      maxLength: 50
      example: "Barcelona"


    addressExtensionTypeV1:
      type: string
      description: "Optional field \n\n
        Applicable for Netherlands only"
      maxLength: 50   
      example: "A"
    
    subLocalityTypeV1:
      type: string
      description: "Mandatory for PT \n\n
        Optional for BE, IT, IE \n\n
        Max allowed length: \n\n
        IE: 21 \n\n
        PT: 50 \n\n
        BE, IT: 70"
      maxLength: 70
      example: "Lisboa"

    asyncResponseTypeV1:
      type: object
      properties:
        order:
          type: object
          properties:
            id:
              $ref: '#/components/schemas/orderIdTypeV1'      

    customerNameTypeV1:
      type: string
      maxLength: 255

    customerTypeV1:
      type: string
      enum:
      -  'Business'
      -  'Residential'
      -  'Mixed'

      
    stringLen16Type:
      type: string
      maxLength: 16

    stringLen20Type:
      type: string
      maxLength: 20

    addressIdTypeV1:
      type: string
      maxLength: 20
      example: "1-123456"

    stringLen50Type:
      type: string
      maxLength: 50

    stringLen100Type:
      type: string
      maxLength: 100

    stringLen250Type:
      type: string
      maxLength: 250
      
    stringLen500Type:
      type: string
      maxLength: 500
      
    emailFormatV1:
      type: string
      example: "abc@colt.net"
      maxLength: 254

    listingLanguageTypeV1:
      type: string
      enum:
        - 'NL'
        - 'FR'
        - 'DE'
        - 'D'
        - 'F'
        - 'I'
        - 'E'
  
    nlUsageTypeListTypeV1:
      type: string
      enum:     
        - '1-Telephone'
        - '2-SemiAutomaticFax'
        - '3-AutomaticFax'        

    directoryListingOptionsTypeV1:
      type: string
      enum:
        - 'No consent'
        - 'Full Address consent, no Reverse'
        - 'Partial Address consent, no Reverse'
        - 'Full Address consent, with Reverse'
        - 'Partial Address consent, with Reverse'
        # Below new LOV applicable for Ireland EDB DS Reg fields (v2.0.2)
        - 'Listed'
        - 'Unlisted'
        - 'ExDirectory'        
        
    confidentialityFlagTypeV1:
      type: string
      enum:
       - 'N-NotConfidential'
       - 'C-TotallyConfidential'
       - 'M-ConfidentialAddress'

    confidentialityReverseSearchTypeV1:
      type: string
      enum:
        - 'N-NotOpposedReverseSearch'
        - 'S-OpposedReverseSearch'
        
    subscriptionCategoryIndexTypeV1:
      type: string
      enum:
        - '00-PrivateCustomerCategory'
        - '01-CompanyCustomerCategory'
        - '02-SemiPublicCustomerCategory'
        - '03-PublicCustomerCategory'      
      
        
    firstNameTypeV1:
      type: string
      maxLength: 200

    addressSchemaV1:
      type: object
      properties:
        floorNumber:
          $ref: '#/components/schemas/floorSuiteTypeV1'
        houseNumber:
          $ref: '#/components/schemas/buildingNumberTypeV1'
        orientationNumber:
          $ref: '#/components/schemas/buildingNumberTypeV1'
        buildingName:
          $ref: '#/components/schemas/buildingNameTypeV1'
        streetName:
          $ref: '#/components/schemas/streetNameTypeV1'
        city:
          $ref: '#/components/schemas/cityTownTypeV1'
        postalCode:
          $ref: '#/components/schemas/postalZipCodeTypeV1'
        country:
          $ref: '#/components/schemas/countryCodeListV1'
        streetType:
          $ref: '#/components/schemas/streetTypeSchemaV1'
        province:
          $ref: '#/components/schemas/provinceTypeV1'
        houseNumberExtension:
          $ref: '#/components/schemas/addressExtensionTypeV1'
        subLocality:
          $ref: '#/components/schemas/subLocalityTypeV1'
        addressId:
          $ref: '#/components/schemas/addressIdTypeV1'
        # Ireland EDB DS Reg fields (v2.0.2)
        county:
          $ref: '#/components/schemas/countyTypeV1'
        poBoxNumber:
          $ref: '#/components/schemas/poBoxNumberTypeV1'
        block:
          $ref: '#/components/schemas/blockTypeV1'
        stairs:
          $ref: '#/components/schemas/stairsTypeV1'
        doorNumber:
          $ref: '#/components/schemas/doorNumberTypeV1'
        room:
          $ref: '#/components/schemas/roomTypeV1'
        unit:
          $ref: '#/components/schemas/unitTypeV1'          

    roomTypeV1:
      type: string
      maxLength: 15

    unitTypeV1:
      type: string
      maxLength: 10          

    numberDetailsAddressSchemaV1:
      type: object
      properties:
        floorNumber:
          $ref: '#/components/schemas/floorSuiteTypeV1'
        houseNumber:
          $ref: '#/components/schemas/buildingNumberTypeV1'
        orientationNumber:
          $ref: '#/components/schemas/buildingNumberTypeV1'
        buildingName:
          $ref: '#/components/schemas/buildingNameTypeV1'
        streetName:
          $ref: '#/components/schemas/streetNameTypeV1'
        city:
          $ref: '#/components/schemas/cityTownTypeV1'
        postalCode:
          $ref: '#/components/schemas/postalZipCodeTypeV1'
        country:
          $ref: '#/components/schemas/countryCodeListV1'
        streetType:
          $ref: '#/components/schemas/streetTypeSchemaV1'
        province:
          $ref: '#/components/schemas/provinceTypeV1'
        houseNumberExtension:
          $ref: '#/components/schemas/addressExtensionTypeV1'
        subLocality:
          $ref: '#/components/schemas/subLocalityTypeV1'
        # Ireland EDB DS Reg fields (v2.0.2)
        county:
          $ref: '#/components/schemas/countyTypeV1'
        poBoxNumber:
          $ref: '#/components/schemas/poBoxNumberTypeV1'
        block:
          $ref: '#/components/schemas/blockTypeV1'
        stairs:
          $ref: '#/components/schemas/stairsTypeV1'
        doorNumber:
          $ref: '#/components/schemas/doorNumberTypeV1'
        room:
          $ref: '#/components/schemas/roomTypeV1'
        unit:
          $ref: '#/components/schemas/unitTypeV1' 

    subRangeAddressSchemaV1:
      type: object
      properties:
        houseNumber:
          $ref: '#/components/schemas/buildingNumberTypeV1'
        buildingName:
          $ref: '#/components/schemas/buildingNameTypeV1'          
        streetName:
          $ref: '#/components/schemas/streetNameTypeV1'
        city:
          $ref: '#/components/schemas/cityTownTypeV1'
        postalCode:
          $ref: '#/components/schemas/postalZipCodeTypeV1'
        country:
          $ref: '#/components/schemas/countryCodeListV1'
        houseNumberExtension:
          $ref: '#/components/schemas/addressExtensionTypeV1'

    adminAddressSchemaV1:
      type: object
      properties:
        houseNumber:
          $ref: '#/components/schemas/buildingNumberTypeV1'
        buildingName:
          $ref: '#/components/schemas/buildingNameTypeV1'          
        streetName:
          $ref: '#/components/schemas/streetNameTypeV1'
        city:
          $ref: '#/components/schemas/cityTownTypeV1'
        postalCode:
          $ref: '#/components/schemas/postalZipCodeTypeV1'
        country:
          $ref: '#/components/schemas/countryCodeListV1'
        houseNumberExtension:
          $ref: '#/components/schemas/addressExtensionTypeV1'

    rangeDirectoryAddressSchemaV1:
      type: object
      properties:
        houseNumber:
          $ref: '#/components/schemas/buildingNumberTypeV1'
        streetName:
          $ref: '#/components/schemas/streetNameTypeV1'
        city:
          $ref: '#/components/schemas/cityTownTypeV1'
        postalCode:
          $ref: '#/components/schemas/postalZipCodeTypeV1'
        addressId:
          $ref: '#/components/schemas/addressIdTypeV1'                   

    emergencyAddressSchemaV1:
      type: object
      properties:
        houseNumber:
          $ref: '#/components/schemas/buildingNumberTypeV1'
        buildingName:
          $ref: '#/components/schemas/buildingNameTypeV1'
        streetName:
          $ref: '#/components/schemas/streetNameTypeV1'
        city:
          $ref: '#/components/schemas/cityTownTypeV1'
        postalCode:
          $ref: '#/components/schemas/postalZipCodeTypeV1'
        country:
          $ref: '#/components/schemas/countryCodeListV1'
        houseNumberExtension:
          $ref: '#/components/schemas/addressExtensionTypeV1'         

    blockTypeV1:
      type: string
      maxLength: 3
    
    stairsTypeV1:
      type: string
      maxLength: 3
      
    doorNumberTypeV1:
      type: string
      maxLength: 4

    
    poBoxNumberTypeV1:
      type: string
      description: "Optional field \n\n
        Applicable for France only"
      maxLength: 50        
      example: "12345"

    # Ireland EDB DS Reg fields (v2.0.2)
    countyTypeV1:
      type: string
      description: "Mandatory field \n\n
        Applicable for Ireland only"
      maxLength: 15
      example: "Dublin"
          
    endCustomerLanguageTypeV1:
      type: string
      enum:
      - 'NL'
      - 'FR'
      - 'DE'
      - 'EN'

    floorSuiteTypeV1:
      description: "Optional field applicable for PT, RO and IE. Max length allowed is listed below: \n\n
        PT, RO: 5 \n\n
        IE: 25"
      type: string
      example: "1"
      maxLength: 50
      
    buildingNumberTypeV1:
      type: string
      maxLength: 20
      
    buildingNameTypeV1:
      type: string
      description: "Applicable for all countries except ES, SE, FR \n\n
        Conditional mandatory with premises number for AT, DK, DE, IE, NL \n\n
        Optional for PT, IT, CH \n\n
        Max allowed length is listed below: \n\n
        PT: 30 \n\n
        AT, DK, FR, DE, IT, NL, CH, IE: 50 \n\n
        GB: 55 \n\n "
      pattern: "[A-Za-z0-9\\w]+[A-Za-z0-9:,/\\-\\.\\(\\)'&\"<> \\w]*"        
      maxLength: 55
      example: "COLT HOUSE"
      
    streetNameTypeV1:
      type: string
      description: "Mandatory field \n\n
        Max allowed length is listed below: \n\n
        NL: 24 \n\n
        IE, FR: 40 \n\n
        AT, DK, DE, SE, CH, GB: 50 \n\n
        BE: 60 \n\n
        IT, PT: 70 \n\n
        ES, LU, CZ, FI, NO, SK, RO, PL: 200"
      maxLength: 200
      example: "GREAT EASTERN STREET"
      
    cityTownTypeV1:
      type: string
      description: "Mandatory field \n\n
        Max allowed length is listed below: \n\n
        IE: 20 \n\n
        GB: 30 \n\n
        AT, DK, DE, NL, PT, SE, CH: 50 \n\n
        BE, FR: 60 \n\n
        IT: 70 \n\n
        ES, LU, CZ, FI, NO, PL, SK, RO : 100"
      maxLength: 100
      example: "LONDON"
      
    postalZipCodeTypeV1:
      type: string
      description: "Mandatory field \n\n
        Max allowed length is listed below: \n\n
        AT, DK, CH, BE, LU, NO: 4 \n\n
        FR, DE, IT, ES, FI : 5 \n\n
        RO, SK: 6 \n\n
        CZ: 6 (3 digits followed by a space and then 2 digits e.g. 119 99 ) \n\n
        PL: 6 (2 digits followed by a hyphen and then 3 digits e.g. 00-003) \n\n
        NL: 7 (4 characters followed by a space and then 2 characters e.g. 1010 BT) \n\n
        IE: 8 (3 characters followed by a space and then 4 characters e.g. A65 B2CD) \n\n
        GB: 1 ≤ L ≤ 8 (BX XAA, BBX XAA, BXX XAA, BBXX XAA, BXB XAA, BBXB XAA or BBXX AAA - A and B are alphabetical type (A to Z), X is a number type (0 to 9), always with a space between the 2 strings.)
        SE: 8"
      maxLength: 50
      example: "EC2A 3EH"

    resellerTypeV1:
      type: object
      required:
        - country
      properties:
        serviceProfile:
          $ref: '#/components/schemas/serviceProfileTypeV1'
        country:
          $ref: '#/components/schemas/coltOperatingCountryListV1'

    orderResellerTypeV1:
      type: object
      required:
        - serviceProfile
      properties:
        serviceProfile:
          $ref: '#/components/schemas/serviceProfileTypeV1'
        country:
          $ref: '#/components/schemas/coltOperatingCountryListV1'
        owner:
          $ref: '#/components/schemas/customerNameTypeV1'

    numberDetailResellerTypeV1:
      type: object
      required:
        - serviceProfile
      properties:
        serviceProfile:
          $ref: '#/components/schemas/serviceProfileTypeV1'
        country:
          $ref: '#/components/schemas/coltOperatingCountryListV1'
        owner:
          $ref: '#/components/schemas/customerNameTypeV1'

    subResellerTypeV1:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/subResellerIDTypeV1'

    reserveRelatedPartyTypeV1:
      type: object
      description: "Mandatory to enter the order details"
      required:
        - reseller
      properties:
        reseller:
          $ref: '#/components/schemas/resellerTypeV1'
        endCustomerDetails:
          $ref: '#/components/schemas/reserveEndCustomerDetailsTypeV1'

    activationRelatedPartyTypeV1:
      type: object
      description: "Mandatory to enter the order details" 
      required:
        - reseller
      properties:
        reseller:
          $ref: '#/components/schemas/resellerTypeV1'
        subReseller:
          $ref: '#/components/schemas/subResellerTypeV1'          
        endCustomerDetails:
          $ref: '#/components/schemas/activationEndCustomerDetailsTypeV1'                  

    orderDetailRelatedPartyTypeV1:
      type: object
      required:
        - endCustomerDetails
      properties:
        reseller:
          $ref: '#/components/schemas/orderResellerTypeV1'
        subReseller:
          $ref: '#/components/schemas/subResellerTypeV1'
        endCustomerDetails:
          $ref: '#/components/schemas/orderEndCustomerDetailsTypeV1'

    documentNameTypeV1:
      type: string
      pattern: "^.*((\\.docx$)|(\\.pdf$)|(\\.doc$)|(\\.csv$))"
      maxLength: 255
      example: "triparty.docx"

    E164NumberTypeV1:
      type: string      
      pattern: '^[+]{1}[1-9]{1}[0-9]*$'
      minLength: 6
      maxLength: 16
      description: "E164 number format. If the number is being sent as a query parameter in a 
      URL, it should be URL-encoded to ensure proper transmission"
      example: "+442081324758"

    customerRefTypeV1:
      type: string
      description: "Customer reference associated wth number range. If customer reference is being sent as a query parameter in a URL, it should be URL-encoded to ensure proper transmission"
      example: "My Customer"
      maxLength: 50

    nonFreeNumberStatusTypeV1:
      type: string
      maxLength: 50
      enum:
        - 'Reserved'
        - 'Allocated'
        - 'Activated'
        - 'PortIn_Reserved'
        - 'PortIn_Allocated'
        - 'PortIn_Activated'
        - 'PortOut'
        - 'Returned'
        - 'Quarantined'
        - 'PortIn_Quarantined'
        - 'Transferred'
        - 'All'
        - 'Port Out In Progress'
        - 'Transfer In Progress'
        - 'Return In Progress'  
        - 'PortIn Deactivation In Progress'
        - 'PortIn Reactivation In Progress'
        - 'Back To Regulator'
        - 'Deactivation In Progress'

    numberStatusTypeV1:
      type: string
      maxLength: 50
      enum:
        - 'Free'
        - 'Reserved'
        - 'Allocated'
        - 'Activated'
        - 'PortIn_Reserved'
        - 'PortIn_Allocated'
        - 'PortIn_Activated'
        - 'PortOut'
        - 'Returned'
        - 'Quarantined'
        - 'PortIn_Quarantined'
        - 'Transferred'
        - 'All'
        - 'Port Out In Progress'
        - 'Transfer In Progress'
        - 'Return In Progress'         
        - 'PortIn Deactivation In Progress'
        - 'PortIn Reactivation In Progress'
        - 'Back To Regulator'
        - 'Deactivation In Progress'        
        
    dateFormatV1:
      type: string
      format: date
      description: date time in ISO 8601 format      
      example: "2019-05-17"     
      
    orderIdTypeV1:
      type: string
      pattern: "^[A-Za-z0-9-]{1,36}$"
      maxLength: 36
      example: "8700206f-c3b3-4c10-8cc2-2490f41eedc0"
      description: "Unique identifier of the order"

    userNameTypeV1:
      type: string
      maxLength: 100
      example: "myuser"

    subResellerIDTypeV1:
      description: "In some countries, it is allowed to provide number purchased from Colt using your indirect sales channel, but it’s mandatory to report the 3rd party to Colt (sub reseller OCN), using subResellerID field. Not applicable for FR, IT, PT and Zone B countries"
      type: string
      maxLength: 50
      example: "A123456"

    orderTypeSchemaV1:
      type: string
      enum:
        - 'New'
        - 'Cease'
        - 'Amend'

    directoryServicesDetailTypeV1:
      type: object
      properties:
        orderType:
          $ref: '#/components/schemas/orderTypeSchemaV1'
        endCustomerName:
          $ref: '#/components/schemas/customerNameTypeV1'
        businessSuffix:
          $ref: '#/components/schemas/stringLen100Type'
        businessDescription:
          $ref: '#/components/schemas/stringLen100Type'
        subHeader:
          $ref: '#/components/schemas/stringLen50Type'
        subSubHeader:
          $ref: '#/components/schemas/stringLen50Type'
        subSubSubHeader:
          $ref: '#/components/schemas/stringLen50Type'
        qualifier:
          $ref: '#/components/schemas/stringLen50Type'
        directoryAddress:        
          $ref: '#/components/schemas/addressSchemaV1'
        telephoneNumber:        
          $ref: '#/components/schemas/phoneNumberTypeV1'
        isFaxNumber:
          type: boolean
        lineType:        
          $ref: '#/components/schemas/allowedLineTypeV1'
        entryType:
          $ref: '#/components/schemas/allowedEntryTypeV1'
        listingCategory:
          $ref: '#/components/schemas/allowedListingCategoryV1'
        typeFace: 
          $ref: '#/components/schemas/allowedTypeFaceTypeV1'
        priority:
          $ref: '#/components/schemas/allowedPriorityV1'
        listingType:
          $ref: '#/components/schemas/allowedListingTypeV1'
        additionalInstructions:
          $ref: '#/components/schemas/stringLen500Type'
        companyRegistrationNumber:
          $ref: '#/components/schemas/companyRegistrationNumberTypeV1'
        companyEmailAddress:
          $ref: '#/components/schemas/emailFormatV1'
        listingLanguage:
          $ref: '#/components/schemas/listingLanguageTypeV1'
        usageType:
          $ref: '#/components/schemas/nlUsageTypeListTypeV1'
        searchOnTelephoneOnly:
          type: boolean
        allowAdvertisingEmails:
          type: boolean
        allowAdvertisingCalls:
          type: boolean
        basicDirectoryEntry:
          type: boolean
        directSalesMarketingEntry:
          type: boolean
        secretListing:
          type: boolean
        directoryListingOptions:
          $ref: '#/components/schemas/directoryListingOptionsTypeV1'
        confidentialityFlag:
          $ref: '#/components/schemas/confidentialityFlagTypeV1'
        confidentialityOtherFlag:
          $ref: '#/components/schemas/confidentialityFlagTypeV1'
        confidentialityReverseSearch:
          $ref: '#/components/schemas/confidentialityReverseSearchTypeV1'
        informationServices:
          type: boolean
        advertisementFlag:
          type: boolean
        subscriptionCategoryIndex:
          $ref: '#/components/schemas/subscriptionCategoryIndexTypeV1'
        electronicDirectory:
          type: boolean
        numberMasking:
          type: boolean
        keepCurrentSettings:
          type: boolean
        oldTelephoneNumber:
          $ref: '#/components/schemas/phoneNumberTypeV1'
        customerType:
          $ref: '#/components/schemas/customerTypeV1'
        firstName:
          $ref: '#/components/schemas/stringLen50Type'
        lastName:
          $ref: '#/components/schemas/stringLen250Type'
        fiscalCode:
          $ref: '#/components/schemas/stringLen16Type'
        importAndCease:
          type: boolean
        amalgamateWithVAT:
          type: boolean
        # Ireland EDB DS Reg fields (v2.0.2)
        directMarketingPreference:
          type: boolean
          
    rangeDirectoryServicesDetailTypeV1:
      type: object
      properties:
        orderType:
          $ref: '#/components/schemas/orderTypeSchemaV1'
        telephoneNumber:        
          $ref: '#/components/schemas/phoneNumberTypeV1'
        oldTelephoneNumber:
          $ref: '#/components/schemas/phoneNumberTypeV1'
        companyEmailAddress:
          $ref: '#/components/schemas/emailFormatV1'
        listingLanguage:
          $ref: '#/components/schemas/listingLanguageTypeV1'
        allowAdvertisingCalls:
          type: boolean
        directoryAddress:        
          $ref: '#/components/schemas/rangeDirectoryAddressSchemaV1'
          
    subRangeDirectoryServicesDetailTypeV1:
      type: object
      properties:
        electronicDirectory:
          type: boolean
        numberMasking:
          type: boolean
        keepCurrentSettings:
          type: boolean
        informationServices:
          type: boolean

          
    allowedOrderTypeV1:
      type: string
      enum:
      - 'Number Reservation'
      - 'Number Reservation Cancellation'
      - 'Number Activation'
      - 'Number Deactivation'
      - 'Number Reactivation'
      - 'New Port In'
      - 'Cancel Port In'
      - 'Update Port In Date'
      - 'Reactivate Port In'
      - 'Port Out'
      - 'Port Transaction Update'
      - 'Update End Customer Detail'
      - 'Update Directory Services'
      - 'Update Port Out'
      - 'Cancel Port Out'
      - 'Free Number Backfill'
      - 'Cancel Free Number Backfill'
      - 'Port In Deactivation'
      - 'Number Migrate In'
      - 'Number Migrate Out'
      - 'Inter Domain Migration Approval'
      - 'Pre Order Validation'
      - 'Free Number Request'      

    allowedLineTypeV1:
      type: string
      enum:
        - 'Normal'
    
    allowedEntryTypeV1:
      type: string
      enum:
      - 'DE'
      - 'DQR'
      - 'XD/NC'
  
    allowedListingCategoryV1:
      type: string
      enum:
        - 'Single'
        - 'Group'
        
    allowedTypeFaceTypeV1:
      type: string
      enum:
        - 'Ordinary'
        - 'Bold'
        - 'Superbold'
        
    allowedPriorityV1:    
      type: string
      enum:
        - 'A'
        - 'S'
        - 'Z'

    allowedListingTypeV1:
      type: string
      enum:
       - 'DQMain'
       - 'DQAdditional'
       - 'PB'

    allowedOrderStatusV1:
      type: string
      enum:
        - 'In Progress'
        - 'Completed'
        - 'Failed'
        - 'Delayed'
        - 'Cancelled'
        - 'Port Not Initiated'
        - 'Confirmed'
        - 'Rejected'
        - 'Port Date Change'
        - 'Customer Feedback Awaited'
        - 'Failed with Error'
        - 'Initiate Port In'
        - 'Submitted to operator'
        - 'Firm order commitment'
        - 'Porting initiated'
        - 'Activation delayed'
        - 'Porting failed'
        - 'Validation In Progress'
        - 'Awaiting Approval'
        - 'Porting Completion Delayed'
        - 'Review Pending'
        - 'Submitted to Local DB'
        - 'Quick Note In Progress'
        - 'Submitted to operator In Progress'
        - 'Rejection In Progress'
        - 'Completion In Progress'
        - 'LOA Signature Awaited'

    productOfferingTypeV1:
      type: object
      description: "Mandatory field to provide product name"
      properties:
        name: 
          type: string
          enum:
            - 'Wholesale SIP'


    reserveEndCustomerDetailsTypeV1:
      type: object
      properties:
        customerReference:
          $ref: '#/components/schemas/customerRefTypeV1'


    activationEndCustomerDetailsTypeV1:
      type: object
      description: "This node is optional for PREMIUM customers for all countries except DE" 
      required:
        - endCustomerAddress
      properties:
        endCustomerName:
          $ref: '#/components/schemas/customerNameTypeV1'
        customerType:
          $ref: '#/components/schemas/customerTypeV1'
        firstName:
          $ref: '#/components/schemas/firstNameTypeV1'
        lastName:
          $ref: '#/components/schemas/customerNameTypeV1'
        endCustomerDateOfBirth:
          #description: "Required for DE only"
          $ref: '#/components/schemas/dateFormatV1'
        endCustomerLanguage:
          $ref: '#/components/schemas/endCustomerLanguageTypeV1'
        endCustomerAddress:
          $ref: '#/components/schemas/addressSchemaV1'
        companyRegistrationNumber:
          $ref: '#/components/schemas/companyRegistrationNumberTypeV1'
        companyNumberRegistered:
          type: boolean
        legitimateSignee:
          $ref: '#/components/schemas/legitimateSigneeTypeV1'
        customerReference:
          $ref: '#/components/schemas/customerRefTypeV1'
        serviceType:
          $ref: '#/components/schemas/allowedServiceTypeV1'


    orderEndCustomerDetailsTypeV1:
      type: object
      required:
        - endCustomerAddress
      properties:
        endCustomerName:
          $ref: '#/components/schemas/customerNameTypeV1'
        customerType:
          $ref: '#/components/schemas/customerTypeV1'
        firstName:
          $ref: '#/components/schemas/firstNameTypeV1'
        lastName:
          $ref: '#/components/schemas/customerNameTypeV1'
        endCustomerDateOfBirth:
          type: string
        endCustomerLanguage:
          $ref: '#/components/schemas/endCustomerLanguageTypeV1'
        endCustomerAddress:
          $ref: '#/components/schemas/addressSchemaV1'
        newCustomerAddress:
          $ref: '#/components/schemas/addressSchemaV1'          
        emergencyAddress:
          $ref: '#/components/schemas/emergencyAddressSchemaV1'
        companyRegistrationNumber:
          $ref: '#/components/schemas/companyRegistrationNumberTypeV1'
        legitimateSignee:
          $ref: '#/components/schemas/legitimateSigneeTypeV1'
          
        companyNumberRegistered:
          type: boolean          
        serviceType:
          $ref: '#/components/schemas/allowedServiceTypeV1'
        coltCVP:
          type: string
        providedCVP:
          type: string
        addressId:
          $ref: '#/components/schemas/addressIdTypeV1'
        customerReference:
          $ref: '#/components/schemas/customerRefTypeV1'
        adminAddress:
          $ref: '#/components/schemas/adminAddressSchemaV1'  
          
    attachment5MTypeV1:
      type: string
      maxLength: 5242880
      description: '5MB'      


    fileAttachment5MTypeV1:
      type: object
      properties:
        fileName:
          $ref: '#/components/schemas/documentNameTypeV1'
        fileContent:
          $ref: '#/components/schemas/attachment5MTypeV1'

    activateNumberRangeTypeV1:
      type: object
      required:
        - numberRangeStart      
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'
        subNumberRangeList:
          type: array
          minItems: 0
          maxItems: 100
          items:
            $ref: '#/components/schemas/activateSubNumberRangeTypeV1' 
        rangeDirectoryServicesDetails:
          $ref: '#/components/schemas/rangeDirectoryServicesDetailTypeV1'

    activateSubNumberRangeTypeV1:
      type: object
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'
        subRangeRelatedParty:
          $ref: '#/components/schemas/subRangeActivationRelatedPartyTypeV1'
        subRangeDirectoryServicesDetails:
          $ref: '#/components/schemas/subRangeDirectoryServicesDetailTypeV1'


    orderDetailsNumberSubRangeTypeV1:
      type: object
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'
        subRangeRelatedParty:
          $ref: '#/components/schemas/orderDetailsSubRangeRelatedPartyTypeV1'
        subRangeDirectoryServicesDetails:
          $ref: '#/components/schemas/subRangeDirectoryServicesDetailTypeV1'

    subRangeActivationRelatedPartyTypeV1:
      type: object
      properties:
        endCustomerDetails:
          $ref: '#/components/schemas/subRangeActivationEndCustomerDetailsTypeV1'          

    orderDetailsSubRangeRelatedPartyTypeV1:
      type: object
      properties:
        endCustomerDetails:
          $ref: '#/components/schemas/orderDetailsSubRangeEndCustomerDetailsTypeV1' 
          
    orderDetailsSubRangeEndCustomerDetailsTypeV1:
      type: object
      properties:
        endCustomerAddress:
          $ref: '#/components/schemas/subRangeAddressSchemaV1'          

    subRangeActivationEndCustomerDetailsTypeV1:
      type: object
      properties:
        endCustomerAddress:
          $ref: '#/components/schemas/subRangeAddressSchemaV1'


    reserveNumberRangeTypeV1:
      type: object
      description: "numberRangeStart and numberRangeEnd are required for operating on a range. numberRangeStart is required for operating on single cli"
      required:
        - numberRangeStart
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'
    

    reservationOrderV1:
      type: object
      required:
        - relatedParty
        - productOffering
      properties:
        numberRangeList:
          type: array
          description: "Mandatory to enter the numbers for order submission"
          items:
            $ref: '#/components/schemas/reserveNumberRangeTypeV1'
          minItems: 1
          maxItems: 20
        productOffering:
          $ref: '#/components/schemas/productOfferingTypeV1'        
        relatedParty:
          $ref: '#/components/schemas/reserveRelatedPartyTypeV1'
        lockId:
          $ref: '#/components/schemas/lockIdTypeV1'


    activationOrderV1:
      type: object
      required:
        - relatedParty
        - productOffering      
      properties:
        numberRangeList:
          type: array
          description: "Mandatory to enter the numbers for order submission"
          items:
            $ref: '#/components/schemas/activateNumberRangeTypeV1'
          minItems: 1
          maxItems: 20            
        productOffering:
          $ref: '#/components/schemas/productOfferingTypeV1'        
        relatedParty:
          $ref: '#/components/schemas/activationRelatedPartyTypeV1'
        directoryServicesDetails:
          $ref: '#/components/schemas/directoryServicesDetailTypeV1'
        triPartyAgreementType:
          $ref: '#/components/schemas/fileAttachment5MTypeV1'  
        lockId:
          $ref: '#/components/schemas/lockIdTypeV1'  

    orderDetailsResponseV1:
      type: object
      required:
        - id
        - numberRangeList
        - status
      properties:
        id:
          $ref: '#/components/schemas/orderIdTypeV1'
        type:
          $ref: '#/components/schemas/allowedOrderTypeV1'
        numberRangeList:
          type: array
          items:
            $ref: '#/components/schemas/orderDetailNumberRangeTypeV1'
          maxItems: 250
        date:
          $ref: '#/components/schemas/dateFormatV1'
        status:
          $ref: '#/components/schemas/allowedOrderStatusV1'
        statusDescription:
          type: string
          maxLength: 2048
          example: "Your order has been completed."
        reason:
          $ref: '#/components/schemas/notesFormatV1'
        username:
          $ref: '#/components/schemas/userNameTypeV1'        
        relatedParty:
          $ref: '#/components/schemas/orderDetailRelatedPartyTypeV1'
        directoryServicesDetails:
          $ref: '#/components/schemas/directoryServicesDetailTypeV1'
        portDetails:
          $ref: '#/components/schemas/orderDetailPortDetailsTypeV1'
        lockId:
          $ref: '#/components/schemas/lockIdTypeV1'       
        childOrderList:
          type: array
          items:
            $ref: '#/components/schemas/childOrderTypeV1'
        parentOrder:
            $ref: '#/components/schemas/parentOrderTypeV1'
        backfillDetails:
          $ref: '#/components/schemas/orderBackfillDetailsTypeV1'
        freeNumberDetails:  
          $ref: '#/components/schemas/orderFreeNumberDetailsTypeV1'
        requestReason:
            $ref: '#/components/schemas/notesFormatV1'
        rejectionReason:
            $ref: '#/components/schemas/notesFormatV1'
        notes:
          $ref: '#/components/schemas/notesFormatV1'
        newActivation:
          type: boolean          

    orderDetailNumberRangeTypeV1:
      type: object
      required:
        - RelatedParty
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'
        subNumberRangeList:
          type: array
          minItems: 0
          maxItems: 100
          items:
            $ref: '#/components/schemas/orderDetailsNumberSubRangeTypeV1'
        rangeDirectoryServicesDetails:
          $ref: '#/components/schemas/rangeDirectoryServicesDetailTypeV1'            
        rangeSingleLine:
          $ref: '#/components/schemas/singleLineTypeV1'
        rangeMultiLine:
          $ref: '#/components/schemas/multiLineTypeV1'
        rangeSecretCode:
          $ref: '#/components/schemas/secretCodeTypeV1'
        rangeOKUCode :
          $ref: '#/components/schemas/OKUCodeTypeV1'
        rangeMainBillingNumber:
          $ref: '#/components/schemas/E164NumberTypeV1'
        rangeFirstPortDate:
          #description: 'Field applicable only for NL'
          $ref: '#/components/schemas/dateFormatV1'
        rangeBlockingCode:
          description: 'Field applicable only for NL'
          type: string
        rangeNote:
          description: 'Field applicable only for NL'
          type: string
        rangeRIOCode:
          $ref: '#/components/schemas/RIOCodeTypeV1'
        rangeBillingAccountNumber:          
          type: string
          
    RIOCodeTypeV1:
      type: string
      maxLength: 12
      pattern: "^[0-9]{2}[EPFZ][0-9]{6}[0-9A-Z]{3}$"
      example: "F5S16OV7IL1Y"

    parentOrderTypeV1:
      type: object
      required:
        - id
      properties:
        id:
          $ref: '#/components/schemas/orderIdTypeV1'

    childOrderTypeV1:
      type: object
      required:
        - id
        - date
        - status        
        - username
      properties:
        id:
          $ref: '#/components/schemas/orderIdTypeV1'
        date:
          $ref: '#/components/schemas/dateFormatV1'
        status:
          $ref: '#/components/schemas/allowedOrderStatusV1'
        statusDescription:
          type: string
        username:
          $ref: '#/components/schemas/userNameTypeV1'          
        notes:
          $ref: '#/components/schemas/notesFormatV1'
        action:
          type: string          

    orderDetailParentOrder:
      type: object
      required:
        - id
      properties:
        id:
          $ref: '#/components/schemas/orderIdTypeV1'
        href: 
          type: string


    lockIdTypeV1:
      type: string
      maxLength: 36
      example: "8700206f-c3b3-4c10-8cc2-2490f41eedc0"
      description: "RESTRICTED USE ONLY \n\n
        Applicable for all countries except FR, DE, Zone B countries"

    companyRegistrationNumberTypeV1:
      type: string
      maxLength: 20
      example: "123232323"

    errorTypeV1:
      description: 'Used when an API throws an Error, typically with a HTTP error response-code (3xx, 4xx, 5xx)'
      type: object
      required:
        - code
        - reason
      properties:
        code:
          type: string
          description: 'Application relevant detail, defined in the API or a common list.'
          example: ERR01
        reason:
          type: string
          description: Explanation of the reason for the error which can be shown to a client user.
        message:
          type: string
          description: More details and corrective actions related to the error which can be shown to a client user.
          
    returnOrderV1:
      type: object
      required:
        - numberRangeList
        - relatedParty
        - productOffering
      properties:
        numberRangeList:
          type: array
          description: "Mandatory to enter the numbers for order submission"
          items:
            $ref: '#/components/schemas/returnNumberRangeTypeV1'
          minItems: 1
          maxItems: 1
        productOffering:
          $ref: '#/components/schemas/productOfferingTypeV1'        
        relatedParty:
          $ref: '#/components/schemas/returnRelatedPartyTypeV1'
                
    returnNumberRangeTypeV1:
      type: object
      description: "numberRangeStart and numberRangeEnd are required for operating on a range. numberRangeStart is required for operating on single cli"
      required:
        - numberRangeStart      
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'                
    multiLineTypeV1:
      type: string
      enum:
        - 'M'

    singleLineTypeV1:
      type: string
      enum:
        - 'S'                    

    portInOrderV1:
      type: object
      required:
        - numberRangeList
        - relatedParty
        - productOffering 
      properties:
        numberRangeList:
          type: array
          description: "Mandatory to enter the numbers for order submission"
          items:
            $ref: '#/components/schemas/portInNumberRangeTypeV1'
          minItems: 1
          maxItems: 250            
        productOffering:
          $ref: '#/components/schemas/productOfferingTypeV1'        
        relatedParty:
          $ref: '#/components/schemas/portInRelatedPartyTypeV1'
        portDetails:
          $ref: '#/components/schemas/portInPortDetailsTypeV1'
        directoryServicesDetails:
          $ref: '#/components/schemas/directoryServicesDetailTypeV1'
        notes:
          $ref: '#/components/schemas/notesFormatV1'
        newActivation:
          type: boolean
          
                
    portInNumberRangeTypeV1:
      type: object
      required:
        - numberRangeStart      
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'
        subNumberRangeList:
          type: array
          minItems: 1
          maxItems: 100
          items:
            $ref: '#/components/schemas/portInSubNumberRangeTypeV1' 
        rangeDirectoryServicesDetails:
          $ref: '#/components/schemas/rangeDirectoryServicesDetailTypeV1'                
        rangeSingleLine:
          $ref: '#/components/schemas/singleLineTypeV1'
        rangeMultiLine:
          $ref: '#/components/schemas/multiLineTypeV1'
        rangeSecretCode:
          $ref: '#/components/schemas/secretCodeTypeV1'
        rangeOKUCode :
          $ref: '#/components/schemas/OKUCodeTypeV1'
        rangeMainBillingNumber:
          $ref: '#/components/schemas/E164NumberTypeV1'
        rangeRIOCode:
          $ref: '#/components/schemas/RIOCodeTypeV1'          
        rangeBillingAccountNumber:          
          type: string          

    portInSubNumberRangeTypeV1:
      type: object
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'
        subRangeRelatedParty:
          $ref: '#/components/schemas/subRangePortInRelatedPartyTypeV1'
        subRangeDirectoryServicesDetails:
          $ref: '#/components/schemas/subRangeDirectoryServicesDetailTypeV1'          

    portInRelatedPartyTypeV1:
      type: object
      description: "Mandatory to enter the order details" 
      required:
        - reseller
      properties:
        reseller:
          $ref: '#/components/schemas/resellerTypeV1'
        subReseller:
          $ref: '#/components/schemas/subResellerTypeV1'          
        endCustomerDetails:
          $ref: '#/components/schemas/portInEndCustomerDetailsTypeV1'                  

    portInEndCustomerDetailsTypeV1:
      type: object
      required:
        - endCustomerAddress
      properties:
        endCustomerName:
          $ref: '#/components/schemas/customerNameTypeV1'
        customerType:
          $ref: '#/components/schemas/customerTypeV1'
        firstName:
          $ref: '#/components/schemas/firstNameTypeV1'
        lastName:
          $ref: '#/components/schemas/customerNameTypeV1'
        endCustomerDateOfBirth:
          #description: "Required for DE only"
          $ref: '#/components/schemas/dateFormatV1'
        endCustomerLanguage:
          $ref: '#/components/schemas/endCustomerLanguageTypeV1'
        endCustomerAddress:
          $ref: '#/components/schemas/addressSchemaV1'
        companyRegistrationNumber:
          $ref: '#/components/schemas/companyRegistrationNumberTypeV1'
        companyNumberRegistered:
          type: boolean
        legitimateSignee:
          $ref: '#/components/schemas/legitimateSigneeTypeV1'
        customerReference:
          $ref: '#/components/schemas/customerRefTypeV1'
        serviceType:
          $ref: '#/components/schemas/allowedServiceTypeV1'
        newCustomerAddress:
          $ref: '#/components/schemas/addressSchemaV1'
        adminAddress:
          $ref: '#/components/schemas/adminAddressSchemaV1'
        providedCVP:
          $ref: '#/components/schemas/CVPTypeV1'           

    subRangePortInRelatedPartyTypeV1:
      type: object
      properties:
        endCustomerDetails:
          $ref: '#/components/schemas/subRangePortInEndCustomerDetailsTypeV1'                  
          
    subRangePortInEndCustomerDetailsTypeV1:
      type: object
      properties:
        endCustomerAddress:
          $ref: '#/components/schemas/subRangeAddressSchemaV1'

    notesFormatV1:
      type: string
      minLength: 0
      maxLength: 2048
      
    rejectionReasonTypeV1:
      type: string
      maxLength: 255           
      
    portInPortDetailsTypeV1:
      type: object
      properties:
        portingDate:
          $ref: '#/components/schemas/dateFormatV1'
        portingWindow:
          $ref: '#/components/schemas/portingWindowTypeV1'
        portingContact:
          $ref: '#/components/schemas/portingContactTypeV1'
        currentOperator:
          $ref: '#/components/schemas/firstNameTypeV1'
        portType:
          $ref: '#/components/schemas/allowedPortTypeV1'
        accessCode:
          $ref: '#/components/schemas/accessCodeTypeV1'
        contract:
          $ref: '#/components/schemas/contractTypeV1'
        portAttachment:
          $ref: '#/components/schemas/portAttachmentTypeV1'
        portingPrefix:
          $ref: '#/components/schemas/portingPrefixTypeV1'
        autoPortIn:
          type: boolean
        digitalLetterOfAuthorityFlag:
          type: boolean
        digitalLetterOfAuthorityDetails:
          $ref: '#/components/schemas/digitalLetterOfAuthorityTypeV1'          

    portingWindowTypeV1:
      type: string
      enum:
       - '0000-2359'
       - '0000-0100'
       - '0100-0200'
       - '0200-0300'
       - '0300-0400'
       - '0400-0500'
       - '0500-0600'
       - '0600-0700'
       - '0700-0800'
       - '0800-0900'
       - '0900-1000'
       - '1000-1100'
       - '1100-1200'
       - '1200-1300'
       - '1300-1400'
       - '1400-1500'
       - '1500-1600'
       - '1600-1700'
       - '1700-1800'
       - '1800-1900'
       - '1900-2000'
       - '2000-2100'
       - '2100-2200'
       - '0600-0800'
       - '0800-1000'
       - '1000-1200'
       - '1200-1400'
       - '1400-1600'
       - '0900-1100'
       - '1100-1300'
       - '1300-1500'
       - '1500-1700'
       - '0600-0900'
       - '0800-1100'
       - '0900-1200'
       - '1100-1400'
       - '1400-1700'
       - '1700-2000'
       - '1200-1500'
       - '1600-1900'
       - '2000-2300'
       - '0600-1200'
       - '0900-1600'
       - '1200-1800'
       - '0800-1700'
       - '2200-2300'
       - '2300-0000'
       - '0900-1300'
       - '1300-1800'
       - '1400-1800'
       
    portingContactTypeV1:
      type: object
      properties:
        firstName:
          $ref: '#/components/schemas/nameTypeV1'
        lastName:
          $ref: '#/components/schemas/customerNameTypeV1'
        phoneNumber:
          $ref: '#/components/schemas/phoneNumberTypeV1'
        mobileNumber:
          $ref: '#/components/schemas/phoneNumberTypeV1'
        email:
          $ref: '#/components/schemas/emailFormatV1'
        fax:
          $ref: '#/components/schemas/phoneNumberTypeV1'        
          
    nameTypeV1:
      type: string
      maxLength: 200          

    allowedPortTypeV1:
      type: string
      enum:
        - Simple
        - Complex
        - Total        
        - Partial

    accessCodeTypeV1:
      type: string
      maxLength: 14        
      example: "3571-5757-7739"

    contractTypeV1:
      type: string
      enum:
        - 'Early Termination'
        - 'Continuation'

    portAttachmentTypeV1:
      type: object
      properties:
        letterOfAuthorityFileName:
          $ref: '#/components/schemas/documentNameTypeV1'
        letterOfAuthorityFileContent:
          $ref: '#/components/schemas/attachment5MTypeV1'
        invoiceDocumentFileName:
          $ref: '#/components/schemas/documentNameTypeV1'
        invoiceDocumentFileContent:
          $ref: '#/components/schemas/attachment5MTypeV1'
        supplementaryDocumentFileName:
          $ref: '#/components/schemas/documentNameTypeV1'
        supplementaryFileContent:
          $ref: '#/components/schemas/attachment5MTypeV1'
        regulatoryAssignmentFileName:
          $ref: '#/components/schemas/documentNameTypeV1'
        regulatoryAssignmentFileContent:
          $ref: '#/components/schemas/attachment5MTypeV1'
                          

    secretCodeTypeV1:
      type: string
      maxLength: 22
      example: "abc1234567898222a"

    OKUCodeTypeV1:
      type: string
      minLength: 14
      maxLength: 14
      pattern: "^[0-9]{14,14}$"
      example: "'12323234567898"


    orderDetailPortDetailsTypeV1:
      type: object
      properties:
        OOHFlag:
          type: boolean
        portingContact:
          $ref: '#/components/schemas/portingContactTypeV1'
        currentOperator:
          $ref: '#/components/schemas/firstNameTypeV1'
        gainingOperator:
          $ref: '#/components/schemas/firstNameTypeV1'
        gainingReseller:
          type: string
        losingReseller:
          type: string          
        receivingCarrier:
          type: string
        portType:
          $ref: '#/components/schemas/allowedPortTypeV1'
        accessCode:
          $ref: '#/components/schemas/accessCodeTypeV1'
        portRejectionCode:
          $ref: '#/components/schemas/notesFormatV1'
        rejectionDetails:
          $ref: '#/components/schemas/portRejectionDetailsTypeV1'
        nextAction:
          $ref: '#/components/schemas/notesFormatV1'          
        migrationFlag: 
          type: boolean
        contract:
          $ref: '#/components/schemas/contractTypeV1'
        portingPrefix:
          $ref: '#/components/schemas/portingPrefixTypeV1'
        portingDate:
          $ref: '#/components/schemas/dateFormatV1'
        portingWindow:
          $ref: '#/components/schemas/portingWindowTypeV1'
        overallFirstPortDate:
          $ref: '#/components/schemas/dateFormatV1'
        autoPortIn:
          type: boolean
        digitalLetterOfAuthorityFlag:
          type: boolean
        digitalLetterOfAuthorityDetails:
          $ref: '#/components/schemas/digitalLetterOfAuthorityTypeV1'

    portingPrefixTypeV1:
      type: string
      maxLength: 10
      example: "123456"


    portRejectionDetailsTypeV1:
      type: string
          
    allowedNumberTypesV1:
        type: "string"
        enum:
          - 'GEOGRAPHICAL_NUMBERS'
          - 'GEOGRAPHICAL_NOMADIC_NUMBERS'
          - 'LOCATION_INDEPENDENT_NUMBERS'
          - 'UK_WIDE_ANY_SERVICES'
          - 'UK_WIDE_PUBLIC_SERVICES'
          - 'CH_WIDE_CORPORATE_NUMBERS'

    freeNumberResponse:
      type: object
      properties:
        numberRangeList:
          type: array
          items:
            $ref: '#/components/schemas/freeNumberRangeTypeV1'    

    freeNumberRangeTypeV1:
      type: object
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'
        isCustomerOwned:
          type: boolean          

    getNumberResponse:
      type: object
      properties:
        numberRangeList:
          type: array
          items:
            $ref: '#/components/schemas/numberRangeDetailTypeV1'    

    numberRangeDetailTypeV1:
      type: object
      properties:
        numberRange:
          $ref: '#/components/schemas/numberRangeTypeV1'    
        resourceStatus:
          $ref: '#/components/schemas/numberStatusTypeV1'
        activationDate:
          $ref: '#/components/schemas/dateFormatV1'
        reservationExpiryDate:
          $ref: '#/components/schemas/dateFormatV1'
        quarantineExpiryDate:
          $ref: '#/components/schemas/dateFormatV1'
        orderList:
          type: array
          items:
            $ref: '#/components/schemas/numberDetailOrderTypeV1'
        portDetails:
          $ref: '#/components/schemas/numberDetailPortDetailsTypeV1'
        relatedParty:
          $ref: '#/components/schemas/numberDetailRelatedPartyTypeV1'
        isCustomerOwned:
          type: boolean          

    numberRangeTypeV1:
      type: object
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'          
        OKUCode:
          $ref: '#/components/schemas/OKUCodeTypeV1'    
        RIOCode:
          $ref: '#/components/schemas/RIOCodeTypeV1'

    numberDetailOrderTypeV1:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/orderIdTypeV1'
        userName:
          $ref: '#/components/schemas/userNameTypeV1'

    numberDetailPortDetailsTypeV1:
      type: object
      properties:
        portDate:
          $ref: '#/components/schemas/dateFormatV1'

    numberDetailRelatedPartyTypeV1:
      type: object
      required:
        - reseller
      properties:
        reseller:
          $ref: '#/components/schemas/numberDetailResellerTypeV1'
        subReseller:
          $ref: '#/components/schemas/subResellerTypeV1'
        endCustomerDetails:
          $ref: '#/components/schemas/numberDetailEndCustomerTypeV1'

    numberDetailEndCustomerTypeV1:
      type: object
      properties:
        status:
          $ref: '#/components/schemas/allowedCustomerStatusV1'
        endCustomerName:
          $ref: '#/components/schemas/customerNameTypeV1'
        customerType:
          $ref: '#/components/schemas/customerTypeV1'
        firstName:
          $ref: '#/components/schemas/nameTypeV1'
        lastName:
          $ref: '#/components/schemas/customerNameTypeV1'
        endCustomerDateOfBirth:
          $ref: "#/components/schemas/dateFormatV1"
        endCustomerLanguage:
          $ref: '#/components/schemas/endCustomerLanguageTypeV1'
        endCustomerAddress:
          $ref: '#/components/schemas/numberDetailsAddressSchemaV1'
        companyRegistrationNumber:
           $ref: '#/components/schemas/companyRegistrationNumberTypeV1'
        legitimateSignee:
          $ref: '#/components/schemas/legitimateSigneeTypeV1'
        customerReference:
          $ref: '#/components/schemas/customerRefTypeV1'
        serviceType:
          $ref: '#/components/schemas/allowedServiceTypeV1'
        coltCVP:
          $ref: '#/components/schemas/CVPTypeV1'

    CVPTypeV1:
      type: string
      maxLength: 12
      
    allowedServiceTypeV1:
      type: string
      description: "For restricted use only. Customer should inform ResellerSupport.Voice@colt.net if they wish to use this field"
      enum:
        - "SERVICE"
        - "SUBSCRIBER"

    allowedCustomerStatusV1:
      type: string
      enum:
        - "ACTIVE"
        - "INACTIVE"        

    numberPrefixTypeV1:
      type: string
      maxLength: 20
      pattern : '^[+]{1}[0-9]*$'
      
    updateCustomerDetailsOrderV1:
      type: object
      required:
        - numberRangeList
        - relatedParty
        - productOffering 
      properties:
        numberRangeList:
          type: array
          description: "Mandatory to enter the numbers for updating customer details"
          items:
            $ref: '#/components/schemas/updateCustomerNumberRangeTypeV1'
          minItems: 1
          maxItems: 1            
        productOffering:
          $ref: '#/components/schemas/productOfferingTypeV1'        
        relatedParty:
          $ref: '#/components/schemas/updateCustomerRelatedPartyTypeV1'
        directoryServicesDetails:
          $ref: '#/components/schemas/directoryServicesDetailTypeV1'
        order:
          $ref: '#/components/schemas/updateCustomerOrderTypeV1'          

    updateCustomerNumberRangeTypeV1:
      type: object
      required:
        - numberRangeStart      
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'


    updateCustomerRelatedPartyTypeV1:
      type: object
      description: "Mandatory to enter the order details" 
      required:
        - reseller
      properties:
        reseller:
          $ref: '#/components/schemas/resellerTypeV1'
        subReseller:
          $ref: '#/components/schemas/subResellerTypeV1'
        endCustomerDetails:
          $ref: '#/components/schemas/updateEndCustomerDetailsTypeV1'
          
    updateEndCustomerDetailsTypeV1:
      type: object
      description:  |
        End Customer Details is mandatory for all countries if action=ADD. 
        
        End Customer Details is mandatory for DE, DK, FR, BE, ES, SE and Zone B countries if action=MODIFY.
        
        Any or ALL of these as conditional mandatory for NL if action=MODIFY:
        1. Directory Services entry, and/or
        2. the End Customer Address and/or
        3. Emergency Address
        
        Any or ALL of these as conditional mandatory for all countries except DE, DK, FR, NL and Zone B countries:
        1. Directory Services entry, and/or 
        2. End Customer Address
      properties:
        endCustomerName:
          $ref: '#/components/schemas/customerNameTypeV1'
        customerType:
          $ref: '#/components/schemas/customerTypeV1'
        firstName:
          $ref: '#/components/schemas/firstNameTypeV1'
        lastName:
          $ref: '#/components/schemas/customerNameTypeV1'
        endCustomerDateOfBirth:
          #description: "Required for DE only"
          $ref: '#/components/schemas/dateFormatV1'
        endCustomerLanguage:
          $ref: '#/components/schemas/endCustomerLanguageTypeV1'
        endCustomerAddress:
          $ref: '#/components/schemas/addressSchemaV1'
        emergencyAddress:
          $ref: '#/components/schemas/emergencyAddressSchemaV1'          
        companyRegistrationNumber:
          $ref: '#/components/schemas/companyRegistrationNumberTypeV1'
        companyNumberRegistered:
          type: boolean
        legitimateSignee:
          $ref: '#/components/schemas/legitimateSigneeTypeV1'
        customerReference:
          $ref: '#/components/schemas/customerRefTypeV1'
        serviceType:
          description: "For restricted use only. Customer should inform ResellerSupport.Voice@colt.net if they wish to use this field"
          type: string
          
    updateCustomerOrderTypeV1:
      type: object
      properties:
        action:
          $ref: '#/components/schemas/actionTypeV1'
        triPartyAgreementType:
          $ref: '#/components/schemas/fileAttachment5MTypeV1'          

    actionTypeV1:
      type: string
      description: "Note: 'REMOVE' is for RESTRICTED use only"
      enum:
        - 'ADD'
        - 'MODIFY'
        - 'REMOVE'

    portUpdateOrderV1:
      type: object
      required:
        - relatedParty
        - productOffering      
      properties:
        numberRangeList:
          type: array
          description: "Mandatory to enter the numbers for order submission"
          items:
            $ref: '#/components/schemas/portUpdateNumberRangeTypeV1'
          minItems: 1
          maxItems: 250            
        productOffering:
          $ref: '#/components/schemas/productOfferingTypeV1'
        relatedParty:
          $ref: '#/components/schemas/portUpdateRelatedPartyTypeV1'
        portDetails:
          $ref: '#/components/schemas/portUpdatePortDetailsTypeV1'
        order:
          $ref: '#/components/schemas/portUpdateOrderTypeV1'          
          
    portUpdateNumberRangeTypeV1:
      type: object
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'
        rangeSingleLine:
          $ref: '#/components/schemas/singleLineTypeV1'
        rangeMultiLine:
          $ref: '#/components/schemas/multiLineTypeV1'
        rangePortingDate:
          $ref: '#/components/schemas/dateFormatV1'
        rangeBlockingCode:
          type: string
        rangeNote:
          $ref: '#/components/schemas/notesFormatV1'
        rangeMainBillingNumber:
          $ref: '#/components/schemas/E164NumberTypeV1'
        rangeRIOCode:
          $ref: '#/components/schemas/RIOCodeTypeV1'          
        rangeBillingAccountNumber:          
          type: string          
     
    portUpdateRelatedPartyTypeV1:
      type: object
      description: "Mandatory to enter the order details" 
      required:
        - reseller
      properties:
        reseller:
          $ref: '#/components/schemas/resellerTypeV1'
          
    portUpdatePortDetailsTypeV1:
      type: object
      properties:
        portingDate:
          $ref: '#/components/schemas/dateFormatV1'
        portingWindow:
          $ref: '#/components/schemas/portingWindowTypeV1'
        portingContact:
          $ref: '#/components/schemas/portingContactTypeV1'
        currentOperator:
          $ref: '#/components/schemas/firstNameTypeV1'
        portAttachment:
          $ref: '#/components/schemas/portAttachmentTypeV1'
        portingPrefix:
          type: string
        automatedPP:
          type: boolean
        OOHFlag:
          type: boolean          
        rejectionReason:
          $ref: '#/components/schemas/portRejectionReasonTypeV1'
          
    reactivationOrderRequestV1:
      type: object
      required:
        - numberRangeList      
        - relatedParty
        - productOffering 
      properties:
        numberRangeList:
          type: array
          description: "Mandatory to enter the numbers for reactivation order submission"
          items:
            $ref: '#/components/schemas/reactivationNumberRangeTypeV1'
          minItems: 1
          maxItems: 1            
        productOffering:
          $ref: '#/components/schemas/productOfferingTypeV1'
        relatedParty:
          $ref: '#/components/schemas/reactivationRelatedPartyTypeV1'
          
    reactivationNumberRangeTypeV1:
      type: object
      required:
        - numberRangeStart      
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'
     
    reactivationRelatedPartyTypeV1:
      type: object
      description: "Mandatory to enter the order details" 
      required:
        - reseller
      properties:
        reseller:
          $ref: '#/components/schemas/resellerTypeV1' 
          
    lockFreeNumbersRequestV1:
      type: object
      required:
        - numberPrefix
        - searchType
        - numberType
        - relatedParty
        - productOffering
      properties:
        numberPrefix:
          $ref: '#/components/schemas/numberPrefixTypeV1'
        quantity:
           type: integer
           minimum: 1
        searchType:
          $ref: '#/components/schemas/allowedSearchTypeV1'     
        numberType:
          $ref: '#/components/schemas/allowedNumberTypesV1'
        relatedParty:
          $ref: '#/components/schemas/lockFreeNumbersRelatedPartyTypeV1'
        productOffering:
          $ref: '#/components/schemas/productOfferingTypeV1'
          
    lockFreeNumbersRelatedPartyTypeV1:
      type: object
      description: "Mandatory to enter the order details" 
      required:
        - reseller
      properties:
        reseller:
          $ref: '#/components/schemas/resellerTypeV1'
          
    lockFreeNumbersResponseV1:
      type: object
      properties:
        availableNumberCount:
          type: integer
        searchExpiryTime:
          type: string
          format: "date-time"
        lockId:
          $ref: '#/components/schemas/lockIdTypeV1'
        freeNumberRangeList:
          $ref: '#/components/schemas/lockFreeNumbersNumberRangeListV1'
          
    lockFreeNumbersNumberRangeListV1:
      type: array
      items:
        $ref: '#/components/schemas/lockFreeNumbersNumberRangeTypeV1'
        
    lockFreeNumbersNumberRangeTypeV1:
      type: object
      required:
        - startFullNumber
        - endFullNumber
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'
          
    freeNumberBackfillOrderRequestV1:
      type: object
      required:
        - backfillDetails
        - relatedParty
        - productOffering
      properties:
        backfillDetails:
          $ref: '#/components/schemas/backfillDetailsTypeV1'
        relatedParty:
          $ref: '#/components/schemas/backfillNumberRelatedPartyTypeV1'
        productOffering:
          $ref: '#/components/schemas/productOfferingTypeV1'
          
    backfillDetailsTypeV1:
      type: object
      required:
        - numberPrefix
        - searchType
        - numberType
      properties:
        quantity:
           type: integer
           minimum: 1
        numberPrefix:
          $ref: '#/components/schemas/numberPrefixTypeV1'
        searchType:
          $ref: '#/components/schemas/allowedSearchTypeV1'
        numberType:
          $ref: '#/components/schemas/allowedNumberTypesV1'
        justification:
          $ref: '#/components/schemas/justificationTypeV1'
          
    orderBackfillDetailsTypeV1:
      type: object
      required:
        - quantity
        - numberPrefix
        - searchType
        - numberType
      properties:
        quantity:
           type: integer
           minimum: 1
        numberPrefix:
          $ref: '#/components/schemas/numberPrefixTypeV1'
        searchType:
          $ref: '#/components/schemas/allowedSearchTypeV1'
        numberType:
          $ref: '#/components/schemas/allowedNumberTypesV1'
        justification:
          $ref: '#/components/schemas/justificationTypeV1'
        leadTime:
          type: string
    
    orderFreeNumberDetailsTypeV1:
      type: object    
      properties:
        quantity:
           type: integer
           minimum: 1
        numberType:
          $ref: '#/components/schemas/allowedNumberTypesV1'           
        areaCode:
          $ref: '#/components/schemas/areaCodeTypeV1'
        areaCodeExtn:
          $ref: '#/components/schemas/areaCodeExtnTypeV1'
        province:
          $ref: '#/components/schemas/provinceTypeV1'
        city:
          $ref: '#/components/schemas/cityTownTypeV1'          
        blockSize:                    
          type: integer
          minimum: 1
        leadTime:
          type: string 

          
    backfillNumberRelatedPartyTypeV1:
      type: object
      required:
        - reseller
      properties:
        reseller:
          $ref: '#/components/schemas/resellerTypeV1'
        endCustomerDetails:
          $ref: '#/components/schemas/backfillEndCustomerDetailsTypeV1'
          
    backfillEndCustomerDetailsTypeV1:
      type: object
      properties:
        customerReference:
          $ref: '#/components/schemas/customerRefTypeV1'          
         
    cancelFreeNumberBackfillOrderRequestV1:
      type: object
      required:
        - order
        - relatedParty
        - productOffering      
      properties:
        order:
          $ref: '#/components/schemas/cancelBackfillOrderTypeV1'
        relatedParty:
          $ref: '#/components/schemas/cancelBackfillNumberRelatedPartyTypeV1'
        productOffering:
          $ref: '#/components/schemas/productOfferingTypeV1'
          
    cancelBackfillOrderTypeV1:
      type: object
      required:
        - id
      properties:
        id:
          $ref: '#/components/schemas/orderIdTypeV1'
          
    cancelBackfillNumberRelatedPartyTypeV1:
      type: object
      required:
        - reseller
      properties:
        reseller:
          $ref: '#/components/schemas/resellerTypeV1'          

    portRejectionReasonTypeV1:
      type: string
      maxLength: 1024
      
    portUpdateOrderTypeV1:
      type: object
      required:
        - parentOrder
        - portUpdateType
      properties:
        portUpdateType:
          $ref:  '#/components/schemas/allowedPortUpdateTypeV1'
        portAction:
          $ref: '#/components/schemas/allowedPortActionTypeV1'
        notes:
          $ref: '#/components/schemas/notesFormatV1'
        parentOrder:
          $ref: '#/components/schemas/parentOrderTypeV1'

    allowedPortActionTypeV1:
      type: string
      enum:
        - 'Activate Port-In'        
        - 'Schedule porting'        
        - 'Modify Port'
        - 'QuickNote' 
        - 'Cancel'
        - 'Accept'
        - 'Reject'
        
    allowedPortUpdateTypeV1:
      type: string
      enum:
        - 'Status'
        - 'Update Port Date'
        - 'Cancel'

    orderListResponseV1:
      type: array
      items: 
        $ref: '#/components/schemas/orderListOrderV1'

    orderListOrderV1:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/orderIdTypeV1'
        type:
          $ref: '#/components/schemas/allowedOrderTypeV1'
        status:
          $ref: '#/components/schemas/allowedOrderStatusV1'
        date:
          $ref: '#/components/schemas/dateFormatV1'
        lastModifiedDate:
          $ref: '#/components/schemas/dateFormatV1'
        numberRangeList:
          type: array
          items:
            $ref: '#/components/schemas/orderListNumberRangeTypeV1'
        parentOrder:
          $ref: '#/components/schemas/parentOrderTypeV1' 
        userName:
          $ref: '#/components/schemas/userNameTypeV1'

    orderListNumberRangeTypeV1:
      type: object
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'
          
    cliOrderHistoryResponseV1:
      type: array
      items: 
        $ref: '#/components/schemas/cliOrderHistoryOrderV1'

    cliOrderHistoryOrderV1:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/orderIdTypeV1'
        type:
          $ref: '#/components/schemas/allowedOrderTypeV1'
        status:
          $ref: '#/components/schemas/allowedOrderStatusV1'
        date:
          $ref: '#/components/schemas/dateFormatV1'
        lastModifiedDate:
          $ref: '#/components/schemas/dateFormatV1'
        userName:
          $ref: '#/components/schemas/userNameTypeV1'


    bulkActivationOrderV1:
      type: object
      required:
        - orderList
      properties: 
        orderList:
          $ref: '#/components/schemas/activationBulkOrderListTypeV1'

    bulkPortInOrderV1:
      type: object
      required:
        - orderList
      properties: 
        orderList:
          $ref: '#/components/schemas/portInBulkOrderListType'
          
    bulkUpdateCustomerDetailsOrderV1:
      type: object
      required:
        - orderList
      properties: 
        orderList:
          $ref: '#/components/schemas/updateCustomerDetailBulkOrderListType'

    activationBulkOrderListTypeV1:
      type: array
      items: 
        $ref: '#/components/schemas/activationOrderV1'
      minItems: 1
      maxItems: 100

    portInBulkOrderListType:
      type: array
      items: 
        $ref: '#/components/schemas/portInOrderV1'
      minItems: 1
      maxItems: 50

    updateCustomerDetailBulkOrderListType:
      type: array
      items: 
        $ref: '#/components/schemas/updateCustomerDetailsOrderV1'
      minItems: 1
      maxItems: 100    

    allowedProductOfferingTypeV1:
      type: string
      enum:
        - 'Wholesale SIP'
        
    allowedSearchTypeV1:
      type: string
      #default: "singleNumber"
      enum:
        - "singleNumber"
        - "contiguousNumbers"
        
    freeNumberCountResponseV1:
      type: object
      properties:
        availableNumberCount:
          type: integer
          
    justificationTypeV1:
      type: string
      minLength: 0
      maxLength: 2048       

    checkPortabilityRequestTypeV1:
      type: object
      properties:
        numberRangeList:
          type: array
          items:
            $ref: '#/components/schemas/checkPortabilityRequestNumberRangeTypeV1'
          minItems: 1
          maxItems: 100            
          
                
    checkPortabilityRequestNumberRangeTypeV1:
      type: object
      required:
        - numberRangeStart
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'        
          
    checkPortabilityResponseTypeV1:
      type: object
      properties:
        numbersToPort:
          type: array
          items:
            $ref: '#/components/schemas/checkPortabilityNumberRangeTypeV1'    

    checkPortabilityNumberRangeTypeV1:
      type: object
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'    
        phoneNumberType: 
          $ref: '#/components/schemas/allowedPhoneNumberTypeV1'    
        country: 
          $ref: "#/components/schemas/coltOperatingCountryListV1"
        countryCode:
          $ref: "#/components/schemas/coltOperatingCountryCodeListV1"
        areaCode: 
          $ref: "#/components/schemas/areaCodeTypeV1"
        firstPossiblePortingDate:
          $ref: "#/components/schemas/dateFormatV1"
        lastPossiblePortingDate:
          $ref: "#/components/schemas/dateFormatV1"
        portable: 
          type: boolean
        notPortableReason: 
          $ref: "#/components/schemas/portFailureReasonTypeV1"
        inventoryRangeList:
            type: array
            items:
                $ref: '#/components/schemas/inventoryRangeDetails'                 
                
    allowedPhoneNumberTypeV1:
      type: string
      enum:
        - "FIXED_LINE"
        - "MOBILE"
        - "FIXED_LINE_OR_MOBILE"
        - "TOLL_FREE"
        - "PREMIUM_RATE"
        - "SHARED_COST"
        - "VOIP"
        - "PERSONAL_NUMBER"
        - "PAGER"
        - "UAN"
        - "VOICEMAIL"
        - "UNKNOWN"
        
    coltOperatingCountryCodeListV1:
      type: string
      enum:
        - "44"      
        - "43"
        - "32"
        - "41"
        - "420"
        - "49"
        - "45"
        - "34"
        - "358"
        - "33"
        - "353"
        - "39"
        - "352"
        - "31"
        - "47"
        - "48"
        - "351"
        - "40"
        - "46"
        - "421"
        
    inventoryRangeDetails:
        type: object
        properties:
            originalRangeStart:
                $ref: '#/components/schemas/E164NumberTypeV1'
            originalRangeEnd:
                $ref: '#/components/schemas/E164NumberTypeV1'
            rangeMode:
                $ref: '#/components/schemas/portFeasibilityModeTypeV1'
        
    portFeasibilityModeTypeV1:
        type: string
        enum:
            - "Full"
            - "Partial"
            
    portFailureReasonTypeV1:
        type: object
        properties:
          description: 
            type: string
            maxLength: 250
          code: 
            type: string  
            maxLength: 10      

    areaCodeTypeV1:
      type: string
      pattern: "^[0-9]{1,6}$"

    areaCodeExtnTypeV1:
      type: string
      pattern: "^[0-9]{0,6}$"

    individualOrderResponseTypeV1:
      type: object
      properties:
        numberRangeList:
          type: array
          items:
            $ref: '#/components/schemas/bulkNumberRangeTypeV1'
        order:
          type: object
          properties:
            id:
              $ref: '#/components/schemas/orderIdTypeV1'            
        error:
          $ref: '#/components/schemas/individualErrorTypeV1'

    individualOrderResponseListV1:
      type: array
      items:
        $ref: '#/components/schemas/individualOrderResponseTypeV1'
        

    bulkOrderResponseTypeV1:
      type: object
      properties:
        responseList:
          $ref: '#/components/schemas/individualOrderResponseListV1'

    bulkNumberRangeTypeV1:
      type: object
      properties:
        numberRangeStart:
          $ref: '#/components/schemas/E164NumberTypeV1'
        numberRangeEnd:
          $ref: '#/components/schemas/E164NumberTypeV1'

    bulkReturnOrderV1:
      type: object
      required:
        - orderList
      properties: 
        orderList:
          $ref: '#/components/schemas/returnBulkOrderListTypeV1'

    returnBulkOrderListTypeV1:
      type: array
      items: 
        $ref: '#/components/schemas/returnOrderV1'
      minItems: 1
      maxItems: 100    

    returnRelatedPartyTypeV1:
      type: object
      description: "Mandatory to enter the order details"
      required:
        - reseller
      properties:
        reseller:
          $ref: '#/components/schemas/resellerTypeV1'
                    

    individualErrorTypeV1:
      description: 'Used when an API throws an Error, typically with a HTTP error response-code (3xx, 4xx, 5xx)'
      type: object
      required:
        - httpStatus
      properties:
        httpStatus:
          type: string
        code:
          type: string
          description: 'Application relevant detail, defined in the API or a common list.'
          example: ERR01
        reason:
          type: string
          description: Explanation of the reason for the error which can be shown to a client user.
        message:
          type: string
          description: More details and corrective actions related to the error which can be shown to a client user.
          
    digitalLetterOfAuthorityTypeV1:
      description: 'Used when LOA is digitally signed by customer'
      type: object
      properties:
        currentOperatorName:
          $ref: '#/components/schemas/firstNameTypeV1'
        currentOperatorEmail:
          $ref: '#/components/schemas/emailFormatV1'
        senderEmail:
          $ref: '#/components/schemas/emailFormatV1'
        senderCompanyName:
          type: string
          maxLength: 100               
        signatoryDetails:
          $ref: '#/components/schemas/signatoryDetailsTypeV1'
        endCustomerBillingAddress:
          $ref: '#/components/schemas/endCustomerBillingAddressLOATypeV1'

    signatoryDetailsTypeV1:
      type: object
      properties:
        resellerFirstName:
          $ref: '#/components/schemas/firstNameTypeV1'
        resellerLastName:
          $ref: '#/components/schemas/customerNameTypeV1'
        resellerEmail:
          $ref: '#/components/schemas/emailFormatV1'
        signingAuthorityTitle:
          type: string
          maxLength: 10
        signingAuthorityFirstName:
          $ref: '#/components/schemas/firstNameTypeV1'
        signingAuthorityLastName:
          $ref: '#/components/schemas/customerNameTypeV1'
        signingAuthorityEmail:
          $ref: '#/components/schemas/emailFormatV1'
        signingAuthorityLandline:
          $ref: '#/components/schemas/phoneNumberTypeV1' 
        signingAuthorityMobile:
          $ref: '#/components/schemas/phoneNumberTypeV1'  
        signingAuthorityFax:
          $ref: '#/components/schemas/phoneNumberTypeV1'            
          
       
          
    endCustomerBillingAddressLOATypeV1:
      type: object
      properties:
        billingHouseNumber:
          $ref: '#/components/schemas/buildingNumberTypeV1'
        billingStreetName:
          $ref: '#/components/schemas/streetNameTypeV1'
        billingCity:
          $ref: '#/components/schemas/cityTownTypeV1'
        billingPostalCode:
          type: string
          maxLength: 10
        billingCounty:
          type: string
          maxLength: 100          

    legitimateSigneeTypeV1:
      type: string
      maxLength: 255