{
"openapi":"3.1.0",
"info":{
"title":"Infobip OpenAPI Specification",
"description":"OpenAPI Specification that contains all public endpoints and webhooks.",
"contact":{
"name":"Infobip support",
"email":"support@infobip.com"
},
"version":"3.210.0",
"x-generatedAt":"2026-07-23T15:24:03.612703412Z"
},
"tags":[
{
"name":"channels",
"description":"Create a perfect customer experience by using the channels your customer already use and love.\n",
"x-type":"category",
"x-displayName":"Channels"
},
{
"name":"webrtc-calls",
"description":"Infobip WebRTC provide a simplified and secure way of real-time audio and video communication over the web and inside mobile applications. It's powered by Web Real-Time Communication (WebRTC) technology, the leading real-time communication standard built into more than a billion devices. This means it's safe and easy to use both for you and for your end users. Learn more about [Infobip WebRTC](https://www.infobip.com/docs/voice-and-video/webrtc).",
"x-type":"product",
"x-displayName":"WebRTC"
},
{
"name":"webrtc",
"description":"Infobip WebRTC",
"x-type":"module",
"x-displayName":"WebRTC"
},
{
"name":"webrtc-token",
"description":"",
"x-type":"section",
"x-displayName":"WebRTC Token"
},
{
"name":"webrtc-push-configuration",
"description":"",
"x-type":"section",
"x-displayName":"WebRTC Push Configuration"
},
{
"name":"webrtc-files",
"description":"",
"x-type":"section",
"x-displayName":"WebRTC Files"
},
{
"name":"webrtc-user-activity",
"description":"",
"x-type":"section",
"x-displayName":"WebRTC User Activity"
},
{
"name":"webrtc-recordings",
"description":"",
"x-type":"section",
"x-displayName":"WebRTC Recordings"
},
{
"name":"call-link",
"description":"Infobip Call Link API provides a simplified way of real-time audio and video communication. It allows a person to create a customizable call link and send it to a person to initiate or join a call. A person who initiates or joins a call doesn't have to create an account or use any specific platform.\n",
"x-type":"module",
"x-displayName":"Call Link"
},
{
"name":"call-links",
"description":"",
"x-type":"section",
"x-displayName":"Call Links"
},
{
"name":"call-link-configs",
"description":"",
"x-type":"section",
"x-displayName":"Configurations"
},
{
"name":"call-link-config-images",
"description":"",
"x-type":"section",
"x-displayName":"Images"
},
{
"name":"call-link-subdomains",
"description":"",
"x-type":"section",
"x-displayName":"Subdomains"
},
{
"name":"call-link-recordings",
"description":"",
"x-type":"section",
"x-displayName":"Recordings"
}
],
"paths":{
"/webrtc/1/token":{
"post":{
"tags":[
"channels",
"webrtc-calls",
"webrtc",
"webrtc-token"
],
"summary":"Generate WebRTC Token",
"description":"This endpoint allows you to generate token for WebRTC channel.",
"operationId":"generate-webrtc-token",
"requestBody":{
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/a012797e45a148c14a09b350fd3670874eb3f365931c630a0c2efc32c7293ff3.TokenRequestModel"
},
"examples":{
"Request example":{
"summary":"Request example",
"value":{
"identity":"Alice",
"displayName":"Alice in Wonderland",
"timeToLive":43200
}
}
}
}
},
"required":true
},
"responses":{
"200":{
"description":"Success",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/a012797e45a148c14a09b350fd3670874eb3f365931c630a0c2efc32c7293ff3.TokenResponseModel"
},
"examples":{
"Response example":{
"summary":"Response example",
"value":{
"token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZGVudGl0eSI6IkFsaWNlIiwibmFtZSI6IkFsaWNlIGluIFdvbmRlcmxhbmQiLCJleHAiOjE1NzkyOTA2MzgsImNhcHMiOlsyXX0.QyCMqjH8DsftChibW2Rw4EByH-eEviUp3-kHVKuJpKg",
"expirationTime":"2020-01-17T19:50:38.488589Z"
}
}
}
}
}
},
"400":{
"$ref":"#/components/responses/ApiException400"
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"webrtc:manage",
"webrtc:identity:manage"
]
}
},
"/webrtc/1/webrtc-push-config":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"webrtc",
"webrtc-push-configuration"
],
"summary":"Get WebRTC push configurations",
"description":"Get a page of WebRTC push configurations matching the query criteria.",
"operationId":"get-push-configurations",
"parameters":[
{
"name":"page",
"in":"query",
"description":"Results page to retrieve (0..N).",
"required":true,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"format":"int32",
"default":0,
"example":0,
"minimum":0
}
},
{
"name":"size",
"in":"query",
"description":"Number of records per page.",
"required":true,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"format":"int32",
"default":20,
"example":20,
"maximum":100,
"minimum":1
}
}
],
"responses":{
"200":{
"description":"Success",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.PushConfigurationPageResponse"
},
"examples":{
"Response example with push configurations for different applications.":{
"summary":"Response example with push configurations for different applications.",
"value":{
"results":[
{
"id":"454d142b-a1ad-239a-d231-227fa335aadc3",
"name":"Android Push Config Production",
"androidConfigured":true,
"iosConfigured":false
},
{
"id":"894c822b-d7ba-439c-a761-141f591cace7",
"name":"Test Push Config",
"androidConfigured":true,
"iosConfigured":true
}
],
"pageInfo":{
"page":0,
"size":2,
"totalPages":1,
"totalResults":2
}
}
}
}
}
}
},
"400":{
"description":"Bad Request",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/394de68b2af4916e47f48a4cc3026c2ec4c22342d1304c00a584d14a92a333c1.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request.",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"webrtc:manage",
"webrtc:configuration:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":100,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
},
"post":{
"tags":[
"channels",
"webrtc-calls",
"webrtc",
"webrtc-push-configuration"
],
"summary":"Create WebRTC push configuration",
"description":"Create and configure a new WebRTC push configuration.",
"operationId":"save-push-configuration",
"requestBody":{
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.PushConfigurationRequest"
},
"examples":{
"Request example with Android WebRTC push configuration":{
"summary":"Request example with Android WebRTC push configuration",
"value":{
"name":"Android Push Config Production",
"android":{
"privateKeyJson":"{\n \"type\": \"service_account\",\n \"project_id\": \"PROJECT_ID\",\n \"private_key_id\": \"PRIVATE_KEY_ID\",\n \"private_key\": \"PRIVATE_KEY\",\n \"client_email\": \"FIREBASE_ADMIN_SDK_EMAIL\",\n \"client_id\": \"CLIENT_ID\",\n \"auth_uri\": \"https://accounts.google.com/o/oauth2/auth\",\n \"token_uri\": \"https://oauth2.googleapis.com/token\",\n \"auth_provider_x509_cert_url\": \"https://www.googleapis.com/oauth2/v1/certs\",\n \"client_x509_cert_url\": \"CLIENT_X509_CERT_URL\"\n}\n"
}
}
},
"Request example with Android and iOS WebRTC push configuration":{
"summary":"Request example with Android and iOS WebRTC push configuration",
"value":{
"name":"Test Push Config",
"ios":{
"apnsCertificateFileName":"IOS_APNS_certificate.p12",
"apnsCertificateFileContent":"aGVsbG8gd29ybGQ=",
"apnsCertificatePassword":"strong_password"
},
"android":{
"privateKeyJson":"{\n \"type\": \"service_account\",\n \"project_id\": \"PROJECT_ID\",\n \"private_key_id\": \"PRIVATE_KEY_ID\",\n \"private_key\": \"PRIVATE_KEY\",\n \"client_email\": \"FIREBASE_ADMIN_SDK_EMAIL\",\n \"client_id\": \"CLIENT_ID\",\n \"auth_uri\": \"https://accounts.google.com/o/oauth2/auth\",\n \"token_uri\": \"https://oauth2.googleapis.com/token\",\n \"auth_provider_x509_cert_url\": \"https://www.googleapis.com/oauth2/v1/certs\",\n \"client_x509_cert_url\": \"CLIENT_X509_CERT_URL\"\n}\n"
}
}
}
}
}
},
"required":true
},
"responses":{
"200":{
"description":"Success",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.PushConfigurationResponse"
},
"examples":{
"Response example with Android WebRTC push configuration":{
"summary":"Response example with Android WebRTC push configuration",
"value":{
"id":"454d142b-a1ad-239a-d231-227fa335aadc3",
"name":"Android Push Config Production",
"androidConfigured":true,
"iosConfigured":false
}
},
"Response example with Android and iOS WebRTC push configuration":{
"summary":"Response example with Android and iOS WebRTC push configuration",
"value":{
"id":"894c822b-d7ba-439c-a761-141f591cace7",
"name":"Test Push Config",
"androidConfigured":true,
"iosConfigured":true
}
}
}
}
}
},
"400":{
"description":"Bad Request",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/394de68b2af4916e47f48a4cc3026c2ec4c22342d1304c00a584d14a92a333c1.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request.",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"webrtc:manage",
"webrtc:configuration:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":100,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/webrtc/1/webrtc-push-config/{id}":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"webrtc",
"webrtc-push-configuration"
],
"summary":"Get WebRTC push configuration",
"description":"Get a single WebRTC push configuration and its details.",
"operationId":"get-push-configuration",
"parameters":[
{
"name":"id",
"in":"path",
"description":"Id of the WebRTC push configuration to get.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
},
"example":"454d142b-a1ad-239a-d231-227fa335aadc3"
}
],
"responses":{
"200":{
"description":"Success",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.PushConfigurationResponse"
},
"examples":{
"Response example with Android WebRTC push configuration":{
"summary":"Response example with Android WebRTC push configuration",
"value":{
"id":"454d142b-a1ad-239a-d231-227fa335aadc3",
"name":"Android Push Config Production",
"androidConfigured":true,
"iosConfigured":false
}
},
"Response example with Android and iOS WebRTC push configuration":{
"summary":"Response example with Android and iOS WebRTC push configuration",
"value":{
"id":"894c822b-d7ba-439c-a761-141f591cace7",
"name":"Test Push Config",
"androidConfigured":true,
"iosConfigured":true
}
}
}
}
}
},
"400":{
"description":"Bad Request",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/394de68b2af4916e47f48a4cc3026c2ec4c22342d1304c00a584d14a92a333c1.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request.",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/394de68b2af4916e47f48a4cc3026c2ec4c22342d1304c00a584d14a92a333c1.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"webrtc:manage",
"webrtc:configuration:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":100,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
},
"put":{
"tags":[
"channels",
"webrtc-calls",
"webrtc",
"webrtc-push-configuration"
],
"summary":"Update WebRTC push configuration",
"description":"Change details of an existing WebRTC push configuration.",
"operationId":"update-push-configuration",
"parameters":[
{
"name":"id",
"in":"path",
"description":"Id of the WebRTC push configuration to update.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
},
"example":"454d142b-a1ad-239a-d231-227fa335aadc3"
}
],
"requestBody":{
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.PushConfigurationRequest"
},
"examples":{
"Request example with Android WebRTC push configuration":{
"summary":"Request example with Android WebRTC push configuration",
"value":{
"name":"Android Push Config Production",
"android":{
"privateKeyJson":"{\n \"type\": \"service_account\",\n \"project_id\": \"PROJECT_ID\",\n \"private_key_id\": \"PRIVATE_KEY_ID\",\n \"private_key\": \"PRIVATE_KEY\",\n \"client_email\": \"FIREBASE_ADMIN_SDK_EMAIL\",\n \"client_id\": \"CLIENT_ID\",\n \"auth_uri\": \"https://accounts.google.com/o/oauth2/auth\",\n \"token_uri\": \"https://oauth2.googleapis.com/token\",\n \"auth_provider_x509_cert_url\": \"https://www.googleapis.com/oauth2/v1/certs\",\n \"client_x509_cert_url\": \"CLIENT_X509_CERT_URL\"\n}\n"
}
}
},
"Request example with Android and iOS WebRTC push configuration":{
"summary":"Request example with Android and iOS WebRTC push configuration",
"value":{
"name":"Test Push Config",
"ios":{
"apnsCertificateFileName":"IOS_APNS_certificate.p12",
"apnsCertificateFileContent":"aGVsbG8gd29ybGQ=",
"apnsCertificatePassword":"strong_password"
},
"android":{
"privateKeyJson":"{\n \"type\": \"service_account\",\n \"project_id\": \"PROJECT_ID\",\n \"private_key_id\": \"PRIVATE_KEY_ID\",\n \"private_key\": \"PRIVATE_KEY\",\n \"client_email\": \"FIREBASE_ADMIN_SDK_EMAIL\",\n \"client_id\": \"CLIENT_ID\",\n \"auth_uri\": \"https://accounts.google.com/o/oauth2/auth\",\n \"token_uri\": \"https://oauth2.googleapis.com/token\",\n \"auth_provider_x509_cert_url\": \"https://www.googleapis.com/oauth2/v1/certs\",\n \"client_x509_cert_url\": \"CLIENT_X509_CERT_URL\"\n}\n"
}
}
}
}
}
},
"required":true
},
"responses":{
"200":{
"description":"Success",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.PushConfigurationResponse"
},
"examples":{
"Response example with Android WebRTC push configuration":{
"summary":"Response example with Android WebRTC push configuration",
"value":{
"id":"454d142b-a1ad-239a-d231-227fa335aadc3",
"name":"Android Push Config Production",
"androidConfigured":true,
"iosConfigured":false
}
},
"Response example with Android and iOS WebRTC push configuration":{
"summary":"Response example with Android and iOS WebRTC push configuration",
"value":{
"id":"894c822b-d7ba-439c-a761-141f591cace7",
"name":"Test Push Config",
"androidConfigured":true,
"iosConfigured":true
}
}
}
}
}
},
"400":{
"description":"Bad Request",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/394de68b2af4916e47f48a4cc3026c2ec4c22342d1304c00a584d14a92a333c1.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request.",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/394de68b2af4916e47f48a4cc3026c2ec4c22342d1304c00a584d14a92a333c1.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"webrtc:manage",
"webrtc:configuration:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":100,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
},
"delete":{
"tags":[
"channels",
"webrtc-calls",
"webrtc",
"webrtc-push-configuration"
],
"summary":"Delete WebRTC push configuration",
"description":"Delete WebRTC push configuration for the given id.",
"operationId":"delete-push-configuration",
"parameters":[
{
"name":"id",
"in":"path",
"description":"Id of the WebRTC push configuration to delete.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
},
"example":"454d142b-a1ad-239a-d231-227fa335aadc3"
}
],
"responses":{
"200":{
"description":"Success"
},
"204":{
"description":"No content"
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/394de68b2af4916e47f48a4cc3026c2ec4c22342d1304c00a584d14a92a333c1.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"webrtc:manage",
"webrtc:configuration:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":100,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
},
"patch":{
"tags":[
"channels",
"webrtc-calls",
"webrtc",
"webrtc-push-configuration"
],
"summary":"Patch WebRTC push configuration",
"description":"Change only specific fields of the WebRTC push configuration. Fields left out of the request will remain unchanged.",
"operationId":"patch-push-configuration",
"parameters":[
{
"name":"id",
"in":"path",
"description":"Id of the WebRTC push configuration to patch.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
},
"example":"454d142b-a1ad-239a-d231-227fa335aadc3"
}
],
"requestBody":{
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.PushConfigurationRequest"
},
"examples":{
"Request example with Android WebRTC push configuration":{
"summary":"Request example with Android WebRTC push configuration",
"value":{
"name":"Android Push Config Production",
"android":{
"privateKeyJson":"{\n \"type\": \"service_account\",\n \"project_id\": \"PROJECT_ID\",\n \"private_key_id\": \"PRIVATE_KEY_ID\",\n \"private_key\": \"PRIVATE_KEY\",\n \"client_email\": \"FIREBASE_ADMIN_SDK_EMAIL\",\n \"client_id\": \"CLIENT_ID\",\n \"auth_uri\": \"https://accounts.google.com/o/oauth2/auth\",\n \"token_uri\": \"https://oauth2.googleapis.com/token\",\n \"auth_provider_x509_cert_url\": \"https://www.googleapis.com/oauth2/v1/certs\",\n \"client_x509_cert_url\": \"CLIENT_X509_CERT_URL\"\n}\n"
}
}
},
"Request example with Android and iOS WebRTC push configuration":{
"summary":"Request example with Android and iOS WebRTC push configuration",
"value":{
"name":"Test Push Config",
"ios":{
"apnsCertificateFileName":"IOS_APNS_certificate.p12",
"apnsCertificateFileContent":"aGVsbG8gd29ybGQ=",
"apnsCertificatePassword":"strong_password"
},
"android":{
"privateKeyJson":"{\n \"type\": \"service_account\",\n \"project_id\": \"PROJECT_ID\",\n \"private_key_id\": \"PRIVATE_KEY_ID\",\n \"private_key\": \"PRIVATE_KEY\",\n \"client_email\": \"FIREBASE_ADMIN_SDK_EMAIL\",\n \"client_id\": \"CLIENT_ID\",\n \"auth_uri\": \"https://accounts.google.com/o/oauth2/auth\",\n \"token_uri\": \"https://oauth2.googleapis.com/token\",\n \"auth_provider_x509_cert_url\": \"https://www.googleapis.com/oauth2/v1/certs\",\n \"client_x509_cert_url\": \"CLIENT_X509_CERT_URL\"\n}\n"
}
}
}
}
}
},
"required":true
},
"responses":{
"200":{
"description":"Success",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.PushConfigurationResponse"
},
"examples":{
"Response example with Android WebRTC push configuration":{
"summary":"Response example with Android WebRTC push configuration",
"value":{
"id":"454d142b-a1ad-239a-d231-227fa335aadc3",
"name":"Android Push Config Production",
"androidConfigured":true,
"iosConfigured":false
}
},
"Response example with Android and iOS WebRTC push configuration":{
"summary":"Response example with Android and iOS WebRTC push configuration",
"value":{
"id":"894c822b-d7ba-439c-a761-141f591cace7",
"name":"Test Push Config",
"androidConfigured":true,
"iosConfigured":true
}
}
}
}
}
},
"400":{
"description":"Bad Request",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/394de68b2af4916e47f48a4cc3026c2ec4c22342d1304c00a584d14a92a333c1.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request.",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/394de68b2af4916e47f48a4cc3026c2ec4c22342d1304c00a584d14a92a333c1.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"webrtc:manage",
"webrtc:configuration:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":100,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/webrtc/1/files":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"webrtc",
"webrtc-files"
],
"summary":"Get files",
"description":"Use this method to get files with pagination.",
"operationId":"get-files",
"parameters":[
{
"name":"page",
"in":"query",
"description":"Results page to retrieve (0..N).",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"format":"int32",
"default":0,
"example":0,
"minimum":0
}
},
{
"name":"size",
"in":"query",
"description":"Number of files per page. Maximum page size is 100.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"format":"int32",
"default":20,
"example":20,
"maximum":100,
"minimum":1
}
}
],
"responses":{
"200":{
"description":"Success",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ffb4c29a0ab7c4ca15544ca9d6ceffaf3e8b394d7fc1a53728ba61496b4513fc.FilePageResponse"
},
"examples":{
"Response example of the page of files.":{
"summary":"Response example of the page of files.",
"value":{
"results":[
{
"id":"5f4e8861-8ed7-4521-b8c8-f26346726716",
"name":"5f4e8861-8ed7-4521-b8c8-f26346726716_alice_1680266280000.png",
"fileFormat":"PNG",
"size":10780,
"creationTime":"2023-03-31T12:38:00.000+0000"
}
],
"pageInfo":{
"page":0,
"size":1,
"totalPages":1,
"totalResults":1
}
}
}
}
}
}
},
"400":{
"description":"Bad Request",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/394de68b2af4916e47f48a4cc3026c2ec4c22342d1304c00a584d14a92a333c1.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request.",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"webrtc:manage",
"webrtc:media:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":100,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/webrtc/1/files/{id}":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"webrtc",
"webrtc-files"
],
"summary":"Get file",
"description":"Use this method to get a single file.",
"operationId":"get-file",
"parameters":[
{
"name":"id",
"in":"path",
"description":"Id of the file.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
},
"example":"5f4e8861-8ed7-4521-b8c8-f26346726716"
}
],
"responses":{
"200":{
"description":"Success",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ffb4c29a0ab7c4ca15544ca9d6ceffaf3e8b394d7fc1a53728ba61496b4513fc.FileResponse"
},
"examples":{
"Response example of the file.":{
"summary":"Response example of the file.",
"value":{
"id":"5f4e8861-8ed7-4521-b8c8-f26346726716",
"name":"5f4e8861-8ed7-4521-b8c8-f26346726716_alice_1680266280000.png",
"fileFormat":"PNG",
"size":10780,
"creationTime":"2023-03-31T12:38:00.000+0000"
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/394de68b2af4916e47f48a4cc3026c2ec4c22342d1304c00a584d14a92a333c1.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"webrtc:manage",
"webrtc:media:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":100,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
},
"delete":{
"tags":[
"channels",
"webrtc-calls",
"webrtc",
"webrtc-files"
],
"summary":"Delete file",
"description":"Use this method to delete a file.",
"operationId":"delete-file",
"parameters":[
{
"name":"id",
"in":"path",
"description":"Id of the file to be deleted.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
},
"example":"5f4e8861-8ed7-4521-b8c8-f26346726716"
}
],
"responses":{
"200":{
"description":"Success",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ffb4c29a0ab7c4ca15544ca9d6ceffaf3e8b394d7fc1a53728ba61496b4513fc.FileResponse"
},
"examples":{
"Response example of the file.":{
"summary":"Response example of the file.",
"value":{
"id":"5f4e8861-8ed7-4521-b8c8-f26346726716",
"name":"5f4e8861-8ed7-4521-b8c8-f26346726716_alice_1680266280000.png",
"fileFormat":"PNG",
"size":10780,
"creationTime":"2023-03-31T12:38:00.000+0000"
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/394de68b2af4916e47f48a4cc3026c2ec4c22342d1304c00a584d14a92a333c1.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"webrtc:manage",
"webrtc:media:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":100,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/webrtc/1/files/{id}/download":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"webrtc",
"webrtc-files"
],
"summary":"Download file",
"description":"Use this method to download a file.",
"operationId":"download-file",
"parameters":[
{
"name":"id",
"in":"path",
"description":"Id of the file to be downloaded.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
},
"example":"5f4e8861-8ed7-4521-b8c8-f26346726716"
}
],
"responses":{
"200":{
"description":"Success",
"content":{
"application/octet-stream":{
"schema":{
"type":"string",
"format":"binary",
"description":"File binary stream response"
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/394de68b2af4916e47f48a4cc3026c2ec4c22342d1304c00a584d14a92a333c1.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"webrtc:manage",
"webrtc:media:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":100,
"numberOfTimeUnits":0,
"timeUnit":"m"
}
]
}
},
"/webrtc/1/user-activity":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"webrtc",
"webrtc-user-activity"
],
"summary":"Get WebRTC user activity",
"description":"Get a page of a WebRTC user activity matching query criteria.",
"operationId":"get-user-activity",
"parameters":[
{
"name":"identity",
"in":"query",
"description":"The identity of the user on Infobip WebRTC platform.",
"required":true,
"style":"form",
"explode":true,
"schema":{
"type":"string"
},
"example":"Alice"
},
{
"name":"startTime",
"in":"query",
"description":"Start date and time for filtering of the user activity. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSS+ZZZZ`.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"string",
"format":"date-time"
},
"example":"2024-09-10T15:30:45.125+0000"
},
{
"name":"endTime",
"in":"query",
"description":"End date and time for filtering of the user activity. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSS+ZZZZ`.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"string",
"format":"date-time"
},
"example":"2024-09-13T15:30:45.125+0000"
},
{
"name":"sessionId",
"in":"query",
"description":"An identifier that links different occurrences of `activityType` within the same activity session for a user identity on the Infobip WebRTC platform. When two activity events, distinguished by their `activityType`, happen during the same user activity session, they will share the same `sessionId`.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"string"
},
"example":"3f6957f0-79b3-11ef-a56e-ed504659cd80"
},
{
"name":"page",
"in":"query",
"description":"Results page to retrieve (0..N).",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"format":"int32",
"default":0,
"minimum":0
}
},
{
"name":"size",
"in":"query",
"description":"Number of records per page.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"format":"int32",
"default":20,
"maximum":100,
"minimum":0
}
}
],
"responses":{
"200":{
"description":"Success",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/dc38425c131b95e4c45181495294ce145519edf2a5db70e09ac8bc816d8bceba.UserActivityPageResponse"
},
"examples":{
"Response example of the page of user activities.":{
"summary":"Response example of the page of user activities.",
"value":{
"identity":"Alice",
"results":[
{
"sessionId":"19442d20-79b3-11ef-a56e-ed504659cd80",
"activityType":"CONNECTED",
"timestamp":"2024-09-12T08:35:00.000+0000"
},
{
"sessionId":"19442d20-79b3-11ef-a56e-ed504659cd80",
"activityType":"DISCONNECTED",
"timestamp":"2024-09-12T08:40:00.000+0000"
},
{
"sessionId":"3f6957f0-79b3-11ef-a56e-ed504659cd80",
"activityType":"CONNECTED",
"timestamp":"2024-09-12T12:35:00.000+0000"
},
{
"sessionId":"3f6957f0-79b3-11ef-a56e-ed504659cd80",
"activityType":"DISCONNECTED",
"timestamp":"2024-09-12T12:40:00.000+0000"
}
],
"pageInfo":{
"page":0,
"size":1,
"totalPages":1,
"totalResults":4
}
}
}
}
}
}
},
"400":{
"description":"Bad Request",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ApiError"
},
"examples":{
"Missing identity in query parameter":{
"summary":"Missing identity in query parameter",
"description":"Missing identity in query parameter",
"value":{
"errorCode":"E400",
"description":"Request cannot be processed.",
"action":"Check the syntax, violations and adjust the request.",
"violations":[
{
"property":"identity",
"violation":"must not be null"
}
],
"resources":[
{
"name":"API documentation",
"url":"https://www.infobip.com/docs/api/channels/webrtc-calls/webrtc"
}
]
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"errorCode":"E400",
"description":"Request cannot be processed.",
"action":"Check the syntax, violations and adjust the request.",
"violations":[
{
"property":"property.path",
"violation":"Violation message."
}
],
"resources":[]
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiError401"
},
"403":{
"$ref":"#/components/responses/ApiError403"
},
"429":{
"$ref":"#/components/responses/ApiError429"
},
"500":{
"$ref":"#/components/responses/ApiError500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"webrtc:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":100,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/webrtc/1/recordings":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"webrtc",
"webrtc-recordings"
],
"summary":"Get WebRTC recordings",
"description":"This method allows searching and filtering based on various recording data properties.",
"operationId":"get-webrtc-recordings",
"parameters":[
{
"name":"sortBy",
"in":"query",
"description":"Field that will be used for sorting.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.RecordingSortColumn"
},
"example":"START_TIME"
},
{
"name":"sortDirection",
"in":"query",
"description":"Order in which files will be sorted based on sortBy field.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.SortDirection"
},
"example":"DESC"
},
{
"name":"callType",
"in":"query",
"description":"Call type of the recorded call.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.CallType"
},
"example":"WEBRTC_CALL"
},
{
"name":"phoneNumber",
"in":"query",
"description":"Phone number that was participant of the recorded call.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"string"
},
"example":41792036727
},
{
"name":"identity",
"in":"query",
"description":"WebRTC Identity that was participant of the recorded call.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"string"
},
"example":"Alice"
},
{
"name":"roomName",
"in":"query",
"description":"Name of the recorded room for ROOM_CALL call type.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"string"
},
"example":"conference_room"
},
{
"name":"roomId",
"in":"query",
"description":"Id of the recorded room for ROOM_CALL call type. Equivalent to conferenceId.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"string"
},
"example":"f8fc8aca-786d-4943-9af2-e7ec01b5e80d"
},
{
"name":"startTimeAfter",
"in":"query",
"description":"Date and time when the (first) call recording started.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"string",
"format":"date-time"
},
"example":"2024-05-01T14:25:45.125+0000"
},
{
"name":"startTimeBefore",
"in":"query",
"description":"Date and time when the (last) call recording started.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"string",
"format":"date-time"
},
"example":"2024-05-01T14:26:45.125+0000"
},
{
"name":"location",
"in":"query",
"description":"Recording location.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.RecordingLocation"
},
"example":"FRANKFURT"
},
{
"name":"page",
"in":"query",
"description":"Results page to retrieve (0..N).",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"format":"int32",
"default":0,
"minimum":0
}
},
{
"name":"size",
"in":"query",
"description":"Number of records per page.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"format":"int32",
"default":20,
"maximum":100,
"minimum":0
}
}
],
"responses":{
"200":{
"description":"Success",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/6a67def771061fe877b7bafa26c22e83ef5c7b44e2a298a70b54e0ed657fe102.WebrtcRecordingPageResponse"
},
"examples":{
"Response example with both composition and no composition recording responses for ROOM call type":{
"summary":"Response example with both composition and no composition recording responses for ROOM call type",
"value":{
"results":[
{
"application":{
"id":"b4r1fcde8-df41-4209-b9a5-895db5d42e3d",
"callType":"ROOM_CALL",
"roomName":"Team_Meeting",
"roomId":"fa6be316-39e7-4dda-8140-546fa643875f",
"startTime":"2025-10-29T16:30:31.865+0000",
"endTime":"2025-10-29T16:30:46.765+0000",
"type":"WEBRTC"
},
"recording":{
"composedFiles":[
{
"id":"7d8c1fa5-bacd-4ce9-9c8c-46f6a073fe86",
"name":"7d8c1fa5-bacd-4ce9-9c8c-46f6a073fe86.wav",
"fileFormat":"WAV",
"size":177152,
"startTime":"2025-10-29T16:30:31.865+0000",
"endTime":"2025-10-29T16:30:46.765+0000",
"creationTime":"2025-10-29T16:30:46.833+0000",
"duration":14,
"location":"HOSTED"
}
],
"callRecordings":[
{
"callId":"2c96ff1d-8adb-4e95-9da4-5eb5a9bf6ff8",
"endpoint":{
"identity":"Alice",
"type":"WEBRTC"
},
"direction":"INBOUND",
"status":"SUCCESSFUL"
},
{
"callId":"afe40a7d-5832-4e63-9cd4-d9d3358a9b2a",
"endpoint":{
"identity":"Dolores",
"type":"WEBRTC"
},
"direction":"INBOUND",
"status":"SUCCESSFUL"
},
{
"callId":"7d92e266-dbaf-4a7b-acda-1648e9bd8a9c",
"endpoint":{
"identity":"Kevin",
"type":"WEBRTC"
},
"direction":"INBOUND",
"status":"SUCCESSFUL"
}
]
}
},
{
"application":{
"id":"78q1fcde8-df41-4209-b9a5-895db5d42e3d",
"callType":"ROOM_CALL",
"roomName":"Team_Meeting",
"roomId":"fa6be316-39e7-4dda-8140-546fa643875f",
"startTime":"2025-10-29T12:16:58.045+0000",
"endTime":"2025-10-29T12:18:01.585+0000",
"type":"WEBRTC"
},
"recording":{
"composedFiles":[],
"callRecordings":[
{
"callId":"2c96ff1d-8adb-4e95-9da4-5eb5a9bf6ff8",
"endpoint":{
"identity":"Alice",
"type":"WEBRTC"
},
"direction":"INBOUND",
"status":"SUCCESSFUL",
"files":[
{
"id":"5224c94a-f823-47d0-b662-10d22dca8aec",
"name":"5224c94a-f823-47d0-b662-10d22dca8aec.mp4",
"fileFormat":"MP4",
"size":2772666,
"startTime":"2025-10-29T12:16:58.045+0000",
"endTime":"2025-10-29T12:18:01.585+0000",
"creationTime":"2025-10-29T12:18:01.805+0000",
"duration":72,
"location":"HOSTED"
}
]
},
{
"callId":"afe40a7d-5832-4e63-9cd4-d9d3358a9b2a",
"endpoint":{
"identity":"Dolores",
"type":"WEBRTC"
},
"direction":"INBOUND",
"status":"SUCCESSFUL",
"files":[
{
"id":"bb92aa66-4d0f-4846-9f5a-0f388fa892d1",
"name":"bb92aa66-4d0f-4846-9f5a-0f388fa892d1.mp4",
"fileFormat":"MP4",
"size":295842,
"startTime":"2025-10-29T12:16:58.045+0000",
"endTime":"2025-10-29T12:18:01.585+0000",
"creationTime":"2025-10-29T12:18:01.796+0000",
"duration":63,
"location":"HOSTED"
}
]
},
{
"callId":"7d92e266-dbaf-4a7b-acda-1648e9bd8a9c",
"endpoint":{
"identity":"Kevin",
"type":"WEBRTC"
},
"direction":"INBOUND",
"status":"SUCCESSFUL",
"files":[
{
"id":"7e125a10-6538-4187-9653-1b067a03e7e6",
"name":"7e125a10-6538-4187-9653-1b067a03e7e6.mp4",
"fileFormat":"MP4",
"size":295812,
"startTime":"2025-10-29T12:17:35.305+0000",
"endTime":"2025-10-29T12:17:58.685+0000",
"creationTime":"2025-10-29T12:18:01.765+0000",
"duration":63,
"location":"HOSTED"
}
]
}
]
}
}
],
"pageInfo":{
"page":0,
"size":20,
"totalPages":1,
"totalResults":2
}
}
},
"Response example with composition recording response for WEBRTC call type":{
"summary":"Response example with composition recording response for WEBRTC call type",
"value":{
"results":[
{
"application":{
"id":"3a1fcde8-df41-4209-b9a5-895db5d42e3d",
"callType":"WEBRTC_CALL",
"startTime":"2025-10-29T14:25:45.125+0000",
"endTime":"2025-10-29T14:26:45.125+0000",
"type":"WEBRTC"
},
"recording":{
"composedFiles":[
{
"id":"294cdf1b-70ae-4249-b384-6f267b5cf345",
"name":"294cdf1b-70ae-4249-b384-6f267b5cf345.wav",
"fileFormat":"WAV",
"size":177152,
"startTime":"2025-10-29T14:25:45.125+0000",
"endTime":"2025-10-29T14:25:55.125+0000",
"creationTime":"2025-10-29T14:25:46.125+0000",
"duration":10,
"location":"HOSTED",
"customData":{
"key":"value"
}
}
],
"callRecordings":[
{
"callId":"81a815ee-4fc2-45e3-a3eb-50277359a089",
"endpoint":{
"identity":"Alice",
"type":"WEBRTC"
},
"direction":"INBOUND",
"status":"SUCCESSFUL"
},
{
"callId":"91b925ff-5gd3-56f4-b4fc-60388460b190",
"endpoint":{
"identity":"Dolores",
"type":"WEBRTC"
},
"direction":"OUTBOUND",
"status":"SUCCESSFUL"
}
]
}
}
],
"pageInfo":{
"page":0,
"size":20,
"totalPages":1,
"totalResults":1
}
}
},
"Response example with no composition recording response for PHONE call type":{
"summary":"Response example with no composition recording response for PHONE call type",
"value":{
"results":[
{
"application":{
"id":"78q1fcde8-df41-4209-b9a5-895db5d42e3d",
"callType":"PHONE_CALL",
"startTime":"2025-10-29T14:35:45.125+0000",
"endTime":"2025-10-29T14:36:45.125+0000",
"type":"WEBRTC"
},
"recording":{
"composedFiles":[],
"callRecordings":[
{
"callId":"81a815ee-4fc2-45e3-a3eb-50277359a089",
"endpoint":{
"identity":"Alice",
"type":"WEBRTC"
},
"direction":"INBOUND",
"status":"SUCCESSFUL",
"files":[
{
"id":"564202f9-4788-4766-866c-6a58f4058dac",
"name":"564202f9-4788-4766-866c-6a58f4058dac.wav",
"fileFormat":"WAV",
"size":1772666,
"startTime":"2025-10-29T14:35:45.125+0000",
"endTime":"2025-10-29T14:35:55.125+0000",
"creationTime":"2025-10-29T14:35:46.125+0000",
"duration":10,
"location":"HOSTED"
}
]
},
{
"callId":"811b925ff-5gd3-56f4-b4fc-60388460b190",
"endpoint":{
"phoneNumber":"32475388773",
"type":"PHONE"
},
"direction":"OUTBOUND",
"status":"SUCCESSFUL",
"files":[
{
"id":"c8f2817c-e2cd-47f1-ac40-2558d74c5c7b",
"name":"c8f2817c-e2cd-47f1-ac40-2558d74c5c7b.wav",
"fileFormat":"WAV",
"size":295842,
"startTime":"2025-10-29T14:35:45.125+0000",
"endTime":"2025-10-29T14:35:55.125+0000",
"creationTime":"2025-10-29T14:35:46.125+0000",
"duration":10,
"location":"HOSTED"
}
]
}
]
}
}
],
"pageInfo":{
"page":0,
"size":20,
"totalPages":1,
"totalResults":1
}
}
}
}
}
}
},
"400":{
"description":"Bad Request",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ApiError"
},
"examples":{
"Bad request":{
"summary":"Bad request",
"value":{
"errorCode":"E400",
"description":"Request cannot be processed.",
"action":"Check the syntax, violations and adjust the request.",
"violations":[
{
"property":"property.path",
"violation":"Violation message."
}
],
"resources":[]
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiError401"
},
"403":{
"$ref":"#/components/responses/ApiError403"
},
"429":{
"$ref":"#/components/responses/ApiError429"
},
"500":{
"$ref":"#/components/responses/ApiError500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"webrtc:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":10,
"numberOfTimeUnits":0,
"timeUnit":"m"
}
]
}
},
"/webrtc/1/recordings/{id}":{
"delete":{
"tags":[
"channels",
"webrtc-calls",
"webrtc",
"webrtc-recordings"
],
"summary":"Delete WebRTC recording by ID",
"description":"This method allows deleting call recordings based on their ID.",
"operationId":"delete-webrtc-recording-by-id",
"parameters":[
{
"name":"id",
"in":"path",
"description":"ID of the recording to delete.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
},
"example":"d8d84155-3831-43fb-91c9-bb897149a79d"
},
{
"name":"location",
"in":"query",
"description":"Recording location.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.RecordingLocation"
},
"example":"FRANKFURT"
}
],
"responses":{
"200":{
"description":"Success",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/6a67def771061fe877b7bafa26c22e83ef5c7b44e2a298a70b54e0ed657fe102.RecordingResponse"
},
"examples":{
"Response example of deleted recording for WEBRTC call type":{
"summary":"Response example of deleted recording for WEBRTC call type",
"value":{
"application":{
"id":"3a1fcde8-df41-4209-b9a5-895db5d42e3d",
"callType":"WEBRTC_CALL",
"startTime":"2025-10-29T14:25:45.125+0000",
"endTime":"2025-10-29T14:26:45.125+0000",
"type":"WEBRTC"
},
"recording":{
"composedFiles":[
{
"id":"294cdf1b-70ae-4249-b384-6f267b5cf345",
"name":"294cdf1b-70ae-4249-b384-6f267b5cf345.wav",
"fileFormat":"WAV",
"size":177152,
"startTime":"2025-10-29T14:25:45.125+0000",
"endTime":"2025-10-29T14:25:55.125+0000",
"creationTime":"2025-10-29T14:25:46.125+0000",
"duration":10,
"location":"HOSTED",
"customData":{
"key":"value"
}
}
],
"callRecordings":[
{
"callId":"81a815ee-4fc2-45e3-a3eb-50277359a089",
"endpoint":{
"identity":"Alice",
"type":"WEBRTC"
},
"direction":"INBOUND",
"status":"SUCCESSFUL"
},
{
"callId":"91b925ff-5gd3-56f4-b4fc-60388460b190",
"endpoint":{
"identity":"Dolores",
"type":"WEBRTC"
},
"direction":"OUTBOUND",
"status":"SUCCESSFUL"
}
]
}
}
}
}
}
}
},
"400":{
"description":"Bad Request",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ApiError"
},
"examples":{
"Bad request":{
"summary":"Bad request",
"value":{
"errorCode":"E400",
"description":"Request cannot be processed.",
"action":"Check the syntax, violations and adjust the request.",
"violations":[
{
"property":"property.path",
"violation":"Violation message."
}
],
"resources":[]
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiError401"
},
"403":{
"$ref":"#/components/responses/ApiError403"
},
"404":{
"$ref":"#/components/responses/ApiError404"
},
"429":{
"$ref":"#/components/responses/ApiError429"
},
"500":{
"$ref":"#/components/responses/ApiError500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"webrtc:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":10,
"numberOfTimeUnits":0,
"timeUnit":"m"
}
]
}
},
"/webrtc/1/recordings/{id}/download":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"webrtc",
"webrtc-recordings"
],
"summary":"Download WebRTC recording file",
"description":"This method allows downloading a WebRTC recording file based on its ID.",
"operationId":"download-webrtc-recording-by-id",
"parameters":[
{
"name":"id",
"in":"path",
"description":"ID of the recording to download.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
},
"example":"d8d84155-3831-43fb-91c9-bb897149a79d"
},
{
"name":"location",
"in":"query",
"description":"Recording location.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.RecordingLocation"
},
"example":"FRANKFURT"
},
{
"name":"Range",
"in":"header",
"description":"Range header specifies range of bytes to be returned in the response. If range header is not specified, response will return a complete file.",
"required":false,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
},
"example":"bytes=0-1023"
}
],
"responses":{
"200":{
"description":"Success",
"content":{
"application/octet-stream":{
"schema":{
"type":"string",
"format":"binary",
"description":"File binary stream response."
}
}
}
},
"206":{
"description":"Partial content",
"content":{
"application/octet-stream":{
"schema":{
"type":"string",
"format":"binary",
"description":"Partial file binary stream response."
}
}
}
},
"400":{
"description":"Bad Request",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ApiError"
},
"examples":{
"Bad request":{
"summary":"Bad request",
"value":{
"errorCode":"E400",
"description":"Request cannot be processed.",
"action":"Check the syntax, violations and adjust the request.",
"violations":[
{
"property":"property.path",
"violation":"Violation message."
}
],
"resources":[]
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiError401"
},
"403":{
"$ref":"#/components/responses/ApiError403"
},
"404":{
"$ref":"#/components/responses/ApiError404"
},
"429":{
"$ref":"#/components/responses/ApiError429"
},
"500":{
"$ref":"#/components/responses/ApiError500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"webrtc:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":10,
"numberOfTimeUnits":0,
"timeUnit":"m"
}
]
}
},
"/call-link/1/links":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-links"
],
"summary":"Get call links",
"description":"Use this method to retrieve all call links.",
"operationId":"get-call-links",
"parameters":[
{
"name":"page",
"in":"query",
"description":"Results page to retrieve (0..N).",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"format":"int32",
"default":0,
"minimum":0
}
},
{
"name":"size",
"in":"query",
"description":"Number of records per page.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"format":"int32",
"default":20,
"maximum":100,
"minimum":1
}
}
],
"responses":{
"200":{
"description":"Success.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/d32f709b8e696d073f5212b1e1d90721a8fd1118bf2c8abce078bf2baf7d1707.CallLinkPage"
},
"examples":{
"Call Link Page Response":{
"summary":"Call Link Page Response",
"value":{
"results":[
{
"id":"r9wpIY",
"identity":"john",
"displayName":"John Doe",
"destination":{
"identity":"bob",
"type":"WEBRTC"
},
"customData":{
"city":"New York",
"language":"en"
},
"validityWindow":{
"oneTime":true,
"startTime":"2026-07-17T13:37:13.088+0000",
"endTime":"2026-07-18T13:37:13.088+0000"
},
"callLinkConfigId":"638dbdc6ecede164c3799d04"
},
{
"id":"1234",
"identity":"jane",
"displayName":"Jane Doe",
"destination":{
"identity":"bob",
"type":"WEBRTC"
}
}
],
"paging":{
"page":0,
"size":10,
"totalPages":1,
"totalResults":2
}
}
}
}
}
}
},
"400":{
"description":"Bad request.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:link:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
},
"post":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-links"
],
"summary":"Create call link",
"description":"Create a link to send to someone who will then initiate a call.",
"operationId":"create-call-link",
"requestBody":{
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ae8a6eecccfb565f1840ac10e7bfb960a35d1e256ae31abf1bdea45a1d2f5557.CallLinkRequest"
},
"examples":{
"Call Link":{
"summary":"Call Link",
"value":{
"destination":{
"identity":"bob",
"type":"WEBRTC"
},
"validityWindow":{
"oneTime":true,
"startTime":"2026-07-17T13:37:13.088+0000",
"endTime":"2026-07-18T13:37:13.088+0000"
},
"callLinkConfigId":"638dbdc6ecede164c3799d04"
}
},
"Call Link with identity":{
"summary":"Call Link with identity",
"value":{
"identity":"alice",
"destination":{
"identity":"bob",
"type":"WEBRTC"
},
"validityWindow":{
"oneTime":true,
"startTime":"2026-07-17T13:37:13.088+0000",
"endTime":"2026-07-18T13:37:13.088+0000"
},
"callLinkConfigId":"638dbdc6ecede164c3799d04"
}
},
"Call Link with validity window":{
"summary":"Call Link with validity window",
"value":{
"destination":{
"identity":"bob",
"type":"WEBRTC"
},
"validityWindow":{
"oneTime":true,
"startTime":"2026-07-17T13:37:13.088+0000",
"endTime":"2026-07-18T13:37:13.088+0000",
"acceptableHours":{
"start":{
"hour":8,
"minute":0
},
"end":{
"hour":17,
"minute":0
}
},
"acceptableDays":[
"MONDAY",
"TUESDAY",
"WEDNESDAY",
"THURSDAY",
"FRIDAY",
"SATURDAY",
"SUNDAY"
]
}
}
},
"Call Link with custom data":{
"summary":"Call Link with custom data",
"value":{
"destination":{
"identity":"bob",
"type":"WEBRTC"
},
"customData":{
"city":"New York",
"language":"en"
},
"validityWindow":{
"oneTime":true,
"startTime":"2026-07-17T13:37:13.088+0000",
"endTime":"2026-07-18T13:37:13.088+0000"
}
}
},
"Call Link with all options":{
"summary":"Call Link with all options",
"value":{
"identity":"alice",
"displayName":"Alice",
"destination":{
"identity":"bob",
"type":"WEBRTC"
},
"customData":{
"city":"New York",
"language":"en"
},
"validityWindow":{
"oneTime":true,
"startTime":"2026-07-17T13:37:13.088+0000",
"endTime":"2026-07-18T13:37:13.088+0000"
},
"callLinkConfigId":"638dbdc6ecede164c3799d04"
}
},
"Call link for phone destination":{
"summary":"Call link for phone destination",
"value":{
"destination":{
"phoneNumber":"38761111222",
"type":"PHONE"
}
}
},
"Call link for phone destination with from phone number":{
"summary":"Call link for phone destination with from phone number",
"value":{
"destination":{
"phoneNumber":"38761111222",
"from":"38762222333",
"type":"PHONE"
}
}
},
"Call link for phone with machine detection":{
"summary":"Call link for phone with machine detection",
"value":{
"destination":{
"phoneNumber":"38761111222",
"machineDetection":{
"enabled":true,
"detectionTime":3.7
},
"type":"PHONE"
}
}
},
"Call link for viber destination":{
"summary":"Call link for viber destination",
"value":{
"destination":{
"phoneNumber":"38762000000",
"from":"38762111111",
"type":"VIBER"
}
}
},
"Call link for room destination":{
"summary":"Call link for room destination",
"value":{
"destination":{
"roomName":"Conference room",
"type":"ROOM"
}
}
},
"Call link for application destination":{
"summary":"Call link for application destination",
"value":{
"destination":{
"callsConfigurationId":"01b06592152e08646b08c056",
"type":"APPLICATION"
}
}
},
"Call link for conversations destination":{
"summary":"Call link for conversations destination",
"value":{
"destination":{
"type":"CONVERSATIONS"
}
}
}
}
}
},
"required":true
},
"responses":{
"201":{
"description":"Created",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ae8a6eecccfb565f1840ac10e7bfb960a35d1e256ae31abf1bdea45a1d2f5557.CallLinkResponse"
},
"examples":{
"Call Link Response":{
"summary":"Call Link Response",
"value":{
"id":"r9wpIY",
"url":"https://call-link.com/r9wpIY"
}
}
}
}
}
},
"400":{
"description":"Bad request.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:link:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":200,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/call-link/1/links/{id}":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-links"
],
"summary":"Get call link",
"description":"Use this method to get a call link by its ID.",
"operationId":"get-call-link",
"parameters":[
{
"name":"id",
"in":"path",
"description":"ID of a call link.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
}
}
],
"responses":{
"200":{
"description":"Success.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ae8a6eecccfb565f1840ac10e7bfb960a35d1e256ae31abf1bdea45a1d2f5557.CallLink"
}
}
}
},
"400":{
"description":"Bad request.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"$ref":"#/components/responses/ApiException404"
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:link:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
},
"delete":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-links"
],
"summary":"Delete call link",
"description":"Use this method to delete a call link by its ID.",
"operationId":"delete-call-link",
"parameters":[
{
"name":"id",
"in":"path",
"description":"ID of a call link to delete.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
}
}
],
"responses":{
"200":{
"description":"Success.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ae8a6eecccfb565f1840ac10e7bfb960a35d1e256ae31abf1bdea45a1d2f5557.CallLink"
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:link:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/call-link/1/configs":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-configs"
],
"summary":"Get configurations",
"description":"Use this method to retrieve all call link configurations.",
"operationId":"get-configs",
"parameters":[
{
"name":"page",
"in":"query",
"description":"Results page to retrieve (0..N).",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"format":"int32",
"default":0,
"minimum":0
}
},
{
"name":"size",
"in":"query",
"description":"Number of records per page.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"format":"int32",
"default":20,
"maximum":100,
"minimum":1
}
}
],
"responses":{
"200":{
"description":"Success.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/d32f709b8e696d073f5212b1e1d90721a8fd1118bf2c8abce078bf2baf7d1707.CallLinkConfigPage"
},
"examples":{
"Call Link Config Page Response":{
"summary":"Call Link Config Page Response",
"value":{
"results":[
{
"name":"Company name",
"initialOptions":{
"audio":true,
"video":false,
"muted":false,
"cameraFacingMode":"FRONT"
},
"callOptions":{
"mute":true,
"screenShare":true,
"switchCameraFacingMode":true,
"dialPad":true
},
"theme":{
"images":{
"logoImageId":"638dbe28ecede164c3799d06",
"backgroundImageId":"638dbe0cecede164c3799d05"
},
"messages":{
"welcomeText":"Call link page",
"inactiveText":"This link is no longer active.",
"expirationText":"This link has expired"
},
"colors":{
"primary":"D8D8D8",
"primaryText":"242424",
"background":"FFFFFF"
}
}
},
{
"name":"Company name",
"theme":{
"images":{
"logoImageId":"638dbe28ecede164c3799d06",
"backgroundImageId":"638dbe0cecede164c3799d05"
},
"messages":{
"welcomeText":"Call link page",
"inactiveText":"This link is no longer active.",
"expirationText":"This link has expired"
},
"colors":{
"primary":"D8D8D8",
"primaryText":"242424",
"background":"FFFFFF"
}
}
}
],
"paging":{
"page":0,
"size":10,
"totalPages":1,
"totalResults":2
}
}
}
}
}
}
},
"400":{
"description":"Bad request.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:configuration:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
},
"post":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-configs"
],
"summary":"Create configuration",
"description":"Use this method to add a new call link configuration.",
"operationId":"create-config",
"requestBody":{
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/b2a108c706e7d46b95495b161a8c99f5751c046c5e419f6f0780788488a1af14.CallLinkConfigRequest"
},
"examples":{
"Call Link Config with initial options":{
"summary":"Call Link Config with initial options",
"value":{
"name":"Company name",
"initialOptions":{
"audio":true,
"video":false,
"muted":false,
"cameraFacingMode":"FRONT"
}
}
},
"Call Link Config with theme":{
"summary":"Call Link Config with theme",
"value":{
"name":"Company name",
"theme":{
"images":{
"logoImageId":"638dbe28ecede164c3799d06",
"backgroundImageId":"638dbe0cecede164c3799d05"
},
"messages":{
"welcomeText":"Call link page",
"inactiveText":"This link is no longer active.",
"expirationText":"This link has expired"
},
"colors":{
"primary":"D8D8D8",
"primaryText":"242424",
"background":"FFFFFF"
}
}
}
},
"Call Link Config with all options":{
"summary":"Call Link Config with all options",
"value":{
"name":"Company name",
"initialOptions":{
"audio":true,
"video":false,
"muted":false,
"cameraFacingMode":"FRONT"
},
"callOptions":{
"mute":true,
"screenShare":true,
"switchCameraFacingMode":true,
"dialPad":true
},
"theme":{
"images":{
"logoImageId":"638dbe28ecede164c3799d06",
"backgroundImageId":"638dbe0cecede164c3799d05"
},
"messages":{
"welcomeText":"Call link page",
"inactiveText":"This link is no longer active.",
"expirationText":"This link has expired"
},
"colors":{
"primary":"D8D8D8",
"primaryText":"242424",
"background":"FFFFFF"
}
}
}
}
}
}
},
"required":true
},
"responses":{
"201":{
"description":"Created",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/b2a108c706e7d46b95495b161a8c99f5751c046c5e419f6f0780788488a1af14.CallLinkConfig"
},
"examples":{
"Call Link Config Response":{
"summary":"Call Link Config Response",
"value":{
"id":"638dbdc6ecede164c3799d04",
"name":"Company name",
"isDefault":true,
"initialOptions":{
"audio":true,
"video":false,
"muted":false,
"cameraFacingMode":"FRONT"
},
"callOptions":{
"mute":true,
"screenShare":true,
"switchCameraFacingMode":true,
"dialPad":true
},
"theme":{
"images":{
"logoImageId":"638dbe28ecede164c3799d06",
"backgroundImageId":"638dbe0cecede164c3799d05"
},
"messages":{
"welcomeText":"Call link page",
"inactiveText":"This link is no longer active.",
"expirationText":"This link has expired"
},
"colors":{
"primary":"D8D8D8",
"primaryText":"242424",
"background":"FFFFFF"
}
}
}
}
}
}
}
},
"400":{
"description":"Bad request.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:configuration:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/call-link/1/configs/{id}":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-configs"
],
"summary":"Get configuration",
"description":"Use this method to retrieve a call link configuration by its ID.",
"operationId":"get-config",
"parameters":[
{
"name":"id",
"in":"path",
"description":"ID of a call link configuration to load.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
}
}
],
"responses":{
"200":{
"description":"Success.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/b2a108c706e7d46b95495b161a8c99f5751c046c5e419f6f0780788488a1af14.CallLinkConfig"
},
"examples":{
"Call Link Config Response":{
"summary":"Call Link Config Response",
"value":{
"id":"638dbdc6ecede164c3799d04",
"name":"Company name",
"isDefault":true,
"initialOptions":{
"audio":true,
"video":false,
"muted":false,
"cameraFacingMode":"FRONT"
},
"callOptions":{
"mute":true,
"screenShare":true,
"switchCameraFacingMode":true,
"dialPad":true
},
"theme":{
"images":{
"logoImageId":"638dbe28ecede164c3799d06",
"backgroundImageId":"638dbe0cecede164c3799d05"
},
"messages":{
"welcomeText":"Call link page",
"inactiveText":"This link is no longer active.",
"expirationText":"This link has expired"
},
"colors":{
"primary":"D8D8D8",
"primaryText":"242424",
"background":"FFFFFF"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:configuration:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
},
"put":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-configs"
],
"summary":"Update a configuration",
"description":"Use this method to overwrite a call link configuration.\nNew values for configuration attributes replace the existing ones. If no value is passed,\nthe attribute is set to empty or to default, if available.",
"operationId":"update-config",
"parameters":[
{
"name":"id",
"in":"path",
"description":"ID of a call link configuration to update.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
}
}
],
"requestBody":{
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/b2a108c706e7d46b95495b161a8c99f5751c046c5e419f6f0780788488a1af14.CallLinkConfigRequest"
},
"examples":{
"Call Link Config with initial options":{
"summary":"Call Link Config with initial options",
"value":{
"name":"Company name",
"initialOptions":{
"audio":true,
"video":false,
"muted":false,
"cameraFacingMode":"FRONT"
}
}
},
"Call Link Config with theme":{
"summary":"Call Link Config with theme",
"value":{
"name":"Company name",
"theme":{
"images":{
"logoImageId":"638dbe28ecede164c3799d06",
"backgroundImageId":"638dbe0cecede164c3799d05"
},
"messages":{
"welcomeText":"Call link page",
"inactiveText":"This link is no longer active.",
"expirationText":"This link has expired"
},
"colors":{
"primary":"D8D8D8",
"primaryText":"242424",
"background":"FFFFFF"
}
}
}
},
"Call Link Config with all options":{
"summary":"Call Link Config with all options",
"value":{
"name":"Company name",
"initialOptions":{
"audio":true,
"video":false,
"muted":false,
"cameraFacingMode":"FRONT"
},
"callOptions":{
"mute":true,
"screenShare":true,
"switchCameraFacingMode":true,
"dialPad":true
},
"theme":{
"images":{
"logoImageId":"638dbe28ecede164c3799d06",
"backgroundImageId":"638dbe0cecede164c3799d05"
},
"messages":{
"welcomeText":"Call link page",
"inactiveText":"This link is no longer active.",
"expirationText":"This link has expired"
},
"colors":{
"primary":"D8D8D8",
"primaryText":"242424",
"background":"FFFFFF"
}
}
}
}
}
}
},
"required":true
},
"responses":{
"200":{
"description":"Success.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/b2a108c706e7d46b95495b161a8c99f5751c046c5e419f6f0780788488a1af14.CallLinkConfig"
},
"examples":{
"Call Link Config Response":{
"summary":"Call Link Config Response",
"value":{
"id":"638dbdc6ecede164c3799d04",
"name":"Company name",
"isDefault":true,
"initialOptions":{
"audio":true,
"video":false,
"muted":false,
"cameraFacingMode":"FRONT"
},
"callOptions":{
"mute":true,
"screenShare":true,
"switchCameraFacingMode":true,
"dialPad":true
},
"theme":{
"images":{
"logoImageId":"638dbe28ecede164c3799d06",
"backgroundImageId":"638dbe0cecede164c3799d05"
},
"messages":{
"welcomeText":"Call link page",
"inactiveText":"This link is no longer active.",
"expirationText":"This link has expired"
},
"colors":{
"primary":"D8D8D8",
"primaryText":"242424",
"background":"FFFFFF"
}
}
}
}
}
}
}
},
"400":{
"description":"Bad request.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:configuration:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
},
"delete":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-configs"
],
"summary":"Delete configuration",
"description":"Use this method to delete a call link configuration by its ID.",
"operationId":"delete-config",
"parameters":[
{
"name":"id",
"in":"path",
"description":"ID of a call link configuration to delete.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
}
}
],
"responses":{
"200":{
"description":"Success.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/b2a108c706e7d46b95495b161a8c99f5751c046c5e419f6f0780788488a1af14.CallLinkConfig"
},
"examples":{
"Call Link Config Response":{
"summary":"Call Link Config Response",
"value":{
"id":"638dbdc6ecede164c3799d04",
"name":"Company name",
"isDefault":true,
"initialOptions":{
"audio":true,
"video":false,
"muted":false,
"cameraFacingMode":"FRONT"
},
"callOptions":{
"mute":true,
"screenShare":true,
"switchCameraFacingMode":true,
"dialPad":true
},
"theme":{
"images":{
"logoImageId":"638dbe28ecede164c3799d06",
"backgroundImageId":"638dbe0cecede164c3799d05"
},
"messages":{
"welcomeText":"Call link page",
"inactiveText":"This link is no longer active.",
"expirationText":"This link has expired"
},
"colors":{
"primary":"D8D8D8",
"primaryText":"242424",
"background":"FFFFFF"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:configuration:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
},
"patch":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-configs"
],
"summary":"Partial configuration update",
"description":"Use this method to update a call link configuration.\nNew values for configuration attributes replace the existing ones. If no value is passed in the request, the attribute keeps its value.",
"operationId":"patch-config",
"parameters":[
{
"name":"id",
"in":"path",
"description":"ID of a call link configuration to update.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
}
}
],
"requestBody":{
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/b2a108c706e7d46b95495b161a8c99f5751c046c5e419f6f0780788488a1af14.CallLinkConfigRequest"
},
"examples":{
"Call Link Config with initial options":{
"summary":"Call Link Config with initial options",
"value":{
"name":"Company name",
"initialOptions":{
"audio":true,
"video":false,
"muted":false,
"cameraFacingMode":"FRONT"
}
}
},
"Call Link Config with theme":{
"summary":"Call Link Config with theme",
"value":{
"name":"Company name",
"theme":{
"images":{
"logoImageId":"638dbe28ecede164c3799d06",
"backgroundImageId":"638dbe0cecede164c3799d05"
},
"messages":{
"welcomeText":"Call link page",
"inactiveText":"This link is no longer active.",
"expirationText":"This link has expired"
},
"colors":{
"primary":"D8D8D8",
"primaryText":"242424",
"background":"FFFFFF"
}
}
}
},
"Call Link Config with all options":{
"summary":"Call Link Config with all options",
"value":{
"name":"Company name",
"initialOptions":{
"audio":true,
"video":false,
"muted":false,
"cameraFacingMode":"FRONT"
},
"callOptions":{
"mute":true,
"screenShare":true,
"switchCameraFacingMode":true,
"dialPad":true
},
"theme":{
"images":{
"logoImageId":"638dbe28ecede164c3799d06",
"backgroundImageId":"638dbe0cecede164c3799d05"
},
"messages":{
"welcomeText":"Call link page",
"inactiveText":"This link is no longer active.",
"expirationText":"This link has expired"
},
"colors":{
"primary":"D8D8D8",
"primaryText":"242424",
"background":"FFFFFF"
}
}
}
}
}
}
},
"required":true
},
"responses":{
"200":{
"description":"Success.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/b2a108c706e7d46b95495b161a8c99f5751c046c5e419f6f0780788488a1af14.CallLinkConfig"
},
"examples":{
"Call Link Config Response":{
"summary":"Call Link Config Response",
"value":{
"id":"638dbdc6ecede164c3799d04",
"name":"Company name",
"isDefault":true,
"initialOptions":{
"audio":true,
"video":false,
"muted":false,
"cameraFacingMode":"FRONT"
},
"callOptions":{
"mute":true,
"screenShare":true,
"switchCameraFacingMode":true,
"dialPad":true
},
"theme":{
"images":{
"logoImageId":"638dbe28ecede164c3799d06",
"backgroundImageId":"638dbe0cecede164c3799d05"
},
"messages":{
"welcomeText":"Call link page",
"inactiveText":"This link is no longer active.",
"expirationText":"This link has expired"
},
"colors":{
"primary":"D8D8D8",
"primaryText":"242424",
"background":"FFFFFF"
}
}
}
}
}
}
}
},
"400":{
"description":"Bad request.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:configuration:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/call-link/1/images":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-config-images"
],
"summary":"Get images",
"description":"Use this method to retrieve all images.",
"operationId":"get-images",
"parameters":[
{
"name":"page",
"in":"query",
"description":"Results page to retrieve (0..N).",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"format":"int32",
"default":0,
"minimum":0
}
},
{
"name":"size",
"in":"query",
"description":"Number of records per page.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"format":"int32",
"default":20,
"maximum":100,
"minimum":1
}
}
],
"responses":{
"200":{
"description":"Success.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/d32f709b8e696d073f5212b1e1d90721a8fd1118bf2c8abce078bf2baf7d1707.ImagePage"
},
"examples":{
"Image Page Response":{
"summary":"Image Page Response",
"value":{
"results":[
{
"id":"638f29f0ee8f0c1da369a722",
"name":"logo.png",
"type":"LOGO",
"size":512
},
{
"id":"968f29f0ee8f0c1da369a545",
"name":"background.jpg",
"type":"BACKGROUND",
"size":1512
}
],
"paging":{
"page":0,
"size":10,
"totalPages":1,
"totalResults":2
}
}
}
}
}
}
},
"400":{
"description":"Bad request.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:configuration:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/call-link/1/images/upload/{type}":{
"post":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-config-images"
],
"summary":"Upload image",
"description":"Use this method to upload an image.",
"operationId":"upload-image",
"parameters":[
{
"name":"type",
"in":"path",
"description":"Image type, LOGO or BACKGROUND.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ImageType"
}
}
],
"requestBody":{
"content":{
"multipart/form-data":{
"schema":{
"type":"object",
"properties":{
"file":{
"type":"string",
"format":"binary",
"description":"Multipart file data of an image. Max file size of LOGO type is 1MB with max resolution of 100x100. Max file size of BACKGROUND type is 10MB with max resolution of 2000x2000. Acceptable file formats are: .jpeg, .jpg and .png."
}
},
"required":[
"file"
]
}
}
}
},
"responses":{
"201":{
"description":"Created",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/bced1b5de5a3082b5f8ce3c272029f66a05beaf3b2db4fdc852bd1a5393c0582.ImageResponse"
},
"examples":{
"Image Response":{
"summary":"Image Response",
"value":{
"id":"638f29f0ee8f0c1da369a722",
"name":"logo.png",
"type":"LOGO",
"size":512
}
}
}
}
}
},
"400":{
"description":"Bad request.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"$ref":"#/components/responses/ApiException404"
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:configuration:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/call-link/1/images/{id}":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-config-images"
],
"summary":"Get image",
"description":"Use this method to get an image.",
"operationId":"get-image",
"parameters":[
{
"name":"id",
"in":"path",
"description":"ID of an image.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
}
}
],
"responses":{
"200":{
"description":"Success.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/bced1b5de5a3082b5f8ce3c272029f66a05beaf3b2db4fdc852bd1a5393c0582.ImageResponse"
},
"examples":{
"Image Response":{
"summary":"Image Response",
"value":{
"id":"638f29f0ee8f0c1da369a722",
"name":"logo.png",
"type":"LOGO",
"size":512
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:configuration:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
},
"delete":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-config-images"
],
"summary":"Delete image",
"description":"Use this method to delete a call link configuration image.",
"operationId":"delete-image",
"parameters":[
{
"name":"id",
"in":"path",
"description":"ID of an image to delete.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
}
}
],
"responses":{
"200":{
"description":"Success.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/bced1b5de5a3082b5f8ce3c272029f66a05beaf3b2db4fdc852bd1a5393c0582.ImageResponse"
},
"examples":{
"Image Response":{
"summary":"Image Response",
"value":{
"id":"638f29f0ee8f0c1da369a722",
"name":"logo.png",
"type":"LOGO",
"size":512
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:configuration:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/call-link/1/subdomains":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-subdomains"
],
"summary":"Get subdomains",
"description":"Use this method to get all subdomains.",
"operationId":"get-subdomains",
"responses":{
"200":{
"description":"OK",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/d32f709b8e696d073f5212b1e1d90721a8fd1118bf2c8abce078bf2baf7d1707.SubdomainPage"
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:configuration:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
},
"post":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-subdomains"
],
"summary":"Create subdomain",
"description":"Use this method to add a new call link subdomain. Maximum number of domains is 3. Cannot contain \".\".",
"operationId":"create-subdomain",
"requestBody":{
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/febbeec59369f28c0a6e3ddd1a2666aea9869953e0893914d340d35c6901410c.SubdomainRequest"
},
"examples":{
"Call Link Subdomain":{
"summary":"Call Link Subdomain",
"value":{
"name":"infobip"
}
}
}
}
},
"required":true
},
"responses":{
"200":{
"description":"Success.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/febbeec59369f28c0a6e3ddd1a2666aea9869953e0893914d340d35c6901410c.Subdomain"
}
}
}
},
"400":{
"$ref":"#/components/responses/ApiException400"
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:configuration:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/call-link/1/subdomains/{id}":{
"delete":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-subdomains"
],
"summary":"Delete subdomain",
"description":"Use this method to delete a subdomain by its ID.",
"operationId":"delete-subdomain",
"parameters":[
{
"name":"id",
"in":"path",
"description":"ID of a call link subdomain to delete.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
}
}
],
"responses":{
"200":{
"description":"Success.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/febbeec59369f28c0a6e3ddd1a2666aea9869953e0893914d340d35c6901410c.Subdomain"
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"calllink:configuration:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/call-link/1/recordings":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-recordings"
],
"summary":"Get call link recordings",
"description":"Use this method to filter and retrieve call link recordings.",
"operationId":"get-call-link-recordings",
"parameters":[
{
"name":"sortBy",
"in":"query",
"description":"Field that will be used for sorting.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.RecordingSortColumn"
},
"example":"START_TIME"
},
{
"name":"sortDirection",
"in":"query",
"description":"Order in which files will be sorted based on sortBy field.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.SortDirection"
},
"example":"DESC"
},
{
"name":"destinationData",
"in":"query",
"description":"Destination the call was made towards. For WEBRTC calls, this is the WebRTC identity. For PHONE calls, this is the phone number. For ROOM calls, this is the room name.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"string"
},
"example":"+1234567890"
},
{
"name":"destinationType",
"in":"query",
"description":"Type of call link destination.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallLinkDestination"
},
"example":"PHONE"
},
{
"name":"callLinkConfigId",
"in":"query",
"description":"ID of the call link configuration used to establish the recorded call.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"string"
},
"example":"685bede487a709487c584f91"
},
{
"name":"callLinkId",
"in":"query",
"description":"ID of a call link used to establish the recorded call.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"string"
},
"example":"55a523d1-b769-4466-a4a9-f610899569e5"
},
{
"name":"startTimeAfter",
"in":"query",
"description":"Date and time when the (first) call recording started.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"string",
"format":"date-time"
},
"example":"2025-01-01T00:00:00.000+0000"
},
{
"name":"startTimeBefore",
"in":"query",
"description":"Date and time when the (last) call recording started.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"string",
"format":"date-time"
},
"example":"2025-01-01T00:00:00.000+0000"
},
{
"name":"location",
"in":"query",
"description":"Recording location.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.RecordingLocation"
},
"example":"FRANKFURT"
},
{
"name":"page",
"in":"query",
"description":"Page number for pagination, starting from 0.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"default":0,
"minimum":0
}
},
{
"name":"size",
"in":"query",
"description":"Number of items per page, maximum is 100.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"type":"integer",
"default":10,
"maximum":100,
"minimum":1
}
}
],
"responses":{
"200":{
"description":"Success.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/d32f709b8e696d073f5212b1e1d90721a8fd1118bf2c8abce078bf2baf7d1707.RecordingPage"
},
"examples":{
"Recording Page":{
"summary":"Recording Page",
"value":[
{
"application":{
"id":"2e75743a-7626-425c-879c-19e7f6111359",
"callLinkId":"34QubX",
"callLinkConfigId":"63f742074d09a250fdc74025",
"destinationType":"PHONE",
"destinationData":"+1234567890",
"type":"CALL_LINK"
},
"recording":{
"composedFiles":[
{
"id":"d8d84155-3831-43fb-91c9-bb897149a79d",
"name":"d8d84155-3831-43fb-91c9-bb897149a79d_1652725357412.wav",
"fileFormat":"WAV",
"size":67564,
"startTime":"2024-05-01T14:25:45.125+0000",
"endTime":"2024-05-01T14:26:45.125+0000",
"creationTime":"2024-05-01T14:26:48.125+0000",
"duration":60,
"location":"HOSTED",
"customData":{
"key1":"value1"
}
}
],
"callRecordings":[
{
"callId":"d8d84155-3831-43fb-91c9-bb897149a79d",
"endpoint":{
"identity":"phoneCaller",
"displayName":null,
"type":"WEBRTC"
},
"direction":"INBOUND",
"status":"SUCCESSFUL",
"files":[
{
"id":"564202f9-4788-4766-866c-6a58f4058dac",
"name":"564202f9-4788-4766-866c-6a58f4058dac.wav",
"fileFormat":"WAV",
"size":123456,
"startTime":"2024-05-01T14:25:45.125+0000",
"endTime":"2024-05-01T14:26:45.125+0000",
"creationTime":"2024-05-01T14:26:48.125+0000",
"duration":60,
"location":"HOSTED",
"customData":{
"key1":"value1"
}
}
]
},
{
"callId":"9b793eeb-31e7-4a39-bf24-a267777b0313",
"endpoint":{
"phoneNumber":"32475388773",
"type":"PHONE"
},
"direction":"OUTBOUND",
"status":"SUCCESSFUL",
"files":[
{
"id":"c8f2817c-e2cd-47f1-ac40-2558d74c5c7b",
"name":"c8f2817c-e2cd-47f1-ac40-2558d74c5c7b.wav",
"fileFormat":"WAV",
"size":123456,
"startTime":"2024-05-01T14:25:45.125+0000",
"endTime":"2024-05-01T14:26:45.125+0000",
"creationTime":"2024-05-01T14:26:48.125+0000",
"duration":60,
"location":"HOSTED",
"customData":{
"key1":"value1"
}
}
]
}
]
}
}
]
}
}
}
}
},
"400":{
"description":"Bad request.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"voice:recording:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/call-link/1/recordings/{id}":{
"delete":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-recordings"
],
"summary":"Delete call link recording",
"description":"Use this method to delete a call link recording by its ID.",
"operationId":"delete-call-link-recording",
"parameters":[
{
"name":"id",
"in":"path",
"description":"ID of the recording to delete.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
},
"example":"55a523d1-b769-4466-a4a9-f610899569e5"
},
{
"name":"location",
"in":"query",
"description":"Recording location.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.RecordingLocation"
},
"example":"FRANKFURT"
}
],
"responses":{
"200":{
"description":"Success.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/73e6f414ccb2e1e41274c061b50cf5765f69b642a3e0cca54b0248eb3baf086d.RecordingResponse"
},
"examples":{
"Recording Response":{
"summary":"Recording Response",
"value":{
"application":{
"id":"2e75743a-7626-425c-879c-19e7f6111359",
"callLinkId":"34QubX",
"callLinkConfigId":"63f742074d09a250fdc74025",
"destinationType":"PHONE",
"destinationData":"+1234567890",
"type":"CALL_LINK"
},
"recording":{
"composedFiles":[
{
"id":"d8d84155-3831-43fb-91c9-bb897149a79d",
"name":"d8d84155-3831-43fb-91c9-bb897149a79d_1652725357412.wav",
"fileFormat":"WAV",
"size":67564,
"startTime":"2024-05-01T14:25:45.125+0000",
"endTime":"2024-05-01T14:26:45.125+0000",
"creationTime":"2024-05-01T14:26:48.125+0000",
"duration":60,
"location":"HOSTED",
"customData":{
"key1":"value1"
}
}
],
"callRecordings":[
{
"callId":"d8d84155-3831-43fb-91c9-bb897149a79d",
"endpoint":{
"identity":"phoneCaller",
"displayName":null,
"type":"WEBRTC"
},
"direction":"INBOUND",
"status":"SUCCESSFUL",
"files":[
{
"id":"564202f9-4788-4766-866c-6a58f4058dac",
"name":"564202f9-4788-4766-866c-6a58f4058dac.wav",
"fileFormat":"WAV",
"size":123456,
"startTime":"2024-05-01T14:25:45.125+0000",
"endTime":"2024-05-01T14:26:45.125+0000",
"creationTime":"2024-05-01T14:26:48.125+0000",
"duration":60,
"location":"HOSTED",
"customData":{
"key1":"value1"
}
}
]
},
{
"callId":"9b793eeb-31e7-4a39-bf24-a267777b0313",
"endpoint":{
"phoneNumber":"32475388773",
"type":"PHONE"
},
"direction":"OUTBOUND",
"status":"SUCCESSFUL",
"files":[
{
"id":"c8f2817c-e2cd-47f1-ac40-2558d74c5c7b",
"name":"c8f2817c-e2cd-47f1-ac40-2558d74c5c7b.wav",
"fileFormat":"WAV",
"size":123456,
"startTime":"2024-05-01T14:25:45.125+0000",
"endTime":"2024-05-01T14:26:45.125+0000",
"creationTime":"2024-05-01T14:26:48.125+0000",
"duration":60,
"location":"HOSTED",
"customData":{
"key1":"value1"
}
}
]
}
]
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"voice:recording:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
},
"/call-link/1/recordings/files/{fileId}":{
"get":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-recordings"
],
"summary":"Download a recording file",
"description":"Use this method to download a recording file by its ID.",
"operationId":"download-call-link-recording",
"parameters":[
{
"name":"fileId",
"in":"path",
"description":"File ID to match.",
"required":true,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
},
"example":"d8d84155-3831-43fb-91c9-bb897149a79d"
},
{
"name":"location",
"in":"query",
"description":"Recording location.",
"required":false,
"style":"form",
"explode":true,
"schema":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.RecordingLocation"
},
"example":"FRANKFURT"
},
{
"name":"Range",
"in":"header",
"description":"Range header specifies range of bytes to be returned by the response. If range header is not specified, response will return a complete file.",
"required":false,
"style":"simple",
"explode":false,
"schema":{
"type":"string"
},
"example":"bytes=0-1023"
}
],
"responses":{
"200":{
"description":"Recording file downloaded successfully.",
"content":{
"application/octet-stream":{
"schema":{
"type":"string",
"format":"binary",
"description":"File binary stream response"
}
}
}
},
"400":{
"description":"Bad request.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request",
"validationErrors":{
"field":[
"field must not be null."
]
}
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"401":{
"$ref":"#/components/responses/ApiException401"
},
"403":{
"$ref":"#/components/responses/ApiException403"
},
"404":{
"description":"Not found.",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException"
},
"examples":{
"Error responses":{
"summary":"Error responses",
"description":"Error responses",
"value":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found."
}
}
}
},
"Bad request":{
"summary":"Bad request",
"value":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
}
}
}
}
},
"429":{
"$ref":"#/components/responses/ApiException429"
},
"500":{
"$ref":"#/components/responses/ApiException500"
}
},
"security":[
{
"IBSSOTokenHeader":[]
},
{
"APIKeyHeader":[]
},
{
"Basic":[]
},
{
"OAuth2":[]
}
],
"x-scopes":[
"voice:recording:manage",
"calllink:manage"
],
"x-throttling-info":[
{
"type":"time",
"numberOfRequests":50,
"numberOfTimeUnits":0,
"timeUnit":"s"
}
]
}
}
},
"components":{
"schemas":{
"0e82c38c2cac57841ec8a3a6ca825965cdf7afbcdea80ae147c9d99f5ab3a8c3.WebhookEventPayload":{
"type":"object",
"properties":{
"callLinkId":{
"type":"string",
"description":"Id of the used call link."
},
"callLinkConfigId":{
"type":"string",
"description":"Id of the call link configuration used."
},
"callDetails":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallDetails"
},
"customData":{
"type":"object",
"additionalProperties":{
"type":"string",
"description":"Custom attributes sent in a call once it has started."
},
"description":"Custom attributes sent in a call once it has started."
},
"recording":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.WebhookRecording"
},
"errorCode":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ErrorCode"
}
},
"title":"WebhookEventPayload"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.AcceptableHours":{
"type":"object",
"description":"Specify time range within a day when a link can be used. It is 00:00 - 23:59, by default. UTC timezone is used.",
"properties":{
"start":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.TimeOfDay"
},
"end":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.TimeOfDay"
}
},
"title":"AcceptableHours"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ApplicationDestination":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Destination"
},
{
"type":"object",
"properties":{
"callsConfigurationId":{
"type":"string",
"description":"Call Configuration ID.",
"pattern":"^[\\p{L}\\p{N}\\-_+=/.]{1,100}$"
}
}
}
],
"required":[
"callsConfigurationId"
],
"title":"ApplicationDestination"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ApplicationType":{
"type":"string",
"enum":[
"CALL_LINK"
],
"title":"ApplicationType"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.BasicSecurityConfig":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.SecurityConfig"
},
{
"type":"object",
"properties":{
"username":{
"type":"string",
"description":"Username."
},
"password":{
"type":"string",
"description":"Password."
}
}
}
],
"required":[
"password",
"username"
],
"title":"BasicSecurityConfig"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.BrowserDetectedLocalization":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Localization"
}
],
"title":"BrowserDetectedLocalization"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallDetails":{
"type":"object",
"description":"Call details.",
"discriminator":{
"propertyName":"type",
"mapping":{
"WEBRTC":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.WebRtcCallDetails",
"ROOM":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.RoomCallDetails",
"PHONE":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.PhoneCallDetails"
}
},
"properties":{
"type":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.DestinationType"
}
},
"title":"CallDetails"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallDirection":{
"type":"string",
"description":"Call direction.",
"enum":[
"INBOUND",
"OUTBOUND"
],
"title":"CallDirection"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallLinkApplication":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallLinkRecordingApplication"
},
{
"type":"object",
"properties":{
"id":{
"type":"string",
"description":"Call link recording identifier."
},
"callLinkId":{
"type":"string",
"description":"Call link ID used for the recorded call."
},
"callLinkConfigId":{
"type":"string",
"description":"Call link configuration ID used for the recorded call."
},
"destinationType":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallLinkDestination"
},
"destinationData":{
"type":"string",
"description":"Destination the call was made towards. For WEBRTC calls, this is the WebRTC identity. For PHONE calls, this is the phone number. For ROOM calls, this is the room name."
},
"startTime":{
"type":"string",
"format":"date-time",
"description":"Date and time when the (first) call recording started."
},
"endTime":{
"type":"string",
"format":"date-time",
"description":"Date and time when the (last) call recording ended."
}
}
}
],
"required":[
"callLinkId",
"destinationData",
"destinationType",
"id",
"type"
],
"title":"CallLinkApplication"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallLinkDestination":{
"type":"string",
"description":"Destination type.",
"enum":[
"ROOM",
"WEBRTC",
"PHONE"
],
"title":"CallLinkDestination"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallLinkRecordingApplication":{
"type":"object",
"description":"Recording application metadata",
"discriminator":{
"propertyName":"type",
"mapping":{
"CALL_LINK":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallLinkApplication"
}
},
"properties":{
"type":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ApplicationType"
}
},
"required":[
"type"
],
"title":"CallLinkRecordingApplication"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallOptions":{
"type":"object",
"description":"User options available during a call. Depending on the fields, certain options for a call will be shown to a user.",
"properties":{
"mute":{
"type":"boolean",
"default":true,
"description":"User will be able to mute themselves during the call."
},
"screenShare":{
"type":"boolean",
"default":true,
"description":"User will be able to share the screen during the call."
},
"camera":{
"type":"boolean",
"default":true,
"description":"User will be able to toggle the video during the call."
},
"switchCameraFacingMode":{
"type":"boolean",
"default":true,
"description":"User will be able to switch between front-facing and back camera during the call."
},
"dialPad":{
"type":"boolean",
"default":false,
"description":"User will be able to use dial pad for DTMF, during the call."
},
"chat":{
"type":"boolean",
"default":false,
"description":"Users will be able to open the chat box and send and receive text messages that are visible to all the participants. This is applicable only for the ROOM call type. Messages sent before joining the room are not visible."
},
"settings":{
"type":"boolean",
"default":true,
"description":"User will be able to access settings during the call."
},
"recordingIndicator":{
"type":"boolean",
"default":false,
"description":"User will be able to see if the call is being recorded."
}
},
"title":"CallOptions"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallRecording":{
"type":"object",
"description":"List of call recordings.",
"properties":{
"callId":{
"type":"string",
"description":"Call identifier.",
"maxLength":128
},
"endpoint":{
"type":"string",
"description":"Call endpoint. Represents a caller for the inbound calls and a callee for the outbound calls."
},
"direction":{
"type":"string",
"description":"Call direction.",
"enum":[
"INBOUND",
"OUTBOUND"
]
},
"status":{
"type":"string",
"description":"Status of call recording.",
"enum":[
"SUCCESSFUL",
"PARTIALLY_FAILED",
"FAILED"
]
},
"reason":{
"type":"string",
"description":"Reason for recording failure. Empty if call did not fail."
},
"files":{
"type":"array",
"description":"Recording files.",
"items":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.RecordingFile"
}
}
},
"title":"CallRecording"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CameraFacingMode":{
"type":"string",
"default":"FRONT",
"description":"In the case of a video call on mobile phones camera will be back or front depending on this value. It is 'FRONT' by default.",
"enum":[
"FRONT",
"BACK"
],
"title":"CameraFacingMode"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Colors":{
"type":"object",
"description":"Colors settings. If not specified, the default colors will be used.",
"properties":{
"primary":{
"type":"string",
"default":"148997",
"description":"Primary color of a theme in the hexadecimal format."
},
"primaryText":{
"type":"string",
"default":"242424",
"description":"Primary color of a text in the hexadecimal format."
},
"background":{
"type":"string",
"default":"F9F9F9",
"description":"Background color in the hexadecimal format."
}
},
"title":"Colors"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ConferenceFinalState":{
"type":"string",
"description":"Participant state.",
"enum":[
"JOINING",
"JOINED",
"LEFT"
],
"title":"ConferenceFinalState"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ConferenceParticipant":{
"type":"object",
"description":"List of participants of the call.",
"properties":{
"callId":{
"type":"string",
"description":"Id of the call leg of this participant."
},
"endpoint":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Endpoint"
},
"startTime":{
"type":"string",
"format":"date-time",
"description":"Date and time the call started. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSS+ZZZZ`."
},
"joinTime":{
"type":"string",
"format":"date-time",
"description":"Date and time the participant joined the call. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSS+ZZZZ`."
},
"leaveTime":{
"type":"string",
"format":"date-time",
"description":"Date and time the participant left the call. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSS+ZZZZ`."
},
"ringDuration":{
"type":"integer",
"format":"int32",
"description":"Number of seconds needed for the participant to answer the call."
},
"duration":{
"type":"integer",
"format":"int32",
"description":"Number of seconds the participant spent in the call."
},
"direction":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallDirection"
},
"state":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ConferenceFinalState"
},
"type":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ParticipantType"
}
},
"required":[
"state"
],
"title":"ConferenceParticipant"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ConversationsDestination":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Destination"
},
{
"type":"object",
"properties":{
"displayName":{
"type":"string",
"description":"Destination display name, if defined, that the call Link UI will use instead of an agent name. If a destination display name is an empty string, the UI will hide it."
}
}
}
],
"title":"ConversationsDestination"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.DayOfWeek":{
"type":"string",
"description":"Specify the days a link can be used. It is every day of the week, by default.",
"enum":[
"MONDAY",
"TUESDAY",
"WEDNESDAY",
"THURSDAY",
"FRIDAY",
"SATURDAY",
"SUNDAY"
],
"title":"DayOfWeek"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Destination":{
"type":"object",
"description":"Description of who or what is going to receive a call.",
"discriminator":{
"propertyName":"type",
"mapping":{
"WEBRTC":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.WebRtcDestination",
"CONVERSATIONS":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ConversationsDestination",
"PHONE":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.PhoneDestination",
"ROOM":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.RoomDestination",
"APPLICATION":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ApplicationDestination"
}
},
"example":{
"identity":"bob",
"type":"WEBRTC"
},
"properties":{
"type":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.DestinationType"
}
},
"title":"Destination"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.DestinationType":{
"type":"string",
"enum":[
"WEBRTC",
"CONVERSATIONS",
"ROOM",
"PHONE",
"VIBER",
"APPLICATION"
],
"title":"DestinationType"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.DialogFinalState":{
"type":"string",
"description":"Participant state.",
"enum":[
"FINISHED",
"FAILED",
"CANCELLED",
"NO_ANSWER",
"BUSY"
],
"title":"DialogFinalState"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.DialogParticipant":{
"type":"object",
"properties":{
"callId":{
"type":"string",
"description":"Id of the call leg of this participant."
},
"endpoint":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Endpoint"
},
"startTime":{
"type":"string",
"format":"date-time",
"description":"Date and time the call started. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSS+ZZZZ`."
},
"joinTime":{
"type":"string",
"format":"date-time",
"description":"Date and time the participant joined the call. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSS+ZZZZ`."
},
"leaveTime":{
"type":"string",
"format":"date-time",
"description":"Date and time the participant left the call. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSS+ZZZZ`."
},
"ringDuration":{
"type":"integer",
"format":"int32",
"description":"Number of seconds needed for the participant to answer the call."
},
"duration":{
"type":"integer",
"format":"int32",
"description":"Number of seconds the participant spent in the call."
},
"direction":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallDirection"
},
"state":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.DialogFinalState"
},
"type":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ParticipantType"
}
},
"required":[
"state"
],
"title":"DialogParticipant"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Endpoint":{
"type":"object",
"description":"Details about participant.",
"discriminator":{
"propertyName":"type",
"mapping":{
"WEBRTC":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.WebRtcEndpoint",
"PHONE":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.PhoneEndpoint"
}
},
"properties":{
"type":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.EndpointType"
}
},
"title":"Endpoint"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.EndpointType":{
"type":"string",
"enum":[
"PHONE",
"WEBRTC"
],
"title":"EndpointType"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ErrorCode":{
"type":"object",
"description":"Error code.",
"properties":{
"id":{
"type":"integer",
"format":"int32",
"description":"Id of the error code."
},
"name":{
"type":"string",
"description":"Name of the error code."
},
"description":{
"type":"string",
"description":"Description of the error code."
}
},
"title":"ErrorCode"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.File":{
"type":"object",
"description":"Recording file.",
"properties":{
"id":{
"type":"string",
"description":"Id of the file."
},
"name":{
"type":"string",
"description":"Name of the file."
},
"fileFormat":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.FileFormat"
}
},
"title":"File"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.FileFormat":{
"type":"string",
"description":"Format of the file.",
"enum":[
"MP3",
"WAV",
"MP4"
],
"title":"FileFormat"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.FileRecording":{
"type":"object",
"description":"List of call recordings.",
"properties":{
"callId":{
"type":"string",
"description":"Id of the call."
},
"file":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.File"
}
},
"title":"FileRecording"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.HangupRestriction":{
"type":"object",
"description":"Hangup restrictions for call link.",
"properties":{
"minRingingTime":{
"type":"integer",
"format":"int32",
"description":"The caller will not be able to hang up once the call is initiated, until the number of seconds in the ringing time reaches this value. Once the callee answers the call, there will be no hangup restrictions. If this field is not set, hangup will be possible anytime.",
"minimum":0
}
},
"title":"HangupRestriction"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.HangupSource":{
"type":"string",
"description":"Hangup source indicates who terminated the call: PLATFORM, API, or one of the participants (CALLER or CALLEE).",
"enum":[
"CALLER",
"CALLEE",
"API",
"PLATFORM"
],
"title":"HangupSource"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.HmacAlgorithm":{
"type":"string",
"description":"HMAC algorithm.",
"enum":[
"HMAC_MD5",
"HMAC_SHA_1",
"HMAC_SHA_224",
"HMAC_SHA_256",
"HMAC_SHA_384",
"HMAC_SHA_512"
],
"title":"HmacAlgorithm"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.HmacSecurityConfig":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.SecurityConfig"
},
{
"type":"object",
"properties":{
"secretKey":{
"type":"string",
"description":"Secret key."
},
"algorithm":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.HmacAlgorithm"
}
}
}
],
"required":[
"algorithm",
"secretKey"
],
"title":"HmacSecurityConfig"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ImageType":{
"type":"string",
"description":"Image type.",
"enum":[
"LOGO",
"BACKGROUND"
],
"title":"ImageType"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Images":{
"type":"object",
"description":"Enumerate images shown on a call link page. Once an image is uploaded (by using the image upload API) a unique ID returned in that response can be used to add a background image or a logo image.",
"properties":{
"logoImageId":{
"type":"string",
"description":"ID of an image shown as a logo on a call link page."
},
"backgroundImageId":{
"type":"string",
"description":"ID of an image shown as a background on a call link page."
}
},
"title":"Images"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.InitialOptions":{
"type":"object",
"description":"User options available when a user opens a call link page before initiating the call. Depending on the fields, certain options for the call will be shown to a user.",
"properties":{
"audio":{
"type":"boolean",
"default":true,
"description":"User will be able to initiate the audio call."
},
"video":{
"type":"boolean",
"default":true,
"description":"User will be able to initiate the video call."
},
"muted":{
"type":"boolean",
"default":true,
"description":"User will be muted once the call is established."
},
"settings":{
"type":"boolean",
"default":true,
"description":"User will be able to configure settings before a call."
},
"cameraFacingMode":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CameraFacingMode"
}
},
"title":"InitialOptions"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.LanguageCode":{
"type":"string",
"description":"Language code of the language you want to use.",
"enum":[
"ar-AE",
"de-DE",
"en-US",
"es-LA",
"fr-FR",
"it-IT",
"ja-JP",
"pt-BR",
"ru-RU",
"sv-SE",
"tr-TR",
"zh-Hans",
"zh-TW"
],
"title":"LanguageCode"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Layout":{
"type":"string",
"default":"[GRID]",
"description":"Represents layout during the call.When GRID layout is selected, multiple video streams are displayed simultaneously and user can spotlight specific video stream.When SOLO layout is selected, an user can see only his video streams.If there are more than one layout in this list, the first one will be initially selected, and users can change it during the call.The default layout will be set to GRID.",
"enum":[
"SOLO",
"GRID"
],
"title":"Layout"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Localization":{
"type":"object",
"description":"If the localization object is not defined, English will be used. If the localization type is set to PRESET, the language code is mandatory to be defined to one of the predefined values.If the localization type is set to BROWSER_DETECTED and the browser language is one of the languages that could be set in PRESET type, then that language will be used. Otherwise, English will be used.",
"discriminator":{
"propertyName":"type",
"mapping":{
"PRESET":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.PresetLocalization",
"BROWSER_DETECTED":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.BrowserDetectedLocalization"
}
},
"properties":{
"type":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.LocalizationType"
}
},
"title":"Localization"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.LocalizationType":{
"type":"string",
"enum":[
"BROWSER_DETECTED",
"PRESET"
],
"title":"LocalizationType"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.MachineDetection":{
"type":"object",
"description":"Machine detection settings for phone calls.",
"properties":{
"enabled":{
"type":"boolean",
"description":"Enable machine detection for phone calls. When enabled, the system will attempt to detect if the call is answered by a voicemail or answering machine."
},
"detectionTime":{
"type":"number",
"format":"double",
"description":"Maximum time in seconds to wait for machine detection. Only applicable when machineDetection is enabled."
}
},
"title":"MachineDetection"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.MachineDetectionResult":{
"type":"string",
"description":"Machine detection indicates whether the call was answered by a machine (MACHINE) or a human (HUMAN). If machine detection was not enabled or did not return a conclusive result, it will return null (NULL).",
"enum":[
"MACHINE",
"HUMAN",
"NULL"
],
"title":"MachineDetectionResult"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Messages":{
"type":"object",
"description":"Call link messaging settings.",
"properties":{
"welcomeText":{
"type":"string",
"default":"Welcome to Call Link.",
"description":"Message shown when a call link is opened."
},
"inactiveText":{
"type":"string",
"default":"This link is not active.",
"description":"Message shown when a call link is not active."
},
"expirationText":{
"type":"string",
"default":"Link is expired.",
"description":"Message shown when a call link is expired."
}
},
"title":"Messages"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.PageInfo":{
"type":"object",
"description":"Contains information about the page.",
"properties":{
"page":{
"type":"integer",
"format":"int32",
"description":"Requested page number.",
"minimum":0
},
"size":{
"type":"integer",
"format":"int32",
"description":"Requested page size.",
"minimum":1
},
"totalPages":{
"type":"integer",
"format":"int32",
"description":"The total number of pages of the results matching the requested parameters.",
"minimum":0
},
"totalResults":{
"type":"integer",
"format":"int64",
"description":"The total number of the results matching the requested parameters.",
"minimum":0
}
},
"required":[
"page",
"size",
"totalPages",
"totalResults"
],
"title":"PageInfo"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ParticipantType":{
"type":"string",
"enum":[
"DIALOG",
"CONFERENCE"
],
"title":"ParticipantType"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.PhoneCallDetails":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallDetails"
},
{
"type":"object",
"properties":{
"caller":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.DialogParticipant"
},
"callee":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.DialogParticipant"
},
"dialogId":{
"type":"string",
"description":"Dialog identifier.",
"maxLength":128
},
"hangupSource":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.HangupSource"
},
"machineDetection":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.MachineDetectionResult"
}
}
}
],
"required":[
"callee",
"caller"
],
"title":"PhoneCallDetails"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.PhoneDestination":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Destination"
},
{
"type":"object",
"properties":{
"phoneNumber":{
"type":"string",
"description":"Phone number of a callee in the [E.164](https://en.wikipedia.org/wiki/E.164) format.",
"pattern":"^[\\p{N}\\-_+=/.]+$"
},
"from":{
"type":"string",
"description":"Phone number displayed to a user as a caller in the [E.164](https://en.wikipedia.org/wiki/E.164) format.",
"pattern":"^[\\p{N}\\-_+=/.]+$"
},
"displayName":{
"type":"string",
"description":"Destination display name, if defined, that the call Link UI will use instead of an agent name. If a destination display name is an empty string, the UI will hide it."
},
"hangupRestriction":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.HangupRestriction"
},
"machineDetection":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.MachineDetection"
}
}
}
],
"required":[
"phoneNumber"
],
"title":"PhoneDestination"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.PhoneEndpoint":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Endpoint"
},
{
"type":"object",
"properties":{
"phoneNumber":{
"type":"string",
"description":"Phone number of the call link participant."
}
}
}
],
"required":[
"phoneNumber"
],
"title":"PhoneEndpoint"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.PresetLocalization":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Localization"
},
{
"type":"object",
"properties":{
"languageCode":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.LanguageCode"
}
}
}
],
"required":[
"languageCode"
],
"title":"PresetLocalization"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Recording":{
"type":"object",
"description":"Recording metadata.",
"properties":{
"composedFiles":{
"type":"array",
"description":"List of composed files.",
"items":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.RecordingFile"
}
},
"callRecordings":{
"type":"array",
"description":"List of call recordings.",
"items":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallRecording"
}
}
},
"title":"Recording"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.RecordingFile":{
"type":"object",
"description":"Recording files.",
"properties":{
"id":{
"type":"string",
"description":"File identifier."
},
"name":{
"type":"string",
"description":"File name."
},
"fileFormat":{
"type":"string",
"description":"File format.",
"enum":[
"MP3",
"WAV",
"MP4"
]
},
"size":{
"type":"integer",
"format":"int64",
"description":"File size in bytes."
},
"startTime":{
"type":"string",
"format":"date-time",
"description":"Date and time in the UTC timezone when the recording started. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSS+ZZZZ`."
},
"endTime":{
"type":"string",
"format":"date-time",
"description":"Date and time in the UTC timezone when the recording ended. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSS+ZZZZ`."
},
"creationTime":{
"type":"string",
"format":"date-time",
"description":"Date and time in the UTC timezone when the recording file was created. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSS+ZZZZ`."
},
"duration":{
"type":"integer",
"format":"int64",
"description":"File duration in seconds."
},
"location":{
"type":"string",
"description":"Location of recording file after processing.",
"enum":[
"UPLOADING",
"UPLOADED",
"HOSTED"
]
},
"customData":{
"type":"object",
"additionalProperties":{
"type":"string",
"description":"Client-defined data."
},
"description":"Client-defined data."
}
},
"title":"RecordingFile"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.RecordingLocation":{
"type":"string",
"enum":[
"SAO_PAULO",
"BOGOTA",
"FRANKFURT",
"JOHANNESBURG",
"JOHANNESBURG_1",
"NEW_YORK",
"PORTLAND",
"MOSCOW",
"SINGAPORE",
"ISTANBUL",
"KUALA_LUMPUR",
"JAKARTA",
"MUMBAI",
"HONG_KONG_1",
"HONG_KONG",
"RIYADH",
"CHENNAI"
],
"title":"RecordingLocation"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.RecordingSortColumn":{
"type":"string",
"enum":[
"DESTINATION_DATA",
"DESTINATION_TYPE",
"CALL_LINK_CONFIG_ID",
"CALL_LINK_ID",
"START_TIME_BEFORE",
"START_TIME_AFTER"
],
"title":"RecordingSortColumn"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.RoomCallDetails":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallDetails"
},
{
"type":"object",
"properties":{
"participants":{
"type":"array",
"description":"List of participants of the call.",
"items":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ConferenceParticipant"
}
}
}
}
],
"required":[
"participants"
],
"title":"RoomCallDetails"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.RoomDestination":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Destination"
},
{
"type":"object",
"properties":{
"roomName":{
"type":"string",
"description":"Name of a meeting room. Note that using the same roomName across different Call Link URLs will result in all participants joining the same meeting room. To create separate meeting rooms, ensure each room name is unique.",
"pattern":"^[\\p{L}\\p{N}\\-_+=/.]{3,250}$"
},
"displayName":{
"type":"string",
"description":"Destination display name, if defined, that the call Link UI will use instead of an agent name. If a destination display name is an empty string, the UI will hide it."
},
"password":{
"type":"string",
"description":"Password for entering a room.\nIf defined, a user will have to enter the same password before joining.\nIt can be between 4 and 20 characters long and can contain numbers, letters and dashes, underscores and spaces.\nIf not defined, anyone with the link will be able to join the call.",
"pattern":"^[\\p{L}\\p{N}\\-_\\ ]{4,20}$"
}
}
}
],
"required":[
"roomName"
],
"title":"RoomDestination"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.SecurityConfig":{
"type":"object",
"description":"Security settings object holding the authentication settings necessary to access your webhook.",
"discriminator":{
"propertyName":"type",
"mapping":{
"BASIC":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.BasicSecurityConfig",
"HMAC":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.HmacSecurityConfig"
}
},
"properties":{
"type":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.SecurityConfigType"
}
},
"title":"SecurityConfig"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.SecurityConfigType":{
"type":"string",
"enum":[
"BASIC",
"HMAC"
],
"title":"SecurityConfigType"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.SortDirection":{
"type":"string",
"enum":[
"ASC",
"DESC"
],
"title":"SortDirection"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.SubdomainResponse":{
"type":"object",
"properties":{
"id":{
"type":"string"
},
"name":{
"type":"string"
}
},
"title":"SubdomainResponse"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Theme":{
"type":"object",
"description":"Call link theme-specific configuration settings. Use it to add image, color, and text selections to customize a call link page.",
"properties":{
"images":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Images"
},
"messages":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Messages"
},
"colors":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Colors"
},
"layouts":{
"type":"array",
"description":"Represents layout during the call.When GRID layout is selected, multiple video streams are displayed simultaneously and user can spotlight specific video stream.When SOLO layout is selected, an user can see only his video streams.If there are more than one layout in this list, the first one will be initially selected, and users can change it during the call.The default layout will be set to GRID.",
"items":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Layout"
}
},
"localization":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Localization"
}
},
"title":"Theme"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.TimeOfDay":{
"type":"object",
"properties":{
"hour":{
"type":"integer",
"format":"int32",
"maximum":23,
"minimum":0
},
"minute":{
"type":"integer",
"format":"int32",
"maximum":59,
"minimum":0
}
},
"title":"TimeOfDay"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ValidityWindow":{
"type":"object",
"description":"Description of a call link validation period and the number of times it can be used within the range.",
"properties":{
"oneTime":{
"type":"boolean",
"default":false,
"description":"By default, call links are generated for multiple calls.If you want to limit the period for how long a link is valid, specify the start and end time. If you want to invalidate a link after establishing a call, set this value to 'true' (defaults to 'false').For ROOM calls, this value cannot be 'true'."
},
"startTime":{
"type":"string",
"format":"date-time",
"description":"Specify starting moment in the UTC timezone for when a call link becomes valid. Defaults to the time when a link was created. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSS+ZZZZ`.",
"example":"2023-01-01T08:00:00Z"
},
"endTime":{
"type":"string",
"format":"date-time",
"description":"Specify ending moment in the UTC timezone for when a call link becomes invalid. Default value is 24 hours after a link was created. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSS+ZZZZ`.",
"example":"2023-12-01T16:00:00Z"
},
"acceptableHours":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.AcceptableHours"
},
"acceptableDays":{
"type":"array",
"description":"Specify the days a link can be used. It is every day of the week, by default.",
"items":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.DayOfWeek"
}
}
},
"title":"ValidityWindow"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.WebRtcCallDetails":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallDetails"
},
{
"type":"object",
"properties":{
"caller":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.DialogParticipant"
},
"callee":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.DialogParticipant"
},
"dialogId":{
"type":"string",
"description":"Dialog identifier.",
"maxLength":128
},
"hangupSource":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.HangupSource"
}
}
}
],
"required":[
"callee",
"caller"
],
"title":"WebRtcCallDetails"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.WebRtcDestination":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Destination"
},
{
"type":"object",
"properties":{
"identity":{
"type":"string",
"description":"The identity to present a user on the Infobip WebRTC platform. It represents a person who will receive a ring once the call is made.",
"pattern":"^[\\p{L}\\p{N}\\-_+=/.]{3,64}$"
},
"displayName":{
"type":"string",
"description":"Destination display name, if defined, that the call link UI will use instead of a display name obtained from the Infobip WebRTC platform. If a destination display name is an empty string, the UI will hide it."
},
"hangupRestriction":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.HangupRestriction"
}
}
}
],
"required":[
"identity"
],
"title":"WebRtcDestination"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.WebRtcEndpoint":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Endpoint"
},
{
"type":"object",
"properties":{
"identity":{
"type":"string",
"description":"Identity of the call link participant."
},
"displayName":{
"type":"string",
"description":"Display name of the call link participant."
}
}
}
],
"required":[
"identity"
],
"title":"WebRtcEndpoint"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Webhook":{
"type":"object",
"description":"Webhook triggered when there is a call event.",
"properties":{
"url":{
"type":"string",
"description":"Your webhook URL."
},
"securityConfig":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.SecurityConfig"
}
},
"required":[
"url"
],
"title":"Webhook"
},
"2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.WebhookRecording":{
"type":"object",
"description":"Recording of the call.",
"properties":{
"composedFiles":{
"type":"array",
"description":"List of composed files.",
"items":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.File"
}
},
"callRecordings":{
"type":"array",
"description":"List of call recordings.",
"items":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.FileRecording"
}
}
},
"title":"WebhookRecording"
},
"394de68b2af4916e47f48a4cc3026c2ec4c22342d1304c00a584d14a92a333c1.ApiException":{
"type":"object",
"properties":{
"requestError":{
"$ref":"#/components/schemas/ApiRequestError"
}
},
"title":"ApiException"
},
"4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.AndroidPushNotificationConfig":{
"type":"object",
"description":"Optional. Required if ios is not set. Configuration used to enable Android push notifications.",
"properties":{
"privateKeyJson":{
"type":"string",
"description":"Private key JSON file used to enable Android push notifications."
}
},
"required":[
"privateKeyJson"
],
"title":"AndroidPushNotificationConfig"
},
"4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.IosPushNotificationConfig":{
"type":"object",
"description":"Optional. Required if android is not set. Configuration used to enable iOS push notifications.",
"properties":{
"apnsCertificateFileName":{
"type":"string",
"description":"Name of the APNS certificate file used to enable iOS push notifications."
},
"apnsCertificateFileContent":{
"type":"string",
"description":"Base64 encoded content of the P12 APNS certificate file used to enable iOS push notifications."
},
"apnsCertificatePassword":{
"type":"string",
"description":"Password used for decryption of the APNS certificate."
}
},
"required":[
"apnsCertificateFileContent",
"apnsCertificateFileName"
],
"title":"IosPushNotificationConfig"
},
"4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.PushConfigurationPageResponse":{
"type":"object",
"properties":{
"results":{
"type":"array",
"description":"List of results for this page.",
"items":{
"$ref":"#/components/schemas/4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.PushConfigurationResponse"
}
},
"pageInfo":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.PageInfo"
}
},
"title":"PushConfigurationPageResponse"
},
"4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.PushConfigurationRequest":{
"type":"object",
"properties":{
"name":{
"type":"string",
"description":"Optional. Name describing the push configuration."
},
"ios":{
"$ref":"#/components/schemas/4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.IosPushNotificationConfig"
},
"android":{
"$ref":"#/components/schemas/4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.AndroidPushNotificationConfig"
}
},
"title":"PushConfigurationRequest"
},
"4f883ab7a2c1db442b6865996e0e9f08b46ee1927d7a2c7d45b090008604a1ec.PushConfigurationResponse":{
"type":"object",
"properties":{
"id":{
"type":"string",
"description":"The identifier to associate the push configuration with."
},
"name":{
"type":"string",
"description":"Name describing the push configuration."
},
"androidConfigured":{
"type":"boolean",
"description":"Flag indicating whether the Android push notification config is set."
},
"iosConfigured":{
"type":"boolean",
"description":"Flag indicating whether the iOS push notification config is set."
}
},
"title":"PushConfigurationResponse"
},
"5305ca722d832817d411146f95eba84c3530f174d0fd6b1f72c09c5c2fbb1063.Application":{
"type":"object",
"description":"Application data for the recording.",
"discriminator":{
"propertyName":"type",
"mapping":{
"WEBRTC":"#/components/schemas/5305ca722d832817d411146f95eba84c3530f174d0fd6b1f72c09c5c2fbb1063.WebrtcApplication"
}
},
"properties":{
"type":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.ApplicationType"
}
},
"required":[
"type"
],
"title":"Application"
},
"5305ca722d832817d411146f95eba84c3530f174d0fd6b1f72c09c5c2fbb1063.WebrtcApplication":{
"type":"object",
"allOf":[
{
"$ref":"#/components/schemas/5305ca722d832817d411146f95eba84c3530f174d0fd6b1f72c09c5c2fbb1063.Application"
},
{
"type":"object",
"properties":{
"id":{
"type":"string",
"description":"WebRTC recording identifier."
},
"callType":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.CallType"
},
"roomName":{
"type":"string",
"description":"Name of the recorded room. Applicable for ROOM_CALL call type."
},
"roomId":{
"type":"string",
"description":"Id of the recorded room. Applicable for ROOM_CALL call type. Equivalent to conferenceId."
},
"startTime":{
"type":"string",
"format":"date-time",
"description":"Start time of the call.",
"example":"2024-05-01T14:25:45.125Z"
},
"endTime":{
"type":"string",
"format":"date-time",
"description":"End time of the call.",
"example":"2024-05-01T14:30:22.458Z"
}
}
}
],
"description":"Application data for the recording.",
"required":[
"type"
],
"title":"WebrtcApplication"
},
"6a67def771061fe877b7bafa26c22e83ef5c7b44e2a298a70b54e0ed657fe102.CallRecording":{
"type":"object",
"description":"Call recording metadata.",
"properties":{
"callId":{
"type":"string",
"description":"Call identifier."
},
"endpoint":{
"type":"string",
"description":"Call endpoint. Represents a caller for the inbound calls and a callee for the outbound calls."
},
"direction":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.Direction"
},
"status":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.Status"
},
"reason":{
"type":"string",
"description":"Reason for recording failure."
},
"files":{
"type":"array",
"description":"Recording files.",
"items":{
"$ref":"#/components/schemas/6a67def771061fe877b7bafa26c22e83ef5c7b44e2a298a70b54e0ed657fe102.RecordingFile"
}
}
},
"title":"CallRecording"
},
"6a67def771061fe877b7bafa26c22e83ef5c7b44e2a298a70b54e0ed657fe102.Recording":{
"type":"object",
"description":"Recording metadata",
"properties":{
"composedFiles":{
"type":"array",
"description":"Composed recording files.",
"items":{
"$ref":"#/components/schemas/6a67def771061fe877b7bafa26c22e83ef5c7b44e2a298a70b54e0ed657fe102.RecordingFile"
}
},
"callRecordings":{
"type":"array",
"description":"Call recording data.",
"items":{
"$ref":"#/components/schemas/6a67def771061fe877b7bafa26c22e83ef5c7b44e2a298a70b54e0ed657fe102.CallRecording"
}
}
},
"title":"Recording"
},
"6a67def771061fe877b7bafa26c22e83ef5c7b44e2a298a70b54e0ed657fe102.RecordingFile":{
"type":"object",
"description":"Recorded file.",
"properties":{
"id":{
"type":"string",
"description":"File ID."
},
"name":{
"type":"string",
"description":"File name."
},
"fileFormat":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.FileFormat"
},
"size":{
"type":"integer",
"format":"int64",
"description":"File size in bytes."
},
"startTime":{
"type":"string",
"format":"date-time",
"description":"Date and time when the recording started.",
"example":"2024-05-01T14:25:22.458Z"
},
"endTime":{
"type":"string",
"format":"date-time",
"description":"Date and time when the recording ended.",
"example":"2024-05-01T14:30:22.458Z"
},
"creationTime":{
"type":"string",
"format":"date-time",
"description":"File creation time."
},
"duration":{
"type":"integer",
"format":"int64",
"description":"File duration in seconds."
},
"location":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.ProcessedLocation"
},
"customData":{
"type":"object",
"additionalProperties":{
"type":"string"
},
"description":"Client-defined data as key-value pairs, where both key and value are strings."
}
},
"title":"RecordingFile"
},
"6a67def771061fe877b7bafa26c22e83ef5c7b44e2a298a70b54e0ed657fe102.RecordingResponse":{
"type":"object",
"properties":{
"application":{
"$ref":"#/components/schemas/5305ca722d832817d411146f95eba84c3530f174d0fd6b1f72c09c5c2fbb1063.Application"
},
"recording":{
"$ref":"#/components/schemas/6a67def771061fe877b7bafa26c22e83ef5c7b44e2a298a70b54e0ed657fe102.Recording"
}
},
"title":"RecordingResponse"
},
"6a67def771061fe877b7bafa26c22e83ef5c7b44e2a298a70b54e0ed657fe102.WebrtcRecordingPageResponse":{
"type":"object",
"properties":{
"results":{
"type":"array",
"description":"List of results for this page.",
"items":{
"$ref":"#/components/schemas/6a67def771061fe877b7bafa26c22e83ef5c7b44e2a298a70b54e0ed657fe102.RecordingResponse"
}
},
"pageInfo":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.PageInfo"
}
},
"title":"WebrtcRecordingPageResponse"
},
"73e6f414ccb2e1e41274c061b50cf5765f69b642a3e0cca54b0248eb3baf086d.RecordingResponse":{
"type":"object",
"properties":{
"application":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallLinkRecordingApplication"
},
"recording":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Recording"
}
},
"required":[
"application",
"recording"
],
"title":"RecordingResponse"
},
"7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.ActivityType":{
"type":"string",
"description":"Type of activity that occurred.",
"enum":[
"CONNECTED",
"DISCONNECTED"
],
"title":"ActivityType"
},
"7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.ApplicationType":{
"type":"string",
"enum":[
"WEBRTC"
],
"title":"ApplicationType"
},
"7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.CallType":{
"type":"string",
"description":"Call type of the recorded call.",
"enum":[
"WEBRTC_CALL",
"PHONE_CALL",
"VIBER_CALL",
"ROOM_CALL"
],
"title":"CallType"
},
"7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.Direction":{
"type":"string",
"description":"Call direction.",
"enum":[
"INBOUND",
"OUTBOUND"
],
"title":"Direction"
},
"7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.FileFormat":{
"type":"string",
"description":"File format.",
"enum":[
"PNG",
"JPEG"
],
"example":"PNG",
"title":"FileFormat"
},
"7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.PageInfo":{
"type":"object",
"description":"Information about the page.",
"properties":{
"page":{
"type":"integer",
"format":"int32",
"description":"Requested page number.",
"minimum":0
},
"size":{
"type":"integer",
"format":"int32",
"description":"Requested page size.",
"minimum":1
},
"totalPages":{
"type":"integer",
"format":"int32",
"description":"The total number of pages of the results matching the requested parameters.",
"minimum":0
},
"totalResults":{
"type":"integer",
"format":"int64",
"description":"The total number of the results matching the requested parameters.",
"minimum":0
}
},
"required":[
"page",
"size",
"totalPages",
"totalResults"
],
"title":"PageInfo"
},
"7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.ProcessedLocation":{
"type":"string",
"description":"Location of recording file after processing.",
"enum":[
"UPLOADING",
"UPLOADED",
"HOSTED"
],
"title":"ProcessedLocation"
},
"7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.RecordingLocation":{
"type":"string",
"enum":[
"SAO_PAULO",
"BOGOTA",
"FRANKFURT",
"JOHANNESBURG",
"JOHANNESBURG_1",
"NEW_YORK",
"PORTLAND",
"MOSCOW",
"SINGAPORE",
"ISTANBUL",
"KUALA_LUMPUR",
"JAKARTA",
"MUMBAI",
"HONG_KONG_1",
"HONG_KONG",
"RIYADH",
"CHENNAI"
],
"title":"RecordingLocation"
},
"7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.RecordingSortColumn":{
"type":"string",
"enum":[
"CALL_TYPE",
"ROOM_NAME",
"ROOM_ID",
"START_TIME",
"END_TIME"
],
"title":"RecordingSortColumn"
},
"7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.SortDirection":{
"type":"string",
"enum":[
"ASC",
"DESC"
],
"title":"SortDirection"
},
"7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.Status":{
"type":"string",
"description":"Status of the call recording.",
"enum":[
"SUCCESSFUL",
"PARTIALLY_FAILED",
"FAILED"
],
"title":"Status"
},
"ApiError":{
"type":"object",
"properties":{
"errorCode":{
"type":"string",
"description":"An error code uniquely identifying the error case."
},
"description":{
"type":"string",
"description":"A detailed description of an error."
},
"action":{
"type":"string",
"description":"An action that should be taken to recover from the error."
},
"violations":{
"type":"array",
"description":"List of violations that caused the error.",
"items":{
"$ref":"#/components/schemas/ApiErrorViolation"
}
},
"resources":{
"type":"array",
"description":"List of available resources to recover from the error.",
"items":{
"$ref":"#/components/schemas/ApiErrorResource"
}
}
},
"required":[
"action",
"description",
"errorCode",
"resources",
"violations"
],
"title":"ApiError"
},
"ApiErrorResource":{
"type":"object",
"description":"List of available resources to recover from the error.",
"properties":{
"name":{
"type":"string",
"description":"Resource name."
},
"url":{
"type":"string",
"description":"Resource URL."
}
},
"title":"ApiErrorResource"
},
"ApiErrorViolation":{
"type":"object",
"description":"List of violations that caused the error.",
"properties":{
"property":{
"type":"string",
"description":"Request property that caused the error."
},
"violation":{
"type":"string",
"description":"Detailed violation description."
}
},
"title":"ApiErrorViolation"
},
"ApiException":{
"type":"object",
"properties":{
"requestError":{
"$ref":"#/components/schemas/ApiRequestError"
}
},
"title":"ApiException"
},
"ApiRequestError":{
"type":"object",
"properties":{
"serviceException":{
"$ref":"#/components/schemas/ApiRequestErrorDetails"
}
},
"title":"ApiRequestError"
},
"ApiRequestErrorDetails":{
"type":"object",
"properties":{
"messageId":{
"type":"string",
"description":"Identifier of the error."
},
"text":{
"type":"string",
"description":"Detailed error description."
},
"validationErrors":{
"type":"object",
"additionalProperties":{
"type":"array",
"items":{
"type":"string",
"description":"Validation errors."
}
},
"description":"Validation errors."
}
},
"title":"ApiRequestErrorDetails"
},
"a012797e45a148c14a09b350fd3670874eb3f365931c630a0c2efc32c7293ff3.TokenRequestModel":{
"type":"object",
"properties":{
"identity":{
"type":"string",
"description":"The identity used to present user on Infobip WebRTC platform. Must be unique. Must contain at least 3 and at most 64 unicode characters including -, _, ..",
"pattern":"^[\\p{L}\\p{N}\\-_+=/.]{3,64}$"
},
"displayName":{
"type":"string",
"description":"Optional. A human-readable name for a given identity. Does not have to be unique. If set, it will be presented to all other users communicating with the identified user, along with identity. Must contain at least 5 and at most 50 characters."
},
"timeToLive":{
"type":"integer",
"format":"int64",
"description":"Optional. This field represents a number of seconds until the token expires. If not set, the token will last 8 hours. The maximum value is 24 hours."
}
},
"required":[
"identity"
],
"title":"TokenRequestModel"
},
"a012797e45a148c14a09b350fd3670874eb3f365931c630a0c2efc32c7293ff3.TokenResponseModel":{
"type":"object",
"properties":{
"token":{
"type":"string",
"description":"The access token used to connect client SDKs to Infobip WebRTC platform."
},
"expirationTime":{
"type":"string",
"description":"Time point until which token is valid. The default value is 8h. If it expires, the user must be provided with the new valid token in order to continue using Infobip WebRTC platform. There is no notification about token expiry, you must track that by yourself.",
"example":"2022-05-01T14:25:55.123Z"
}
},
"title":"TokenResponseModel"
},
"ae8a6eecccfb565f1840ac10e7bfb960a35d1e256ae31abf1bdea45a1d2f5557.CallLink":{
"type":"object",
"description":"Use the call link feature to enable calls between users that have an Infobip account and users that don't.",
"properties":{
"id":{
"type":"string",
"description":"Identifier of the created call link. To open a call link, it should be concatenated to the URL: https://call-link.com/."
},
"url":{
"type":"string",
"description":"A URL to initiate a call."
},
"identity":{
"type":"string",
"description":"Identity of a user who will use a call link.",
"pattern":"^[\\p{L}\\p{N}\\-_+=/.]{3,64}$"
},
"displayName":{
"type":"string",
"description":"Display name of a user who will use a call link to initiate a call."
},
"showIdentity":{
"type":"boolean",
"default":true,
"description":"Show identity or displayName on before a call."
},
"destination":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Destination"
},
"customData":{
"type":"object",
"additionalProperties":{
"type":"string",
"description":"Custom attributes sent in a call once it is started."
},
"description":"Custom attributes sent in a call once it is started."
},
"validityWindow":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ValidityWindow"
},
"callLinkConfigId":{
"type":"string",
"description":"ID of a configuration to use on an existing call link. If this parameter is not sent, and there are some call link configurations, the default one will be used. If there is no configurations, then the one with the system default values will be used."
}
},
"required":[
"destination",
"identity"
],
"title":"CallLink"
},
"ae8a6eecccfb565f1840ac10e7bfb960a35d1e256ae31abf1bdea45a1d2f5557.CallLinkRequest":{
"type":"object",
"description":"Enable calls between users that have an Infobip account and users that don't.",
"properties":{
"identity":{
"type":"string",
"description":"Identity of a user that will use a call link. Must not be set if the destination type of a call link is ROOM.",
"pattern":"^[\\p{L}\\p{N}\\-_+=/.]{3,64}$"
},
"displayName":{
"type":"string",
"description":"Display name of a user that will use a call link to initiate a call. Must not be set if the destination type of a call link is ROOM. For other destination types, if you want to set a display name, also set identity."
},
"showIdentity":{
"type":"boolean",
"default":true,
"description":"Show identity or displayName on before a call."
},
"destination":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Destination"
},
"customData":{
"type":"object",
"additionalProperties":{
"type":"string",
"description":"Custom attributes sent in a call once it has started."
},
"description":"Custom attributes sent in a call once it has started."
},
"validityWindow":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ValidityWindow"
},
"callLinkConfigId":{
"type":"string",
"description":"Identifier of a call link configuration. You can use your existing configuration. If this parameter is not sent and there are call link configurations available, the default one will be used. If there are no configurations, the one with system default values will be used."
}
},
"required":[
"destination"
],
"title":"CallLinkRequest"
},
"ae8a6eecccfb565f1840ac10e7bfb960a35d1e256ae31abf1bdea45a1d2f5557.CallLinkResponse":{
"type":"object",
"properties":{
"id":{
"type":"string",
"description":"Identifier of the created call link. To open a call link, an ID will be concatenated to the URL: https://call-link.com/."
},
"url":{
"type":"string",
"description":"A URL to initiate the call."
}
},
"title":"CallLinkResponse"
},
"b2a108c706e7d46b95495b161a8c99f5751c046c5e419f6f0780788488a1af14.CallLinkConfig":{
"type":"object",
"description":"Call link configuration.",
"properties":{
"id":{
"type":"string",
"description":"Configuration ID. Once a call link is created, this value might be sent in the request as one specific call link configuration to be used by the call link."
},
"name":{
"type":"string",
"description":"Configuration name or description. It doesn't have to be unique."
},
"isDefault":{
"type":"boolean",
"default":false,
"description":"When you create call link without callLinkConfigId, the one marked as default will be used. Only one configuration can be default.If you don't have a configuration, the basic Infobip theme with default values and minimal options will be used.If you want to set another configuration as default, specify its value when adding or updating it. "
},
"initialOptions":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.InitialOptions"
},
"callOptions":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallOptions"
},
"theme":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Theme"
},
"subdomainId":{
"type":"string",
"description":"Id of the subdomain that will be set on every call link generated with this configuration. If undefined, call links will be generated without a subdomain."
},
"webhook":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Webhook"
}
},
"title":"CallLinkConfig"
},
"b2a108c706e7d46b95495b161a8c99f5751c046c5e419f6f0780788488a1af14.CallLinkConfigRequest":{
"type":"object",
"description":"Call link configuration.",
"properties":{
"name":{
"type":"string",
"description":"Configuration name."
},
"initialOptions":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.InitialOptions"
},
"callOptions":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.CallOptions"
},
"theme":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Theme"
},
"isDefault":{
"type":"boolean",
"default":false,
"description":"Indicates whether the specific call link configuration is the default one and used with any call link without a callLinkConfigId. Only one configuration can be default.If you don't have a configuration, the basic Infobip theme with default values and minimal options will be used.If you want to use another configuration, set this value to `true` for the call link config you wish as default. "
},
"subdomainId":{
"type":"string",
"description":"Subdomain to use for every call link generated for this configuration.If not defined, no subdomain will be used."
},
"webhook":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.Webhook"
}
},
"required":[
"name"
],
"title":"CallLinkConfigRequest"
},
"bced1b5de5a3082b5f8ce3c272029f66a05beaf3b2db4fdc852bd1a5393c0582.ImageResponse":{
"type":"object",
"properties":{
"id":{
"type":"string",
"description":"Unique ID of an image."
},
"name":{
"type":"string",
"description":"Image name."
},
"type":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.ImageType"
},
"size":{
"type":"integer",
"format":"int64",
"description":"Image size in bytes."
}
},
"title":"ImageResponse"
},
"d32f709b8e696d073f5212b1e1d90721a8fd1118bf2c8abce078bf2baf7d1707.CallLinkConfigPage":{
"type":"object",
"properties":{
"results":{
"type":"array",
"description":"The list of the results for this page.",
"items":{
"$ref":"#/components/schemas/b2a108c706e7d46b95495b161a8c99f5751c046c5e419f6f0780788488a1af14.CallLinkConfig"
}
},
"paging":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.PageInfo"
}
},
"title":"CallLinkConfigPage"
},
"d32f709b8e696d073f5212b1e1d90721a8fd1118bf2c8abce078bf2baf7d1707.CallLinkPage":{
"type":"object",
"properties":{
"results":{
"type":"array",
"description":"The list of the results for this page.",
"items":{
"$ref":"#/components/schemas/ae8a6eecccfb565f1840ac10e7bfb960a35d1e256ae31abf1bdea45a1d2f5557.CallLink"
}
},
"paging":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.PageInfo"
}
},
"title":"CallLinkPage"
},
"d32f709b8e696d073f5212b1e1d90721a8fd1118bf2c8abce078bf2baf7d1707.ImagePage":{
"type":"object",
"properties":{
"results":{
"type":"array",
"description":"The list of the results for this page.",
"items":{
"$ref":"#/components/schemas/bced1b5de5a3082b5f8ce3c272029f66a05beaf3b2db4fdc852bd1a5393c0582.ImageResponse"
}
},
"paging":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.PageInfo"
}
},
"title":"ImagePage"
},
"d32f709b8e696d073f5212b1e1d90721a8fd1118bf2c8abce078bf2baf7d1707.RecordingPage":{
"type":"object",
"properties":{
"results":{
"type":"array",
"description":"The list of the results for this page.",
"items":{
"$ref":"#/components/schemas/73e6f414ccb2e1e41274c061b50cf5765f69b642a3e0cca54b0248eb3baf086d.RecordingResponse"
}
},
"paging":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.PageInfo"
}
},
"title":"RecordingPage"
},
"d32f709b8e696d073f5212b1e1d90721a8fd1118bf2c8abce078bf2baf7d1707.SubdomainPage":{
"type":"array",
"items":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.SubdomainResponse"
},
"properties":{
"empty":{
"type":"boolean"
},
"first":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.SubdomainResponse"
},
"last":{
"$ref":"#/components/schemas/2188fec7c48e989bb7053521bdef9d76d71def96483c5304f01cd7e0878f8f14.SubdomainResponse"
}
},
"title":"SubdomainPage"
},
"dc38425c131b95e4c45181495294ce145519edf2a5db70e09ac8bc816d8bceba.UserActivityPageResponse":{
"type":"object",
"properties":{
"identity":{
"type":"string",
"description":"Identity associated with the requested activities."
},
"results":{
"type":"array",
"description":"List of results for the requested page.",
"items":{
"$ref":"#/components/schemas/dc38425c131b95e4c45181495294ce145519edf2a5db70e09ac8bc816d8bceba.UserActivityResponse"
}
},
"pageInfo":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.PageInfo"
}
},
"title":"UserActivityPageResponse"
},
"dc38425c131b95e4c45181495294ce145519edf2a5db70e09ac8bc816d8bceba.UserActivityResponse":{
"type":"object",
"description":"List of results for the requested page.",
"properties":{
"sessionId":{
"type":"string",
"description":"An identifier that links different occurrences of `activityType` within the same activity session for a user identity on the Infobip WebRTC platform. When two activity events, distinguished by their `activityType`, happen during the same user activity session, they will share the same `sessionId`."
},
"activityType":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.ActivityType"
},
"timestamp":{
"type":"string",
"format":"date-time",
"description":"Timestamp of the activity. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSS+ZZZZ`."
}
},
"title":"UserActivityResponse"
},
"e7089e7463ca9bbf5ccd1fc35b7db93dfead631972de2930bb5def17a2b45bf6.ApiException":{
"type":"object",
"properties":{
"requestError":{
"$ref":"#/components/schemas/ApiRequestError"
}
},
"title":"ApiException"
},
"febbeec59369f28c0a6e3ddd1a2666aea9869953e0893914d340d35c6901410c.Subdomain":{
"type":"object",
"properties":{
"id":{
"type":"string",
"description":"Identifier of a created subdomain."
},
"name":{
"type":"string",
"description":"Name of a subdomain: name.call-link.com .",
"pattern":"^[A-Za-z0-9](?:[A-Za-z0-9\\-]{0,61}[A-Za-z0-9])?$"
}
},
"title":"Subdomain"
},
"febbeec59369f28c0a6e3ddd1a2666aea9869953e0893914d340d35c6901410c.SubdomainRequest":{
"type":"object",
"properties":{
"name":{
"type":"string",
"description":"Name of a subdomain.",
"pattern":"^[A-Za-z0-9](?:[A-Za-z0-9\\-]{0,61}[A-Za-z0-9])?$"
}
},
"title":"SubdomainRequest"
},
"ffb4c29a0ab7c4ca15544ca9d6ceffaf3e8b394d7fc1a53728ba61496b4513fc.FilePageResponse":{
"type":"object",
"properties":{
"results":{
"type":"array",
"description":"List of results for the requested page.",
"items":{
"$ref":"#/components/schemas/ffb4c29a0ab7c4ca15544ca9d6ceffaf3e8b394d7fc1a53728ba61496b4513fc.FileResponse"
}
},
"pageInfo":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.PageInfo"
}
},
"title":"FilePageResponse"
},
"ffb4c29a0ab7c4ca15544ca9d6ceffaf3e8b394d7fc1a53728ba61496b4513fc.FileResponse":{
"type":"object",
"properties":{
"id":{
"type":"string",
"description":"Unique id of the file.",
"example":"5f4e8861-8ed7-4521-b8c8-f26346726716"
},
"name":{
"type":"string",
"description":"Name of the file.",
"example":"5f4e8861-8ed7-4521-b8c8-f26346726716_alice_1680266280000.png"
},
"fileFormat":{
"$ref":"#/components/schemas/7916e19109f991cfe966f390ef0d36117967291fa90eff57d8c8cb768f38352e.FileFormat"
},
"size":{
"type":"integer",
"format":"int64",
"description":"Size in bytes of the file.",
"example":10780
},
"creationTime":{
"type":"string",
"format":"date-time",
"description":"Creation time of the file in UTC timezone. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSS+ZZZZ`."
}
},
"title":"FileResponse"
}
},
"responses":{
"ApiError401":{
"description":"Unauthorized",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ApiError"
},
"example":{
"errorCode":"E401",
"description":"The request lacks valid authentication credentials for the requested resource.",
"action":"Check the resources and adjust authentication credentials.",
"violations":[],
"resources":[
{
"name":"API Authentication",
"url":"https://www.infobip.com/docs/essentials/api-authentication"
}
]
}
},
"application/xml":{
"schema":{
"$ref":"#/components/schemas/ApiError"
},
"example":"\n E401\n The request lacks valid authentication credentials for the requested resource.\n Check the resources and adjust authentication credentials.\n \n \n \n API Authentication\n https://www.infobip.com/docs/essentials/api-authentication\n \n \n\n"
}
}
},
"ApiError403":{
"description":"Forbidden",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ApiError"
},
"example":{
"errorCode":"E403",
"description":"Insufficient permissions to access the requested resource.",
"action":"Repeat the request with new or different credentials.",
"violations":[],
"resources":[
{
"name":"API Scopes",
"url":"https://www.infobip.com/docs/essentials/api-essentials/api-authorization#api-scopes"
}
]
}
},
"application/xml":{
"schema":{
"$ref":"#/components/schemas/ApiError"
},
"example":"\n E403\n Insufficient permissions to access the requested resource.\n Repeat the request with new or different credentials.\n \n \n \n API Scopes\n https://www.infobip.com/docs/essentials/api-essentials/api-authorization#api-scopes\n \n \n\n"
}
}
},
"ApiError404":{
"description":"Not Found",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ApiError"
},
"example":{
"errorCode":"E404",
"description":"Not found - request URL doesn't exist on the API server or resource is not found.",
"action":"Check the resources and adjust your request.",
"violations":[],
"resources":[]
}
},
"application/xml":{
"schema":{
"$ref":"#/components/schemas/ApiError"
},
"example":"\n E404\n Not found - request URL doesn't exist on the API server or resource is not found.\n Check the resources and adjust your request.\n \n \n\n"
}
}
},
"ApiError429":{
"description":"Too Many Requests",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ApiError"
},
"example":{
"errorCode":"E429",
"description":"Too many requests sent.",
"action":"Check request rate limit specified in the API endpoint documentation resource.",
"violations":[],
"resources":[
{
"name":"Throttling handling errors",
"url":"https://www.infobip.com/docs/essentials/integration-best-practices#throttling-handling-errors"
}
]
}
},
"application/xml":{
"schema":{
"$ref":"#/components/schemas/ApiError"
},
"example":"\n E429\n Too many requests sent.\n Check request rate limit specified in the API endpoint documentation resource.\n \n \n \n Throttling handling errors\n https://www.infobip.com/docs/essentials/integration-best-practices#throttling-handling-errors\n \n \n\n"
}
}
},
"ApiError500":{
"description":"Internal Server Error",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ApiError"
},
"example":{
"errorCode":"E500",
"description":"Something went wrong.",
"action":"Contact the support.",
"violations":[],
"resources":[]
}
},
"application/xml":{
"schema":{
"$ref":"#/components/schemas/ApiError"
},
"example":"\n E500\n Something went wrong.\n Contact the support.\n \n \n\n"
}
}
},
"ApiException400":{
"description":"Bad Request",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ApiException"
},
"example":{
"requestError":{
"serviceException":{
"messageId":"BAD_REQUEST",
"text":"Bad request"
}
}
}
},
"application/xml":{
"schema":{
"$ref":"#/components/schemas/ApiException"
},
"example":"\n \n \n BAD_REQUEST\n Bad request\n \n \n\n"
}
}
},
"ApiException401":{
"description":"Unauthorized",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ApiException"
},
"example":{
"requestError":{
"serviceException":{
"messageId":"UNAUTHORIZED",
"text":"Unauthorized"
}
}
}
},
"application/xml":{
"schema":{
"$ref":"#/components/schemas/ApiException"
},
"example":"\n \n \n UNAUTHORIZED\n Unauthorized\n \n \n\n"
}
}
},
"ApiException403":{
"description":"Forbidden",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ApiException"
},
"example":{
"requestError":{
"serviceException":{
"messageId":"FORBIDDEN",
"text":"Forbidden"
}
}
}
},
"application/xml":{
"schema":{
"$ref":"#/components/schemas/ApiException"
},
"example":"\n \n \n FORBIDDEN\n Forbidden\n \n \n\n"
}
}
},
"ApiException404":{
"description":"Not Found",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ApiException"
},
"example":{
"requestError":{
"serviceException":{
"messageId":"NOT_FOUND",
"text":"Not found"
}
}
}
},
"application/xml":{
"schema":{
"$ref":"#/components/schemas/ApiException"
},
"example":"\n \n \n NOT_FOUND\n Not found\n \n \n\n"
}
}
},
"ApiException429":{
"description":"Too Many Requests",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ApiException"
},
"example":{
"requestError":{
"serviceException":{
"messageId":"TOO_MANY_REQUESTS",
"text":"Too many requests"
}
}
}
},
"application/xml":{
"schema":{
"$ref":"#/components/schemas/ApiException"
},
"example":"\n \n \n TOO_MANY_REQUESTS\n Too many requests\n \n \n\n"
}
}
},
"ApiException500":{
"description":"Internal Server Error",
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/ApiException"
},
"example":{
"requestError":{
"serviceException":{
"messageId":"GENERAL_ERROR",
"text":"Something went wrong. Please contact support."
}
}
}
},
"application/xml":{
"schema":{
"$ref":"#/components/schemas/ApiException"
},
"example":"\n \n \n GENERAL_ERROR\n Something went wrong. Please contact support.\n \n \n\n"
}
}
}
},
"parameters":{},
"examples":{},
"requestBodies":{},
"headers":{},
"securitySchemes":{
"APIKeyHeader":{
"type":"apiKey",
"description":"This is the most secure authorization type and the one with the most flexibility.\n\nAPI keys can be generated by calling the dedicated API method. Furthermore, API keys can have a limited scope and cover only some API methods. Lastly, they can\nbe revoked at any time. This range of possibilities makes API keys well suited for separating the API access rights across multiple applications or use cases.\nFinally, the loss of an API key is easily manageable.\n\nYou can manage your API keys from [GUI](https://portal.infobip.com/settings/accounts/api-keys), or programmatically\nwith [dedicated API](#platform-&-connectivity/settings).\n\nAPI key Authorization header example:\n\n```shell\nAuthorization: App 003026bbc133714df1834b8638bb496e-8f4b3d9a-e931-478d-a994-28a725159ab9\n```\n",
"name":"Authorization",
"in":"header"
},
"Basic":{
"type":"http",
"description":"Basic authorization type can be used in situations when the API key is not available. For example, API methods for generating API keys should be authenticated\nwith the Basic type.\n\nIn this case, the credentials included in the Authorization header should be a Base64 encoded username and password combination. More formally, basic\nauthentication header can be constructed in three steps:\n\n* Username and password are concatenated using the colon `(:)` as a separator `username:password`.\n* The resulting string is encoded using the [RFC2045-MIME](https://www.ietf.org/rfc/rfc2045.txt) variant of Base64.\n* Encoded string is added as credentials after the `\"Basic \"` type.\n\nExample:\n\n```shell\nUsername: \"Aladdin\"\nPassword: \"openSesame\"\n\nConcatenated string: \"Aladdin:openSesame\"\n\nBase64 encoded string: \"QWxhZGRpbjpvcGVuU2VzYW1l\"\n\nAuthorization header: \"Basic QWxhZGRpbjpvcGVuU2VzYW1l\"\n```\n\n> **Implementation detail**: Base64 encoding is a standard and many available programming languages and frameworks provide convenient methods for encoding\n> strings.\n",
"scheme":"basic"
},
"IBSSOTokenHeader":{
"type":"apiKey",
"description":"This authorization type is suited for situations when you do not want to store Infobip credentials in your own app. Instead, your users will input their Infobip\ncredentials every time they access your application and the application will use those credentials to create a session. From then on, the session token can be\nused to authenticate subsequent API requests. Note that the session will expire automatically after a predefined period of inactivity, and can also be manually\nterminated by making an appropriate API call.\n\nYou can find more details on the creation and behavior of the session at\nthe [dedicated documentation page](#platform-connectivity/account-management/create-session).\n\nAfter obtaining the session token by calling the above-referenced API method you can include it in the Authorization header like this:\n\n```shell\nAuthorization: IBSSO 2f9b4d31-2d0d-49a8-85f0-9b862bdca394\n```\n",
"name":"Authorization",
"in":"header"
},
"OAuth2":{
"type":"oauth2",
"description":"Similarly to the IBSSO Token authentication you can use OAuth 2.0 bearer token with Infobip serving both as resource and authorization server. You can obtain\nthe access token using the client credentials grant from `auth/1/oauth2/token` endpoint. It will provide you with your access token, and its expiration period.\nYou can use the token to authorize your API calls until it expires. You can find out more about the process in\nthe [official specification](https://tools.ietf.org/html/rfc6749#section-4.4).\n\nYou can include your access token in the Authorization HTTP request header like this:\n\n```http\nAuthorization: Bearer \n```",
"flows":{
"clientCredentials":{
"tokenUrl":"https://api.infobip.com/auth/1/oauth2/token",
"scopes":{}
}
}
}
},
"links":{},
"callbacks":{}
},
"webhooks":{
"call-link-status-webhook":{
"post":{
"tags":[
"channels",
"webrtc-calls",
"call-link",
"call-link-configs"
],
"summary":"Call Link Webhook",
"description":"Webhook event payload that will be delivered on the url defined in the call link configuration.",
"operationId":"call-link-status-webhook",
"requestBody":{
"content":{
"application/json":{
"schema":{
"$ref":"#/components/schemas/0e82c38c2cac57841ec8a3a6ca825965cdf7afbcdea80ae147c9d99f5ab3a8c3.WebhookEventPayload"
},
"examples":{
"Call Link Webhook":{
"summary":"Call Link Webhook",
"value":{
"callLinkId":"r9wpIY",
"callLinkConfigId":"638dbdc6ecede164c3799d04",
"callDetails":{
"caller":{
"callId":"d8d84155-3831-43fb-91c9-bb897149a79d",
"endpoint":{
"phoneNumber":"44790987654",
"type":"PHONE"
},
"startTime":"2026-07-17T13:36:58.214+0000",
"joinTime":"2026-07-17T13:37:03.214+0000",
"leaveTime":"2026-07-17T13:37:13.214+0000",
"duration":10,
"direction":"OUTBOUND",
"state":"FINISHED",
"type":"DIALOG"
},
"callee":{
"callId":"d8d84155-3831-43fb-91c9-bb897149a79d",
"endpoint":{
"identity":"jdoe",
"displayName":"John Doe",
"type":"WEBRTC"
},
"startTime":"2026-07-17T13:36:58.214+0000",
"joinTime":"2026-07-17T13:37:03.214+0000",
"leaveTime":"2026-07-17T13:37:13.214+0000",
"duration":10,
"direction":"INBOUND",
"state":"FINISHED",
"type":"DIALOG"
},
"dialogId":"00efdb95-c316-4c40-9f4a-76569faf1628",
"hangupSource":"PLATFORM",
"type":"WEBRTC"
},
"customData":{
"city":"New York",
"language":"en"
},
"recording":{
"composedFiles":[
{
"id":"da000100-023e-11e9-f808-3386da20fe84",
"name":"Recording file",
"fileFormat":"MP4"
}
],
"callRecordings":[
{
"callId":"d8d84155-3831-43fb-91c9-bb897149a79d",
"file":{
"id":"da000100-023e-11e9-f808-3386da20fe84",
"name":"Recording file",
"fileFormat":"MP4"
}
}
]
},
"errorCode":{
"id":10000,
"name":"NORMAL_HANGUP",
"description":"The call has ended with hangup initiated by caller, callee or API"
}
}
},
"Phone Call Link Webhook with Machine Detection":{
"summary":"Phone Call Link Webhook with Machine Detection",
"value":{
"callLinkId":"r9wpIY",
"callLinkConfigId":"638dbdc6ecede164c3799d04",
"callDetails":{
"caller":{
"callId":"d8d84155-3831-43fb-91c9-bb897149a79d",
"endpoint":{
"phoneNumber":"44790987654",
"type":"PHONE"
},
"startTime":"2026-07-17T13:36:58.214+0000",
"joinTime":"2026-07-17T13:37:03.214+0000",
"leaveTime":"2026-07-17T13:37:13.214+0000",
"duration":10,
"direction":"OUTBOUND",
"state":"FINISHED",
"type":"DIALOG"
},
"callee":{
"callId":"d8d84155-3831-43fb-91c9-bb897149a79d",
"endpoint":{
"identity":"jdoe",
"displayName":"John Doe",
"type":"WEBRTC"
},
"startTime":"2026-07-17T13:36:58.214+0000",
"joinTime":"2026-07-17T13:37:03.214+0000",
"leaveTime":"2026-07-17T13:37:13.214+0000",
"duration":10,
"direction":"INBOUND",
"state":"FINISHED",
"type":"DIALOG"
},
"dialogId":"00efdb95-c316-4c40-9f4a-76569faf1629",
"hangupSource":"CALLER",
"machineDetection":"HUMAN",
"type":"PHONE"
},
"customData":{
"city":"New York",
"language":"en"
},
"recording":{
"composedFiles":[
{
"id":"da000100-023e-11e9-f808-3386da20fe84",
"name":"Recording file",
"fileFormat":"MP4"
}
],
"callRecordings":[
{
"callId":"d8d84155-3831-43fb-91c9-bb897149a79d",
"file":{
"id":"da000100-023e-11e9-f808-3386da20fe84",
"name":"Recording file",
"fileFormat":"MP4"
}
}
]
},
"errorCode":{
"id":10000,
"name":"NORMAL_HANGUP",
"description":"The call has ended with hangup initiated by caller, callee or API"
}
}
}
}
}
}
},
"responses":{
"200":{
"description":"Your server returns this code if it accepts the callback."
}
}
}
}
}
}