Orders
Orders are seen as billable changes to a subscription. They can apply to a new tenant with a first subscription or to an existing tenant who wants a new subscription or wants to upgrade/downgrade an existing subscription. Only system (group) administrators can launch order requests. These API are dedicated to be used by external ordering systems (CRM, BSS, marketplace, ...).
Get the list of orders
List all orders that have been processed by the system.
Request
Endpoint
GET
/api/v01/draas/{draas_instance}/public/orders
Authorization
Required role
Available for all authenticated users (API will list all orders of tenants that are related to the level of the authenticated administrator)
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
URL/Query parameters
Parameter | Type | Description | Required? |
---|---|---|---|
search | string | Used to perform a search through all searchable properties of an order that look like the string passed | no |
sort | string | Allows to specify one searchable property of an order to apply a sorting operation | no |
dir | string | When performing a sort operation, specifies the type. Allowed values are asc for ascending (default) or desc for descending | no |
page_size | integer | Used for pagination, determines the maximum number of records on one page of results (defaults to 10) | no |
next | string | A token used to get the next records in the list. This token is taken back from the results of the previous call | no |
Response
Status codes
Parameter | Description |
---|---|
200 | One or more orders found |
400 | Error while processing the request |
403 | The administrator level doesn't allow to see this order |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
results | integer | Total number of results from the query | no |
pages | integer | Total number of pages according to pagination settings | no |
page | integer | Current displayed page from the set of pages | no |
next | string | A token used for infinite scrolling, to be used in the next call to retrieve subsequent records. Only present if the list of orders has to be continued | yes |
orders | array | List containing all order objects for the tenants related to the level of the authenticated administrator | no |
Example
{
"next": "cGFnZV9zaXplPTImcGFnZT0y",
"orders": [
{
"date": "2022-08-04T10:51:23",
"id": 117,
"name": "Upgrading my plan",
"orderId": "1659610283",
"provisioned": true,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "post"
},
{
"date": "2022-08-04T10:51",
"id": 118,
"name": "Downgrading my plan",
"orderId": "1659610295",
"provisioned": true,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "delete"
}
],
"page": 1,
"pages": 2,
"results": 2
}
Get the details of an order
Returns an order details with its associated product items, quantities and provisioning status.
Request
Endpoint
GET
/api/v01/draas/{draas_instance}/public/orders/{order_id}
Authorization
Required role
Available for all authenticated users (but only available if the administrator level allows the maintenance of the related tenant)
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
order_id | integer | ID of the order in database as returned by this API |
URL/Query parameters
N/A
Response
Status codes
Parameter | Description |
---|---|
200 | Details of the order |
400 | Error while processing the request |
403 | The administrator level doesn't allow to see this order |
404 | No orders found |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
name | string | Name of the order | no |
date | string | Date and time the order has been processed | no |
orderId | string | A unique identifier of the order | no |
type | string | Type of order, post for a resource provisioning or delete for a resource removing | no |
provisioned | boolean | Flag indicating if the order has been corrctly processed for all products items and requested quantities | no |
tenant | object | A tenant object giving details about the related tenant for this order | no |
subscription | object | A subscription object giving details about the related tenant for this order | no |
orderItems | array | List containing all order item objects providing details about SKU quantities and request status | no |
Example
{
"order": {
"date": "2022-08-04T10:52:25",
"name": "Downgrading my plan",
"orderId": "1659610345",
"orderItems": [
{
"name": "NL SIP trunk pack small",
"provisioned": true,
"quantity": 10,
"sku": "MST_CP_NL"
},
{
"name": "MS Teams BE calling plan",
"provisioned": false,
"quantity": 5,
"sku": "MST_CP_BE"
},
{
"name": "Pack 10 NL Numbers",
"provisioned": true,
"quantity": 2,
"sku": "NBS_NL_10"
}
],
"provisioned": false,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "delete"
}
}
Get the list of orders (System Admin)
List all orders of tenants that are related to the system level administrators.
Request
Endpoint
GET
/api/v01/draas/{draas_instance}/orders
Authorization
Required role
orders.list
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
URL/Query parameters
Parameter | Type | Description | Required? |
---|---|---|---|
search | string | Used to perform a search through all searchable properties of an order that look like the string passed | no |
sort | string | Allows to specify one searchable property of an order to apply a sorting operation | no |
dir | string | When performing a sort operation, specifies the type. Allowed values are asc for ascending (default) or desc for descending | no |
page_size | integer | Used for pagination, determines the maximum number of records on one page of results (defaults to 10) | no |
next | string | A token used to get the next records in the list. This token is taken back from the results of the previous call | no |
Response
Status codes
Parameter | Description |
---|---|
200 | One or more orders found |
400 | Error while processing the request |
403 | The administrator level doesn't allow to see this order |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
results | integer | Total number of results from the query | no |
pages | integer | Total number of pages according to pagination settings | no |
page | integer | Current displayed page from the set of pages | no |
next | string | A token used for infinite scrolling, to be used in the next call to retrieve subsequent records. Only present if the list of orders has to be continued | yes |
orders | array | List containing all order objects for the tenants related to the level of the authenticated administrator | no |
Order Object
Parameter | Type | Description | Conditional? | Searchable? |
---|---|---|---|---|
id | integer | ID of the order in database | no | no |
name | string | Name of the order | no | yes |
date | string | Date and time the order has been processed | no | no |
orderId | string | A unique identifier of the order | no | yes |
type | string | Type of order, post for a resource provisioning or delete for a resource removing | no | yes |
provisioned | boolean | Flag indicating if the order has been corrctly processed for all products items and requested quantities | no | no |
tenant | object | A tenant object giving details about the related tenant for this order | no | no |
subscription | object | A subscription object giving details about the related tenant for this order | no | no |
Tenant Object
Parameter | Type | Description | Conditional? |
---|---|---|---|
id | integer | ID of the tenant in database | no |
name | string | Name of the tenant | no |
uuid | string | Universal unique id uniquely identifying the tenant | no |
Subscription Object
Parameter | Type | Description | Conditional? |
---|---|---|---|
id | integer | ID of the subscription in database | no |
name | string | Name of the subscription | no |
billingId | string | External ID used in CDR as billing reference, also the one used as reference for order provisioning requests | no |
Example
{
"next": "cGFnZV9zaXplPTImcGFnZT0y",
"orders": [
{
"date": "2022-08-04T10:51:23",
"id": 117,
"name": "Upgrading my plan",
"orderId": "1659610283",
"provisioned": true,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "post"
},
{
"date": "2022-08-04T10:51",
"id": 118,
"name": "Downgrading my plan",
"orderId": "1659610295",
"provisioned": true,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "delete"
}
],
"page": 1,
"pages": 2,
"results": 2
}
Get the details of an order (System Admin)
Returns an order details with its associated product items, quantities and provisioning status.
Request
Endpoint
GET
/api/v01/draas/{draas_instance}/orders/{order_id}
Authorization
Required role
orders.instance
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
order_id | integer | ID of the order in database as returned by this API |
URL/Query parameters
N/A
Response
Status codes
Parameter | Description |
---|---|
200 | Details of the order |
400 | Error while processing the request |
403 | The administrator level doesn't allow to see this order |
404 | No orders found |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
name | string | Name of the order | no |
date | string | Date and time the order has been processed | no |
orderId | string | A unique identifier of the order | no |
type | string | Type of order, post for a resource provisioning or delete for a resource removing | no |
provisioned | boolean | Flag indicating if the order has been corrctly processed for all products items and requested quantities | no |
tenant | object | A tenant object giving details about the related tenant for this order | no |
subscription | object | A subscription object giving details about the related tenant for this order | no |
orderItems | array | List containing all order item objects providing details about SKU quantities and request status | no |
Order Item Object
Parameter | Type | Description | Conditional? |
---|---|---|---|
sku | string | Stock keeping unit of the requested product | no |
name | string | Name of the requested product | no |
quantity | integer | Quantity of the requested product that was to be provided or removed | no |
provisioned | boolean | Flag indicating if the product has been correctly processed for the requested quantity | no |
Example
{
"order": [
{
"date": "2022-08-04T10:52:25",
"name": "Downgrading my plan",
"orderId": "1659610345",
"orderItems": [
{
"name": "NL SIP trunk pack small",
"provisioned": true,
"quantity": 10,
"sku": "MST_CP_NL"
},
{
"name": "MS Teams BE calling plan",
"provisioned": false,
"quantity": 5,
"sku": "MST_CP_BE"
},
{
"name": "Pack 10 NL Numbers",
"provisioned": true,
"quantity": 2,
"sku": "NBS_NL_10"
}
],
"provisioned": false,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "delete"
}
]
}
Get the list of orders (Group Admin)
List all orders of tenants that are related to the group level administrators.
Request
Endpoint
GET
/api/v01/draas/{draas_instance}/groups/{uuid}/orders
Authorization
Required role
groups.instance.orders.list
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
URL/Query parameters
Parameter | Type | Description | Required? |
---|---|---|---|
search | string | Used to perform a search through all searchable properties of an order that look like the string passed | no |
sort | string | Allows to specify one searchable property of an order to apply a sorting operation | no |
dir | string | When performing a sort operation, specifies the type. Allowed values are asc for ascending (default) or desc for descending | no |
page_size | integer | Used for pagination, determines the maximum number of records on one page of results (defaults to 10) | no |
next | string | A token used to get the next records in the list. This token is taken back from the results of the previous call | no |
Response
Status codes
Parameter | Description |
---|---|
200 | One or more orders found |
400 | Error while processing the request |
403 | The administrator level doesn't allow to see this order |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
results | integer | Total number of results from the query | no |
pages | integer | Total number of pages according to pagination settings | no |
page | integer | Current displayed page from the set of pages | no |
next | string | A token used for infinite scrolling, to be used in the next call to retrieve subsequent records. Only present if the list of orders has to be continued | yes |
orders | array | List containing all order objects for the tenants related to the level of the authenticated administrator | no |
Example
{
"next": "cGFnZV9zaXplPTImcGFnZT0y",
"orders": [
{
"date": "2022-08-04T10:51:23",
"id": 117,
"name": "Upgrading my plan",
"orderId": "1659610283",
"provisioned": true,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "post"
},
{
"date": "2022-08-04T10:51",
"id": 118,
"name": "Downgrading my plan",
"orderId": "1659610295",
"provisioned": true,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "delete"
}
],
"page": 1,
"pages": 2,
"results": 2
}
Get the details of an order (Group Admin)
Returns an order details with its associated product items, quantities and provisioning status.
Request
Endpoint
GET
/api/v01/draas/{draas_instance}/groups/{uuid}/orders/{order_id}
Authorization
Required role
groups.instance.orders.instance
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
order_id | integer | ID of the order in database as returned by this API |
URL/Query parameters
N/A
Response
Status codes
Parameter | Description |
---|---|
200 | Details of the order |
400 | Error while processing the request |
403 | The administrator level doesn't allow to see this order |
404 | No orders found |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
name | string | Name of the order | no |
date | string | Date and time the order has been processed | no |
orderId | string | A unique identifier of the order | no |
type | string | Type of order, post for a resource provisioning or delete for a resource removing | no |
provisioned | boolean | Flag indicating if the order has been corrctly processed for all products items and requested quantities | no |
tenant | object | A tenant object giving details about the related tenant for this order | no |
subscription | object | A subscription object giving details about the related tenant for this order | no |
orderItems | array | List containing all order item objects providing details about SKU quantities and request status | no |
Order Item Object
Parameter | Type | Description | Conditional? |
---|---|---|---|
sku | string | Stock keeping unit of the requested product | no |
name | string | Name of the requested product | no |
quantity | integer | Quantity of the requested product that was to be provided or removed | no |
provisioned | boolean | Flag indicating if the product has been correctly processed for the requested quantity | no |
Example
{
"order": {
"date": "2022-08-04T10:52:25",
"name": "Downgrading my plan",
"orderId": "1659610345",
"orderItems": [
{
"name": "NL SIP trunk pack small",
"provisioned": true,
"quantity": 10,
"sku": "MST_CP_NL"
},
{
"name": "MS Teams BE calling plan",
"provisioned": false,
"quantity": 5,
"sku": "MST_CP_BE"
},
{
"name": "Pack 10 NL Numbers",
"provisioned": true,
"quantity": 2,
"sku": "NBS_NL_10"
}
],
"provisioned": false,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "delete"
}
}
Get the list of orders (Distributor Admin)
List all orders of tenants that are related to the distributor level administrators.
Request
Endpoint
GET
/api/v01/draas/{draas_instance}/distributors/{uuid}/orders
Authorization
Required role
distributors.instance.orders.list
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
URL/Query parameters
Parameter | Type | Description | Required? |
---|---|---|---|
search | string | Used to perform a search through all searchable properties of an order that look like the string passed | no |
sort | string | Allows to specify one searchable property of an order to apply a sorting operation | no |
dir | string | When performing a sort operation, specifies the type. Allowed values are asc for ascending (default) or desc for descending | no |
page_size | integer | Used for pagination, determines the maximum number of records on one page of results (defaults to 10) | no |
next | string | A token used to get the next records in the list. This token is taken back from the results of the previous call | no |
Response
Status codes
Parameter | Description |
---|---|
200 | One or more orders found |
400 | Error while processing the request |
403 | The administrator level doesn't allow to see this order |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
results | integer | Total number of results from the query | no |
pages | integer | Total number of pages according to pagination settings | no |
page | integer | Current displayed page from the set of pages | no |
next | string | A token used for infinite scrolling, to be used in the next call to retrieve subsequent records. Only present if the list of orders has to be continued | yes |
orders | array | List containing all order objects for the tenants related to the level of the authenticated administrator | no |
Example
{
"next": "cGFnZV9zaXplPTImcGFnZT0y",
"orders": [
{
"date": "2022-08-04T10:51:23",
"id": 117,
"name": "Upgrading my plan",
"orderId": "1659610283",
"provisioned": true,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "post"
},
{
"date": "2022-08-04T10:51",
"id": 118,
"name": "Downgrading my plan",
"orderId": "1659610295",
"provisioned": true,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "delete"
}
],
"page": 1,
"pages": 2,
"results": 2
}
Get the details of an order (Distributor Admin)
Returns an order details with its associated product items, quantities and provisioning status.
Request
Endpoint
GET
/api/v01/draas/{draas_instance}/distributors/{uuid}/orders/{order_id}
Authorization
Required role
distributors.instance.orders.instance
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
order_id | integer | ID of the order in database as returned by this API |
URL/Query parameters
N/A
Response
Status codes
Parameter | Description |
---|---|
200 | Details of the order |
400 | Error while processing the request |
403 | The administrator level doesn't allow to see this order |
404 | No orders found |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
name | string | Name of the order | no |
date | string | Date and time the order has been processed | no |
orderId | string | A unique identifier of the order | no |
type | string | Type of order, post for a resource provisioning or delete for a resource removing | no |
provisioned | boolean | Flag indicating if the order has been corrctly processed for all products items and requested quantities | no |
tenant | object | A tenant object giving details about the related tenant for this order | no |
subscription | object | A subscription object giving details about the related tenant for this order | no |
orderItems | array | List containing all order item objects providing details about SKU quantities and request status | no |
Order Item Object
Parameter | Type | Description | Conditional? |
---|---|---|---|
sku | string | Stock keeping unit of the requested product | no |
name | string | Name of the requested product | no |
quantity | integer | Quantity of the requested product that was to be provided or removed | no |
provisioned | boolean | Flag indicating if the product has been correctly processed for the requested quantity | no |
Example
{
"order": {
"date": "2022-08-04T10:52:25",
"name": "Downgrading my plan",
"orderId": "1659610345",
"orderItems": [
{
"name": "NL SIP trunk pack small",
"provisioned": true,
"quantity": 10,
"sku": "MST_CP_NL"
},
{
"name": "MS Teams BE calling plan",
"provisioned": false,
"quantity": 5,
"sku": "MST_CP_BE"
},
{
"name": "Pack 10 NL Numbers",
"provisioned": true,
"quantity": 2,
"sku": "NBS_NL_10"
}
],
"provisioned": false,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "delete"
}
}
Get the list of orders (Reseller Admin)
List all orders of tenants that are related to the reseller level administrators.
Request
Endpoint
GET
/api/v01/draas/{draas_instance}/resellers/{uuid}/orders
Authorization
Required role
resellers.instance.orders.list
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
URL/Query parameters
Parameter | Type | Description | Required? |
---|---|---|---|
search | string | Used to perform a search through all searchable properties of an order that look like the string passed | no |
sort | string | Allows to specify one searchable property of an order to apply a sorting operation | no |
dir | string | When performing a sort operation, specifies the type. Allowed values are asc for ascending (default) or desc for descending | no |
page_size | integer | Used for pagination, determines the maximum number of records on one page of results (defaults to 10) | no |
next | string | A token used to get the next records in the list. This token is taken back from the results of the previous call | no |
Response
Status codes
Parameter | Description |
---|---|
200 | One or more orders found |
400 | Error while processing the request |
403 | The administrator level doesn't allow to see this order |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
results | integer | Total number of results from the query | no |
pages | integer | Total number of pages according to pagination settings | no |
page | integer | Current displayed page from the set of pages | no |
next | string | A token used for infinite scrolling, to be used in the next call to retrieve subsequent records. Only present if the list of orders has to be continued | yes |
orders | array | List containing all order objects for the tenants related to the level of the authenticated administrator | no |
Example
{
"next": "cGFnZV9zaXplPTImcGFnZT0y",
"orders": [
{
"date": "2022-08-04T10:51:23",
"id": 117,
"name": "Upgrading my plan",
"orderId": "1659610283",
"provisioned": true,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "post"
},
{
"date": "2022-08-04T10:51",
"id": 118,
"name": "Downgrading my plan",
"orderId": "1659610295",
"provisioned": true,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "delete"
}
],
"page": 1,
"pages": 2,
"results": 2
}
Get the details of an order (Reseller Admin)
Returns an order details with its associated product items, quantities and provisioning status.
Request
Endpoint
GET
/api/v01/draas/{draas_instance}/resellers/{uuid}/orders/{order_id}
Authorization
Required role
resellers.instance.orders.instance
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
order_id | integer | ID of the order in database as returned by this API |
URL/Query parameters
N/A
Response
Status codes
Parameter | Description |
---|---|
200 | Details of the order |
400 | Error while processing the request |
403 | The administrator level doesn't allow to see this order |
404 | No orders found |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
name | string | Name of the order | no |
date | string | Date and time the order has been processed | no |
orderId | string | A unique identifier of the order | no |
type | string | Type of order, post for a resource provisioning or delete for a resource removing | no |
provisioned | boolean | Flag indicating if the order has been corrctly processed for all products items and requested quantities | no |
tenant | object | A tenant object giving details about the related tenant for this order | no |
subscription | object | A subscription object giving details about the related tenant for this order | no |
orderItems | array | List containing all order item objects providing details about SKU quantities and request status | no |
Order Item Object
Parameter | Type | Description | Conditional? |
---|---|---|---|
sku | string | Stock keeping unit of the requested product | no |
name | string | Name of the requested product | no |
quantity | integer | Quantity of the requested product that was to be provided or removed | no |
provisioned | boolean | Flag indicating if the product has been correctly processed for the requested quantity | no |
Example
{
"order": {
"date": "2022-08-04T10:52:25",
"name": "Downgrading my plan",
"orderId": "1659610345",
"orderItems": [
{
"name": "NL SIP trunk pack small",
"provisioned": true,
"quantity": 10,
"sku": "MST_CP_NL"
},
{
"name": "MS Teams BE calling plan",
"provisioned": false,
"quantity": 5,
"sku": "MST_CP_BE"
},
{
"name": "Pack 10 NL Numbers",
"provisioned": true,
"quantity": 2,
"sku": "NBS_NL_10"
}
],
"provisioned": false,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "delete"
}
}
Get the list of orders (Tenant Admin)
List all orders of tenants that are related to the tenant level administrators.
Request
Endpoint
GET
/api/v01/draas/{draas_instance}/tenants/{uuid}/orders
Authorization
Required role
tenants.instance.orders.list
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
URL/Query parameters
Parameter | Type | Description | Required? |
---|---|---|---|
search | string | Used to perform a search through all searchable properties of an order that look like the string passed | no |
sort | string | Allows to specify one searchable property of an order to apply a sorting operation | no |
dir | string | When performing a sort operation, specifies the type. Allowed values are asc for ascending (default) or desc for descending | no |
page_size | integer | Used for pagination, determines the maximum number of records on one page of results (defaults to 10) | no |
next | string | A token used to get the next records in the list. This token is taken back from the results of the previous call | no |
Response
Status codes
Parameter | Description |
---|---|
200 | One or more orders found |
400 | Error while processing the request |
403 | The administrator level doesn't allow to see this order |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
results | integer | Total number of results from the query | no |
pages | integer | Total number of pages according to pagination settings | no |
page | integer | Current displayed page from the set of pages | no |
next | string | A token used for infinite scrolling, to be used in the next call to retrieve subsequent records. Only present if the list of orders has to be continued | yes |
orders | array | List containing all order objects for the tenants related to the level of the authenticated administrator | no |
Example
{
"next": "cGFnZV9zaXplPTImcGFnZT0y",
"orders": [
{
"date": "2022-08-04T10:51:23",
"id": 117,
"name": "Upgrading my plan",
"orderId": "1659610283",
"provisioned": true,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "post"
},
{
"date": "2022-08-04T10:51",
"id": 118,
"name": "Downgrading my plan",
"orderId": "1659610295",
"provisioned": true,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "delete"
}
],
"page": 1,
"pages": 2,
"results": 2
}
Get the details of an order (Tenant Admin)
Returns an order details with its associated product items, quantities and provisioning status.
Request
Endpoint
GET
/api/v01/draas/{draas_instance}/tenants/{uuid}/orders/{order_id}
Authorization
Required role
tenants.instance.orders.instance
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
order_id | integer | ID of the order in database as returned by this API |
URL/Query parameters
N/A
Response
Status codes
Parameter | Description |
---|---|
200 | Details of the order |
400 | Error while processing the request |
403 | The administrator level doesn't allow to see this order |
404 | No orders found |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
name | string | Name of the order | no |
date | string | Date and time the order has been processed | no |
orderId | string | A unique identifier of the order | no |
type | string | Type of order, post for a resource provisioning or delete for a resource removing | no |
provisioned | boolean | Flag indicating if the order has been corrctly processed for all products items and requested quantities | no |
tenant | object | A tenant object giving details about the related tenant for this order | no |
subscription | object | A subscription object giving details about the related tenant for this order | no |
orderItems | array | List containing all order item objects providing details about SKU quantities and request status | no |
Order Item Object
Parameter | Type | Description | Conditional? |
---|---|---|---|
sku | string | Stock keeping unit of the requested product | no |
name | string | Name of the requested product | no |
quantity | integer | Quantity of the requested product that was to be provided or removed | no |
provisioned | boolean | Flag indicating if the product has been correctly processed for the requested quantity | no |
Example
{
"order": {
"date": "2022-08-04T10:52:25",
"name": "Downgrading my plan",
"orderId": "1659610345",
"orderItems": [
{
"name": "NL SIP trunk pack small",
"provisioned": true,
"quantity": 10,
"sku": "MST_CP_NL"
},
{
"name": "MS Teams BE calling plan",
"provisioned": false,
"quantity": 5,
"sku": "MST_CP_BE"
},
{
"name": "Pack 10 NL Numbers",
"provisioned": true,
"quantity": 2,
"sku": "NBS_NL_10"
}
],
"provisioned": false,
"subscription": {
"billingId": "cbur::order::subscription",
"id": 463,
"name": "Upgrading my plan"
},
"tenant": {
"id": 259,
"name": "CBUR Test Tenant",
"uuid": "test-tenant-cbur-id"
},
"type": "delete"
}
}
Submit a new order for providing resources
This endpoint allows to create a new order with its SKU list and required quantities for providing products.
Request
Endpoint
POST
/api/v01/draas/{draas_instance}/public/orders/tenants/{uuid}/subscriptions/{billing_id}
Authorization
Required role
public.product.create (only allowed to system administrators)
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
uuid | string | A unique ID identifying the tenant for which you want to provide new products as defined in the external requesting system |
billing_id | integer | Billing ID of an existing subscription as defined in the external requesting system |
URL/Query parameters
N/A
Body
Parameter | Type | Description | Required |
---|---|---|---|
name | string | Name of the product | yes |
products | array | List containing all product quantities defining the order | yes |
Example
{
"name": "Upgrading my plan",
"products": [
{
"sku": "MST_CP_NL",
"quantity": 10
},
{
"sku": "MST_CP_BE",
"quantity": 5
},
{
"sku": "NBS_NL_10",
"quantity": 2
}
]
}
Response
Status codes
Parameter | Description |
---|---|
200 | The order was correctly processed (see details of response for complete status report) |
400 | Error while processing the order |
403 | The API consumer doesn't have sufficient rights to perform this action |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
id | integer | ID of the order in database | no |
orderId | string | A unique identifier of the order | no |
results | array | List containing all result objects providing details about SKU product quantities and request status | no |
Example
{
"id": 121,
"orderId": "1659691233",
"results": [
{
"details": [
{
"provisioned": true,
"quantity": 10,
"subType": "msTeamsUsers",
"type": "license"
},
{
"id": 14,
"provisioned": true,
"quantity": 10,
"type": "entitlement"
}
],
"provisioned": true,
"quantity": 10,
"sku": "MST_CP_NL"
},
{
"details": [
{
"provisioned": true,
"quantity": 5,
"subType": "msTeamsUsers",
"type": "license"
},
{
"id": 1,
"provisioned": true,
"quantity": 5,
"type": "entitlement"
}
],
"provisioned": true,
"quantity": 5,
"sku": "MST_CP_BE"
},
{
"details": [
{
"id": 3,
"provisioned": true,
"quantity": 20,
"type": "entitlement"
}
],
"provisioned": true,
"quantity": 2,
"sku": "NBS_NL_10"
}
]
}
Submit a new order for providing resources
This endpoint allows to create a new order with its SKU list and required quantities for providing products.
Request
Endpoint
POST
/api/v01/draas/{draas_instance}/tenants/{uuid}/subscriptions/{subscription_id}/orders
Authorization
Required role
tenants.instance.subscriptions.instance.orders.create (not allowed to system administrators)
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
uuid | string | A unique ID identifying the tenant for which you want to provide new products as defined in the external requesting system |
sub_id | string | A system generated ID identifying the subscription for which you want to get the licenses |
URL/Query parameters
N/A
Body
Parameter | Type | Description | Required |
---|---|---|---|
name | string | Name of the product | yes |
products | array | List containing all product quantities defining the order | yes |
Product Quantity Object
Parameter | Type | Description | Required |
---|---|---|---|
sku | string | Stock keeping unit of the requested product | yes |
quantity | integer | Quantity of the requested product that has to be provided | yes |
Example
{
"name": "Upgrading my plan",
"products": [
{
"sku": "MST_CP_NL",
"quantity": 10
},
{
"sku": "MST_CP_BE",
"quantity": 5
},
{
"sku": "NBS_NL_10",
"quantity": 2
}
]
}
Response
Status codes
Parameter | Description |
---|---|
200 | The order was correctly processed (see details of response for complete status report) |
400 | Error while processing the order |
403 | The API consumer doesn't have sufficient rights to perform this action |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
id | integer | ID of the order in database | no |
orderId | string | A unique identifier of the order | no |
results | array | List containing all result objects providing details about SKU product quantities and request status | no |
Result Object
Parameter | Type | Description | Conditional? |
---|---|---|---|
sku | string | Stock keeping unit of the requested product | no |
quantity | integer | Quantity of the requested product that was to be provided or removed | no |
provisioned | boolean | Flag indicating if the product has been correctly processed for the requested quantity. Set to false if one of the underlying product item has been failing during provisioning | no |
details | array | List containing all detail objects providing details about every SKU product items quantities and request status | no |
Detail Object
Parameter | Type | Description | Conditional? |
---|---|---|---|
type | string | Type of product item, may be license for Fusion specific licenses or entitlement for number entitlement | no |
subType | string | In case the type is a license, sub-type may take msTeamsUsers or sipTrunkChannels values | yes |
id | string | In case the type is an entitlement, this ID points to the right reference in our numbers management system | yes |
quantity | integer | The final quantity of the specified product item, resulting from product order quantity times product item defined quantity | no |
provisioned | boolean | Flag indicating if the product item has been correctly processed for the requested quantity | no |
Example
{
"id": 121,
"orderId": "1659691233",
"results": [
{
"details": [
{
"provisioned": true,
"quantity": 10,
"subType": "msTeamsUsers",
"type": "license"
},
{
"id": 14,
"provisioned": true,
"quantity": 10,
"type": "entitlement"
}
],
"provisioned": true,
"quantity": 10,
"sku": "MST_CP_NL"
},
{
"details": [
{
"provisioned": true,
"quantity": 5,
"subType": "msTeamsUsers",
"type": "license"
},
{
"id": 1,
"provisioned": true,
"quantity": 5,
"type": "entitlement"
}
],
"provisioned": true,
"quantity": 5,
"sku": "MST_CP_BE"
},
{
"details": [
{
"id": 3,
"provisioned": true,
"quantity": 20,
"type": "entitlement"
}
],
"provisioned": true,
"quantity": 2,
"sku": "NBS_NL_10"
}
]
}
Submit a new order for removing resources
This endpoint allows to create a new order with its SKU list and required quantities for removing products.
Request
Endpoint
DELETE
/api/v01/draas/{draas_instance}/public/orders/tenants/{uuid}/subscriptions/{billing_id}
Authorization
Required role
public.order.delete (not allowed to system administrators)
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
uuid | string | A unique ID identifying the tenant for which you want to remove existing products as defined in the external requesting system |
billing_id | integer | Billing ID of an existing subscription as defined in the external requesting system |
URL/Query parameters
N/A
Body
Parameter | Type | Description | Required |
---|---|---|---|
name | string | Name of the product | yes |
products | array | List containing all product quantities defining the order | yes |
Example
{
"name": "Downgrading my plan",
"products": [
{
"sku": "MST_CP_NL",
"quantity": 10
},
{
"sku": "MST_CP_BE",
"quantity": 5
},
{
"sku": "NBS_NL_10",
"quantity": 2
}
]
}
Response
Status codes
Parameter | Description |
---|---|
200 | The order was correctly processed (see details of response for complete status report) |
400 | Error while processing the order |
403 | The API consumer doesn't have sufficient rights to perform this action |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
id | integer | ID of the order in database | no |
orderId | string | A unique identifier of the order | no |
results | array | List containing all result objects providing details about SKU product quantities and request status | no |
Example
{
"id": 122,
"orderId": "1659691400",
"results": [
{
"details": [
{
"provisioned": true,
"quantity": 10,
"subType": "msTeamsUsers",
"type": "license"
},
{
"id": 14,
"provisioned": true,
"quantity": 10,
"type": "entitlement"
}
],
"provisioned": true,
"quantity": 10,
"sku": "MST_CP_NL"
},
{
"details": [
{
"provisioned": true,
"quantity": 5,
"subType": "msTeamsUsers",
"type": "license"
},
{
"id": 1,
"provisioned": true,
"quantity": 5,
"type": "entitlement"
}
],
"provisioned": true,
"quantity": 5,
"sku": "MST_CP_BE"
},
{
"details": [
{
"id": 3,
"provisioned": true,
"quantity": 20,
"type": "entitlement"
}
],
"provisioned": true,
"quantity": 2,
"sku": "NBS_NL_10"
}
]
}
Submit a new order for removing resources
This endpoint allows to create a new order with its SKU list and required quantities for removing products.
Request
Endpoint
DELETE
/api/v01/draas/{draas_instance}/tenants/{uuid}/subscriptions/{subscription_id}/orders
Authorization
Required role
tenants.instance.subscriptions.instance.orders.delete (not allowed to system administrators)
Path Parameters
Parameter | Type | Description |
---|---|---|
draas_instance | string | See common parameters |
uuid | string | A unique ID identifying the tenant for which you want to remove existing products as defined in the external requesting system |
billing_id | integer | Billing ID of an existing subscription as defined in the external requesting system |
URL/Query parameters
N/A
Body
Parameter | Type | Description | Required |
---|---|---|---|
name | string | Name of the product | yes |
products | array | List containing all product quantities defining the order | yes |
Example
{
"name": "Downgrading my plan",
"products": [
{
"sku": "MST_CP_NL",
"quantity": 10
},
{
"sku": "MST_CP_BE",
"quantity": 5
},
{
"sku": "NBS_NL_10",
"quantity": 2
}
]
}
Response
Status codes
Parameter | Description |
---|---|
200 | The order was correctly processed (see details of response for complete status report) |
400 | Error while processing the order |
403 | The API consumer doesn't have sufficient rights to perform this action |
500 | Uncatched error on server side |
Success
Body
Parameter | Type | Description | Conditional? |
---|---|---|---|
id | integer | ID of the order in database | no |
orderId | string | A unique identifier of the order | no |
results | array | List containing all result objects providing details about SKU product quantities and request status | no |
Example
{
"id": 122,
"orderId": "1659691400",
"results": [
{
"details": [
{
"provisioned": true,
"quantity": 10,
"subType": "msTeamsUsers",
"type": "license"
},
{
"id": 14,
"provisioned": true,
"quantity": 10,
"type": "entitlement"
}
],
"provisioned": true,
"quantity": 10,
"sku": "MST_CP_NL"
},
{
"details": [
{
"provisioned": true,
"quantity": 5,
"subType": "msTeamsUsers",
"type": "license"
},
{
"id": 1,
"provisioned": true,
"quantity": 5,
"type": "entitlement"
}
],
"provisioned": true,
"quantity": 5,
"sku": "MST_CP_BE"
},
{
"details": [
{
"id": 3,
"provisioned": true,
"quantity": 20,
"type": "entitlement"
}
],
"provisioned": true,
"quantity": 2,
"sku": "NBS_NL_10"
}
]
}