Create PBX #
Creates a new PbxConnectionProfile assigned to a Customer tenant.
POST /v1.0/accounts/{ACCOUNT_TENANT_ID}/customers/{CUSTOMER_TENANT_ID}/pbxs
Example #
This request will create a new ~.pbx.kazoo.name.~ PbxConnectionProfile with the following details:
- Customer: Within the Customer tenant with id of {CUSTOMER_TENANT_ID}
- Name: "Customers ~.pbx.kazoo.name.~ Pbx"
- Host Rest: "https://rest.example.com"
- Host Websocket: "wss://ws.example.com"
- Account Id: "12345"
- API Key: "ABCDEF"
Request #
POST <https://api.na.myreports.cloud/api/v1.0/accounts/{ACCOUNT_TENANT_ID}/customers/{CUSTOMER_TENANT_ID}/pbxs> HTTP/1.1
Content-Type: application/json
accept-charges: true
Authorisation: Bearer {TOKEN}
Connection: keep-alive
{
"name": "Customers ~.pbx.kazoo.name.~ Pbx",
"hostRest": "<https://rest.example.com">,
"hostWebsocket": "wss://ws.example.com",
"accountId": "12345",
"apiKey": "ABCDEF",
"\_type": "KazooPbxConnectionProfile"
}
Response #
HTTP/1.1 201 Created
Content-Type: application/json; charset=utf-8
Content-Length: xx
Location: <https://api.na.myreports.cloud/api/v1.0/accounts/{ACCOUNT_TENANT_ID}/customers/{CUSTOMER_TENANT_ID}/pbxs/{PBX_ID}>
{
"data": {
"hostRest": "<https://rest.example.com">,
"hostWebsocket": "wss://ws.example.com",
"accountId": "12345",
"apiKey": "ABCDEF",
"\_type": "KazooPbxConnectionProfile",
"id": "{PBX_ID}",
"name":" Customers ~.pbx.kazoo.name.~ Pbx",
"tenantId": "{CUSTOMER_TENANT_ID}",
"countryCode": "US",
"enabled": false
},
"status": "success",
"timestamp": "2019-11-29T16:03:23.9251680Z"
}
Example #
This request will create a new 3CX PbxConnectionProfile with the following details:
Request #
POST <https://api.na.myreports.cloud/api/v1.0/accounts/{ACCOUNT_TENANT_ID}/customers/{CUSTOMER_TENANT_ID}/pbxs> HTTP/1.1
Content-Type: application/json
accept-charges: true
Authorisation: Bearer {TOKEN}
Connection: keep-alive
{
"\_type": "ThreeCxConnectionProfile",
"name": "3CX Connection",
"licenseKey": "licenseKey-licenseKey-licenseKey",
"username": "username-username-username",
"password": "password password password",
"enableRecordingArchive": "true",
"recordingArchiveFrequency": "00:20:00"
}
Response #
HTTP/1.1 201 Created
Content-Type: application/json; charset=utf-8
Content-Length: xx
Location: <https://api.na.myreports.cloud/api/v1.0/accounts/{ACCOUNT_TENANT_ID}/customers/{CUSTOMER_TENANT_ID}/pbxs/{PBX_ID}>
{
"data": {
"\_type": "ThreeCxConnectionProfile",
"name": "3CX Connection",
"licenseKey": "licenseKey-licenseKey-licenseKey",
"username": "username-username-username",
"password": "password password password",
"enableRecordingArchive": "true",
"recordingArchiveFrequency": "00:20:00"
},
"status": "success",
"timestamp": "2019-11-29T16:03:23.9251680Z"
}
Errors #
Unauthorised #
When the token is not provided, invalid or expired
HTTP/1.1 401 Unauthorised
Bad Request #
When the provided tenant id is not in the correct format
HTTP/1.1 400 Bad Request
Date: Thu, 06 Feb 2020 12:45:27 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 149
{
"error": 400,
"message": "The value '<tenant id>' is not valid.",
"status": "error",
"timestamp": "2020-02-06T12:45:27.5903465Z"
}
Not Found #
When there are no Customers that have a matching tenant id
HTTP/1.1 404 Not Found
Date: Thu, 06 Feb 2020 12:46:58 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 95
{
"error": 404,
"message": "Not Found",
"status": "error",
"timestamp": "2020-02-06T12:46:58.7669535Z"
}