Skip to content

Distributors


A distributor refers to a "first level" indirect sales partner who resells the services offered by the Fusion platform. A distributor can either sell directly to end customers (referred to as tenants) or through a reseller ("second level" indirect sales partner).

API Authorization

These APIs are only available for system administrators and group administrators.

Get a list of distributors

List all distributors created on the platform.

Request

Endpoint

GET /api/v01/draas/{draas_instance}/distributors

Authorization

Required role

distributors.list

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters

URL/Query parameters

ParameterTypeDescriptionRequired?
searchstringUsed to perform a search through all searchable properties of a distributor that look like the string passedno
sortstringAllows to specify one searchable property of a distributor to apply a sorting operationno
dirstringWhen performing a sort operation, specifies the type. Allowed values are asc for ascending (default) or desc for descendingno
parentstringSpecify a group UUID. Only distributors served by this specific UUID parent group are returnedyes / no
page_sizeintegerUsed for pagination, determines the maximum number of records on one page of results (defaults to 10)no
nextstringA token used to get the next records in the list. This token is taken back from the results of the previous callno

Use of parent query parameter

If logged as a system administrator the API consumer has to provide a parent UUID, otherwise the system doesn't know to which parent entity the request reports to.

Response

Status codes

ParameterDescription
200One or more distributors found
400Error while processing the request
403The API consumer doesn't have sufficient rights to perform this action
404No distributor found
500Uncatched error on server side

Success

Body
ParameterTypeDescriptionConditional?
resultsintegerTotal number of results from the queryno
pagesintegerTotal number of pages according to pagination settingsno
pageintegerCurrent displayed page from the set of pagesno
nextstringA token used for infinite scrolling, to be used in the next call to retrieve subsequent records. Only present if the list of distributors has to be continuedyes
distributorsarrayList containing all distributor objects in the systemno
Distributor Object
ParameterTypeDescriptionConditional?Searchable?
uuidstringUniversal unique id uniquely identifying the distributornono
namestringName the distributornoyes
billingIdstringExternal ID used in CDR as billing reference (unique per Group).noyes
statusstringCurrent status of the distributoryesno
Example
json
{
  "results": 2,
  "pages": 15,
  "page": 1,
  "next": "cGFyZW50PTNhNGFmYmQzLWYxZDctNGY4NS1iZDU5LWE0MDU2N2YyMDYzOSZwYWdlPTI=",
  "distributors": [
    {
      "uuid": "19cb4904-2b26-4982-8706-dfac061c07af",
      "name": "Netaxis NL Distributor",
      "billingId": "cloudblue::distributor::12",
    },
    {
      "uuid": "a5c1b6da-ba77-4e8e-af15-f8b27d46c9ce",
      "name": "CBUR Distributor Test POST",
      "billingId": "cloudblue::distributor::33",
      "status": "suspended"
    }
  ]
}

Get a specific distributor

The following endpoint gives the details of a single distributor.

Request

Endpoint

GET /api/v01/draas/{draas_instance}/distributors/{uuid}

Authorization

Required role

distributors.instance.read

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated universal unique ID (UUID) identifying the distributor for which you want to get its details

URL/Query parameters

N/A

Response

Status codes

ParameterDescription
200The distributor was found
400Error while processing the request
403The API consumer doesn't have sufficient rights to perform this action
404No distributor found with this uuid
500Uncatched error on server side

Success

Body
ParameterTypeDescriptionConditional?
uuidstringUniversal unique id uniquely identifying the distributorno
namestringName the distributorno
billingIdstringExternal ID used in CDR as billing reference (unique per Group).no
statusstringCurrent status of the distributoryes
markupsarrayList of markups defined for the distributor, sorted on startDate from nearest to oldest. See markup for complete detailsyes
nbOfResellersintegerNumber of resellers linked to this distributorno
nbOfDirectTenantsintegerNumber of tenants directly linked to this distributor (not through a reseller)no
Example
json
{
  "uuid": "19cb4904-2b26-4982-8706-dfac061c07af",
  "name": "Netaxis NL Distributor",
  "billingId": "cloudblue::distributor::12",
  "markups": [
    {
      "markup": "2.5",
      "startDate": "2022-07-01T14:13:53.721970"
    },
    {
      "markup": "0.5",
      "startDate": "2022-07-01T14:13:22.749137"
    }
  ],
  "nbOfResellers": 0,
  "nbOfDirectTenants": 0
}

Create a new distributor

Use this endpoint to create a new distributor on the platform.

Request

Endpoint

POST /api/v01/draas/{draas_instance}/distributors

Authorization

Required role

distributors.create

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters

URL/Query parameters

N/A

Body
ParameterTypeDescriptionRequired?
namestringName the distributoryes
ownerobjectSee owner. If not provided, the distributor will be directly attached to the level to which the user who creates the distributor belongs to. E.g. when a group administrator creates the distributor, the distributor will be directly attached to the group in question.yes / no
billingIdstringExternal ID used in CDR as billing reference (unique per Group).yes
markupfloatlatest active markup defined for the distributor in percentagesno
adminEmailstringEmail of an administrator for this distributor. If present, it will create an administrator as described by this APIno

Use of owner body parameter

If logged as a system administrator the API consumer has to provide a group owner UUID, otherwise the system doesn't know to which group entity the distributor is linked to.

Example

json
{

  "name": "CBUR Test POST",
  "owner": {
    "type": "group",
    "uuid": "a0e637cd-d4a0-49bb-bbe3-141826ea5a42"
  },
  "billingId": "cloudblue::distributor::666",
  "markup": 66.0,
  "adminEmail": "john.doe@netaxis.be"
}

Response

Status codes

ParameterDescription
200The distributor was created successfully
400Error while creating the distributor
500Uncatched error on server side

Success

Body
ParameterTypeDescriptionConditional?
uuidstringUniversal unique id uniquely identifying the distributorno
Example
json
{
  "uuid": "e4630c48-46be-416b-b09f-5e2b3a598e0c"
}

Modify an existing distributor

Update the details of a given distributor

Request

Endpoint

PUT /api/v01/draas/{draas_instance}/distributors/{uuid}

Authorization

Required role

distributors.instance.update

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringSystem generated universal unique ID (UUID) identifying the distributor for which you want to get its details

URL/Query parameters

N/A

Body
ParameterTypeDescriptionRequired?
namestringNew name for the distributorno
billingIdstringNew external ID used in CDR as billing reference (unique per Group).no
markupfloatNew markup for the distributor in percentagesno

Example

json
{
  "markup": 10.5
}

Response

Status codes

ParameterDescription
200The distributor was updated successfully
400Error while updating the distributor
403The API consumer doesn't have sufficient rights to perform this action
500Uncatched error on server side

Success

Body
ParameterTypeDescriptionConditional?
uuidstringUniversal unique id uniquely identifying the distributorno
Example
json
{
  "uuid": "e4630c48-46be-416b-b09f-5e2b3a598e0c"
}

Delete a distributor

Delete a distributor

Distributors must be empty

It is not possible to delete distributors that still have resellers or tenants attached. Proceed with care because this will also delete all related price markups related to the tenant

Request

Endpoint

DELETE /api/v01/draas/{draas_instance}/distributors/{uuid}

Authorization

Required role

distributors.instance.delete

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringSystem generated universal unique ID (UUID) identifying the distributor which you would like to delete

URL/Query parameters

N/A

Body

N/A

Response

Status codes

ParameterDescription
200The distributor was deleted successfully. If the distributor didn't exist, the delete will be considered as being executed successfully
400Error while deleting the distributor
403The API consumer doesn't have sufficient rights to perform this action
500Uncatched error on server side

Success

Body
ParameterTypeDescriptionConditional?
uuidstringUniversal unique id uniquely identifying the distributor that has been deletedno
Example
json
{
  "uuid": "e4630c48-46be-416b-b09f-5e2b3a598e0c"
}

Modify the suspension profile

Update the suspension profile for an existing distributor

Request

Endpoint

PUT /api/v01/draas/{draas_instance}/distributors/{uuid}/suspension_profile

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated universal unique ID (UUID) identifying the distributor for which you want to modify its suspension profile

URL/Query parameters

N/A

Body
ParameterTypeDescriptionRequired?
suspensionProfileIdintegerIndex of the suspension profile as returned by this endpoint or null if you want to remove any suspensionyes

Example

json
{
  "suspensionProfileId": 2
}

Response

Status codes

ParameterDescription
200The suspension profile was updated successfully
400Error while updating the suspension profile
403The API consumer doesn't have sufficient rights to perform this action
500Uncatched error on server side

Success

Body
ParameterTypeDescriptionConditional?
uuidstringUniversal unique id uniquely identifying the distributorno
Example
json
{
  "uuid": "e4630c48-46be-416b-b09f-5e2b3a598e0c"
}

Create an administrator account for a distributor structure

Create an administrator account for an existing distributor. The account will be created using an e-mail as user reference. At successful creation, an e-mail will be sent to the newly created administrator address, asking her/him to follow a link to create a valid password and validate the account.

Request

Endpoint

POST /api/v01/draas/{draas_instance}/distributors/{uuid}/admins

Authorization

Required role

distributors.instance.admins.create

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated universal unique ID (UUID) identifying the distributor for which you want to create an administrator account

URL/Query parameters

N/A

Body
ParameterTypeDescriptionRequired?
adminEmailstringA valid e-mail address owned by the administratoryes
firstNamestringFirst name of the administratorno
lastNamestringLast name of the administratorno
mobilestringMobile phone number of the administratorno

Example

json
{
  "adminEmail": "john.doe@netaxis.be",
  "firstName": "John",
  "lastName": "Doe",
  "mobile": "+33613575607"
}

Response

Status codes

ParameterDescription
200The administrator account was successfully created
400Error while creating the administrator account, the specified e-mail address already exists in the system
403The API consumer doesn't have sufficient rights to perform this action
500Uncatched error on server side

Success

Body
ParameterTypeDescriptionConditional?
idnumberInternal ID of newly created administrator accountno
Example
json
{
  "id": 86
}

Modify an administrator account for a distributor structure

Modify an existing administrator account for a distributor. As the e-mail is the administrator reference, it cannot be modified. In case this is needed, administrator has to be deleted and re-created with the new e-mail reference.

Request

Endpoint

PUT /api/v01/draas/{draas_instance}/distributors/{uuid}/admins/{username}

Authorization

Required role

distributors.instance.admins.update

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated universal unique ID (UUID) identifying the distributor for which you want to create an administrator account
usernamestringThe username that identifies the administrator. This should be the administrator e-mail

URL/Query parameters

N/A

Body
ParameterTypeDescriptionRequired?
firstNamestringFirst name of the administratorno
lastNamestringLast name of the administratorno
mobilestringMobile phone number of the administratorno
adminEmailstringThe email of the administratoryes
force_resetbooleanForces the password resetyes

Example

json
{
  "firstName": "John",
  "lastName": "Doe",
  "mobile": "+33613575607",
  "adminEmail": "john.doe@netaxis.be"
}

Response

Status codes

ParameterDescription
200The administrator account was successfully modified
400Error while modifying the administrator account
403The API consumer doesn't have sufficient rights to perform this action
500Uncatched error on server side

Success

Body
ParameterTypeDescriptionConditional?
idnumberInternal ID of modified administrator accountno
Example
json
{
  "id": 86
}

Delete an administrator account for a distributor structure

Delete an existing administrator account from a distributor.

Request

Endpoint

DELETE /api/v01/draas/{draas_instance}/distributors/{uuid}/admins/{username}

Authorization

Required role

distributors.instance.admins.delete

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated universal unique ID (UUID) identifying the distributor for which you want to create an administrator account
usernamestringThe username that identifies the administrator. This should be the administrator e-mail

URL/Query parameters

N/A

Body

N/A

Response

Status codes

ParameterDescription
204The administrator account was successfully deleted
403The API consumer doesn't have sufficient rights to perform this action
500Uncatched error on server side

Success

Body

N/A

Send a welcome email to a distributor admin

Use this endpoint to send a welcome email to a distributor admin.

Request

Endpoint

POST /api/v01/draas/{draas_instance}/distributors/{uuid}/admins/welcome

Authorization

Required role

distributors.instance.admins.welcome.create

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated unique ID (UUID) identifying the distributor

URL/Query parameters

N/A

Body
ParameterTypeDescriptionRequired?
adminEmailstringEmail of an administrator for this distributoryes

Example

json
{
  "adminEmail": "john.doe@netaxis.be"
}

Response

Status codes

ParameterDescription
200The welcome email has been sent successfully
400Error while sending the welcome email
500Uncatched error on server side

Success

Body

N/A

Example

N/A

Get the list of pstn usages

The following endpoint gives the list of existing pstn usages for the owner group of the given distributor.

Request

Endpoint

GET /api/v01/draas/{draas_instance}/distributors/{uuid}/configurations/voice_routing/pstn_usages

Authorization

Required role

distributors.instance.configurations.voice_routing.pstn_usages.list

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated unique ID (UUID) identifying the distributor from which you want to read properties

URL/Query parameters

ParameterTypeDescriptionRequired?
searchstringUsed to perform a search through all searchable properties that look like the string passedno
sortstringAllows to specify one searchable property of an order to apply a sorting operationno
dirstringWhen performing a sort operation, specifies the type. Allowed values are asc for ascending (default) or desc for descendingno
pageintegerUsed for pagination, determines the current page to be shown (defaults to 1)no
page_sizeintegerUsed for pagination, determines the maximum number of records on one page of results (defaults to 10)no
nextstringA token used to get the next records in the list. This token is taken back from the results of the previous callno

Response

Status codes

ParameterDescription
200One or more pstn usages found
400Error while processing the request
403The API consumer doesn't have sufficient rights to perform this action
404No of the pstn usage found
500Uncatched error on server side

Success

Body
ParameterTypeDescriptionConditional?
pstnUsagesarrayList containing all pstn usage objects of the groupno
resultsstringTotal count of results that match your queryno
pageSizestringResults are not provided all at once. This parameter indicates how many results are returned per page.no
pagesstringTotal count of result pages that are availableno
pagestringID of the page that is currently returnedno
nextstringA token generated as long as there are still pages to display in the list. This token may be used in a subsequent call to get the next page. It contains all query parameter from the request so they may be omitted in subsequent callyes
PSTN Usage Object
ParameterTypeDescriptionConditional?Searchable?
idintegerIndex of the pstn usagenono
namestringName of the pstn usagenoyes
Example
json
{
  "page": 1,
  "pageSize": 10,
  "pages": 1,
  "pstnUsages": [
    {
      "id": 21,
      "name": "PSTN Test name"
    },
    {
      "id": 8,
      "name": "PSTN-Usage-DRAAS"
    }
  ],
  "results": 2
}

Get the list of voice routes

The following endpoint gives the list of existing voice routes for the owner group of the given distributor.

Request

Endpoint

GET /api/v01/draas/{draas_instance}/distributors/{uuid}/configurations/voice_routing/voice_routes

Authorization

Required role

distributors.instance.configurations.voice_routing.voice_routes.list

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated unique ID (UUID) identifying the distributor from which you want to read properties

URL/Query parameters

ParameterTypeDescriptionRequired?
searchstringUsed to perform a search through all searchable properties that look like the string passedno
sortstringAllows to specify one searchable property of an order to apply a sorting operationno
dirstringWhen performing a sort operation, specifies the type. Allowed values are asc for ascending (default) or desc for descendingno
pageintegerUsed for pagination, determines the current page to be shown (defaults to 1)no
page_sizeintegerUsed for pagination, determines the maximum number of records on one page of results (defaults to 10)no
nextstringA token used to get the next records in the list. This token is taken back from the results of the previous callno

Response

Status codes

ParameterDescription
200One or more voice routes found
400Error while processing the request
403The API consumer doesn't have sufficient rights to perform this action
404No of the voice route found
500Uncatched error on server side

Success

Body
ParameterTypeDescriptionConditional?
voiceRoutesarrayList containing all voice route objects of the groupno
resultsstringTotal count of results that match your queryno
pageSizestringResults are not provided all at once. This parameter indicates how many results are returned per page.no
pagesstringTotal count of result pages that are availableno
pagestringID of the page that is currently returnedno
nextstringA token generated as long as there are still pages to display in the list. This token may be used in a subsequent call to get the next page. It contains all query parameter from the request so they may be omitted in subsequent callyes
Voice Route Object
ParameterTypeDescriptionConditional?Searchable?
idintegerIndex of the voice routenono
namestringName of the voice routenoyes
patternstringPatternnono
priorityintegerPrioritynono
pstnUsagesarrayArray of pstn usage objects connected connected to the voice routenono
Example
json
{
  "page": 1,
  "pageSize": 10,
  "pages": 1,
  "results": 2,
  "voiceRoutes": [
    {
      "id": 7,
      "name": "VR-DRaaS",
      "pattern": ".*",
      "priority": 1,
      "pstnUsages": []
    },
    {
      "id": 21,
      "name": "VR-DRaaS New",
      "pattern": ".*",
      "priority": 5,
      "pstnUsages": [
        {
          "id": 8,
          "name": "DRaaS-New-PSTN-Usage 3"
        },
        {
          "id": 21,
          "name": "PSTN Test name"
        }
      ]
    }
  ]
}

Get the list of voice routing policies

The following endpoint gives the list of existing voice routing policies for the owner group of the given distributor.

Request

Endpoint

GET /api/v01/draas/{draas_instance}/distributors/{uuid}/configurations/voice_routing/voice_routing_policies

Authorization

Required role

distributors.instance.configurations.voice_routing.voice_routing_policies.list

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated unique ID (UUID) identifying the distributor from which you want to read properties

URL/Query parameters

ParameterTypeDescriptionRequired?
searchstringUsed to perform a search through all searchable properties that look like the string passedno
sortstringAllows to specify one searchable property of an order to apply a sorting operationno
dirstringWhen performing a sort operation, specifies the type. Allowed values are asc for ascending (default) or desc for descendingno
pageintegerUsed for pagination, determines the current page to be shown (defaults to 1)no
page_sizeintegerUsed for pagination, determines the maximum number of records on one page of results (defaults to 10)no
nextstringA token used to get the next records in the list. This token is taken back from the results of the previous callno

Response

Status codes

ParameterDescription
200One or more voice routing policies found
400Error while processing the request
403The API consumer doesn't have sufficient rights to perform this action
404No of the voice routing policies found
500Uncatched error on server side

Success

Body
ParameterTypeDescriptionConditional?
voiceRoutingPoliciesarrayList containing all voice routing policy objects of the groupno
resultsstringTotal count of results that match your queryno
pageSizestringResults are not provided all at once. This parameter indicates how many results are returned per page.no
pagesstringTotal count of result pages that are availableno
pagestringID of the page that is currently returnedno
nextstringA token generated as long as there are still pages to display in the list. This token may be used in a subsequent call to get the next page. It contains all query parameter from the request so they may be omitted in subsequent callyes
Voice Routing Policy Object
ParameterTypeDescriptionConditional?Searchable?
idintegerIndex of the voice routing policynono
namestringName of the voice routing policynoyes
pstnUsagesarrayArray of pstn usage objects connected to the voice routing policynono
Example
json
{
  "page": 1,
  "pageSize": 10,
  "pages": 1,
  "results": 1,
  "voiceRoutingPolicies": [
    {
      "id": 7,
      "name": "World-DRaaS",
      "pstnUsages": [
        {
          "id": 8,
          "name": "DRaaS-New-PSTN-Usage 3"
        },
        {
          "id": 21,
          "name": "PSTN Test name"
        }
      ]
    }
  ]
}

Get the configuration of a distributor

List all properties that make up the distributor's configuration. Properties are made up of key / value pairs. Properties may be extended or reduced at will, knowing that a basic set of properties has to be present for application correct behaviour. For the basic set of properties that have to be set, please see this list. All property names containing password or token will be returned masked as ********.

Request

Endpoint

GET /api/v01/draas/{draas_instance}/distributors/{uuid}/configurations/general

Authorization

Required role

distributors.instance.configurations.general.list

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated unique ID (UUID) identifying the distributor for which you want to get the properties

URL/Query parameters

ParameterTypeDescriptionRequired?
keysstringA comma seperated list of keys used to restrict the returned properties to the specified keysno
searchstringUsed to perform a search through all searchable configurations keys of a distributor that look like the string passedno

Response

Status codes

ParameterDescription
200Properties list has been correctly returned
400Error while processing the request
403The API consumer doesn't have sufficient rights to perform this action
404No distributor found
500Uncatched error on server side

Success

Body
ParameterTypeDescriptionConditional?
propertiesdictionaryA dictionary returning the read properties as key / value pairsno
Example
json
{
    "properties": {
        "max_calls": 30
    }
}

Standard Properties

KeyTypeExample
draas_examplestringExample value

Create or modify properties in of a distributor

Use this endpoint to create or modify properties that make up the configuration of a distributor. This API is an upsert one, meaning that a non-existing property will be added and an existing one will be updated.

Request

Endpoint

POST /api/v01/draas/{draas_instance}/distributors/{uuid}/configurations/general

Authorization

Required role

distributors.instance.configurations.general.create

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated unique ID (UUID) identifying the distributor for which you want to add or modify properties

URL/Query parameters

N/A

Body
ParameterTypeDescriptionRequired?
propertiesdictionaryA dictionary defining properties as key / value pairs. Non-existing keys will be added to the configuration, existing ones will be updated with the new valueyes

Example

json
{
    "properties": {
        "max_calls": 30
    }
}

Response

Status codes

ParameterDescription
204The properties were successfully added or modified to the group
400Error while processing the properties for the group
500Uncatched error on server side

Success

Body

N/A

Modify the configurations of a distributor

Use this endpoint to modify the configurations of a distributor of the reference user's access level.

Request

Endpoint

PUT /api/v01/draas/{draas_instance}/distributors/{uuid}/configurations/general

Authorization

Required role

distributors.instance.configurations.general.update

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated unique ID (UUID) identifying the distributor for which you want to add or modify properties

URL/Query parameters

N/A

Body

A dictionary defining properties as key / value pairs.

Example

json
{
    "properties": {
        "max_calls": 25
    }
}

Response

Status codes

ParameterDescription
204The properties were successfully modified
400Error while processing the properties
500Uncatched error on server side

Success

Body

N/A

Remove properties from a distributor

Use this endpoint to remove properties that make up the configuration of a distributor.

Request

Endpoint

DELETE /api/v01/draas/{draas_instance}/distributors/{uuid}/configurations/general

Authorization

Required role

distributors.instance.configurations.general.delete

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated unique ID (UUID) identifying the distributor from which you want to add remove properties

URL/Query parameters

N/A

Body
ParameterTypeDescriptionRequired?
keysarrayAn array of keys to remove from the configurationyes

Example

json
{
    "keys": [
        "prop_1",
        "prop_2",
        "prop_x"
    ]
}

Response

Status codes

ParameterDescription
204The properties were successfully removed the distributor
400Error while processing the properties for the distributor
500Uncatched error on server side

Success

Body

N/A

Get the configurations branding general

List of the configurations branding general of the reference user's access level.

Request

Endpoint

GET /api/v01/draas/{draas_instance}/distributors/{uuid}/configurations/branding/general

Authorization

Required role

distributors.instance.configurations.branding.general.list

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated unique ID (UUID) identifying the distributor for which you want to get the properties

URL/Query parameters

ParameterTypeDescriptionRequired?
fullbooleanForces to return the full configurations keys ignoring any other parametersno
keysstringA comma seperated list of keys used to restrict the returned properties to the specified keysno
searchstringUsed to perform a search through all searchable configurations keys of a distributor that look like the string passedno

Response

Status codes

ParameterDescription
200Properties has been correctly returned
400Error while processing the request
403The API consumer doesn't have sufficient rights to perform this action
404No distributor found
500Uncatched error on server side

Success

Body

A dictionary defining properties as key / value pairs.

Example
json
{}

Modify the configurations branding general

Use this endpoint to modify the configurations of branding general of the reference user's access level.

Request

Endpoint

PUT /api/v01/draas/{draas_instance}/distributors/{uuid}/configurations/general

Authorization

Required role

distributors.instance.configurations.branding.general.update

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated unique ID (UUID) identifying the distributor for which you want to add or modify properties

URL/Query parameters

N/A

Body

A dictionary defining properties as key / value pairs.

Example

json
{}

Response

Status codes

ParameterDescription
204The properties were successfully modified
400Error while processing the properties
500Uncatched error on server side

Success

Body

N/A

Get the configurations of branding pages

List of the configurations of branding pages of the reference user's access level.

Request

Endpoint

GET /api/v01/draas/{draas_instance}/distributors/{uuid}/configurations/branding/pages

Authorization

Required role

distributors.instance.configurations.branding.pages.list

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated unique ID (UUID) identifying the distributor for which you want to get the properties

URL/Query parameters

ParameterTypeDescriptionRequired?
fullbooleanForces to return the full configurations keys ignoring any other parametersno
keysstringA comma seperated list of keys used to restrict the returned properties to the specified keysno
searchstringUsed to perform a search through all searchable configurations keys of a distributor that look like the string passedno

Response

Status codes

ParameterDescription
200Properties has been correctly returned
400Error while processing the request
403The API consumer doesn't have sufficient rights to perform this action
404No distributor found
500Uncatched error on server side

Success

Body

A dictionary defining properties as key / value pairs.

Example
json
{
    "distributor": {
        "distributorAdmins": {
            "enabled": true
        },
        "distributorLicenseConsumption": {
            "enabled": false
        },
        "distributorProfile": {
            "enabled": false
        },
        "distributorRatePlan": {
            "enabled": true
        },
        "distributorResellers": {
            "enabled": true
        },
        "distributorTenants": {
            "enabled": true
        }
    },
    "reseller": {
        "resellerAdmins": {
            "enabled": true
        },
        "resellerLicenseConsumption": {
            "enabled": false
        },
        "resellerProfile": {
            "enabled": false
        },
        "resellerRatePlan": {
            "enabled": true
        },
        "resellerTenants": {
            "enabled": true
        }
    },
    "subscription": {
        "subscriptionNumbers": {
            "tabs": {
                "myNumbers": {
                    "enabled": true
                },
                "porting": {
                    "enabled": true
                },
                "releasedNumbers": {
                    "enabled": true
                },
                "reservedNumbers": {
                    "enabled": true
                }
            }
        }
    },
    "tenant": {
        "tenantAdmins": {
            "enabled": true
        },
        "tenantOrders": {
            "enabled": true
        },
        "tenantProfile": {
            "enabled": true
        },
        "tenantRatePlan": {
            "enabled": true
        },
        "tenantSubscriptions": {
            "enabled": true
        }
    }
}

Modify the configurations branding pages

Use this endpoint to modify the configurations of branding pages of the reference user's access level.

Request

Endpoint

PUT /api/v01/draas/{draas_instance}/distributors/{uuid}/configurations/pages

Authorization

Required role

distributors.instance.configurations.branding.pages.update

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated unique ID (UUID) identifying the distributor for which you want to add or modify properties

URL/Query parameters

N/A

Body

A dictionary defining properties as key / value pairs.

Example

json
{
    "distributor": {
        "distributorAdmins": {
            "enabled": true
        },
        "distributorLicenseConsumption": {
            "enabled": false
        },
        "distributorProfile": {
            "enabled": false
        },
        "distributorRatePlan": {
            "enabled": true
        },
        "distributorResellers": {
            "enabled": true
        },
        "distributorTenants": {
            "enabled": true
        }
    },
    "reseller": {
        "resellerAdmins": {
            "enabled": true
        },
        "resellerLicenseConsumption": {
            "enabled": false
        },
        "resellerProfile": {
            "enabled": false
        },
        "resellerRatePlan": {
            "enabled": true
        },
        "resellerTenants": {
            "enabled": true
        }
    },
    "subscription": {
        "subscriptionNumbers": {
            "tabs": {
                "myNumbers": {
                    "enabled": true
                },
                "porting": {
                    "enabled": true
                },
                "releasedNumbers": {
                    "enabled": true
                },
                "reservedNumbers": {
                    "enabled": true
                }
            }
        }
    },
    "tenant": {
        "tenantAdmins": {
            "enabled": true
        },
        "tenantOrders": {
            "enabled": true
        },
        "tenantProfile": {
            "enabled": true
        },
        "tenantRatePlan": {
            "enabled": true
        },
        "tenantSubscriptions": {
            "enabled": true
        }
    }
}

Response

Status codes

ParameterDescription
204The properties were successfully modified
400Error while processing the properties
500Uncatched error on server side

Success

Body

N/A

Get the configurations of branding styling

List of the configurations of branding styling of the reference user's access level.

Request

Endpoint

GET /api/v01/draas/{draas_instance}/distributors/{uuid}/configurations/branding/styling

Authorization

Required role

distributors.instance.configurations.branding.pages.list

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated unique ID (UUID) identifying the distributor for which you want to get the properties

URL/Query parameters

ParameterTypeDescriptionRequired?
fullbooleanForces to return the full configurations keys ignoring any other parametersno
keysstringA comma seperated list of keys used to restrict the returned properties to the specified keysno
searchstringUsed to perform a search through all searchable configurations keys of a distributor that look like the string passedno
typestringThe type of styling asset. Possible values are:
  • font,
  • image,
  • theme.
yes

Response

Status codes

ParameterDescription
200Properties has been correctly returned
400Error while processing the request
403The API consumer doesn't have sufficient rights to perform this action
404No distributor found
500Uncatched error on server side

Success

Body

A dictionary defining properties as key / value pairs.

Example type=font
json
{
    "allowed": [
        "Avenir Next Cyr",
        "Roboto",
        "Ubuntu",
        "Montserrat"
    ],
    "name": "Avenir Next Cyr"
}
Example type=image
json
{
    "favicon": "/branding/default/favicon/favicon.ico",
    "login": {
        "bg": "/branding/default/img/Loginbackground.png",
        "logo": "/branding/default/img/LoginLogo.svg"
    },
    "main": {
        "bg": "/branding/default/img/MainBackground.png",
        "logo": "/branding/default/img/Logo.svg"
    }
}
Example type=theme
json
{
    "allowed": [
        "blue",
        "red",
        "green"
    ],
    "selected": "blue",
    "themes": {
        "blue": "/branding/default/theme.blue.json",
        "green": "/branding/default/theme.green.json",
        "red": "/branding/default/theme.red.json"
    }
}

Modify the configurations branding styling

Use this endpoint to modify the configurations of branding styling of the reference user's access level.

Request

Endpoint

PUT /api/v01/draas/{draas_instance}/distributors/{uuid}/configurations/pages

Authorization

Required role

distributors.instance.configurations.branding.pages.update

Path Parameters

ParameterTypeDescription
draas_instancestringSee common parameters
uuidstringA system generated unique ID (UUID) identifying the distributor for which you want to add or modify properties

URL/Query parameters

N/A

Body
ParameterTypeDescriptionRequired?
typestringThe type of styling asset. Possible values are:
  • font,
  • image,
  • theme.
yes

And a dictionary defining properties as key / value pairs.

Example type=font
json
{
    "type": "font",
    "allowed": [
        "Avenir Next Cyr",
        "Roboto",
        "Ubuntu",
        "Montserrat"
    ],
    "name": "Avenir Next Cyr"
}
Example type=image
json
{
    "type": "image",
    "favicon": "/branding/default/favicon/favicon.ico",
    "login": {
        "bg": "/branding/default/img/Loginbackground.png",
        "logo": "/branding/default/img/LoginLogo.svg"
    },
    "main": {
        "bg": "/branding/default/img/MainBackground.png",
        "logo": "/branding/default/img/Logo.svg"
    }
}
Example type=theme
json
{
    "type": "theme",
    "allowed": [
        "blue",
        "red",
        "green"
    ],
    "selected": "red",
    "themes": {
        "blue": "/branding/default/theme.blue.json",
        "green": "/branding/default/theme.green.json",
        "red": "/branding/default/theme.red.json"
    }
}

Response

Status codes

ParameterDescription
204The properties were successfully modified
400Error while processing the properties
500Uncatched error on server side

Success

Body

N/A