KPN

KPN Mobile Services Management API

MobileServicesManagement APIs ---

OpenAPI Specification

kpn-mobile-services-management-openapi.yml Raw ↑
swagger: '2.0'
info:
  description: >-
   MobileServicesManagement APIs
  
      ---
        
    ## [Source view](https://app.swaggerhub.com/apis/kpn/MobileServicesManagement-KPN/)<br/>
    [Documentation view](https://app.swaggerhub.com/apis/kpn/MobileServicesManagement-KPN/)
    
    ---
    
    ## [KPN Developer](https://developer.kpn.com/)<br/>
    [Getting Started](https://developer.kpn.com/getting-started)
    
   
    ---
  
  version: v11
  title: MobileServicesManagement-KPN
  termsOfService: 'https://developer.kpn.com/legal'
  contact:
    name: API Support
    email: api_developer@kpn.com
    url: 'https://developer.kpn.com/support'

host: api-prd.kpn.com
basePath: /mobile/kpn/mobileservices
schemes:
 - https

tags:
  - name: rest-address-controller
    description: Rest Address Controller
    
  - name: rest-contract-controller
    description: Rest Contract Controller
  - name: rest-threshold-controller
    description: Rest Threshold Controller
    
  - name: rest-business-voice-mail-controller
    description: Rest Business Voice Mail Controller
  - name: rest-contracting-controller
    description: Rest Contracting Controller
  - name: rest-separate-fixed-mobile-controller
    description: Rest Separate Fixed Mobile Controller
  - name: rest-template-controller
    description: Rest Template Controller
    
  
    
  - name: rest-invoice-controller
    description: Rest Invoice Controller
    
  - name: rest-hierarchy-controller
    description: Rest Hierarchy Controller
  - name: rest-subscriber-controller
    description: Rest Subscriber Controller
  - name: rest-user-controller
    description: Rest User Controller    
    
    
  - name: rest-block-sim-controller
    description: Rest Block Sim Controller
  - name: rest-contract-terminate-controller
    description: Rest Contract Terminate Controller
  - name: rest-hardware-enrollment-controller
    description: Rest Hardware Enrollment Controller
  - name: rest-order-controller
    description: Rest Order Controller
 
 
  - name: rest-track-and-trace-controller
    description: Rest Track And Trace Controller 
    
    
paths:
  /track-and-trace/orders:
    get:
      tags:
        - rest-track-and-trace-controller
      summary: Get order list
      description: <strong>Required privileges</strong> (one of the following):</strong><ul><li>privileges_orders_track_and_trace</li><li>privileges_orders_authorization</li></ul>
      operationId: getOrdersUsingGET
      produces:
        - '*/*'
      parameters:
        - name: currentUserOrdersOnly
          in: query
          required: false
          type: boolean
          default: false
          x-example: false
        - name: from
          in: query
          description: Pagination parameter - start from (included). The elements are counted from 0. Default value is 0.
          required: false
          type: integer
          format: int32
          x-example: 0
        - name: order
          in: query
          required: false
          type: string
          enum:
            - ASC
            - DESC
        - name: patterns
          in: query
          required: false
          type: array
          items:
            type: string
          collectionFormat: multi
        - name: sortBy
          in: query
          required: false
          type: string
          enum:
            - CREATION_DATE
            - STATUS
            - KPN_REFERENCE
            - ORDERED_FOR
            - CUSTOMER_REFERENCE
        - name: status
          in: query
          required: true
          type: array
          items:
            type: string
            enum:
              - IN_PROGRESS
              - UNAUTHORIZED
              - NEW
              - CLOSED
              - CANCELED
              - REJECTED
              - DRAFT
              - THIRD_PARTY
              - HOLD_CUSTOMER
              - WAITING
          collectionFormat: multi

            
        - name: to
          in: query
          description: Pagination parameter - end element (exluded). Default value is 20.
          required: false
          type: integer
          format: int32
          x-example: 20
        - name: withRequiredActionFirst
          in: query
          required: false
          type: boolean
          default: true
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/PagedResult_Order_'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/ErrorResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/ErrorResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/ErrorResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/ErrorResponse'
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/ErrorResponse'
        '500':
          description: Server Error
          schema:
            $ref: '#/definitions/ErrorResponse'
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/ErrorResponse'
      security:
        - OAuth2: []
  /track-and-trace/orders/{id}:
    get:
      tags:
        - rest-track-and-trace-controller
      summary: Get order details
      description: <strong>Required privileges</strong> (one of the following):</strong><ul><li>privileges_orders_track_and_trace</li><li>privileges_orders_authorization</li></ul>
      operationId: getOrderDetailsUsingGET
      produces:
        - '*/*'
      parameters:
        - name: id
          in: path
          description: id
          required: true
          type: integer
          format: int64
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/OrderDetails1'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/ErrorResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/ErrorResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/ErrorResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/ErrorResponse'
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/ErrorResponse'
        '500':
          description: Server Error
          schema:
            $ref: '#/definitions/ErrorResponse'
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/ErrorResponse'
      security:
        - OAuth2: []
  /track-and-trace/orders/{id}/cancel:
    post:
      tags:
        - rest-track-and-trace-controller
      summary: Cancel order
      description: <strong>Required privileges</strong> (one of the following):</strong><ul><li>privileges_orders_track_and_trace</li><li>privileges_orders_authorization</li></ul>
      operationId: cancelOrderUsingPOST
      consumes:
        - application/json
      produces:
        - '*/*'
      parameters:
        - name: id
          in: path
          description: id
          required: true
          type: integer
          format: int64
        - name: note
          in: query
          description: note
          required: false
          type: string
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/ErrorResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/ErrorResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/ErrorResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/ErrorResponse'
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/ErrorResponse'
        '500':
          description: Server Error
          schema:
            $ref: '#/definitions/ErrorResponse'
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/ErrorResponse'
      security:
        - OAuth2: []
  /track-and-trace/orders/{id}/hardware:
    get:
      tags:
        - rest-track-and-trace-controller
      summary: Get list of hardware which was ordered in the order with the given id
      description: <strong>Required privileges</strong> (one of the following):</strong><ul><li>privileges_orders_track_and_trace</li><li>privileges_orders_authorization</li></ul>
      operationId: getHardwareForOrderUsingGET
      produces:
        - '*/*'
      parameters:
        - name: id
          in: path
          description: id
          required: true
          type: integer
          format: int64
      responses:
        '200':
          description: OK
          schema:
            type: array
            items:
              $ref: '#/definitions/Hardware'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/ErrorResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/ErrorResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/ErrorResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/ErrorResponse'
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/ErrorResponse'
        '500':
          description: Server Error
          schema:
            $ref: '#/definitions/ErrorResponse'
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/ErrorResponse'
      security:
        - OAuth2: []
  /track-and-trace/orders/{id}/porting-data:
    post:
      tags:
        - rest-track-and-trace-controller
      summary: Change port in date or customer number
      description: |-
        Endpoint allows to change both : customer number and wish date in one request or change only one parameter. 
        There are several possibility to set data:
        | newWishDate | asap | customerNumber | result                              |
        |-------------|--------|----------------|-------------------------------------|
        | date        | false  | null           | change only wish date               |
        | null        | true   | null           | change only wish date to ASAP       |
        | null        | true   | number         | change customer number and wishDate |
        | date        | false  | number         | change customer number and wishDate |
        | date        | true   |   *            | validation error                    |
        | null        | false  | null           | validation error                    |

        <strong>Required privileges</strong> (one of the following):</strong><ul><li>privileges_orders_track_and_trace</li><li>privileges_orders_authorization</li></ul>
      operationId: changePortingDataUsingPOST
      consumes:
        - application/json
      produces:
        - '*/*'
      parameters:
        - in: body
          name: data
          description: data
          required: true
          schema:
            $ref: '#/definitions/ChangePortingData'
        - name: id
          in: path
          description: id
          required: true
          type: integer
          format: int64
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/ErrorResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/ErrorResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/ErrorResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/ErrorResponse'
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/ErrorResponse'
        '500':
          description: Server Error
          schema:
            $ref: '#/definitions/ErrorResponse'
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/ErrorResponse'
      security:
        - OAuth2: []
  /track-and-trace/orders/{id}/pretty:
    get:
      tags:
        - rest-track-and-trace-controller
      summary: Get order details in pretty form
      description: <strong>Required privileges</strong> (one of the following):</strong><ul><li>privileges_orders_track_and_trace</li><li>privileges_orders_authorization</li></ul>
      operationId: getPrettyOrderDetailsUsingGET
      produces:
        - '*/*'
      parameters:
        - name: id
          in: path
          description: id
          required: true
          type: integer
          format: int64
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/PrettyOrderDetails'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/ErrorResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/ErrorResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/ErrorResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/ErrorResponse'
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/ErrorResponse'
        '500':
          description: Server Error
          schema:
            $ref: '#/definitions/ErrorResponse'
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/ErrorResponse'
      security:
        - OAuth2: []
  /track-and-trace/overview:
    get:
      tags:
        - rest-track-and-trace-controller
      summary: Get number of orders grouped by orders type
      description: <strong>Required privileges</strong> (one of the following):</strong><ul><li>privileges_orders_track_and_trace</li><li>privileges_orders_authorization</li></ul>
      operationId: getOverviewUsingGET
      produces:
        - '*/*'

      responses:
        '200':
          description: OK
          schema:
            type: object
            additionalProperties:
              type: integer
              format: int64
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/ErrorResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/ErrorResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/ErrorResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/ErrorResponse'
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/ErrorResponse'
        '500':
          description: Server Error
          schema:
            $ref: '#/definitions/ErrorResponse'
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/ErrorResponse'
      security:
        - OAuth2: []
  /track-and-trace/returned-hardware-service-requests:
    get:
      tags:
        - rest-track-and-trace-controller
      summary: Get return hardware service requests list
      description: <strong>Required privileges</strong> (one of the following):</strong><ul><li>privileges_orders_track_and_trace</li><li>privileges_orders_authorization</li></ul>
      operationId: getReturnedHardwareServiceRequestUsingGET
      produces:
        - '*/*'
      parameters:
        - name: currentUserOrdersOnly
          in: query
          required: false
          type: boolean
          default: false
          x-example: false
        - name: from
          in: query
          description: Pagination parameter - start from (included). The elements are counted from 0. Default value is 0.
          required: false
          type: integer
          format: int32
          x-example: 0
        - name: order
          in: query
          required: false
          type: string
          enum:
            - ASC
            - DESC
        - name: patterns
          in: query
          required: false
          type: array
          items:
            type: string
          collectionFormat: multi
        - name: status
          in: query
          required: true
          type: array
          items:
            type: string
            enum:
              - IN_PROGRESS
              - UNAUTHORIZED
              - NEW
              - CLOSED
              - CANCELED
              - REJECTED
              - DRAFT
              - THIRD_PARTY
              - HOLD_CUSTOMER
              - WAITING
          collectionFormat: multi
        - name: to
          in: query
          description: Pagination parameter - end element (exluded). Default value is 20.
          required: false
          type: integer
          format: int32
          x-example: 20
        - name: withRequiredActionFirst
          in: query
          required: false
          type: boolean
          default: true
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/PagedResult_ReturnedHardwareServiceRequests_'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/ErrorResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/ErrorResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/ErrorResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/ErrorResponse'
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/ErrorResponse'
        '500':
          description: Server Error
          schema:
            $ref: '#/definitions/ErrorResponse'
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/ErrorResponse'
      security:
        - OAuth2: []
  /track-and-trace/service-requests:
    get:
      tags:
        - rest-track-and-trace-controller
      summary: Get service requests list
      description: <strong>Required privileges</strong> (one of the following):</strong><ul><li>privileges_orders_track_and_trace</li><li>privileges_orders_authorization</li></ul>
      operationId: getServiceRequestsUsingGET
      produces:
        - '*/*'
      parameters:
        - name: Content-Language
          in: header
          description: Content-Language
          required: false
          type: string
        - name: currentUserOrdersOnly
          in: query
          required: false
          type: boolean
          default: false
          x-example: false
        - name: from
          in: query
          description: Pagination parameter - start from (included). The elements are counted from 0. Default value is 0.
          required: false
          type: integer
          format: int32
          x-example: 0
        - name: order
          in: query
          required: false
          type: string
          enum:
            - ASC
            - DESC
        - name: patterns
          in: query
          required: false
          type: array
          items:
            type: string
          collectionFormat: multi
        - name: sortBy
          in: query
          required: false
          type: string
          enum:
            - CREATION_DATE
            - STATUS
            - KPN_REFERENCE
            - REQUEST_BY
            - REQUEST_FOR
            - TYPE
            - CUSTOMER_REFERENCE
        - name: status
          in: query
          required: true
          type: array
          items:
            type: string
            enum:
              - IN_PROGRESS
              - UNAUTHORIZED
              - NEW
              - CLOSED
              - CANCELED
              - REJECTED
              - DRAFT
              - THIRD_PARTY
              - HOLD_CUSTOMER
              - WAITING
          collectionFormat: multi

        - name: to
          in: query
          description: Pagination parameter - end element (exluded). Default value is 20.
          required: false
          type: integer
          format: int32
          x-example: 20
        - name: withRequiredActionFirst
          in: query
          required: false
          type: boolean
          default: true
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/PagedResult_ServiceRequest_'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/ErrorResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/ErrorResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/ErrorResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/ErrorResponse'
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/ErrorResponse'
        '500':
          description: Server Error
          schema:
            $ref: '#/definitions/ErrorResponse'
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/ErrorResponse'
      security:
        - OAuth2: []
  /track-and-trace/service-requests/{id}:
    get:
      tags:
        - rest-track-and-trace-controller
      summary: Get service requests details
      description: |-
        The possible keys of `attributes` map in response object:<div style='max-height: 400px; overflow: auto; width: 100%'>
        <dl>
        <dt><b>Attribute name</b></dt><dd><b>Meaning</b></dd>
        <dt>login</dt><dd>Login</dd>
        <dt>roles</dt><dd>Roles</dd>
        <dt>firstName</dt><dd>First name</dd>
        <dt>lastName</dt><dd>Last name</dd>
        <dt>surnamePrefix</dt><dd>Surname prefix</dd>
        <dt>email</dt><dd>E-mail</dd>
        <dt>dateOfBirth</dt><dd>Date of birth</dd>
        <dt>vip</dt><dd>VIP</dd>
        <dt>employeeNumber</dt><dd>Employee number</dd>
        <dt>gender</dt><dd>Gender</dd>
        <dt>salutation</dt><dd>Salutation</dd>
        <dt>preferredLanguage</dt><dd>Preferred language</dd>
        <dt>comments</dt><dd>Comments</dd>
        <dt>accesspointNameMSISDN</dt><dd>Mobile number</dd>
        <dt>accesspointNameSIM</dt><dd>SIM card number</dd>
        <dt>accesspointNameIMSI</dt><dd>IMSI</dd>
        <dt>IMEI</dt><dd>IMEI</dd>
        <dt>Hanset_IMEI_number</dt><dd>IMEI</dd>
        <dt>accesspointNameFixedNumber</dt><dd>Fixed Number</dd>
        <dt>activeTo</dt><dd>Active to</dd>
        <dt>contractName</dt><dd>Subscription or device name</dd>
        <dt>totalOnetimePrice</dt><dd>One time price</dd>
        <dt>totalRecurrentPrice</dt><dd>Recurring price</dd>
        <dt>deferredPrice</dt><dd>Deferred price</dd>
        <dt>newUiccId</dt><dd>New SIM card number</dd>
        <dt>movedGroupName</dt><dd>Moved account</dd>
        <dt>subscriberAccountId</dt><dd>Old location</dd>
        <dt>destinationAccount</dt><dd>New location</dd>
        <dt>selectedDuoUiccid</dt><dd>Selected Duo SIM card number</dd>
        <dt>projectId</dt><dd>Project ID</dd>
        <dt>new_fixed_number</dt><dd>New fixed number</dd>
        <dt>new_desk_number</dt><dd>New extension</dd>
        <dt>oldUserGroupName</dt><dd>Previous user group</dd>
        <dt>newUserGroupName</dt><dd>New user group</dd>
        <dt>vpnName</dt><dd>VPN name</dd>
        <dt>deskNumber</dt><dd>Extension</dd>
        <dt>accesspointNameDeskNumber</dt><dd>Extension</dd>
        <dt>mobileAddress</dt><dd>Mobile number</dd>
        <dt>enterpriseName</dt><dd>Enterprise name</dd>
        <dt>enterpriseID</dt><dd>Enterprise ID</dd>
        <dt>mobilityGroupName</dt><dd>Fixed-Mobile PBX name</dd>
        <dt>userGroupName</dt><dd>User group</dd>
        <dt>enterpriseUserGroup</dt><dd>User group</dd>
        <dt>initialUserPrincipalName</dt><dd>User Principal Name</dd>
        <dt>sipAccountName</dt><dd>SIP account name</dd>
        <dt>accessInstanceAttributeinitialUserPrincipalName</dt><dd>User Principal Name</dd>
        <dt>accesspointNameQueuePhoneNumber</dt><dd>Queue phone number</dd>
        <dt>accesspointNameSipAccountName</dt><dd>SIP account name</dd>
        <dt>subscriptionAmount</dt><dd>New subscription amount</dd>
        <dt>contract_contact_name</dt><dd>Contract contact person (name)</dd>
        <dt>contract_contact_phone</dt><dd>Contract contact person (phone)</dd>
        <dt>contract_contact_mail</dt><dd>Contract contact person (mail)</dd>
        <dt>financial_contact_name</dt><dd>Financial contact person (name)</dd>
        <dt>financial_contact_phone</dt><dd>Financial contact person (phone)</dd>
        <dt>financial_contact_mail</dt><dd>Financial contact person (mail)</dd>
        <dt>technical_contact_name</dt><dd>Technical contact Person (name)</dd>
        <dt>technical_contact_phone</dt><dd>Technical contact Person (phone)</dd>
        <dt>technical_contact_mail</dt><dd>Technical contact Person (mail)</dd>
        <dt>deviceOption</dt><dd>Device option</dd>
        <dt>deviceType_label</dt><dd>Device type</dd>
        <dt>macAddress</dt><dd>Mac address</dd>
        <dt>deviceName</dt><dd>Device name</dd>
        <dt>sacGroupAccountId_label</dt><dd>Location account</dd>
        <dt>groupId</dt><dd>Location</dd>
        <dt>vGroupMovingToID</dt><dd>New location</dd>
        <dt>pbxName</dt><dd>PBX</dd>
        <dt>groupCitemId_label</dt><dd>Group</dd>
        <dt>Fixed</dt><dd>Alternate fixed number</dd>
        <dt>DeskNumber</dt><dd>Alternate extension</dd>
        <dt>billing_retention_period</dt><dd>Financial data retention period (months)</dd>
        <dt>managedGroupName</dt><dd>Authorized for</dd>
        <dt>subscriptionType</dt><dd>Subscription type</dd>
        <dt>CurrentNetworkOperator</dt><dd>Current network operator</dd>
        <dt>CurrentServiceProvider</dt><dd>Current service provider</dd>
        <dt>Customer_name_at_current_provider</dt><dd>Customer name at current provider</dd>
        <dt>Current_contract_number</dt><dd>Customer number at current provider</dd>
        <dt>UIccId</dt><dd>Current SIM card number</dd>
        <dt>Initials</dt><dd>Initials</dd>
        <dt>FamilyNamePrefix</dt><dd>Family name prefix</dd>
        <dt>FamilyName</dt><dd>Family name</dd>
        <dt>delivery_TT_id</dt><dd>Delivery Track&trace ID</dd>
        <dt>IsAppleDEP</dt><dd>Apple DEP</dd>
        <dt>IsSamsungKNOX</dt><dd>Samsung KNOX</dd>
        <dt>keepCurrentSim</dt><dd>Keep existing SIM card</dd>
        <dt>Note</dt><dd>Note</dd>
        <dt>Porting_wish_date</dt><dd>Preferred transition date</dd>
        <dt>returnReason</dt><dd>Reason for return</dd>
        <dt>returnRemarks</dt><dd>Remarks</dd>
        <dt>companyName</dt><dd>Company name</dd>
        <dt>companyNamePronounciation</dt><dd>Comapny name pronounciation</dd>
        <dt>businessVoiceMailMessageText</dt><dd>Chosen business voicemail message</dd>
        </dl>
        <div>
        <style type="text/css">  dl {
            display: flex;
            flex-flow: row wrap;
          }
          dt {
            flex-basis: 20%;
            text-align: right;
          }
          dd {
            flex-basis: 70%;
            flex-grow: 1;
          }
        </style>

        <strong>Required privileges</strong> (one of the following):</strong><ul><li>privileges_orders_track_and_trace</li><li>privileges_orders_authorization</li></ul>
      operationId: getServiceRequestDetailsUsingGET
      produces:
        - '*/*'
      parameters:
        - name: id
          in: path
          description: id
          required: true
          type: integer
          format: int64
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/ServiceRequestDetails'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/ErrorResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/ErrorResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/ErrorResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/ErrorResponse'
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/ErrorResponse'
        '500':
          description: Server Error
          schema:
            $ref: '#/definitions/ErrorResponse'
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/ErrorResponse'
      security:
        - OAuth2: []
  /track-and-trace/service-requests/{id}/attachments/{attachmentId}:
    get:
      tags:
        - rest-track-and-trace-controller
      summary: Get attachment with given id and serviceRequestId
      description: <strong>Required privileges</strong> (one of the following):</strong><ul><li>privileges_orders_track_and_trace</li><li>privileges_orders_authorization</li></ul>
      operationId: getAttachmentUsingGET
      produces:
        - application/json
      parameters:
        - name: attachmentId
          in: path
          description: attachmentId
          required: true
          type: integer
          format: int64
        - name: id
          in: path
          description: id
          required: true
          type: integer
          format: int64
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/Serializable'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/ErrorResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/ErrorResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/ErrorResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/ErrorResponse'
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/ErrorResponse'
        '500':
          description: Server Error
          schema:
            $ref: '#/definitions/ErrorResponse'
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/ErrorResponse'
      security:
        - OAuth2: []
  /track-and-trace/service-requests/{id}/cancel:
    post:
      tags:
        - rest-track-and-trace-controller
      summary: Cancel service request
      description: <strong>Required privileges</strong> (one of the following):</strong><ul><li>privileges_orders_track_and_trace</li><li>privileges_orders_authorization</li></ul>
      operationId: cancelServiceReqestUsingPOST
      consumes:
        - application/json
      produces:
        - '*/*'
      parameters:
        - name: id
          in: path
          description: id
          required: true
          type: integer
          format: int64
        - name: note
          in: query
          description: note
          required: false
          type: string
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/ErrorResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/ErrorResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/ErrorResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/ErrorResponse'
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/ErrorResponse'
        '500':
          description: Server Error
          schema:
            $ref: '#/definitions/ErrorResponse'
        '503':

# --- truncated at 32 KB (292 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/kpn/refs/heads/main/openapi/kpn-mobile-services-management-openapi.yml