Créer PBX

Créer PBX #

Crée un PbxConnectionProfile attribué à un locataire Client.

POST /v1.0/clients/{CUSTOMER_TENANT_ID}/pbxs

Exemple #

Cette demande créera un nouveau ~.pbx.kazoo.name.~ PbxConnectionProfile avec les détails suivants :

  • Client : Dans le locataire du client avec l'ID {CUSTOMER_TENANT_ID}
  • Nom : "Clients ~.pbx.kazoo.name.~ Pbx"
  • Repos de l'hôte : "https://rest.example.com"
  • Websocket de l'hôte : « wss://ws.example.com »
  • ID de compte : « 12345 »
  • API Légende : « ABCDEF »

Demander #

POST <https://api.na.myreports.cloud/api/v1.0/customers/{CUSTOMER_TENANT_ID}/pbxs> HTTP/1.1
Type de contenu : application/json
accept-charges : true
Autorisation : Porteur {TOKEN}
Connexion : keep-alive
{
    « name » : « Clients ~.pbx.kazoo.name.~ Pbx",
 	« hostRest » : « <https://rest.example.com">,
    « hostWebsocket » : « wss://ws.example.com »,
    « accountId » : « 12345 »,
    « apiKey » : « ABCDEF »,
    « \_type » : « KazooPbxConnectionProfile »
}

Réponse #

HTTP/1.1 201 Créé
Type de contenu : application/json ; jeu de caractères=utf-8
Contenu-Longueur : xx
Lieu : <https://api.na.myreports.cloud/api/v1.0/customers/{CUSTOMER_TENANT_ID}/pbxs/{PBX_ID}>
{
	« données » : {
 		« hostRest » : « <https://rest.example.com">,
        « hostWebsocket » : « wss://ws.example.com »,
        « accountId » : « 12345 »,
        « apiKey » : « ABCDEF »,
        « \_type » : « KazooPbxConnectionProfile »,
        « id » : « {PBX_ID} »,
        « name » : » Clients ~.pbx.kazoo.name.~ Pbx",
        « tenantId » : « {CUSTOMER_TENANT_ID»,
        « countryCode » : « US »,
        « enabled » : false
	},
	« status » : « succès »,
	« timestamp » : « 2019-11-29T16:03:23.9251680Z »
}

Exemple #

Cette demande créera un nouveau 3CX PbxConnectionProfile avec les détails suivants :

Demander #

POST <https://api.na.myreports.cloud/api/v1.0/customers/{CUSTOMER_TENANT_ID}/pbxs> HTTP/1.1
Type de contenu : application/json
accept-charges : true
Autorisation : Porteur {TOKEN}
Connexion : keep-alive
{
    « \_type » : « ThreeCxConnectionProfile »,
    « name » : « 3CX Connexion",
    « licenseKey » : « licenseKey-licenseKey-licenseKey »,
    « username » : « nom-utilisateur-nom-utilisateur-nom-utilisateur »,
    « password » : « mot de passe mot de passe »,
    « enableRecordingArchive » : « true »,
    « recordingArchiveFrequency » : « 00:20:00 »
}

Réponse #

HTTP/1.1 201 Créé
Type de contenu : application/json ; jeu de caractères=utf-8
Contenu-Longueur : xx
Lieu : <https://api.na.myreports.cloud/api/v1.0/customers/{CUSTOMER_TENANT_ID}/pbxs/{PBX_ID}>
{
	« données » : {
 		 « \_type » : « ThreeCxConnectionProfile »,
        « name » : « 3CX Connexion",
        « licenseKey » : « licenseKey-licenseKey-licenseKey »,
        « username » : « nom-utilisateur-nom-utilisateur-nom-utilisateur »,
        « password » : « mot de passe mot de passe »,
        « enableRecordingArchive » : « true »,
        « recordingArchiveFrequency » : « 00:20:00 »
	},
	« status » : « succès »,
	« timestamp » : « 2019-11-29T16:03:23.9251680Z »
}

Erreurs #

Non autorisée #

Lorsque le jeton n'est pas fourni, qu'il n'est pas valide ou qu'il a expiré

HTTP/1.1 401 Non autorisé

Mauvaise demande #

Lorsque l'ID de locataire fourni n'est pas au format correct

HTTP/1.1 400 Requête incorrecte
Date : Thu, 06 Feb 2020 12:45:27 GMT
Type de contenu : application/json ; jeu de caractères=utf-8
Contenu-Longueur : 149
{
	« error » : 400,
	« message » : « La valeur '<tenant id>' n'est pas valide.",
	« status » : « erreur »,
	« timestamp » : « 2020-02-06T12:45:27.5903465Z »
}

Introuvable #

Lorsqu'il n'y a aucun client disposant d'un ID de locataire correspondant

HTTP/1.1 404 Introuvable
Date : Thu, 06 Feb 2020 12:46:58 GMT
Type de contenu : application/json ; jeu de caractères=utf-8
Contenu-Longueur : 95
{
	« error » : 404,
	« message » : « Introuvable »,
	« status » : « erreur »,
	« timestamp » : « 2020-02-06T12:46:58.7669535Z »
}