Required privileges (one of the following):
- privileges_orders_track_and_trace
- privileges_orders_authorization
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:
Required privileges (one of the following):
- privileges_orders_track_and_trace
- privileges_orders_authorization
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:
Required privileges (one of the following):
- privileges_orders_track_and_trace
- privileges_orders_authorization
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':
description: Service Unavailable
schema:
$ref: '#/definitions/ErrorResponse'
security:
- OAuth2: []
/order/apple-dep:
post:
tags:
- rest-hardware-enrollment-controller
summary: Register Apple Dep
description:
Required privileges (one of the following):
- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: registerAppleDepUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: request
description: request
required: true
schema:
$ref: '#/definitions/HardwareEnrollmentRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/order/authorize:
post:
tags:
- rest-order-controller
summary: Authorize order
description:
Required privileges (one of the following):
- privileges_orders_authorization
operationId: authorizeUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: authorizeRequest
description: authorizeRequest
required: true
schema:
$ref: '#/definitions/AuthorizeRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/order/block-sim:
post:
tags:
- rest-block-sim-controller
summary: Block sim for given contract
description:
Required privileges (one of the following):
- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: blockSimUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: blockSimRequest
description: blockSimRequest
required: true
schema:
$ref: '#/definitions/BlockSimRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/order/move:
post:
tags:
- rest-order-controller
summary: Move contract with given contractId to group with given destinationGroupId
description: |-
Wish date should be empty, current or in the future. Reference number cannot exceed 25 character. When individualBundle field is set as true in ContractDetails, user is supposed to set moveAddonBundles to true or false.Otherwise it will be used as false by default. If individualBundle is false, the value of the field moveAddonBundles will not be used.
Required privileges (one of the following):
- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: moveContractUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: moveContractRequest
description: moveContractRequest
required: true
schema:
$ref: '#/definitions/MoveContractRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/order/operations:
get:
tags:
- rest-order-controller
summary: Get information about operations available for given contract.
description:
Required privileges (one of the following):
- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: getAvailableOperationsUsingGET
produces:
- '*/*'
parameters:
- name: contractId
in: query
description: contractId
required: true
type: integer
format: int64
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OperationsAvailability'
'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: []
/order/porting-out:
post:
tags:
- rest-order-controller
summary: Port out contract
description:
Required privileges (one of the following):
- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: portingOutUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: portingOutRequest
description: portingOutRequest
required: true
schema:
$ref: '#/definitions/PortingOutRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/order/replace-sim:
post:
tags:
- rest-order-controller
summary: Replace sim for given contract
description: |-
If eSim is used email is mandatory.
Required privileges (one of the following):
- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: replaceSimUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: replaceSimRequest
description: replaceSimRequest
required: true
schema:
$ref: '#/definitions/ReplaceSimRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/order/replace-sim/validator:
post:
tags:
- rest-order-controller
summary: Validate if sim card number can be used in replace sim operation
description:
Required privileges (one of the following):
- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: validateUiccidUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: uiccidValidationData
description: uiccidValidationData
required: true
schema:
$ref: '#/definitions/UiccidValidationData'
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: []
/order/return-hardware:
post:
tags:
- rest-order-controller
summary: Return hardware
description:
Required privileges (one of the following):
- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: returnHardwareUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: returnHardwareRequest
description: returnHardwareRequest
required: true
schema:
$ref: '#/definitions/ReturnHardwareRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/order/samsung-knox:
post:
tags:
- rest-hardware-enrollment-controller
summary: Register Samsung Knox
description:
Required privileges (one of the following):
- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: registerSamsungKnoxUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: request
description: request
required: true
schema:
$ref: '#/definitions/HardwareEnrollmentRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/order/terminate:
post:
tags:
- rest-contract-terminate-controller
summary: Terminate contract
description:
Required privileges (one of the following):
- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: terminateUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: terminateContractRequest
description: terminateContractRequest
required: true
schema:
$ref: '#/definitions/TerminateContractRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/order/terminate/termination-fee:
get:
tags:
- rest-contract-terminate-controller
summary: Get termination fee for giver contract and termination date
description:
Required privileges (one of the following):
- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: getTerminationFeeUsingGET
produces:
- '*/*'
parameters:
- name: contractId
in: query
description: contractId
required: true
type: integer
format: int64
- name: wishDate
in: query
description: wishDate
required: true
type: string
format: date-time
responses:
'200':
description: OK
schema:
$ref: '#/definitions/TerminationFee'
'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: []
/order/terminate/{contractId}/min-date:
get:
tags:
- rest-contract-terminate-controller
summary: Get first possible termination date for given contract
description:
Required privileges (one of the following):
- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: getMinFreeTerminationDateUsingGET
produces:
- '*/*'
parameters:
- name: contractId
in: path
description: contractId
required: true
type: integer
format: int32
responses:
'200':
description: OK
schema:
type: string
format: date-time
'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: []
/order/unblock-sim:
post:
tags:
- rest-block-sim-controller
summary: Unblock sim for given contract
description:
Required privileges (one of the following):
- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: unblockSimUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: unblockSimOrder
description: unblockSimOrder
required: true
schema:
$ref: '#/definitions/UnblockSimRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/hierarchy/children:
get:
tags:
- rest-hierarchy-controller
summary: Get immediate children of given parent hierarchy entity
description: |-
Return all children of given hierarchy entity which user manages. If no parent id given it returns root entities.
When `operationType` is given API returns also information if operation is possible for each item. For some oprations possibilty information is returned in context of object or objects passed with `contextIds` or alternately a single `contextId` For example if user wants to check if he can move a hierarchy item , he should use `operationType=MOVE_GROUP`If user wants to check if he can move a chosen item to a different hierarchy entity, he should use `operationType=MOVE_GROUP` with `contextIds` set to ids of items to be moved.
Up to 10 items can be passed using `contextIds`. Currently only MOVE_GROUP operation supports multiple context items, for others, only first item will be used
The request is validated. Possible validation errors:
| HTTP code | Error code | Description |
|-----------|----------------------------|-----------------------------------------------------------------------------------------------|
| `400` | `MISSING_CONTEXT_ID` | `operationType` is given but `contextId` is null |
| `400` | `OPERATION_NOT_POSSIBLE` | Given operation (`operationType`) not possible for all hierarchy entities |
| `404` | `CONTEXT_OBJECT_NOT_FOUND` | Context object of given id (`contextId`) can not be found or current user has no access to it |
When operation can be performed for specific hierarchy entity in response there will be information like this below:
```
"operation": {
"blocked": false,
}
```
Otherwise, if operation can not be executed there will be information like below:
```
"operation": {
"blocked": true,
"reason": "
"
}
```
Possible values of reason for `operationType=MOVE_CONTRACT` (id of single chosen contract as context):
| Reason | Description |
|--------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------|
| `FORBIDDEN_PARENT_FOR_PRODUCT` | This hierarchy entity type is not allowed to have contracts (only subscriber or debtor can have contracts). |
| `CANNOT_MOVE_TO_OLD_PARENT` | Cannot move contract to the same hierarchy entity (like from subscriber to the same subscriber). |
| `FIXED_NUMBER_CANNOT_BE_MOVED_TO_THIS_VGROUP` | Cannot move fix contract to hierarchy entity that already has fixed subscription (hierarchy entity may have contracted only one fix subscription) |
| `ACCOUNT_BLOCKED` | Account is blocked for moving by a different order. |
Possible values of reason for `operationType=MOVE_GROUP` (without context):
| Reason | Description |
|--------------------------------------------------|-------------------------------------------------------------------|
| `WRONG_GROUP_TYPE` | Item of this type cannot be moved (applies to customer). |
| `CANNOT_MOVE_TEST_ACCOUNT` | Test employee accounts cannot be moved. |
| `ACCOUNT_BLOCKED` | Moving operation is blocked by a different order |
Possible values of reason for `operationType=MOVE_GROUP` (ids of up to 10 moved item to move as context):
| Reason | Description |
|--------------------------------------------------|-------------------------------------------------------------------|
| `CANNOT_MOVE_TO_OLD_PARENT` | New parent can't be the same as old one. |
| `GROUP_CANNOT_HAVE_CHILDREN` | This type of group can not have children. |
| `CANNOT_MOVE_TO_MOVED_GROUP` | Destination group can not be the same as group that is being move |
| `CANNOT_MOVE_TO_THIS_TYPE_OF_GROUP` | Context group type can not be moved to this type of group. |
| `ONLY_SINGLE_TYPE_ALLOWED_IN_PATH` | There can be only one entity of such type in path. |
| `REQUIRE_DEBTOR_IN_PATH` | Context group requires debtor above it. |
| `CANNOT_MOVE_DEBTOR_UNDER_DEBTOR` | Debtor can not be placed under another debtor. |
| `CANNOT_MOVE_NON_SUBSCRIBER_BETWEEN_TWO_DEBTORS` | Only subscriber can be moved between debtors. |
| `CANNOT_MOVE_TO_ANOTHER_IAM` | Can not move group between two differents company ids. |
Possible values of reason for `operationType=ASSIGN_TO_HIERARCHY` (single manager employee id as context):
| Reason | Description |
|--------------------------------------------------|--------------------------------------------------|
| `SUBSCRIBER_CANNOT_BE_ASSIGNED` | Subscriber cannot be assigned as managed entity. |
| `GROUP_IS_ALREADY_ASSIGNED` | This group is already managed by given user. |
Possible values of reason for `operationType=CREATE_COST_CENTER`:
| Reason | Description |
|--------------------------------------------------|-----------------------------------------------------|
| `WRONG_GROUP_TYPE` | Cannot create cost center under this type of group. |
| `REQUIRE_DEBTOR_IN_PATH` | Cost center requires debtor above it. |
| `ONLY_SINGLE_TYPE_ALLOWED_IN_PATH` | There can be only one entity of such type in path. |
Possible values of reason for `operationType=CREATE_CUSTOM_GROUP`:
| Reason | Description |
|--------------------------------------------------|------------------------------------------------------------|
| `WRONG_GROUP_TYPE` | Cannot create virtual group as a child of given group type |
Possible values of reason for `operationType=REMOVE_GROUP`:
| Reason | Description |
|--------------------------------------------------|-------------------------------------------------------------|
| `WRONG_GROUP_TYPE` | Only custom group and cost center data can be modified. |
| `FORBIDDEN_PATH_WHEN_REMOVING` | Entity cannot be removed because that will cause error in items hierarchy. Exception is thrown when path in hierarchy is: ... -> CUSTOM_GROUP -> COST_CENTER -> CUSTOM_GROUP ... -> and user try to remove COST_CENTER. CUSTOM_GROUP cannot be under CUSTOM_GROUP. |
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: getChildrenUsingGET
produces:
- '*/*'
parameters:
- name: contextId
in: query
required: false
type: integer
format: int64
- name: contextIds
in: query
required: false
type: array
items:
type: integer
format: int64
collectionFormat: multi
- 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: id
in: query
required: false
type: integer
format: int64
- name: includeCustomer
in: query
description: 'Information if it should include customer. Default value: false.'
required: false
type: boolean
default: false
x-example: false
- name: includeGroups
in: query
description: 'Information if it should include pure virtual groups. Default value: true.'
required: false
type: boolean
default: true
x-example: true
- name: operationType
in: query
required: false
type: string
enum:
- MOVE_CONTRACT
- MOVE_GROUP
- ASSIGN_TO_HIERARCHY
- CREATE_COST_CENTER
- CREATE_CUSTOM_GROUP
- REMOVE_GROUP
- name: pattern
in: query
required: false
type: string
- name: to
in: query
description: Pagination parameter - end element (exluded). Default value is 20.
required: false
type: integer
format: int32
x-example: 20
responses:
'200':
description: OK
schema:
$ref: '#/definitions/PagedResult_VirtualHierarchyItem_'
'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: []
/hierarchy/children/cost-center:
post:
tags:
- rest-hierarchy-controller
summary: Create cost center
description: |-
Create new cost center
The request is validated. Possible validation errors:
| HTTP code | Error code | Description |
|-----------|------------------------------------|--------------------------------------------------------------|
| `400` | `WRONG_GROUP_TYPE` | Cannot create cost center under this type of group |
| `400` | `VALUE_NOT_UNIQUE` | `costCenterNumber` field must be unique |
| `400` | `ONLY_SINGLE_TYPE_ALLOWED_IN_PATH` | Only one cost center can be in path |
| `400` | `REQUIRE_DEBTOR_IN_PATH` | Cost center requires debtor above it. |
| `404` | `VIRTUAL_HIERARCHY_ITEM_NOT_FOUND` | Hierarchy group with given `id` can not be found |
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: createCostCenterUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: params
description: params
required: true
schema:
$ref: '#/definitions/CreateCostCenterRequestParams'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/CreateGroupResponse'
'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: []
/hierarchy/children/move:
post:
tags:
- rest-hierarchy-controller
summary: Move specified hierarchy items to the chosen location
description: |-
Returns ids and summaries of generated service requests, if any where created.
Up to 10 items can be moved at the same time
Wish date is applied only when moving employess between debtors. If part of the items are moved within the same debtor, wish date will be ignored for these.
Reference number is only supported when moving emplyees or business location items. Otherwise no service requests are created
The request is validated. Possible validation errors:
| HTTP code | Error code | Description |
|-----------|------------------------------------|-----------------------------------------------------------------------|
| `403` | `ORDERING_IS_BLOCKED_FOR_CUSTOMER` | Current customer is frozen and can not order anything |
| `404` | `VIRTUAL_HIERARCHY_ITEM_NOT_FOUND` | One of moved hierarchy items or destination location not found |
| `400` | `OPERATION_NOT_POSSIBLE` | At least one of provided items cannot be moved to chosen destination. |
| `400` | `WISH_DATE_NOT_SUPPORTED` | Wish date is only supported when moving emplyees between debtor. This must apply to at least one of the moved objects |
| `400` | `REFERENCE_NUMBER_NOT_SUPPORTED` | Reference number is only supported when moving emplyees or business location items. |
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: moveHierarchyItemsUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: params
description: params
required: true
schema:
$ref: '#/definitions/MoveGroupsParams'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/BulkOrderSummary'
'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: []
/hierarchy/children/operations:
get:
tags:
- rest-hierarchy-controller
summary: Get operations availability for logged user
description: |-
Return all operations with availability and reason if blocked.
| Reason | Description |
|------------------------------------------------|-------------------------------------------------------------------|
| `NO_REQUIRED_PRIVILEGE` | User doesn't have required privilege |
| `NO_ENTITIES_TO_USE` | There is no entity to execute this action on |
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: getHierarchyOperationsUsingGET
produces:
- '*/*'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/HierarchyOperationsAvailability'
'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: []
/hierarchy/children/virtual-group:
post:
tags:
- rest-hierarchy-controller
summary: Create virtual group
description: |-
Create new virtual group
The request is validated. Possible validation errors:
| HTTP code | Error code | Description |
|-----------|------------------------------------|------------------------------------------------------------|
| `400` | `WRONG_GROUP_TYPE` | Cannot create virtual group as a child of given group type |
| `404` | `VIRTUAL_HIERARCHY_ITEM_NOT_FOUND` | Hierarchy group with given `id` can not be found |
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: createVirtualGroupUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: params
description: params
required: true
schema:
$ref: '#/definitions/CreateVirtualGroupRequestParams'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/CreateGroupResponse'
'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: []
/hierarchy/children/{id}:
get:
tags:
- rest-hierarchy-controller
summary: Get hierarchy entity details
description: |-
Get details for organisation structure entitity with given `id`.
Different set of attributes is returned for different entity types. Supported item types are:- `CUSTOMER`
- `DEBTOR`
- `COST_CENTER`
- `CUSTOM_GROUP`
- `BUSINESS_LOCATION`
Details for `SUBSCRIBER` are not supported. `subscribers/{id}` should be used instead.
Possible exceptions:
| HTTP code | Error code | Description |
|-----------|------------------------------------|--------------------------------------------------------------|
| `400` | `WRONG_GROUP_TYPE` | Item of unsupported type |
| `404` | `VIRTUAL_HIERARCHY_ITEM_NOT_FOUND` | Information for item with the given `id` cannot be found |
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: getDetailsUsingGET
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
responses:
'200':
description: OK
schema:
$ref: '#/definitions/HierarchyItemDetails'
'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: []
post:
tags:
- rest-hierarchy-controller
summary: Update hierarchy entity (cost center, custom group)
description: |-
Change custom group or cost center data
The request is validated. Possible validation errors:
| HTTP code | Error code | Description |
|-----------|------------------------------------|--------------------------------------------------------------|
| `400` | `WRONG_GROUP_TYPE` | Only custom group and cost center data can be modified |
| `400` | `VALUE_REQUIRED` | `costCenterNumber` field is required for cost center |
| `400` | `VALUE_NOT_UNIQUE` | `costCenterNumber` field must be unique within the customer |
| `404` | `VIRTUAL_HIERARCHY_ITEM_NOT_FOUND` | Hierarchy group with given `id` can not be found |
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: updateChildUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
- in: body
name: params
description: params
required: true
schema:
$ref: '#/definitions/UpdateChildRequestParams'
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: []
/hierarchy/children/{id}/operations:
get:
tags:
- rest-hierarchy-controller
summary: Get operations availability for chosen item
description: |-
Get available operations for organisational hierarchy item with the given `id`.
Possible operations are:- `create subscriber`
- `create cost center`
- `create virtual group`
- `edit item`
- `move item`
- `remove item`
Operations for `SUBSCRIBER` are not supported. `subscribers/{id}/operations` should be used instead.
Possible exceptions:
| HTTP code | Error code | Description |
|-----------|------------------------------------|--------------------------------------------------------------|
| `400` | `WRONG_GROUP_TYPE` | Item of unsupported type |
| `404` | `VIRTUAL_HIERARCHY_ITEM_NOT_FOUND` | Information for item with the given `id` cannot be found |
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: getItemOperationsUsingGET
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
responses:
'200':
description: OK
schema:
$ref: '#/definitions/HierarchyItemOperationsAvailability'
'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: []
/hierarchy/children/{id}/remove:
post:
tags:
- rest-hierarchy-controller
summary: Remove hierarchy entity (cost center, custom group)
description: |-
Remove custom group or cost center data. The underlying end users and organizational units will be moved to the next highest item in the organizational structure.
The request is validated. Possible validation errors:
| HTTP code | Error code | Description |
|-----------|------------------------------------|--------------------------------------------------------------|
| `400` | `WRONG_GROUP_TYPE` | Only custom group and cost center data can be modified |
| `404` | `VIRTUAL_HIERARCHY_ITEM_NOT_FOUND` | Hierarchy group with given `id` can not be found |
| `400` | `FORBIDDEN_PATH_WHEN_REMOVING` | Entity cannot be removed because that will cause error in items hierarchy. Exception is thrown when path in hierarchy is: ... -> CUSTOM_GROUP -> COST_CENTER -> CUSTOM_GROUP ... -> and user try to remove COST_CENTER. CUSTOM_GROUP cannot be under CUSTOM_GROUP. |
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: removeGroupUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- 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: []
/hierarchy/grip-entities:
get:
tags:
- rest-user-controller
summary: Get all grip entities not linked to subscriber
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: getGripEntitiesUsingGET
produces:
- '*/*'
responses:
'200':
description: OK
schema:
type: array
items:
$ref: '#/definitions/GripEntity'
'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: []
/hierarchy/subscribers:
get:
tags:
- rest-subscriber-controller
summary: Find all subscribers whom user manages
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: findSubscribersUsingGET
produces:
- '*/*'
parameters:
- name: filters
in: query
description: 'Possible columns:FIRSTNAME, LASTNAME, SURNAME_PREFIX, CONTRACTS, DEBTORNAME, FIXED_NUMBER, EMPLOYEE_NUMBER. For example: FIRSTNAME: "abc", "abd"; LASTNAME: "add", "aad"'
required: false
type: string
- 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:
- FIRSTNAME
- LASTNAME
- DEBTORNAME
- FIXED_NUMBER
- EMPLOYEE_NUMBER
- IS_USER
- name: to
in: query
description: Pagination parameter - end element (exluded). Default value is 20.
required: false
type: integer
format: int32
x-example: 20
- name: userOnly
in: query
required: false
type: boolean
responses:
'200':
description: OK
schema:
$ref: '#/definitions/PagedResult_Subscriber_'
'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: []
post:
tags:
- rest-subscriber-controller
summary: Create subscriber (with or without user)
description: |-
If you want to create both subscriber and user at the same time, you should fill userAdditionalInfo.
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: createSubscriberUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: request
description: request
required: true
schema:
$ref: '#/definitions/CreateSubscriberRequestParams'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/hierarchy/subscribers/link:
post:
tags:
- rest-user-controller
summary: Link existing subscriber to grip identity
description: |-
Possible errors when validating request:
| ERROR CODE | CODE |DESCRIPTION |
|-----------------------------------------------|-------|-------------------------------------------------------------------------------|
| `ORDERING_IS_BLOCKED_FOR_CUSTOMER` | `403` | Current customer is frozen and can not order anything .|
| `VIRTUAL_HIERARCHY_ITEM_NOT_FOUND` | `404` | given subscriber does not exist or user does not have access to him |
| `GRIP_ENTITY_NOT_FOUND` | `404` | given gripEntity does not exist or user does not have access to it |
| `ROLE_NOT_FOUND` | `404` | given role does not exist or user does not have access to it |
| `MOBILE_OR_FIXED_NUMBER_IS_REQUIRED` | `400` | mobile or fixed number must be passed in request |
| `SUBSCRIBER_IS_ALREADY_USER` | `400` | given subscriber is already an user |
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: linkSubscriberToGripIdentityUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: params
description: params
required: true
schema:
$ref: '#/definitions/LinkSubscriberToGripRequestParams'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/hierarchy/subscribers/roles:
get:
tags:
- rest-user-controller
summary: Get all roles
operationId: getAllRolesUsingGET
produces:
- '*/*'
parameters:
- 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: pattern
in: query
required: false
type: string
- name: sortBy
in: query
required: false
type: string
enum:
- NAME
- SELECTED
- name: to
in: query
description: Pagination parameter - end element (exluded). Default value is 20.
required: false
type: integer
format: int32
x-example: 20
responses:
'200':
description: OK
schema:
$ref: '#/definitions/PagedResult_Role_'
'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: []
/hierarchy/subscribers/roles/{roleId}/privileges:
get:
tags:
- rest-user-controller
summary: Get privileges for given role
operationId: getRolePrivilegesUsingGET
produces:
- '*/*'
parameters:
- name: roleId
in: path
description: roleId
required: true
type: integer
format: int64
responses:
'200':
description: OK
schema:
type: array
items:
type: string
'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: []
/hierarchy/subscribers/{id}:
get:
tags:
- rest-subscriber-controller
summary: Get subscriber details
description: |-
Operations availability will be removed. Please use 'subscribers/{id}/operations' instead
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: getSubscriberDetailsUsingGET
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
responses:
'200':
description: OK
schema:
$ref: '#/definitions/SubscriberDetails'
'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: []
put:
tags:
- rest-subscriber-controller
summary: Update subscriber
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: updateSubscriberUsingPUT
consumes:
- application/json
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
- in: body
name: request
description: request
required: true
schema:
$ref: '#/definitions/UpdateSubscriberRequestParams'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/hierarchy/subscribers/{id}/assign-entities:
post:
tags:
- rest-user-controller
summary: Assign hierarchy entities managed by employee
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: assignEntitiesUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
- in: body
name: params
description: params
required: true
schema:
$ref: '#/definitions/ManagedGroupAssignmentParams'
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: []
/hierarchy/subscribers/{id}/delete:
post:
tags:
- rest-subscriber-controller
summary: Delete subscriber
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: deleteSubscriberUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
- in: body
name: request
description: request
required: true
schema:
$ref: '#/definitions/DeleteSubscriberRequestParams'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/hierarchy/subscribers/{id}/managed-entities:
get:
tags:
- rest-user-controller
summary: Get hierarchy entities managed by employee
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: getManagedGroupsUsingGET
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
responses:
'200':
description: OK
schema:
type: array
items:
$ref: '#/definitions/VirtualHierarchyItem'
'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: []
/hierarchy/subscribers/{id}/move:
post:
tags:
- rest-subscriber-controller
summary: Move subscriber
description: |-
Moves subscriber to a different location in company hierachy.
`destinationGroupId` should be chosen through `GET /hierarchy/chidlren` with `MOVE_GROUP` as `operatinType` and subscriber id as `contextId`.
`wishDate` is only supported when moving between two debtors, otherwise the employee will be moved immediately
Service Request in Track & Trace will be created only when moving between debtors or cost centers.
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: moveSubscriberUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
- in: body
name: request
description: request
required: true
schema:
$ref: '#/definitions/MoveSubscriberRequestParams'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/hierarchy/subscribers/{id}/operations:
get:
tags:
- rest-subscriber-controller
summary: Get subscriber operations availability
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: getSubscriberOperationsUsingGET
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
responses:
'200':
description: OK
schema:
$ref: '#/definitions/SubscriberOperationsAvailability'
'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: []
/hierarchy/subscribers/{id}/unassign-entities:
post:
tags:
- rest-user-controller
summary: Assign hierarchy entities managed by employee
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: unassignEntitiesUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
- in: body
name: params
description: params
required: true
schema:
$ref: '#/definitions/ManagedGroupAssignmentParams'
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: []
/hierarchy/subscribers/{subscriberId}/contracts:
get:
tags:
- rest-subscriber-controller
summary: Find all contracts belonging to subscriber
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: findSubscriberContractsUsingGET
produces:
- '*/*'
parameters:
- name: from
in: query
description: from
required: false
type: integer
format: int32
- name: order
in: query
description: order
required: false
type: string
enum:
- ASC
- DESC
- name: subscriberId
in: path
description: subscriberId
required: true
type: integer
format: int64
- name: to
in: query
description: to
required: false
type: integer
format: int32
responses:
'200':
description: OK
schema:
$ref: '#/definitions/PagedResult_Contract_'
'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: []
/hierarchy/subscribers/{subscriberId}/contracts/overview:
get:
tags:
- rest-subscriber-controller
summary: Get contracts overview for a subscriber
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: getContractOverviewForVGroupUsingGET
produces:
- '*/*'
parameters:
- name: subscriberId
in: path
description: subscriberId
required: true
type: integer
format: int64
responses:
'200':
description: OK
schema:
type: object
additionalProperties:
$ref: '#/definitions/PagedResult_Contract_'
'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: []
/hierarchy/subscribers/{subscriberId}/roles:
get:
tags:
- rest-user-controller
summary: Get roles for given subscriber user
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: getSubscriberUserRolesUsingGET
produces:
- '*/*'
parameters:
- 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: pattern
in: query
required: false
type: string
- name: sortBy
in: query
required: false
type: string
enum:
- NAME
- SELECTED
- name: subscriberId
in: path
description: subscriberId
required: true
type: integer
format: int64
- name: to
in: query
description: Pagination parameter - end element (exluded). Default value is 20.
required: false
type: integer
format: int32
x-example: 20
responses:
'200':
description: OK
schema:
$ref: '#/definitions/PagedResult_Role_'
'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: []
post:
tags:
- rest-user-controller
summary: Edit roles assigned for given subscriber user
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
operationId: editSubscriberUserRolesUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: request
description: request
required: true
schema:
$ref: '#/definitions/EditRolesRequest'
- name: subscriberId
in: path
description: subscriberId
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: []
/finances/billing-period:
post:
tags:
- rest-invoice-controller
summary: Change billing period for current customer
description: |-
Start service request of changing billing period for current customer.
Possible errors:
| HTTP code | Error code | Description |
|-----------|------------------------------------|----------------------------------------------------------------------------------|
| `403` | `ORDERING_IS_BLOCKED_FOR_CUSTOMER` | Current customer is frozen and can not order anything .|
| `404` | `OPERATION_BLOCKED` | Given operation is blocked. Operation availability shows blocked and not visible.|
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
and: - privileges_billing_retention_portlet
operationId: changeBillingPeriodUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: params
description: params
required: true
schema:
$ref: '#/definitions/ChangeBillingPeriodRequestParams'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/finances/billing-period/availability:
get:
tags:
- rest-invoice-controller
summary: Get billing period changing availability
description: |-
Get availability of changing billing period.
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
- privileges_bulk_upload_data_of_end_user
and: - privileges_billing_retention_portlet
operationId: getBillingPeriodChangingAvailabilityUsingGET
produces:
- '*/*'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OperationAvailability'
'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: []
/finances/invoices:
get:
tags:
- rest-invoice-controller
summary: Get list of invoices for given debtor
description: |-
Possible errors:
| HTTP code | Error code | Description |
|-----------|--------------------|--------------------------------------------------------------|
| `404` | `DEBTOR_NOT_FOUND` | Given debtor does not exist or user don't have access to him |
Required privileges (one of the following):- privileges_financial_documents_view
operationId: getInvoicesUsingGET
produces:
- '*/*'
parameters:
- name: debtorId
in: query
required: false
type: integer
format: int64
- 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: pattern
in: query
required: false
type: string
- name: searchFrom
in: query
description: Start date to search from in ISO format (YYYY-MM-DD)
required: false
type: string
format: date-time
x-example: '2000-10-31'
- name: searchTo
in: query
description: End date to search to in ISO format (YYYY-MM-DD)
required: false
type: string
format: date-time
x-example: '2020-10-31'
- name: sortBy
in: query
required: false
type: string
enum:
- NUMBER
- DEBTOR_NAME
- TYPE
- DATE
- PAY_BEFORE_DATE
- TOTAL_AMOUNT
- name: to
in: query
description: Pagination parameter - end element (exluded). Default value is 20.
required: false
type: integer
format: int32
x-example: 20
- name: type
in: query
required: false
type: string
enum:
- CREDIT_NOTE
- HARDWARE_ADJUSTMENT
- HARDWARE_INVOICE
- HARDWARE_INVOICE_ADJUSTMENT
- SERVICE_ADJUSTMENT
- SERVICE_INVOICE
- SERVICE_INVOICE_ADJUSTMENT
responses:
'200':
description: OK
schema:
$ref: '#/definitions/PagedResult_Invoice_'
'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: []
/finances/invoices/{id}:
get:
tags:
- rest-invoice-controller
summary: Download the invoice as pdf file
description: |-
Possible errors:
| HTTP code | Error code | Description |
|-----------|---------------------|-----------------------------------|
| `404` | `INVOICE_NOT_FOUND` | Invoice with given id not found |
Required privileges (one of the following):- privileges_financial_documents_view
operationId: downloadInvoiceUsingGET
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
responses:
'200':
description: OK
schema:
type: string
format: byte
'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: []
/address/all:
get:
tags:
- rest-address-controller
summary: Get a list of all addresses
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: getAllAddressesUsingGET
produces:
- '*/*'
responses:
'200':
description: OK
schema:
type: array
items:
$ref: '#/definitions/DeliveryAddress'
'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: []
/address/customer:
get:
tags:
- rest-address-controller
summary: Get a list of general addresses
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: getGeneralAddressesUsingGET
produces:
- '*/*'
responses:
'200':
description: OK
schema:
type: array
items:
$ref: '#/definitions/DeliveryAddress'
'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: []
post:
tags:
- rest-address-controller
summary: Add new general address
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: newGeneralAddressUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: deliveryAddress
description: deliveryAddress
required: true
schema:
$ref: '#/definitions/DeliveryAddressRequest1'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/DeliveryAddress'
'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: []
/address/user:
get:
tags:
- rest-address-controller
summary: Get a list of personal addresses
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: getPersonalAddressesUsingGET
produces:
- '*/*'
responses:
'200':
description: OK
schema:
type: array
items:
$ref: '#/definitions/DeliveryAddress'
'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: []
post:
tags:
- rest-address-controller
summary: Add new personal address
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: newPersonalAddressUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: deliveryAddress
description: deliveryAddress
required: true
schema:
$ref: '#/definitions/DeliveryAddressRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/DeliveryAddress'
'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: []
/address/{id}/delete:
post:
tags:
- rest-address-controller
summary: Delete given address from general or personal addresses
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: deleteAddressUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- 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: []
/address/{id}/edit:
post:
tags:
- rest-address-controller
summary: Update personal or general address
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: updateAddressUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: deliveryAddress
description: deliveryAddress
required: true
schema:
$ref: '#/definitions/DeliveryAddressRequest1'
- 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: []
/contract/all:
get:
tags:
- rest-contract-controller
summary: Get all contracts.
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
operationId: getContractsUsingGET
produces:
- '*/*'
parameters:
- name: Content-Language
in: header
description: Content-Language
required: false
type: string
- name: category
in: query
required: false
type: string
enum:
- MOBILE
- FIXED
- FIXED_MOBILE
- HARDWARE
- SKYPE_FOR_BUSINESS
- SOFTWARE
- OTHER
- name: filters
in: query
description: 'Possible columns: FIRSTNAME, LASTNAME, SURNAME_PREFIX, PRODUCT_NAME, PRODUCT_CATEGORY, MOBILE_NUMBER, FIXED_NUMBER, STATE, EXTENSION, SIM_CARD_NUMBER, IMEI. For example: FIRSTNAME: "aab", "aac"; LASTNAME: "aba", "abb"'
required: false
type: string
- 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:
- FIRSTNAME
- LASTNAME
- SURNAME_PREFIX
- PRODUCT_NAME
- PRODUCT_CATEGORY
- MOBILE_NUMBER
- FIXED_NUMBER
- STATE
- SIM_CARD_NUMBER
- EXTENSION
- SIP_ACCOUNT_NAME
- CATEGORY
- name: to
in: query
description: Pagination parameter - end element (exluded). Default value is 20.
required: false
type: integer
format: int32
x-example: 20
responses:
'200':
description: OK
schema:
$ref: '#/definitions/PagedResult_Contract_'
'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: []
/contract/id/{id}:
get:
tags:
- rest-contract-controller
summary: Get contract details.
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
operationId: getContractUsingGET
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
responses:
'200':
description: OK
schema:
$ref: '#/definitions/ContractDetails'
'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: []
/contract/id/{id}/items:
get:
tags:
- rest-contract-controller
summary: Get all contract items (in form of tree) for given contract.
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
operationId: getContractItemsUsingGET
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
responses:
'200':
description: OK
schema:
$ref: '#/definitions/ContractItem'
'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: []
/contract/id/{id}/vamo/fixed-numbers:
get:
tags:
- rest-contract-controller
summary: Get all possible fixed numbers for combining operation.
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
operationId: getFixedNumbersForMergingUsingGET
produces:
- '*/*'
parameters:
- name: filters
in: query
description: 'Possible columns: FIRSTNAME, LASTNAME, SURNAME_PREFIX, PRODUCT_NAME, PRODUCT_CATEGORY. MOBILE_NUMBER, STATE, EXTENSION, SIM_CARD_NUMBER. For example: FIRSTNAME: "aab", "aac"; LASTNAME: "aba", "abb"'
required: false
type: string
- name: from
in: query
required: false
type: integer
format: int32
- name: id
in: path
description: id
required: true
type: integer
format: int64
- 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:
- FIRSTNAME
- LASTNAME
- SURNAME_PREFIX
- PRODUCT_NAME
- PRODUCT_CATEGORY
- MOBILE_NUMBER
- FIXED_NUMBER
- STATE
- SIM_CARD_NUMBER
- EXTENSION
- SIP_ACCOUNT_NAME
- CATEGORY
- name: to
in: query
required: false
type: integer
format: int32
responses:
'200':
description: OK
schema:
$ref: '#/definitions/PagedResult_ContractForOperation_'
'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: []
/contract/id/{id}/vamo/mobile-numbers:
get:
tags:
- rest-contract-controller
summary: Get all possible mobile numbers for combining operation.
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
operationId: getMobileNumbersForMergingUsingGET
produces:
- '*/*'
parameters:
- name: filters
in: query
description: 'Possible columns: FIRSTNAME, LASTNAME, SURNAME_PREFIX, PRODUCT_NAME, PRODUCT_CATEGORY, FIXED_NUMBER, STATE, EXTENSION, SIM_CARD_NUMBER. For example: FIRSTNAME: "aab", "aac"; LASTNAME: "aba", "abb"'
required: false
type: string
- 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: id
in: path
description: id
required: true
type: integer
format: int64
- 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:
- FIRSTNAME
- LASTNAME
- SURNAME_PREFIX
- PRODUCT_NAME
- PRODUCT_CATEGORY
- MOBILE_NUMBER
- FIXED_NUMBER
- STATE
- SIM_CARD_NUMBER
- EXTENSION
- SIP_ACCOUNT_NAME
- CATEGORY
- name: to
in: query
description: Pagination parameter - end element (exluded). Default value is 20.
required: false
type: integer
format: int32
x-example: 20
responses:
'200':
description: OK
schema:
$ref: '#/definitions/PagedResult_ContractForOperation_'
'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: []
/contract/overview:
get:
tags:
- rest-contract-controller
summary: Get number of contracts grouped by contract type.
description: |-
Return contracts statistics. Possible contract types (key values): mobile, fixed, fixed_mobile, hardware, other
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
- privileges_virtual_hierarchy_view
- privileges_virtual_hierarchy_management
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: []
/contract/thresholds:
get:
tags:
- rest-threshold-controller
summary: Get list of thresholds
description: |-
Return list of thresholds for current user.
Required privileges (one of the following):- privileges_threshold_management
- privileges_orders_authorization
- privileges_un-authorized_orders_creation
operationId: getThresholdsUsingGET
produces:
- '*/*'
responses:
'200':
description: OK
schema:
type: array
items:
$ref: '#/definitions/Threshold'
'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: []
post:
tags:
- rest-threshold-controller
summary: Create new threshold
description: |-
Creates new threshold. Name must be unique in context of customer.
The request is validated. Possible validation errors:
| HTTP code | Error code | Description |
|-----------|--------------------------|-------------------------------------------------------|
| `400` | `VALUE_NOT_UNIQUE` | `name` must be unique in context of customer |
Required privilege:- privileges_threshold_management
operationId: createNewThresholdUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: params
description: params
required: true
schema:
$ref: '#/definitions/ThresholdRequestParams'
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: []
/contract/thresholds/availability:
get:
tags:
- rest-threshold-controller
summary: Check if user should have access to thresholds
description: |-
Return if user should have access to thresholds.
Required privileges (one of the following):- privileges_threshold_management
- privileges_orders_authorization
- privileges_un-authorized_orders_creation
operationId: getThresholdsAvailabilityUsingGET
produces:
- '*/*'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OperationAvailability1'
'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: []
/contract/thresholds/remove:
post:
tags:
- rest-threshold-controller
summary: Remove thresholds
description: |-
If at least one item cannot be deleted, none of the items will be deleted.
The request is validated. Possible validation errors:
| HTTP code | Error code | Description |
|-----------|----------------------------|-----------------------------------------------------|
| `404` | `REMOVING_BLOCKED` | Cannot remove at least one of threshold |
| `404` | `THRESHOLD_NOT_FOUND` | Not an existing threshold was given in list |
Required privilege:- privileges_threshold_management
operationId: removeThresholdUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: params
description: params
required: true
schema:
$ref: '#/definitions/RemoveThresholdParams'
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: []
/contract/thresholds/{id}:
get:
tags:
- rest-threshold-controller
summary: Get threshold with information about operation availability
description: |-
Returns a single threshold by `id` with additional information about possibility to modify and delete subscription.Accessible only if user has priviliges to perform these operations at all.
Required privilege:- privileges_threshold_management
operationId: getThresholdUsingGET
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
responses:
'200':
description: OK
schema:
$ref: '#/definitions/ThresholdDetails'
'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: []
post:
tags:
- rest-threshold-controller
summary: Modify existing threshold
description: |-
Modifies existing threshold. Name must be unique in context of customer or the same as before.
The request is validated. Possible validation errors:
| HTTP code | Error code | Description |
|-----------|----------------------------|----------------------------------------------------------------------|
| `400` | `VALUE_NOT_UNIQUE ` | `name` must be unique in context of customer or the same as before |
| `400` | `TYPE_CHANGE_NOT_ALLOWED` | For chosen threshold change of type is not allowed |
| `404` | `THRESHOLD_NOT_FOUND` | Not exisiting threshold was selected |
Required privilege:- privileges_threshold_management
operationId: updateThresholdUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
- in: body
name: params
description: params
required: true
schema:
$ref: '#/definitions/ThresholdRequestParams'
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: []
/contract/thresholds/{id}/assign:
post:
tags:
- rest-threshold-controller
summary: Allows to assign list of contracts to given threshold
description: |-
Assigne list of contracts to threshold.
The request is validated. Possible validation errors:
| HTTP code | Error code | Description |
|-----------|-------------------------------------------|------------------------------------------------------------------|
| `400` | `CONTRACTS_ALREADY_ASSIGNED_TO_GIVEN_TYPE`| At least one contract is already assigned to this threshold type |
| `400` | `NOT_VALID_PRODUCT_FOR_GIVEN_THRESHOLD` | At least one contract has not valid product for this threshold |
| `403` | `FORBIDDEN_FOR_USER` | Thresholds are not available for loggin in user |
| `404` | `CONTRACT_NOT_FOUND` | At least one contract is not visible for user or doesn't exist |
| `404` | `THRESHOLD_NOT_FOUND` | Not exisiting threshold was selected |
Required privileges (one of the following):- privileges_threshold_management
- privileges_orders_authorization
- privileges_un-authorized_orders_creation
operationId: assignContractsUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
- in: body
name: params
description: params
required: true
schema:
$ref: '#/definitions/AssignContractsToThresholdRequestParams'
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: []
/contract/thresholds/{id}/unassign:
post:
tags:
- rest-threshold-controller
summary: Allows to unassign contracts from given threshold
description: |-
Unassigns the given list of contracts from the given threshold.
The request is validated. Possible validation errors:
| HTTP code | Error code | Description |
|-----------|----------------------------|-----------------------------------------------------------------------------------------|
| `403` | `FORBIDDEN_FOR_USER` | Thresholds are not available for loggin in user |
| `404` | `THRESHOLD_NOT_FOUND` | Threshold with the given `id` was not found |
| `404` | `CONTRACT_NOT_FOUND` | At least one of the given contracts does not exists or is not assigned to the threshold |
Required privileges (one of the following):- privileges_threshold_management
- privileges_orders_authorization
- privileges_un-authorized_orders_creation
operationId: unassignContractsUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
- in: body
name: params
description: params
required: true
schema:
$ref: '#/definitions/UnassignContractsFromThresholdRequestParams'
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: []
/contract/thresholds/{thresholdId}/contracts:
get:
tags:
- rest-threshold-controller
summary: Get contracts assigned to threshold
description: |-
Possible validation errors:
| HTTP code | Error code | Description |
|-----------|----------------------------|----------------------------------------------------|
| `404` | `THRESHOLD_NOT_FOUND` | Not an existing threshold was given in list |
| `403` | `FORBIDDEN_FOR_USER` | Operation not allowed for current user |
Required privileges (one of the following):- privileges_threshold_management
- privileges_orders_authorization
- privileges_un-authorized_orders_creation
operationId: getContractsUsingGET_1
produces:
- '*/*'
parameters:
- name: Content-Language
in: header
description: Content-Language
required: false
type: string
- name: category
in: query
required: false
type: string
enum:
- MOBILE
- FIXED
- FIXED_MOBILE
- HARDWARE
- SKYPE_FOR_BUSINESS
- SOFTWARE
- OTHER
- name: filters
in: query
description: 'Possible columns: FIRSTNAME, LASTNAME, SURNAME_PREFIX, PRODUCT_NAME, PRODUCT_CATEGORY, MOBILE_NUMBER, FIXED_NUMBER, STATE, EXTENSION, SIM_CARD_NUMBER, IMEI. For example: FIRSTNAME: "aab", "aac"; LASTNAME: "aba", "abb"'
required: false
type: string
- 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:
- FIRSTNAME
- LASTNAME
- SURNAME_PREFIX
- PRODUCT_NAME
- PRODUCT_CATEGORY
- MOBILE_NUMBER
- FIXED_NUMBER
- STATE
- SIM_CARD_NUMBER
- EXTENSION
- SIP_ACCOUNT_NAME
- CATEGORY
- name: thresholdId
in: path
description: thresholdId
required: true
type: integer
format: int64
- name: to
in: query
description: Pagination parameter - end element (exluded). Default value is 20.
required: false
type: integer
format: int32
x-example: 20
responses:
'200':
description: OK
schema:
$ref: '#/definitions/PagedResult_Contract_'
'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: []
/contract/thresholds/{thresholdId}/contracts-to-assign:
get:
tags:
- rest-threshold-controller
summary: Get a list of contracts which can be later assigned to given threshold.
description: |-
Possible validation errors:
| HTTP code | Error code | Description |
|-----------|----------------------------|-----------------------------------------------------|
| `403` | `FORBIDDEN_FOR_USER` | Operation not allowed for current user |
| `404` | `THRESHOLD_NOT_FOUND` | Given threshold can not be found |
Required privileges (one of the following):- privileges_threshold_management
- privileges_orders_authorization
- privileges_un-authorized_orders_creation
operationId: getContractsToAssignUsingGET
produces:
- '*/*'
parameters:
- name: Content-Language
in: header
description: Content-Language
required: false
type: string
- name: category
in: query
required: false
type: string
enum:
- MOBILE
- FIXED
- FIXED_MOBILE
- HARDWARE
- SKYPE_FOR_BUSINESS
- SOFTWARE
- OTHER
- name: filters
in: query
description: 'Possible columns: FIRSTNAME, LASTNAME, SURNAME_PREFIX, PRODUCT_NAME, PRODUCT_CATEGORY, MOBILE_NUMBER, FIXED_NUMBER, STATE, EXTENSION, SIM_CARD_NUMBER, IMEI. For example: FIRSTNAME: "aab", "aac"; LASTNAME: "aba", "abb"'
required: false
type: string
- 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:
- FIRSTNAME
- LASTNAME
- SURNAME_PREFIX
- PRODUCT_NAME
- PRODUCT_CATEGORY
- MOBILE_NUMBER
- FIXED_NUMBER
- STATE
- SIM_CARD_NUMBER
- EXTENSION
- SIP_ACCOUNT_NAME
- CATEGORY
- name: thresholdId
in: path
description: thresholdId
required: true
type: integer
format: int64
- name: to
in: query
description: Pagination parameter - end element (exluded). Default value is 20.
required: false
type: integer
format: int32
x-example: 20
responses:
'200':
description: OK
schema:
$ref: '#/definitions/PagedResult_Contract_'
'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: []
/contracting/basket:
get:
tags:
- rest-contracting-controller
summary: Get basket content with products tree and prices
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: getBasketUsingGET
produces:
- '*/*'
parameters:
- name: sessionId
in: query
description: sessionId
required: false
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/BasketSnapshot'
'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: []
post:
tags:
- rest-contracting-controller
summary: Modify state of current basket
description: |-
This is a central enpoint for contracting or modifing products. Depending on `change` object passed to this method you can initialize basket, mark product to be contracted, mark product to be terminated, set some parameter for contracting process and so on. Below you will find example scenarios of using basket.
# Modify contract
1. Find contract to modify using: `GET /contract/all`
2. Check if contract modification is possible for selected contract using: `GET /order/operations`. Check flags for `modify` in response (`visible` and `enabled` are set to true).
3. Initialize basket using selected contract: `POST /contracting/basket`
```
{
"contractId": [id of contract to be modified]
}
```
4. Get basket content (including products tree): `GET /contracting/basket`
5. Now you can select and deselect products (you can send more than one - every change will be proceeded one after another) using: `POST /contracting/basket`
```
{
"productActions": [{
"productId": [id field from tree],
"amount": [optional number of products to be put - important only for PUT action, min 1, max 100, default 1],
"type": ["PUT" | "REMOVE"]
}]
}
```
Sending multiply changes should be used mainly if you are sure all changes can be applied (i.e. one action won't exclude following ones).
Step 4 and 5 can be repeated multiply times.
6. You can create order with introduced changes via `POST /contracting/basket/order`
```
{
"referenceNumber": [reference number],
"wishDate": [date when the order is going to be started]
}
```
# Create new contract
1. Find subscriber for whom you want to create new contract, e.g. `GET /hierarchy/subscribers`
2. Initialize basket using selected account (subscriber): `POST /contracting/basket`
```
{
"accountGroupId": [subscriber id found in previous step]
}
```
3. Get basket content (including products tree): `GET /contracting/basket`
4. Select and deselect products - in the same way as during contract modification
5. Right now you can fill in some characteristic values. Characteristics are all values which are needed to fully configured
the future contract. The set of characteristics depends on previously selected products (for example you will receive
different values for mobile subscription and for fixed one). What is more, it is possible that setting some characteristics
can enable another ones. So after every such action you should check basket content. Let's assume you've selected in the previous
step `IP Centrex`. In such situation you will get in your basket something like this:
```
(...)
"characteristics": {
"firstName": {
"name": "firstName",
"value": "Jan",
"possibleValues": [{"value": "Jan"}]
},
"lastName": {
"name": "lastName",
"value": "Kowalski",
"possibleValues": [{"value": "Kowalski"}]
},
"loginExtension": {
"name": "loginExtension"
},
"loginExtensionPrefix": {
"name": "loginExtensionPrefix",
"value": "",
"possibleValues": [{"value": ""}]
},
"deviceOption": {
"name": "deviceOption",
"possibleValues": [
{
"value": "Off-The-Shelf",
"caption": {"en": "Off-The-Shelf", "nl": "Off-The-Shelf"}
},
{
"value": "Deviceless",
"caption": {"en": "Deviceless", "nl": "Deviceless"}
},
{
"value": "Existing Shared",
"caption": {"en": "Existing Shared", "nl": "Existing Shared"}
}
]
},
"fixedNumber": {
"name": "fixedNumber"
},
"email": {
"name": "email",
"value": "jan.kowalski@comarch.com",
"possibleValues": [{"value": "jan.kowalski@comarch.com"}]
},
"group": {
"name": "group",
"possibleValues": [
{
"value": "166715563",
"caption": {"en": "Codemaster Group 1", "nl": "Codemaster Group 1"}
},
{
"value": "166715564",
"caption": {"en": "Codemaster Group 2", "nl": "Codemaster Group 2"}
}
]
}
}
(...)
```
Some of these characteristics are read-only as they have only one possible value which is prefilled and can't be changed to anything else (for example `firstName`, `lastName`). They are included in the response for informational purpose and can be presented on a front-end. The rest of characteristics should be entered:
* `loginExtension`,
* `deviceOption`,
* `fixedNumber`,
* `group`.
Setting characteristic value is done through the same `POST /contracting/basket` endpoint, but now we are going to use `characteristicActions` key, for example:
```
{
"characteristicActions": [{
"name": "deviceOption",
"value": "Off-The-Shelf"
}]
}
```
After `deviceOption` is set to `Off-The-Shelf` you will receive additionally `deviceType` characteristic to set.
Theoretically, you can merge many characteristic requests into one request by passing a list of actions instead of single one. But please be aware, that in such case they are proceeded sequentially one-by-one, so their order may be important (for example you need set ` deviceOption` characteristic before `deviceType`). Or you can just make separated request for each individual value. It's up to you.
The process of consulting basket content and setting characteristics value should be repeated until all required values are set.6. Next, if you decide to give a new sim card (possible only when you haven't ordered a new one), you should `POST /basket` the following object:
```
{"simCardNumber": }
```
7. You can create order with introduced changes via `POST /contracting/basket/order`
```
{
"referenceNumber": [reference number],
"wishDate": [date when the order is going to be started]
}
```
Please note that if you selected some order you have to extend this object with address section.
# Create new contract (by template)
1. Find subscriber for whom you want to create new contract, e.g. `GET /hierarchy/subscribers`
2. Initialize basket using selected account (subscriber): `POST /contracting/basket`
```
{
"accountGroupId": [subscriber id found in previous step]
}
```
3. From now you can get template list using `GET /contracing/basket/templates`
4. You can use one of those templates (select it) using `POST /contracting/basket`:
```
{
"templateId": [template id]
}
```
5. Get basket content (including products tree): `GET /contracting/basket`
The rest of steps is analogous to standard way of creating contract.
# Reactivate contract
1. Find subscriber for whom you want to create new contract, e.g. `GET /hierarchy/subscribers`
2. Find service request in which contract was terminated, e.g. `GET /track-and-trace/service-requests`
3. Initialize basket using selected account (subscriber) and contract: `POST /contracting/basket`
```
{
"accountGroupId": [subscriber id found in previous step],
"orderId": [termination order id found in previous step]
}
```
4. A read-only characteristic `previousPhoneNumber` is initialized. You can use it to get the previous phone number and present it to an end user.
The rest of steps is analogous to standard way of creating contract.
# Port in number
Initials steps are the same as for creating a new contract. After configuring products tree (by hand or by template) you should be able to set porting characteristics. Please note that this characteristic will be only available if you select mobile product. You can check possible list of characteristics to be set using: `GET /basket` or `GET /basket/characteristics`. Example response after selecting mobile product (fragment of `GET /basket` response):
```
(...)
"characteristics": {
"porting": {
"name": "porting",
"value": "false",
"possibleValues": [
{
"value": "false",
"caption": {
"en": "false",
"nl": "false"
}
},
{
"value": "true",
"caption": {
"en": "true",
"nl": "true"
}
}
]
}
}
(...)
```
The response says that:
* you can set `porting` characteristic (field `name`),
* current value is `false` (field `value`),
* it can take one of two values: `true` or `false` (field `possibleValues`).
To switch porting value to `true`, you have to make the following request:
```
{
"characteristicActions": [{
"name": "porting",
"value": "true"
}]
}
```
After setting porting to `true` there will be possibility to set few more porting-specific parameters (you can get new list of characteristics again using `GET /basket`):
* `phoneNumber` - required, regex: `316\d{8} | 3197\d{9}`
* `customerNumber` - required, length <= 70
* `customerName`, lenght <= 20
* `keepExistingSimCard` - default `false`
* `note` - length <= 60
Theoretically, you can merge characteristic requests into one request by passing a list of actions instead of single action. But please be aware, that in such case they are proceeded sequentially one-by-one, so their order may be important (for example you need set `porting` characteristic before `phoneNumber`). Or you can just make separated request for each individual value. It's up to you.
Turning on `porting` flag additionally disable possibility to get more main products and contract additional main products such as handsets, sim cards etc. During porting contracting such products is not possible.
If sent characteristic value does not met validation criteria an error is raised (`400 Bad Request`) with possible code values:
* `INVALID_CUSTOMER_NAME`,
* `INVALID_CUSTOMER_NUMBER`,
* `INVALID_NOTE`,
* `BASKET_INVALID`,
* `INVALID_MSISDN_ALREADY_EXISTS_FOR_A_CUSTOMER`,
* `INVALID_MSISDN_IS_BLOCKED`,
* `INVALID_MSISDN_FORMAT_NOT_VALID`,
* `INVALID_MSISDN_LENGTH_FOR_THIS_PRODUCT`,
* `INVALID_MSISDN_FOR_CUSTOMER_OFFER`,
Next, if you decide to give a new sim card (possible only when `keepExistingSimCard` = `false`), you should `POST /basket` the following object:
```
{
"simCardNumber":
}
```
to pass short UICCD of ported number.
Keeping existing sim card is only possible for phone number registered currently in KPN (internal porting).
Start a new order is possible via 'POST /basket/order'. You can pass:
* `wishDate` - preferred date of porting (null is treated as ASAP),
* `referenceNumber`.
We do not pass address to backend.
Possible error codes (for `400 Bad Request` response):
* `BASKET_INVALID` - not all parameters have been set, or product tree is in error state,
* `INVALID_WISH_DATE` - as wish date should be <= current date + 90, and can not be set on holiday.
# Combine fixed and mobile contract
1. Find first contract to combine using: `GET /contract/all`
2. Check if contract combination is possible for selected contract using: `GET /order/operations`. Check flags for `combineFixedMobile` in response (`visible` and `enabled` are set to true).
3. Depending on previous contract type find second contract using `GET /contracting/id/{id}/vamo/fixed-numbers` or `GET /contracting/id/{id}/vamo/mobile-numbers`
4. Initialize basket using selected contracts: `POST /contracting/basket`
```
{
"fixedContractId": [id of fixed contract],
"mobileContractId": [id of mobile contract],
}
```
5. Get list of possible characterists to bet set (for example pbx groups, service types, combine types). The response contains also current value of every characteristics: `GET /contracting/basket/characteristics
6. Set selected characteristics using modify basket (you can send more than one - every change will be proceeded one after another)
```
{
"characteristicActions": [{
"name": [characteristic name],
"value": [characteristic value]
}]
}
Step 5 and 6 can be repeated multiply times.
7. Get products tree: `GET /contracting/basket/products`
The rest of steps are still not implemented.
# Modify existing template
1. Find valid template to modify using: `GET /contracting/templates`
2. Initialize basket using selected template: `POST /contracting/basket`
```
{
"templatedIdToModify": [id of template to be modified]
}
```
3. You can preview and modify basket state the same way as during create new subscrition or dduring contract modification
4. When the basket is in valid state you can save all change using `POST /contracting/basket/modify-template`
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: modifyBasketUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: change
description: change
required: true
schema:
$ref: '#/definitions/BasketChange'
- name: sessionId
in: query
description: sessionId
required: false
type: string
responses:
'200':
description: OK
schema:
type: object
additionalProperties:
type: string
'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: []
/contracting/basket/characteristics:
get:
tags:
- rest-contracting-controller
summary: Get characteristics grouped by its names
description: |-
Example characteristics names: `pbxGroup`, `serviceType`, `combineType`
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: getCharacteristicsUsingGET
produces:
- '*/*'
parameters:
- name: sessionId
in: query
description: sessionId
required: false
type: string
responses:
'200':
description: OK
schema:
type: object
additionalProperties:
$ref: '#/definitions/Characteristic'
'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: []
/contracting/basket/main-products:
get:
tags:
- rest-contracting-controller
summary: Get list of main products to order
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: getMainProductsUsingGET
produces:
- '*/*'
parameters:
- name: Content-Language
in: header
description: Content-Language
required: false
type: string
- name: category
in: query
description: 'Possible values: MOBILE, SIM CARDS, FIXED, HARDWARE, SOFTWARE, OTHER'
required: false
type: string
- name: filters
in: query
description: 'Possible columns: PRODUCT_NAME, PRICE_IN_CENTS, PRIVATE_COPYING_LEVY_IN_CENTS. For example: STATUS: "a", "b"; PRICE_IN_CENTS: "1", "2"'
required: false
type: string
- 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: sessionId
in: query
description: sessionId
required: false
type: string
- name: sortBy
in: query
required: false
type: string
enum:
- PRODUCT_NAME
- CATEGORY
- FOLDER_NAME
- PRICE_IN_CENTS
- PRIVATE_COPYING_LEVY_IN_CENTS
- name: to
in: query
description: Pagination parameter - end element (exluded). Default value is 20.
required: false
type: integer
format: int32
x-example: 20
responses:
'200':
description: OK
schema:
$ref: '#/definitions/PagedResult_Product_1'
'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: []
/contracting/basket/modify-template:
post:
tags:
- rest-contracting-controller
summary: Modify template
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
and:- privileges_portfolio_and_profiles_management
operationId: modifyTemplateUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- name: sessionId
in: query
description: sessionId
required: false
type: string
- name: spectatedUserId
in: query
description: spectatedUserId
required: false
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: []
/contracting/basket/order:
post:
tags:
- rest-contracting-controller
summary: Create order applying changes introduced to basket staring from initializing
description: |-
Possible errors:
| HTTP code | Error code | Description |
|------------------------------------|---------------------|----------------------------------------------------------|
| `ORDERING_IS_BLOCKED_FOR_CUSTOMER` | `403` | Current customer is frozen and can not order anything |
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: orderUsingPOST_1
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: request
description: request
required: true
schema:
$ref: '#/definitions/OrderRequest'
- name: sessionId
in: query
description: sessionId
required: false
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderConfirmation'
'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: []
/contracting/basket/products:
get:
tags:
- rest-contracting-controller
summary: Get products tree
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: getProductsTreeUsingGET
produces:
- '*/*'
parameters:
- name: sessionId
in: query
description: sessionId
required: false
type: string
responses:
'200':
description: OK
schema:
type: array
items:
$ref: '#/definitions/ProductTreeItem'
'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: []
/contracting/basket/reset:
post:
tags:
- rest-contracting-controller
summary: Reset basket
description: |-
Some of the methods are stateful and depend on basket state. Due to this it is sometimes helpful to reinitialize basket.
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: resetBasketUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- name: sessionId
in: query
description: sessionId
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: []
/contracting/basket/resources:
get:
tags:
- rest-contracting-controller
summary: Get resources
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: getResourcesUsingGET
produces:
- '*/*'
parameters:
- name: limit
in: query
description: limit
required: false
type: integer
format: int32
- name: prefix
in: query
description: prefix
required: true
type: string
- name: sessionId
in: query
description: sessionId
required: false
type: string
responses:
'200':
description: OK
schema:
type: array
items:
$ref: '#/definitions/Resource'
'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: []
/contracting/basket/save-as-template:
post:
tags:
- rest-contracting-controller
summary: Save as template
description: Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
and:- privileges_portfolio_and_profiles_management
operationId: saveAsTemplateUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: request
description: request
required: true
schema:
$ref: '#/definitions/SaveAsTemplateRequest'
- name: sessionId
in: query
description: sessionId
required: false
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/SaveAsTemplateResponse'
'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: []
/contracting/basket/templates:
get:
tags:
- rest-contracting-controller
summary: Get templates
description: |-
List of templates can be limited by main product category (if null given all templates will be returned).
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: getTemplatesUsingGET
produces:
- '*/*'
parameters:
- 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: mainProductCategory
in: query
required: false
type: string
enum:
- HARDWARE
- FIXED
- MOBILE
- SOFTWARE
- FIXED_MOBILE
- SKYPE_FOR_BUSINESS
- CENTREX
- OTHER
- name: pattern
in: query
required: false
type: string
- name: sessionId
in: query
description: sessionId
required: false
type: string
- name: to
in: query
description: Pagination parameter - end element (exluded). Default value is 20.
required: false
type: integer
format: int32
x-example: 20
responses:
'200':
description: OK
schema:
$ref: '#/definitions/PagedResult_Template_'
'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: []
/contracting/bvm/availability:
get:
tags:
- rest-business-voice-mail-controller
summary: Business voicemail availability
description: |-
Check if business voicemail service is availabe for current user.
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: getAvailabilityUsingGET
produces:
- '*/*'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OperationAvailability'
'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: []
/contracting/bvm/order:
post:
tags:
- rest-business-voice-mail-controller
summary: Order Business voicemail
description: |-
Order business voicemail. Subscriptions file validations:
| FILE ERROR CODE | CODE | DESCRIPTION | ERRORS |
|------------------------------------|-------|------------------------------------------------------------------------------- |-------------------------------------|
| `INVALID_BVM_FILE` | `400` | The file does not contain the .csv extension or it's binary content is not .csv | |
| `WRONG_COLUMN_SEPARATOR` | `400` | Wrong column separator. Required is `;` character. | |
| `MISSING_HEADER_IN_FILE` | `400` | At least one of headers was not found in the file (`mobiel nummer`, `voornaam`, `voornaam fonetisch`, `achternaam`, `achternaam fonetisch`, `geslacht`) | List of missing headers |
| `RECORDS_NOT_VALID_IN_FILE` | `400` | At least one of fields was not correct. Required fields are `mobiel nummer`, `voornaam`, `achternaam`, `geslacht`. Field `mobiel nummer` needs to match pattern: 316[0-9]{8} and `geslacht` needs to be `M` or `V`. | List of incorrect rows |
| `PHONE_NUMBERS_NOT_UNIQUE` | `400` | Given list of phone numbers was given multiple times. | List if incorrect phone numbers |
| `SUBSCRIPTIONS_NOT_FOUND` | `400` | Not all given numbers are contracted for customer. | |
| `MAXIMUM_AMOUNT_OF_ROWS_EXCEEDED` | `400` | Maximum rows size (2000) exceeded. | |
| `KGG_NUMBERS_NOT_EQUAL` | `400` | Not all contracts have the same KGG number `These numbers are set for customers and debtors. `Ordes should usually be filled for a single debtor. | |
| `ORDERING_IS_BLOCKED_FOR_CUSTOMER` | `403` | Current customer is frozen and can not order anything | |
| | `413` | Request entity too large. Max file size is 128KB | |
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: orderUsingPOST
consumes:
- multipart/form-data
produces:
- '*/*'
parameters:
- name: companyName
in: query
required: true
type: string
- name: companyNamePronunciation
in: query
required: true
type: string
- name: customerReferenceNumber
in: query
required: false
type: string
- name: subscriptionsFile
in: formData
description: subscriptionsFile
required: true
type: file
- name: voiceLanguage
in: query
required: true
type: string
enum:
- EN
- NL
- name: voiceMailMessage
in: query
required: true
type: string
- name: wishDate
in: query
required: false
type: string
format: date-time
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderSummary'
'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: []
/contracting/categories:
get:
tags:
- rest-contracting-controller
summary: Get available product categories to be contracted for currently logged user
description: |-
Possible values: mobile, fixed, hardware, other, software
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: getAvailableCategoriesUsingGET
produces:
- '*/*'
parameters:
- name: sessionId
in: query
description: sessionId
required: false
type: string
responses:
'200':
description: OK
schema:
type: array
items:
type: string
'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: []
/contracting/hardware/categories:
get:
tags:
- rest-contracting-controller
summary: Get available hardware categories
description: |-
Possible values: `handsets`, `additional mobile hardware`, `sim cards`
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: getHardwareCategoriesUsingGET
produces:
- '*/*'
parameters:
- name: sessionId
in: query
description: sessionId
required: false
type: string
responses:
'200':
description: OK
schema:
type: array
items:
type: string
'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: []
/contracting/separate-fixed-mobile:
post:
tags:
- rest-separate-fixed-mobile-controller
summary: Separate fixed-mobile subscription
description: |-
Possible errors:
| HTTP code | Error code | Description |
|------------------------------------|---------------------|----------------------------------------------------------|
| `ORDERING_IS_BLOCKED_FOR_CUSTOMER` | `403` | Current customer is frozen and can not order anything |
Required privileges (one of the following):- privileges_un-authorized_orders_creation
- privileges_orders_authorization
operationId: separateFixedMobileUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- in: body
name: request
description: request
required: true
schema:
$ref: '#/definitions/SeparateFixedMobileRequest'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/OrderConfirmation'
'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: []
/contracting/templates:
get:
tags:
- rest-template-controller
summary: Get template overview
description: Required privileges (one of the following):- privileges_portfolio_and_profiles_management
produces:
- '*/*'
parameters:
- name: groupId
in: query
description: groupId
required: true
type: integer
format: int64
responses:
'200':
description: OK
schema:
type: array
items:
$ref: '#/definitions/TemplateOverview'
'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: []
/contracting/templates/{id}:
get:
tags:
- rest-template-controller
summary: Get template details
description: Required privileges (one of the following):- privileges_portfolio_and_profiles_management
produces:
- '*/*'
parameters:
- name: id
in: path
description: id
required: true
type: integer
format: int64
responses:
'200':
description: OK
schema:
$ref: '#/definitions/TemplateDetailsWithLocations'
'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: []
/contracting/templates/{id}/delete:
post:
tags:
- rest-template-controller
summary: Remove template
description: Required privileges (one of the following):- privileges_portfolio_and_profiles_management
operationId: deleteTemplateUsingPOST
consumes:
- application/json
produces:
- '*/*'
parameters:
- 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: []
securityDefinitions:
OAuth2:
type: "oauth2"
tokenUrl: "https://api-prd.kpn.com/oauth/grip/msm/accesstoken?grant_type=client_credentials"
flow: "application"
definitions:
ErrorResponse:
type: object
properties:
transactionId:
type: string
description: transaction id of the the request
title: Transaction ID
status:
type: string
description: Status
title: Status
name:
type: string
description: Error name
title: Error name
message:
type: string
description: Error message
title: Error message
info:
type: string
description: Additional information about error
title: Info
Address:
type: object
properties:
attention:
type: string
city:
type: string
companyName:
type: string
country:
type: string
floor:
type: string
houseNumber:
type: string
location:
type: string
postalCode:
type: string
provinceOrState:
type: string
room:
type: string
street:
type: string
title: Address
Attachment:
type: object
properties:
fileName:
type: string
id:
type: integer
format: int64
title: Attachment
ChangePortingData:
type: object
properties:
asap:
type: boolean
customerNumber:
type: string
newWishDate:
type: string
format: date-time
title: ChangePortingData
# Edited old one
ContractItem:
type: object
properties:
children:
type: array
items:
$ref: '#/definitions/ContractItem'
citemBsId:
type: integer
format: int64
contractId:
type: integer
format: int64
id:
type: integer
format: int64
name:
$ref: '#/definitions/LocalizedString'
productBsId:
type: integer
format: int64
tariffPlanVariantBsId:
type: integer
format: int64
title: ContractItem
ContractServiceUpdate:
type: object
properties:
children:
type: array
items:
$ref: '#/definitions/ContractServiceUpdate'
name:
$ref: '#/definitions/LocalizedString'
newState:
type: string
enum:
- 'ON'
- 'OFF'
oldState:
type: string
enum:
- 'ON'
- 'OFF'
title: ContractServiceUpdate
ContractingSuborder:
type: object
properties:
children:
type: array
items:
$ref: '#/definitions/ContractingSuborder'
expectedDeliveryDate:
type: string
id:
type: string
imeiNumbers:
type: array
items:
type: string
mobileNumbers:
type: array
items:
type: string
multiplicity:
type: integer
format: int64
name:
$ref: '#/definitions/LocalizedString'
oneTimePriceInCents:
type: integer
format: int64
privateCopyingLevyInCents:
type: integer
format: int64
productName:
type: string
serialNumbers:
type: array
items:
type: string
status:
type: string
title: ContractingSuborder
FixedNumberPresentation:
type: object
properties:
description:
type: string
enum:
- ORGANISATION
- FIXED_NUMBER
- HUNTGROUP
- CALL_CENTER
number:
type: string
title: FixedNumberPresentation
FlexibleNumberPresentation:
type: object
properties:
defaultNumber:
type: string
fixedNumbers:
type: array
items:
$ref: '#/definitions/FixedNumberPresentation'
mobileNumberPresentation:
type: boolean
title: FlexibleNumberPresentation
Hardware:
type: object
properties:
apple:
type: boolean
contractItem:
$ref: '#/definitions/ContractItem'
imei:
type: string
product:
$ref: '#/definitions/Product'
returned:
type: boolean
samsung:
type: boolean
serialNumber:
type: string
title: Hardware
HardwareSuborder:
type: object
properties:
imeiNumber:
type: string
name:
$ref: '#/definitions/LocalizedString'
priceInCents:
type: integer
format: int64
serialNumber:
type: string
title: HardwareSuborder
LocalizedString:
type: object
properties:
en:
type: string
description: English version
nl:
type: string
description: Dutch version
title: LocalizedString
description: Text with two language versions
#Edited
#OperationAvailability:
#type: object
#properties:
#enabled:
#type: boolean
#visible:
#type: boolean
#title: OperationAvailability
OperationAvailability:
type: object
properties:
blockingOrders:
type: array
items:
$ref: '#/definitions/BlockingOrder'
enabled:
type: boolean
visible:
type: boolean
title: OperationAvailability
Order:
type: object
properties:
contractItems:
type: array
items:
$ref: '#/definitions/ContractItem'
creationDate:
type: string
customerReference:
type: string
finishDate:
type: string
id:
type: integer
format: int64
isBeingCanceled:
type: boolean
kpnReference:
type: string
msisdn:
type: string
orderedBy:
$ref: '#/definitions/OrderParticipant'
orderedFor:
$ref: '#/definitions/OrderReceiver'
portingMessage:
type: string
requiredAction:
type: string
enum:
- AUTHORIZATION
- PORT_IN_DATA_CHANGE
status:
type: string
enum:
- IN_PROGRESS
- UNAUTHORIZED
- NEW
- CLOSED
- CANCELED
- REJECTED
- DRAFT
- THIRD_PARTY
- HOLD_CUSTOMER
- WAITING
type:
$ref: '#/definitions/LocalizedString'
title: Order
OrderAuthorizer:
type: object
properties:
accountName:
type: string
firstName:
type: string
id:
type: integer
format: int64
lastName:
type: string
prefix:
type: string
spectatedBy:
type: string
title: OrderAuthorizer
OrderCancelStatus:
type: object
properties:
enabled:
type: boolean
visible:
type: boolean
title: OrderCancelStatus
#Edited
OrderDetails1:
type: object
properties:
appleDepEnrollment:
$ref: '#/definitions/OperationAvailability2'
appleDepId:
type: string
attributes:
type: object
cancelOrder:
$ref: '#/definitions/OrderCancelStatus1'
changePortingData:
$ref: '#/definitions/OperationAvailability2'
changeWishDate:
$ref: '#/definitions/OperationAvailability2'
contextAccountId:
type: integer
format: int64
contextCustomerId:
type: integer
format: int64
creationDate:
type: string
format: date-time
customerReference:
type: string
deliveryAddress:
$ref: '#/definitions/Address1'
deliveryId:
type: string
eSimConfirmationCode:
type: string
eSimEmail:
type: string
eid:
type: integer
format: int64
finishDate:
type: string
format: date-time
firstPossibleWishDate:
type: string
format: date-time
flexibleNumberPresentation:
$ref: '#/definitions/FlexibleNumberPresentation1'
id:
type: integer
format: int64
invoiceAddress:
$ref: '#/definitions/Address2'
items:
type: array
items:
$ref: '#/definitions/ContractingSuborder1'
kpnReference:
type: string
msisdn:
type: string
oneTimeCostInCents:
type: integer
format: int32
personsInvolved:
$ref: '#/definitions/OrderParticipants1'
portingCustomerNumber:
type: string
portingMessage:
type: string
recurringCostInCents:
type: integer
format: int32
registeredForAppleDep:
type: boolean
registeredForSamsungKnox:
type: boolean
requiredAction:
type: string
enum:
- AUTHORIZATION
- PORT_IN_DATA_CHANGE
returnHardware:
$ref: '#/definitions/OperationAvailability2'
samsungKnoxEnrollment:
$ref: '#/definitions/OperationAvailability2'
samsungKnoxId:
type: string
sim:
type: string
startDate:
type: string
format: date-time
status:
type: string
enum:
- CANCELED
- CLOSED
- DRAFT
- HOLD_CUSTOMER
- IN_PROGRESS
- NEW
- REJECTED
- THIRD_PARTY
- UNAUTHORIZED
- WAITING
thresholds:
type: object
description: 'Possible keys: VOICE_NATIONAL_MIN, VOICE_ROAMING_EUR, DATA_NATIONAL_MB, DATA_ROAMING_MB'
additionalProperties:
$ref: '#/definitions/Threshold1'
type:
$ref: '#/definitions/LocalizedString1'
wishDate:
type: string
format: date-time
title: OrderDetails1
OperationAvailability2:
type: object
properties:
enabled:
type: boolean
visible:
type: boolean
title: OperationAvailability2
OrderCancelStatus1:
type: object
properties:
enabled:
type: boolean
visible:
type: boolean
title: OrderCancelStatus1
Address1:
type: object
properties:
attention:
type: string
city:
type: string
companyName:
type: string
country:
type: string
floor:
type: string
houseNumber:
type: string
location:
type: string
postalCode:
type: string
provinceOrState:
type: string
room:
type: string
street:
type: string
title: Address1
FlexibleNumberPresentation1:
type: object
properties:
defaultNumber:
type: string
fixedNumbers:
type: array
items:
$ref: '#/definitions/FixedNumberPresentation'
mobileNumberPresentation:
type: boolean
title: FlexibleNumberPresentation1
Address2:
type: object
properties:
attention:
type: string
city:
type: string
companyName:
type: string
country:
type: string
floor:
type: string
houseNumber:
type: string
location:
type: string
postalCode:
type: string
provinceOrState:
type: string
room:
type: string
street:
type: string
title: Address2
ContractingSuborder1:
type: object
properties:
children:
type: array
items:
$ref: '#/definitions/ContractingSuborder'
expectedDeliveryDate:
type: string
id:
type: string
imeiNumbers:
type: array
items:
type: string
mobileNumbers:
type: array
items:
type: string
multiplicity:
type: integer
format: int64
name:
$ref: '#/definitions/LocalizedString'
oneTimePriceInCents:
type: integer
format: int64
privateCopyingLevyInCents:
type: integer
format: int64
productName:
type: string
serialNumbers:
type: array
items:
type: string
status:
type: string
title: ContractingSuborder1
OrderParticipants1:
type: object
properties:
approvedBy:
$ref: '#/definitions/OrderAuthorizer1'
orderedBy:
$ref: '#/definitions/OrderParticipant1'
receivedBy:
$ref: '#/definitions/OrderReceiver1'
title: OrderParticipants1
OrderAuthorizer1:
type: object
properties:
accountName:
type: string
firstName:
type: string
id:
type: integer
format: int64
lastName:
type: string
prefix:
type: string
spectatedBy:
type: string
title: OrderAuthorizer1
OrderParticipant1:
type: object
properties:
accountName:
type: string
firstName:
type: string
id:
type: integer
format: int64
lastName:
type: string
prefix:
type: string
title: OrderParticipant1
OrderReceiver1:
type: object
properties:
accountName:
type: string
companyName:
type: string
employeeNumber:
type: string
firstName:
type: string
id:
type: integer
format: int64
lastName:
type: string
prefix:
type: string
title: OrderReceiver1
Threshold1:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
title: Threshold1
LocalizedString1:
type: object
properties:
en:
type: string
description: English version
nl:
type: string
description: Dutch version
title: LocalizedString1
description: Text with two language versions
#Edit Ends
OrderParticipant:
type: object
properties:
accountName:
type: string
firstName:
type: string
id:
type: integer
format: int64
lastName:
type: string
prefix:
type: string
title: OrderParticipant
OrderParticipants:
type: object
properties:
approvedBy:
$ref: '#/definitions/OrderAuthorizer'
orderedBy:
$ref: '#/definitions/OrderParticipant'
receivedBy:
$ref: '#/definitions/OrderReceiver'
title: OrderParticipants
OrderReceiver:
type: object
properties:
accountName:
type: string
companyName:
type: string
employeeNumber:
type: string
firstName:
type: string
id:
type: integer
format: int64
lastName:
type: string
prefix:
type: string
title: OrderReceiver
PagedResult_Order_:
type: object
properties:
result:
type: array
description: One page of result
items:
$ref: '#/definitions/Order'
total:
type: integer
format: int32
description: Total number of all elements in collection
title: PagedResult_Order_
description: Paged list of elements
PagedResult_ReturnedHardwareServiceRequests_:
type: object
properties:
result:
type: array
description: One page of result
items:
$ref: '#/definitions/ReturnedHardwareServiceRequests'
total:
type: integer
format: int32
description: Total number of all elements in collection
title: PagedResult_ReturnedHardwareServiceRequests_
description: Paged list of elements
PagedResult_ServiceRequest_:
type: object
properties:
result:
type: array
description: One page of result
items:
$ref: '#/definitions/ServiceRequest'
total:
type: integer
format: int32
description: Total number of all elements in collection
title: PagedResult_ServiceRequest_
description: Paged list of elements
PrettyContractingSuborder:
type: object
properties:
expectedDeliveryDate:
type: string
imeiNumbers:
type: array
items:
type: string
mobileNumbers:
type: array
items:
type: string
multiplicity:
type: integer
format: int64
name:
$ref: '#/definitions/LocalizedString'
oneTimePriceInCents:
type: integer
format: int64
privateCopyingLevyInCents:
type: integer
format: int64
serialNumbers:
type: array
items:
type: string
status:
type: string
title: PrettyContractingSuborder
PrettyOrderDetails:
type: object
properties:
appleDepEnrollment:
$ref: '#/definitions/OperationAvailability'
appleDepId:
type: string
cancelOrder:
$ref: '#/definitions/OrderCancelStatus'
changePortingData:
$ref: '#/definitions/OperationAvailability'
changeWishDate:
$ref: '#/definitions/OperationAvailability'
creationDate:
type: string
format: date-time
customerReference:
type: string
deliveryAddress:
$ref: '#/definitions/Address'
deliveryId:
type: string
eSimConfirmationCode:
type: string
eSimEmail:
type: string
finishDate:
type: string
format: date-time
firstPossibleWishDate:
type: string
format: date-time
flexibleNumberPresentation:
$ref: '#/definitions/FlexibleNumberPresentation'
id:
type: integer
format: int64
invoiceAddress:
$ref: '#/definitions/Address'
items:
type: object
additionalProperties:
type: array
items:
$ref: '#/definitions/PrettyContractingSuborder'
kpnReference:
type: string
msisdn:
type: string
oneTimeCostInCents:
type: integer
format: int32
personsInvolved:
$ref: '#/definitions/OrderParticipants'
portingCustomerNumber:
type: string
portingMessage:
type: string
recurringCostInCents:
type: integer
format: int32
registeredForAppleDep:
type: boolean
registeredForSamsungKnox:
type: boolean
requiredAction:
type: string
enum:
- AUTHORIZATION
- PORT_IN_DATA_CHANGE
returnHardware:
$ref: '#/definitions/OperationAvailability'
samsungKnoxEnrollment:
$ref: '#/definitions/OperationAvailability'
samsungKnoxId:
type: string
sim:
type: string
status:
type: string
enum:
- IN_PROGRESS
- UNAUTHORIZED
- NEW
- CLOSED
- CANCELED
- REJECTED
- DRAFT
- THIRD_PARTY
- HOLD_CUSTOMER
- WAITING
thresholds:
type: object
description: 'Possible keys: VOICE_NATIONAL_MIN, VOICE_ROAMING_EUR, DATA_NATIONAL_MB, DATA_ROAMING_MB'
additionalProperties:
$ref: '#/definitions/Threshold'
type:
$ref: '#/definitions/LocalizedString'
wishDate:
type: string
format: date-time
title: PrettyOrderDetails
Product:
type: object
properties:
bsId:
type: integer
format: int64
name:
type: string
oneTimePriceInCents:
type: integer
format: int64
privateCopyingLevyInCents:
type: integer
format: int64
title: Product
ReturnedHardware:
type: object
properties:
multiplicity:
type: integer
format: int32
product:
type: string
title: ReturnedHardware
ReturnedHardwareServiceRequests:
type: object
properties:
creationDate:
type: string
id:
type: integer
format: int64
kpnReference:
type: string
parentOrderSymbol:
type: string
requestBy:
$ref: '#/definitions/OrderParticipant'
returnedHardware:
type: array
items:
$ref: '#/definitions/ReturnedHardware'
status:
type: string
enum:
- IN_PROGRESS
- UNAUTHORIZED
- NEW
- CLOSED
- CANCELED
- REJECTED
- DRAFT
- THIRD_PARTY
- HOLD_CUSTOMER
- WAITING
title: ReturnedHardwareServiceRequests
Serializable:
type: object
title: Serializable
ServiceRequest:
type: object
properties:
creationDate:
type: string
customerReference:
type: string
finishDate:
type: string
format: date-time
fixedNumber:
type: string
id:
type: integer
format: int64
isBeingCanceled:
type: boolean
kpnReference:
type: string
msisdn:
type: string
orderedBy:
$ref: '#/definitions/OrderParticipant'
orderedFor:
$ref: '#/definitions/OrderReceiver'
requiredAction:
type: string
enum:
- AUTHORIZATION
- PORT_IN_DATA_CHANGE
status:
type: string
enum:
- IN_PROGRESS
- UNAUTHORIZED
- NEW
- CLOSED
- CANCELED
- REJECTED
- DRAFT
- THIRD_PARTY
- HOLD_CUSTOMER
- WAITING
type:
$ref: '#/definitions/LocalizedString'
title: ServiceRequest
ServiceRequestDetails:
type: object
properties:
attachments:
type: array
items:
$ref: '#/definitions/Attachment'
attributes:
type: object
cancelOrder:
$ref: '#/definitions/OrderCancelStatus'
creationDate:
type: string
format: date-time
customerReference:
type: string
expectedDate:
type: string
format: date-time
finishDate:
type: string
format: date-time
flexibleNumberPresentation:
$ref: '#/definitions/FlexibleNumberPresentation'
hardwareItems:
type: array
items:
$ref: '#/definitions/HardwareSuborder'
id:
type: integer
format: int64
invoiceAddress:
$ref: '#/definitions/Address'
kpnReference:
type: string
modifiedItems:
type: array
items:
$ref: '#/definitions/ContractServiceUpdate'
newSim:
type: string
personsInvolved:
$ref: '#/definitions/OrderParticipants'
reactivate:
$ref: '#/definitions/OperationAvailability'
requiredAction:
type: string
enum:
- AUTHORIZATION
- PORT_IN_DATA_CHANGE
sim:
type: string
status:
type: string
enum:
- IN_PROGRESS
- UNAUTHORIZED
- NEW
- CLOSED
- CANCELED
- REJECTED
- DRAFT
- THIRD_PARTY
- HOLD_CUSTOMER
- WAITING
thresholds:
type: object
description: 'Possible keys: VOICE_NATIONAL_MIN, VOICE_ROAMING_EUR, DATA_NATIONAL_MB, DATA_ROAMING_MB'
additionalProperties:
$ref: '#/definitions/Threshold'
totalPriceInCents:
type: integer
format: int64
type:
$ref: '#/definitions/LocalizedString'
wishDate:
type: string
format: date-time
title: ServiceRequestDetails
#Edited
Threshold:
type: object
properties:
dailyValue:
type: number
format: float
id:
type: integer
format: int64
name:
type: string
type:
type: string
enum:
- DATA_NATIONAL_MB
- DATA_ROAMING_MB
- VOICE_NATIONAL_MIN
- VOICE_ROAMING_EUR
title: Threshold
AuthorizeRequest:
type: object
properties:
orderId:
type: integer
format: int64
title: AuthorizeRequest
BlockSimRequest:
type: object
properties:
contractId:
type: integer
format: int64
referenceNumber:
type: string
title: BlockSimRequest
BlockingOrder:
type: object
properties:
id:
type: integer
format: int64
kpnReference:
type: string
status:
type: string
enum:
- IN_PROGRESS
- UNAUTHORIZED
- NEW
- CLOSED
- CANCELED
- REJECTED
- DRAFT
- THIRD_PARTY
- HOLD_CUSTOMER
- WAITING
type:
type: string
enum:
- CONTRACTING
- SERVICE_REQUEST
title: BlockingOrder
HardwareEnrollmentRequest:
type: object
properties:
orderId:
type: integer
format: int64
description: Id of order which hardware was ordered
referenceNumber:
type: string
title: HardwareEnrollmentRequest
MoveContractRequest:
type: object
properties:
contractId:
type: integer
format: int64
destinationGroupId:
type: integer
format: int64
moveAddonBundles:
type: boolean
referenceNumber:
type: string
wishDate:
type: string
format: date-time
title: MoveContractRequest
OperationAvailability1:
type: object
properties:
blockingOrders:
type: array
items:
$ref: '#/definitions/BlockingOrder'
enabled:
type: boolean
visible:
type: boolean
title: OperationAvailability
OperationsAvailability:
type: object
properties:
blockSim:
$ref: '#/definitions/OperationAvailability'
combineFixedMobile:
$ref: '#/definitions/OperationAvailability'
contractId:
type: integer
format: int64
modify:
$ref: '#/definitions/OperationAvailability'
move:
$ref: '#/definitions/OperationAvailability'
portOut:
$ref: '#/definitions/OperationAvailability'
replaceSim:
$ref: '#/definitions/OperationAvailability'
separateFixedMobile:
$ref: '#/definitions/OperationAvailability'
terminate:
$ref: '#/definitions/OperationAvailability'
unblockSim:
$ref: '#/definitions/OperationAvailability'
title: OperationsAvailability
OrderSummary:
type: object
properties:
contextName:
type: string
creationDate:
type: string
id:
type: integer
format: int64
operation:
type: string
referenceNumber:
type: string
status:
type: string
enum:
- Failed
- Aborted
- Finished
- Suspended
- InProgress
- Waiting
- Draft
- WaitingForAuthorization
- Authorized
- Restored
- Canceled
- Scheduled
- Initialized
- Rejected
- ExternalScheduled
title: OrderSummary
PortingOutRequest:
type: object
properties:
contractId:
type: integer
format: int64
referenceNumber:
type: string
wishDate:
type: string
format: date-time
title: PortingOutRequest
ReplaceSimRequest:
type: object
properties:
confirmationCode:
type: string
contractId:
type: integer
format: int64
email:
type: string
esim:
type: boolean
newSimCardNumber:
type: string
referenceNumber:
type: string
wishDate:
type: string
format: date-time
title: ReplaceSimRequest
ReturnHardwareRequest:
type: object
properties:
email:
type: string
hardwareToReturn:
type: array
description: Contract items' ids which represent hardware (you can find them in track-and-trace-service/orders/{id}/hardware)
items:
type: integer
format: int64
orderId:
type: integer
format: int64
description: Id of order which hardware was ordered
reason:
type: string
enum:
- WRONG_DELIVERY
- DEFECTIVE_ON_ARRIVAL
- OTHER
referenceNumber:
type: string
remarks:
type: string
title: ReturnHardwareRequest
TerminateContractRequest:
type: object
properties:
contractId:
type: integer
format: int64
referenceNumber:
type: string
wishDate:
type: string
format: date-time
title: TerminateContractRequest
TerminationFee:
type: object
properties:
terminationFeeInCents:
type: integer
format: int32
title: TerminationFee
UiccidValidationData:
type: object
properties:
contractId:
type: integer
format: int64
newSimCardNumber:
type: string
title: UiccidValidationData
UnblockSimRequest:
type: object
properties:
contractId:
type: integer
format: int64
referenceNumber:
type: string
title: UnblockSimRequest
BulkOrderSummary:
type: object
properties:
orders:
type: array
items:
$ref: '#/definitions/CreatedOrder'
referenceNumber:
type: string
title: BulkOrderSummary
BusinessLocationDetails:
type: object
properties:
activeFrom:
type: string
format: date-time
activeTo:
type: string
format: date-time
contactEmail:
type: string
contactName:
type: string
contactPhoneNumber:
type: string
expectedNumberOfUsers:
type: integer
format: int64
externalAccountNumber:
type: string
primaryAddress:
$ref: '#/definitions/LocationAddress'
title: BusinessLocationDetails
Contract:
type: object
properties:
category:
type: string
extension:
type: string
firstName:
type: string
fixedNumber:
type: string
id:
type: integer
format: int64
imei:
type: string
lastName:
type: string
mobileNumber:
type: string
namePrefix:
type: string
product:
$ref: '#/definitions/LocalizedString'
productCategory:
type: string
simCardNumber:
type: string
sipAccount:
type: string
state:
type: string
enum:
- ACTIVE
- CLOSED
- ORDERED
- PENDING
- BLOCKED
title: Contract
CostCenterDetails:
type: object
properties:
number:
type: string
title: CostCenterDetails
CreateCostCenterRequestParams:
type: object
properties:
costCenterNumber:
type: string
groupId:
type: integer
format: int64
name:
type: string
title: CreateCostCenterRequestParams
CreateGroupResponse:
type: object
properties:
groupId:
type: integer
format: int64
title: CreateGroupResponse
CreateSubscriberRequestParams:
type: object
properties:
groupId:
type: integer
format: int64
referenceNumber:
type: string
subscriber:
$ref: '#/definitions/SubscriberDetailsRequestParams'
userAdditionalInfo:
$ref: '#/definitions/UserAdditionalInfo'
title: CreateSubscriberRequestParams
CreateVirtualGroupRequestParams:
type: object
properties:
groupId:
type: integer
format: int64
name:
type: string
title: CreateVirtualGroupRequestParams
CreatedOrder:
type: object
properties:
contextName:
type: string
id:
type: integer
format: int64
operation:
type: string
title: CreatedOrder
CustomerDetails:
type: object
properties:
billingOwner:
type: string
billingRetentionPeriod:
type: string
enum:
- '6'
- '25'
ckrNumber:
type: string
krnNumber:
type: string
orderFrozen:
type: boolean
orderFrozenFrom:
type: string
format: date-time
orderFrozenTo:
type: string
format: date-time
title: CustomerDetails
DebtorDetails:
type: object
properties:
activeFrom:
type: string
format: date-time
additionalInvoiceLayuot:
type: string
enum:
- CSV
- XML
appleDepId:
type: string
billingAddress:
$ref: '#/definitions/LocationAddress'
inviceFlag:
type: boolean
invoiceDistribution:
type: string
enum:
- MAIL
- EMAIL
- EINVOICE
invoiceLanguage:
type: string
enum:
- EN
- NL
krnNumber:
type: string
primaryAddress:
$ref: '#/definitions/LocationAddress'
primaryEmail:
type: string
samsungKnoxId:
type: string
title: DebtorDetails
DeleteSubscriberRequestParams:
type: object
properties:
referenceNumber:
type: string
title: DeleteSubscriberRequestParams
EditRolesRequest:
type: object
properties:
rolesToAdd:
type: array
items:
type: integer
format: int64
rolesToRemove:
type: array
items:
type: integer
format: int64
title: EditRolesRequest
GripEntity:
type: object
properties:
email:
type: string
employeeNumber:
type: string
firstName:
type: string
fixedNumber:
type: string
gender:
type: string
enum:
- MALE
- FEMALE
- OTHER
id:
type: integer
format: int64
mobileNumber:
type: string
preferredLanguage:
type: string
enum:
- EN
- NL
surname:
type: string
userName:
type: string
title: GripEntity
HierarchyItemDetails:
type: object
properties:
businessLocation:
$ref: '#/definitions/BusinessLocationDetails'
costCenter:
$ref: '#/definitions/CostCenterDetails'
customer:
$ref: '#/definitions/CustomerDetails'
debtor:
$ref: '#/definitions/DebtorDetails'
name:
type: string
path:
type: array
items:
$ref: '#/definitions/VirtualHierarchyItem'
title: HierarchyItemDetails
HierarchyItemOperationsAvailability:
type: object
properties:
createCostCenter:
$ref: '#/definitions/HierarchyOperationEnabled'
createSubscriber:
$ref: '#/definitions/HierarchyOperationEnabled'
createVirtualGroup:
$ref: '#/definitions/HierarchyOperationEnabled'
move:
$ref: '#/definitions/HierarchyOperationEnabled'
remove:
$ref: '#/definitions/HierarchyOperationEnabled'
update:
$ref: '#/definitions/HierarchyOperationEnabled'
title: HierarchyItemOperationsAvailability
HierarchyOperationEnabled:
type: object
properties:
enabled:
type: boolean
reason:
type: string
title: HierarchyOperationEnabled
HierarchyOperationsAvailability:
type: object
properties:
create:
$ref: '#/definitions/HierarchyOperationEnabled'
edit:
$ref: '#/definitions/HierarchyOperationEnabled'
move:
$ref: '#/definitions/HierarchyOperationEnabled'
remove:
$ref: '#/definitions/HierarchyOperationEnabled'
view:
$ref: '#/definitions/HierarchyOperationEnabled'
title: HierarchyOperationsAvailability
LinkSubscriberToGripRequestParams:
type: object
properties:
email:
type: string
fixedNumber:
type: string
description: Should apply to format 31XXXYYYZZZ or 0XXXYYYZZZ
gripEntityId:
type: integer
format: int64
managedEntities:
type: array
items:
type: integer
format: int64
mobileNumber:
type: string
description: Should apply to format 316XXXYYYZZ or 06XXXYYYZZ
referenceNumber:
type: string
roles:
type: array
items:
type: integer
format: int64
subscriberId:
type: integer
format: int64
title: LinkSubscriberToGripRequestParams
LocationAddress:
type: object
properties:
attention:
type: string
city:
type: string
country:
type: string
floor:
type: string
houseNumber:
type: string
location:
type: string
partyName:
type: string
poBoxNumber:
type: string
postalCode:
type: string
room:
type: string
street:
type: string
title: LocationAddress
ManagedGroupAssignmentParams:
type: object
properties:
groupIds:
type: array
items:
type: integer
format: int64
title: ManagedGroupAssignmentParams
MoveGroupsParams:
type: object
properties:
destinationGroupId:
type: integer
format: int64
movedGroupIds:
type: array
items:
type: integer
format: int64
referenceNumber:
type: string
wishDate:
type: string
format: date-time
title: MoveGroupsParams
MoveSubscriberRequestParams:
type: object
properties:
destinationGroupId:
type: integer
format: int64
referenceNumber:
type: string
wishDate:
type: string
format: date-time
title: MoveSubscriberRequestParams
OperationEnabled:
type: object
properties:
blockingOrders:
type: array
items:
$ref: '#/definitions/BlockingOrder'
enabled:
type: boolean
title: OperationEnabled
OperationState:
type: object
properties:
blocked:
type: boolean
blockingOrders:
type: array
items:
$ref: '#/definitions/BlockingOrder'
reason:
type: string
title: OperationState
PagedResult_Contract_:
type: object
properties:
result:
type: array
description: One page of result
items:
$ref: '#/definitions/Contract'
total:
type: integer
format: int32
description: Total number of all elements in collection
title: PagedResult_Contract_
description: Paged list of elements
PagedResult_Role_:
type: object
properties:
result:
type: array
description: One page of result
items:
$ref: '#/definitions/Role'
total:
type: integer
format: int32
description: Total number of all elements in collection
title: PagedResult_Role_
description: Paged list of elements
PagedResult_Subscriber_:
type: object
properties:
result:
type: array
description: One page of result
items:
$ref: '#/definitions/Subscriber'
total:
type: integer
format: int32
description: Total number of all elements in collection
title: PagedResult_Subscriber_
description: Paged list of elements
PagedResult_VirtualHierarchyItem_:
type: object
properties:
result:
type: array
description: One page of result
items:
$ref: '#/definitions/VirtualHierarchyItem'
total:
type: integer
format: int32
description: Total number of all elements in collection
title: PagedResult_VirtualHierarchyItem_
description: Paged list of elements
Role:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
selected:
type: boolean
title: Role
Subscriber:
type: object
properties:
contracts:
$ref: '#/definitions/SubscriberContracts'
employeeNumber:
type: string
firstName:
type: string
fixedNumber:
type: string
gripUser:
type: boolean
id:
type: integer
format: int64
lastName:
type: string
path:
type: array
items:
$ref: '#/definitions/VirtualHierarchyItem'
prefix:
type: string
user:
type: boolean
title: Subscriber
SubscriberContracts:
type: object
properties:
amount:
type: integer
format: int32
firstPhoneNumber:
type: string
title: SubscriberContracts
SubscriberDetails:
type: object
properties:
comments:
type: string
email:
type: string
employeeNumber:
type: string
firstName:
type: string
fixedNumber:
type: string
gender:
type: string
enum:
- MALE
- FEMALE
- OTHER
gripUser:
type: boolean
id:
type: integer
format: int64
location:
type: array
items:
type: string
mobileNumber:
type: string
path:
type: array
items:
$ref: '#/definitions/VirtualHierarchyItem'
preferredLanguage:
type: string
enum:
- EN
- NL
surname:
type: string
surnamePrefix:
type: string
user:
type: boolean
vip:
type: boolean
title: SubscriberDetails
SubscriberDetailsRequestParams:
type: object
required:
- surname
properties:
comments:
type: string
minLength: 0
maxLength: 4000
email:
type: string
employeeNumber:
type: string
minLength: 0
maxLength: 100
firstName:
type: string
minLength: 0
maxLength: 100
fixedNumber:
type: string
description: Should apply to format 31XXXYYYZZZ or 0XXXYYYZZZ
gender:
type: string
enum:
- MALE
- FEMALE
- OTHER
mobileNumber:
type: string
description: Should apply to format 316XXXYYYZZ or 06XXXYYYZZ
preferredLanguage:
type: string
enum:
- EN
- NL
surname:
type: string
minLength: 1
maxLength: 100
surnamePrefix:
type: string
minLength: 0
maxLength: 32
vip:
type: boolean
title: SubscriberDetailsRequestParams
SubscriberOperationsAvailability:
type: object
properties:
editable:
$ref: '#/definitions/OperationEnabled'
movable:
$ref: '#/definitions/OperationEnabled'
removable:
$ref: '#/definitions/OperationEnabled'
rolesEditable:
$ref: '#/definitions/OperationEnabled'
title: SubscriberOperationsAvailability
UpdateChildRequestParams:
type: object
properties:
costCenterNumber:
type: string
name:
type: string
title: UpdateChildRequestParams
UpdateSubscriberRequestParams:
type: object
properties:
referenceNumber:
type: string
subscriber:
$ref: '#/definitions/SubscriberDetailsRequestParams'
title: UpdateSubscriberRequestParams
UserAdditionalInfo:
type: object
properties:
gripEntityId:
type: integer
format: int64
managedEntities:
type: array
items:
type: integer
format: int64
roles:
type: array
items:
type: integer
format: int64
title: UserAdditionalInfo
VirtualHierarchyItem:
type: object
properties:
costCenterNumber:
type: string
email:
type: string
employeeNumber:
type: string
firstName:
type: string
id:
type: integer
format: int64
lastName:
type: string
name:
type: string
operation:
$ref: '#/definitions/OperationState'
path:
type: array
items:
$ref: '#/definitions/VirtualHierarchyItem'
prefix:
type: string
type:
type: string
enum:
- CUSTOMER
- DEBTOR
- SUBSCRIBER
- COST_CENTER
- CUSTOM_GROUP
- BUSINESS_LOCATION
title: VirtualHierarchyItem
ChangeBillingPeriodRequestParams:
type: object
properties:
period:
type: string
enum:
- '6'
- '25'
referenceNumber:
type: string
title: ChangeBillingPeriodRequestParams
Invoice:
type: object
properties:
date:
type: string
format: date-time
debtorName:
type: string
id:
type: integer
format: int64
number:
type: string
payBeforeDate:
type: string
format: date-time
totalAmountToPayInCents:
type: integer
format: int32
type:
type: string
enum:
- CREDIT_NOTE
- HARDWARE_ADJUSTMENT
- HARDWARE_INVOICE
- HARDWARE_INVOICE_ADJUSTMENT
- SERVICE_ADJUSTMENT
- SERVICE_INVOICE
- SERVICE_INVOICE_ADJUSTMENT
title: Invoice
PagedResult_Invoice_:
type: object
properties:
result:
type: array
description: One page of result
items:
$ref: '#/definitions/Invoice'
total:
type: integer
format: int32
description: Total number of all elements in collection
title: PagedResult_Invoice_
description: Paged list of elements
DeliveryAddress:
type: object
properties:
addressName:
type: string
attention:
type: string
city:
type: string
companyName:
type: string
country:
type: string
floor:
type: string
houseNumber:
type: string
id:
type: integer
format: int64
location:
type: string
postalCode:
type: string
room:
type: string
street:
type: string
title: DeliveryAddress
DeliveryAddressRequest:
type: object
required:
- city
- companyName
- country
- houseNumber
- postalCode
- street
properties:
addressName:
type: string
attention:
type: string
minLength: 0
maxLength: 35
city:
type: string
minLength: 1
maxLength: 30
companyName:
type: string
minLength: 1
maxLength: 35
country:
type: string
description: Only "NL" value is supported
floor:
type: string
minLength: 0
maxLength: 21
houseNumber:
type: string
minLength: 1
maxLength: 5
location:
type: string
minLength: 0
maxLength: 21
postalCode:
type: string
example: 1234AB
description: should contain 4 digits first and then 2 letters
room:
type: string
minLength: 0
maxLength: 20
street:
type: string
minLength: 1
maxLength: 24
title: DeliveryAddressRequest
AssignContractsToThresholdRequestParams:
type: object
properties:
contractsIds:
type: array
items:
type: integer
format: int64
title: AssignContractsToThresholdRequestParams
ContractDetails:
type: object
properties:
activationDate:
type: string
format: date-time
endDate:
type: string
format: date-time
enterpriseId:
type: string
enterpriseName:
type: string
extension:
type: string
fixedMobilePbxId:
type: string
fixedMobilePbxName:
type: string
fixedNumber:
type: string
flexibleNumberPresentation:
$ref: '#/definitions/FlexibleNumberPresentation'
hierarchyPath:
type: array
description: Location of contract in company hierarchy
items:
$ref: '#/definitions/VirtualHierarchyItem'
id:
type: integer
format: int64
imei:
type: string
individualBundle:
type: boolean
lastStatusChangeDate:
type: string
format: date-time
multiplicity:
type: integer
format: int64
name:
$ref: '#/definitions/LocalizedString'
pbxName:
type: string
phoneNumber:
type: string
pin:
type: string
puk:
type: string
simCardNumber:
type: string
sipAccount:
type: string
startDate:
type: string
format: date-time
status:
type: string
description: 'Possible values: A - active, C - closed, O - ordered, P - pending, S - blocked'
tariffPlan:
type: string
uiccid:
type: string
userGroupId:
type: string
userGroupName:
type: string
userId:
type: string
userPrincipalName:
type: string
title: ContractDetails
ContractForOperation:
type: object
properties:
firstName:
type: string
fixedNumber:
type: string
id:
type: integer
format: int64
lastName:
type: string
mobileNumber:
type: string
namePrefix:
type: string
operation:
description: 'Information if combination is possible and eventualy reason why it is not'
$ref: '#/definitions/OperationState'
title: ContractForOperation
PagedResult_ContractForOperation_:
type: object
properties:
result:
type: array
description: One page of result
items:
$ref: '#/definitions/ContractForOperation'
total:
type: integer
format: int32
description: Total number of all elements in collection
title: PagedResult_ContractForOperation_
description: Paged list of elements
RemoveThresholdParams:
type: object
properties:
thresholdIds:
type: array
items:
type: integer
format: int64
title: RemoveThresholdParams
ThresholdDetails:
type: object
properties:
changeType:
$ref: '#/definitions/OperationEnabled'
delete:
$ref: '#/definitions/OperationEnabled'
threshold:
$ref: '#/definitions/Threshold'
title: ThresholdDetails
ThresholdRequestParams:
type: object
properties:
dailyValue:
type: number
format: float
name:
type: string
type:
type: string
enum:
- VOICE_NATIONAL_MIN
- VOICE_ROAMING_EUR
- DATA_NATIONAL_MB
- DATA_ROAMING_MB
title: ThresholdRequestParams
UnassignContractsFromThresholdRequestParams:
type: object
properties:
contractsIds:
type: array
items:
type: integer
format: int64
title: UnassignContractsFromThresholdRequestParams
BasketChange:
type: object
properties:
accountGroupId:
type: integer
format: int64
description: Account group for which new contract is to be created (usually it is subscriber)
characteristicActions:
type: array
items:
$ref: '#/definitions/CharacteristicAction'
contractId:
type: integer
format: int64
fixedContractId:
type: integer
format: int64
mobileContractId:
type: integer
format: int64
orderId:
type: integer
format: int64
description: Termination order (use this field to initialize reactivation in conjuction with accountGroupId)
productActions:
type: array
items:
$ref: '#/definitions/ProductAction'
simCardNumber:
type: string
templateId:
type: string
templateIdToModify:
type: integer
format: int64
title: BasketChange
BasketSnapshot:
type: object
properties:
characteristics:
type: object
additionalProperties:
$ref: '#/definitions/Characteristic'
oldPrice:
$ref: '#/definitions/Price'
productTree:
type: array
items:
$ref: '#/definitions/ProductTreeItem'
totalPrice:
$ref: '#/definitions/Price'
title: BasketSnapshot
Characteristic:
type: object
properties:
name:
type: string
possibleValues:
type: array
items:
$ref: '#/definitions/CharacteristicRestriction'
value:
type: string
title: Characteristic
CharacteristicAction:
type: object
properties:
name:
type: string
value:
type: string
title: CharacteristicAction
CharacteristicRestriction:
type: object
properties:
caption:
$ref: '#/definitions/LocalizedString'
value:
type: string
title: CharacteristicRestriction
DeliveryAddressRequest1:
type: object
required:
- city
- companyName
- country
- houseNumber
- postalCode
- street
properties:
addressName:
type: string
attention:
type: string
minLength: 0
maxLength: 35
city:
type: string
minLength: 1
maxLength: 30
companyName:
type: string
minLength: 1
maxLength: 35
country:
type: string
description: Only "NL" value is supported
floor:
type: string
minLength: 0
maxLength: 21
houseNumber:
type: string
minLength: 1
maxLength: 5
location:
type: string
minLength: 0
maxLength: 21
postalCode:
type: string
example: 1234AB
description: should contain 4 digits first and then 2 letters
room:
type: string
minLength: 0
maxLength: 20
street:
type: string
minLength: 1
maxLength: 24
title: DeliveryAddressRequest
Error:
type: object
properties:
hint:
$ref: '#/definitions/LocalizedString'
message:
$ref: '#/definitions/LocalizedString'
title: Error
File:
type: object
properties:
absolute:
type: boolean
absoluteFile:
$ref: '#/definitions/File'
absolutePath:
type: string
canonicalFile:
$ref: '#/definitions/File'
canonicalPath:
type: string
directory:
type: boolean
executable:
type: boolean
file:
type: boolean
freeSpace:
type: integer
format: int64
hidden:
type: boolean
lastModified:
type: integer
format: int64
name:
type: string
parent:
type: string
parentFile:
$ref: '#/definitions/File'
path:
type: string
readable:
type: boolean
totalSpace:
type: integer
format: int64
usableSpace:
type: integer
format: int64
writable:
type: boolean
title: File
OneTimePrice:
type: object
properties:
activationFeeInCents:
type: number
hardwareFeeInCents:
type: number
privateCopyingLevyInCents:
type: number
title: OneTimePrice
OrderConfirmation:
type: object
properties:
orderId:
type: integer
format: int64
title: OrderConfirmation
OrderRequest:
type: object
properties:
address:
$ref: '#/definitions/DeliveryAddressRequest'
addressId:
type: integer
format: int64
referenceNumber:
type: string
wishDate:
type: string
format: date-time
title: OrderRequest
#Edited
PagedResult_Product_1:
type: object
properties:
result:
type: array
description: One page of result
items:
$ref: '#/definitions/Product1'
total:
type: integer
format: int32
description: Total number of all elements in collection
title: PagedResult_Product_1
description: Paged list of elements
Product1:
type: object
properties:
category:
type: string
enum:
- CENTREX
- FIXED
- FIXED_MOBILE
- HARDWARE
- MOBILE
- OTHER
- SKYPE_FOR_BUSINESS
- SOFTWARE
id:
type: string
name:
$ref: '#/definitions/LocalizedString'
priceInCents:
type: number
privateCopyingLevyInCents:
type: number
subcategory:
type: string
title: Product1
#Edit End
PagedResult_Product_:
type: object
properties:
result:
type: array
description: One page of result
items:
$ref: '#/definitions/Product'
total:
type: integer
format: int32
description: Total number of all elements in collection
title: PagedResult_Product_
description: Paged list of elements
PagedResult_Template_:
type: object
properties:
result:
type: array
description: One page of result
items:
$ref: '#/definitions/Template'
total:
type: integer
format: int32
description: Total number of all elements in collection
title: PagedResult_Template_
description: Paged list of elements
Price:
type: object
properties:
oneTime:
$ref: '#/definitions/OneTimePrice'
recurring:
$ref: '#/definitions/RecurringPrice'
title: Price
ProductAction:
type: object
properties:
amount:
type: integer
format: int32
productId:
type: string
type:
type: string
enum:
- PUT
- REMOVE
title: ProductAction
ProductTreeItem:
type: object
properties:
amount:
type: integer
format: int32
canOrderMoreThanOne:
type: boolean
children:
type: array
items:
$ref: '#/definitions/ProductTreeItem'
childrenSelectionStrategy:
type: string
description: Information how many children of this item can be selected
enum:
- SELECT_ONE
- SELECT_MANY
- NONE
contracted:
type: boolean
description: Is already contracted (important during contract modification)?
disabled:
type: boolean
description: Can be select / deselect?
error:
$ref: '#/definitions/Error'
id:
type: string
name:
$ref: '#/definitions/LocalizedString'
price:
$ref: '#/definitions/Price'
selected:
type: boolean
description: Is currently selected?
visible:
type: boolean
description: Should be presented to end user?
title: ProductTreeItem
RecurringPrice:
type: object
properties:
monthlyFeeInCents:
type: number
title: RecurringPrice
Resource:
type: object
properties:
address:
type: string
id:
type: integer
format: int64
title: Resource
SaveAsTemplateRequest:
type: object
properties:
groupId:
type: integer
format: int64
name:
type: string
title: SaveAsTemplateRequest
SaveAsTemplateResponse:
type: object
properties:
id:
type: integer
format: int64
title: SaveAsTemplateResponse
SeparateFixedMobileRequest:
type: object
properties:
contractId:
type: integer
format: int64
referenceNumber:
type: string
title: SeparateFixedMobileRequest
Template:
type: object
properties:
customerLevel:
type: boolean
id:
type: string
name:
type: string
product:
$ref: '#/definitions/Product'
reason:
type: string
enum:
- INVALID_PRODUCT_CONFIGURATION
- HARDWARE_IN_TEMPLATE
- NOT_SUPPORTED_PRODUCT
templateDefinitionId:
type: integer
format: int64
valid:
type: boolean
title: Template
TemplateDetailsWithLocations:
type: object
properties:
customerLevel:
type: boolean
id:
type: integer
format: int64
items:
type: array
items:
$ref: '#/definitions/TemplateItem'
locations:
type: array
items:
type: array
items:
$ref: '#/definitions/VirtualHierarchyItem'
name:
type: string
valid:
type: boolean
title: TemplateDetailsWithLocations
TemplateItem:
type: object
properties:
items:
type: array
items:
$ref: '#/definitions/TemplateItem'
option:
type: string
enum:
- NOT_AVAILABLE
- AVAILABLE
- DEFAULT_DESELECTED
- DEFAULT_SELECTED
- REQUIRED
productName:
$ref: '#/definitions/LocalizedString'
title: TemplateItem
TemplateOverview:
type: object
properties:
customerLevel:
type: boolean
id:
type: integer
format: int64
name:
type: string
valid:
type: boolean
title: TemplateOverview
# Added by API Auto Mocking Plugin