openapi: 3.0.0 info: title: Jambonz API description: Jambonz REST API specification contact: email: daveh@drachtio.org license: name: MIT url: https://opensource.org/licenses/MIT version: 1.0.0 servers: - url: https://api.jambonz.cloud/ security: - bearerAuth: [] tags: - name: Calls description: Control Calls - name: Conferences description: Confernce Participants paths: /Accounts/{AccountSid}/Calls: post: tags: - Calls summary: create a call operationId: createCall parameters: - name: AccountSid in: path required: true schema: type: string requestBody: content: application/json: schema: required: - from - to type: object properties: application_sid: type: string format: uuid description: The application to use to control this call. Either applicationSid or url is required. answerOnBridge: type: boolean description: If set to true, the inbound call will ring until the number that was dialed answers the call, and at that point a 200 OK will be sent on the inbound leg. If false, the inbound call will be answered immediately as the outbound call is placed. example: false call_hook: $ref: '#/components/schemas/Webhook' example: url: https://acme.com/callhook method: POST call_status_hook: $ref: '#/components/schemas/Webhook' example: url: https://acme.com/status method: POST from: type: string description: The calling party number example: '16172375089' fromHost: type: string description: The hostname to put in the SIP From header of the INVITE example: blf.finotel.com timeout: type: integer description: The number of seconds to wait for call to be answered. Defaults to 60. example: 30 timeLimit: type: integer description: The max length of call in seconds example: 60 tag: type: object description: Initial set of customer-supplied metadata to associate with the call (see jambonz 'tag' verb) example: callCount: 10 to: $ref: '#/components/schemas/Target' description: Destination for call headers: type: object description: The customer SIP headers to associate with the call example: X-Custom-Header: Hello sipRequestWithinDialogHook: type: string description: The sip indialog hook to receive session messages example: /customHook responses: '201': description: call successfully created content: application/json: schema: required: - sid properties: sid: type: string format: uuid example: 2531329f-fb09-4ef7-887e-84e648214436 '400': description: bad request get: tags: - Calls summary: list calls operationId: listCalls parameters: - name: AccountSid in: path required: true schema: type: string - in: query name: direction required: false schema: type: string enum: - inbound - outbound description: call direction to retrieve - in: query name: from required: false schema: type: string description: calling number to retrieve - in: query name: to required: false schema: type: string description: called number to retrieve - in: query name: callStatus required: false schema: type: string enum: - trying - ringing - early-media - in-progress - completed - failed - busy - no-answer - queued description: call status to retrieve responses: '200': description: list of calls for a specified account content: application/json: schema: type: array items: $ref: '#/components/schemas/Call' '500': description: system error content: application/json: schema: $ref: '#/components/schemas/GeneralError' /Accounts/{AccountSid}/Calls/{CallSid}: parameters: - name: AccountSid in: path required: true style: simple explode: false schema: type: string - name: CallSid in: path required: true style: simple explode: false schema: type: string delete: tags: - Calls summary: delete a call operationId: deleteCall responses: '204': description: call successfully deleted '404': description: call not found '422': description: unprocessable entity content: application/json: schema: $ref: '#/components/schemas/GeneralError' '500': description: system error content: application/json: schema: $ref: '#/components/schemas/GeneralError' get: tags: - Calls summary: retrieve a call operationId: getCall responses: '200': description: call found content: application/json: schema: $ref: '#/components/schemas/Call' '404': description: call not found '500': description: system error content: application/json: schema: $ref: '#/components/schemas/GeneralError' post: tags: - Calls summary: update a call operationId: updateCall requestBody: content: application/json: schema: type: object properties: call_hook: $ref: '#/components/schemas/Webhook' child_call_hook: $ref: '#/components/schemas/Webhook' call_status: type: string enum: - completed - no-answer conf_mute_status: type: string enum: - mute - unmute conf_hold_status: type: string enum: - hold - unhold listen_status: type: string enum: - pause - silence - resume mute_status: type: string enum: - mute - unmute whisper: $ref: '#/components/schemas/Webhook' sip_request: type: object properties: method: type: string content_type: type: string content: type: string headers: type: object record: type: object properties: action: type: string enum: - startCallRecording - stopCallRecording - pauseCallRecording - resumeCallRecording recordingID: type: string siprecServerURL: type: string conferenceParticipantAction: type: object properties: action: type: string enum: - tag - untag - coach - uncoach - mute - unmute - hold - unhold tag: type: string responses: '200': description: Accepted '202': description: Accepted '400': description: bad request '404': description: call not found '422': description: unprocessable entity content: application/json: schema: $ref: '#/components/schemas/GeneralError' '500': description: system error content: application/json: schema: $ref: '#/components/schemas/GeneralError' /Accounts/{AccountSid}/Messages: post: tags: - Messages summary: create an outgoing SMS message operationId: createMessage parameters: - name: AccountSid in: path required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Message' responses: '201': description: call successfully created content: application/json: schema: required: - sid properties: sid: type: string format: uuid example: 2531329f-fb09-4ef7-887e-84e648214436 providerResponse: type: string '400': description: bad request '480': description: temporary failure content: application/json: schema: required: - sid properties: sid: type: string format: uuid example: 2531329f-fb09-4ef7-887e-84e648214436 message: type: string smpp_err_code: type: string /Accounts/{AccountSid}/Queues: parameters: - name: AccountSid in: path required: true schema: type: string format: uuid - in: query name: search required: false schema: type: string description: queue name of data to retrieve get: tags: - Queues summary: retrieve active queues for an account operationId: listQueues responses: '200': description: retrieve active queues records for a specified account content: application/json: schema: type: array items: type: object properties: name: type: string length: type: string /Accounts/{AccountSid}/Conferences: get: tags: - Conferences summary: list conferences operationId: listConferences parameters: - name: AccountSid in: path required: true schema: type: string responses: '200': description: list of conferences for a specified account content: application/json: schema: type: array items: type: string '500': description: system error content: application/json: schema: $ref: '#/components/schemas/GeneralError' components: securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: token schemas: SuccessfulLogin: type: object required: - username - password properties: token: type: string user_sid: type: string scope: type: string force_change: type: boolean Login: type: object properties: username: type: string password: type: string required: - username - password SuccessfulApiKeyAdd: type: object required: - sid - token properties: sid: type: string token: type: string example: sid: 9d26a637-1679-471f-8da8-7150266e1254 token: 589cead6-de24-4689-8ac3-08ffaf102811 SuccessfulAdd: type: object required: - sid properties: sid: type: string example: sid: 9d26a637-1679-471f-8da8-7150266e1254 GeneralError: type: object required: - msg properties: msg: type: string example: msg: specific error detail will be provided here ServiceProvider: type: object properties: service_provider_sid: type: string format: uuid name: type: string description: type: string root_domain: type: string registration_hook: $ref: '#/components/schemas/Webhook' description: authentication webhook for registration ms_teams_fqdn: type: string test_number: type: string description: used for inbound testing for accounts on free plan test_application_name: type: string description: name of test application that can be used for new signups test_application_sid: type: string description: identifies test application that can be used for new signups required: - service_provider_sid - name VoipCarrier: type: object properties: voip_carrier_sid: type: string format: uuid name: type: string description: type: string account_sid: type: string format: uuid application_sid: type: string format: uuid e164_leading_plus: type: boolean requires_register: type: boolean register_username: type: string register_sip_realm: type: string register_password: type: string tech_prefix: type: string inbound_auth_username: type: string inbound_auth_password: type: string diversion: type: string is_active: type: boolean smpp_system_id: type: string smpp_password: type: string smpp_inbound_system_id: type: string smpp_inbound_password: type: string smpp_enquire_link_interval: type: number format: integer required: - voip_carrier_sid - name SipGateway: type: object properties: sip_gateway_sid: type: string format: uuid ipv4: type: string port: type: number netmask: type: number voip_carrier_sid: type: string format: uuid inbound: type: boolean outbound: type: boolean required: - sip_gateway_sid - voip_carrier_sid - ipv4 - port - netmask SmppGateway: type: object properties: smpp_gateway_sid: type: string format: uuid ipv4: type: string port: type: number netmask: type: number voip_carrier_sid: type: string format: uuid is_primary: type: boolean use_tls: type: boolean inbound: type: boolean outbound: type: boolean required: - smpp_gateway_sid - voip_carrier_sid - ipv4 - port - netmask Account: type: object properties: account_sid: type: string format: uuid name: type: string sip_realm: type: string registration_hook: $ref: '#/components/schemas/Webhook' description: authentication webhook for registration device_calling_application_sid: type: string format: uuid service_provider_sid: type: string format: uuid required: - account_sid - name - service_provider_sid Application: type: object properties: application_sid: type: string format: uuid name: type: string account_sid: type: string format: uuid call_hook: $ref: '#/components/schemas/Webhook' description: application webhook for inbound voice calls call_status_hook: $ref: '#/components/schemas/Webhook' description: webhhok for reporting call status events messaging_hook: $ref: '#/components/schemas/Webhook' description: application webhook for inbound SMS/MMS speech_synthesis_vendor: type: string speech_synthesis_voice: type: string speech_recognizer_vendor: type: string speech_recognizer_language: type: string required: - application_sid - name - account_sid ApiKey: type: object properties: api_key_sid: type: string format: uuid token: type: string format: uuid account_sid: type: string format: uuid service_provider_sid: type: string format: uuid expires_at: type: string format: date-time created_at: type: string format: date-time last_used: type: string format: date-time required: - api_key_sid - token PhoneNumber: type: object properties: phone_number_sid: type: string format: uuid number: type: string voip_carrier_sid: type: string format: uuid account_sid: type: string format: uuid application_sid: type: string format: uuid required: - phone_number_sid - number - voip_carrier_sid Registration: type: object properties: registration_sid: type: string format: uuid username: type: string domain: type: string sip_contact: type: string sip_user_agent: type: string required: - registration_sid - username - domain - sip_contact Webhook: type: object properties: webhook_sid: type: string format: uuid url: type: string format: url method: type: string enum: - get - post username: type: string password: type: string required: - url example: url: https://acme.com method: POST MsTeamsTenant: type: object properties: service_provider_sid: type: string format: uuid account_sid: type: string format: uuid application_sid: type: string format: uuid tenant_fqdn: type: string required: - service_provider_sid - tenant_fqdn Call: type: object properties: account_sid: type: string format: uuid application_sid: type: string format: uuid call_id: type: string call_sid: type: string format: uuid call_status: type: string enum: - trying - ringing - alerting - in-progress - completed - busy - no-answer - failed - queued caller_name: type: string direction: type: string enum: - inbound - outbound duration: type: integer from: type: string originating_sip_trunk_name: type: string parent_call_sid: type: string format: uuid service_url: type: string sip_status: type: integer to: type: string required: - account_sid - call_id - call_sid - call_status - direction - from - service_url - sip_status - to Target: properties: type: type: string enum: - phone - sip - user - teams number: type: string sipUri: type: string tenant: type: string description: Microsoft Teams customer tenant domain name trunk: type: string vmail: type: boolean description: Dial directly into user's voicemail to leave a message overrideTo: type: string name: type: string auth: type: object properties: username: type: string password: type: string required: - type example: type: phone number: '+16172375080' Message: properties: provider: type: string from: type: string to: type: string text: type: string media: type: string required: - from - to example: from: '13394445678' to: '16173333456' text: please call when you can SpeechCredential: properties: speech_credential_sid: type: string format: uuid account_sid: type: string format: uuid vendor: type: string enum: - google - aws service_key: type: string access_key_id: type: string secret_access_key: type: string aws_region: type: string last_used: type: string format: date-time last_tested: type: string format: date-time use_for_tts: type: boolean use_for_stt: type: boolean tts_tested_ok: type: boolean stt_tested_ok: type: boolean riva_server_uri: type: string SpeechCredentialUpdate: properties: use_for_tts: type: boolean use_for_stt: type: boolean UserAndAccountDetail: type: object properties: user: type: object properties: user_sid: type: string name: type: string email: type: string phone: type: string service_provider_sid: type: string force_change: type: boolean provider: type: string provider_userid: type: string scope: type: string email_validated: type: boolean phone_validated: type: string account: type: object properties: account_sid: type: string sip_realm: type: string service_provider_sid: type: string registration_hook_sid: type: string queue_event_hook_sid: type: string device_calling_application_sid: type: string is_active: type: boolean created_at: type: string format: date-time testapp: type: object properties: application_sid: type: string name: type: string service_provider_sid: type: string account_sid: type: string call_hook_sid: type: string call_status_hook_sid: type: string messaging_hook_sid: type: string speech_synthesis_vendor: type: string speech_synthesis_language: type: string speech_synthesis_voice: type: string speech_recognizer_vendor: type: string speech_recognizer_language: type: string balance: type: object properties: currency: type: string enum: - USD - EUR balance: type: number last_updated_at: type: string format: date-time created_at: type: string format: date-time last_transaction_id: type: string capacities: type: object properties: effective_start_date: type: string format: date-time effective_end_date: type: string format: date-time limit_sessions: type: integer limit_registrations: type: integer api_keys: type: array items: type: object properties: token: type: string last_used: type: string format: date-time created_at: type: string format: date-time products: type: array items: type: object properties: name: type: string description: type: string category: type: string quantity: type: string in_starter_set: type: boolean product_sid: type: string effective_start_date: type: string format: date-time effective_end_date: type: string format: date-time UserProfile: type: object properties: user_sid: type: string example: a5bce31e-a028-45cd-94c4-f121b72fec61 account_sid: type: string example: a5bce31e-a028-45cd-94c4-f121b72fec61 is_active: type: boolean description: indicates whether account is active example: true name: type: string description: full user name example: Dave Horton email: type: string description: email associated with user example: daveh@drachtio.org phone: type: string description: phone associated with user provider: type: string description: authentication provider enum: - github - google - local example: github scope: type: string description: scope of user permissions enum: - read-only - read-write example: read-write pristine: type: boolean description: true if account was newly created example: true email_validated: type: boolean description: indicates whether user has validated their email address example: true phone_validated: type: boolean description: indicates whether user has validated their mobile phone example: true tutorial_completion: type: number description: bitmask indicating which tutorials have been completed example: 1 jwt: type: string description: json web token to be used as bearer token in API requests required: - user_sid - provider - name - email - scope - account_validated - pristine - jwt - is_active Charge: type: object properties: charge_sid: type: string format: uuid account_sid: type: string format: uuid application_sid: type: string format: uuid billed_at: type: string format: date-time billed_activity: type: string enum: - inbound-call - outbound-call - inbound-sms - outbound-sms - inbound-mms - outbound-mms - tts - stt call_billing_record_sid: type: string format: uuid message_record_sid: type: string format: uuid call_secs_billed: type: number format: integer tts_chars_billed: type: number format: integer stt_secs_billed: type: number format: integer amount_charged: type: number format: double required: - account_sid - billed_activity - amount_charged RecentCalls: type: object properties: account_sid: type: string format: uuid call_sid: type: string format: uuid from: type: string to: type: string answered: type: boolean sip_call_id: type: string sip_status: type: number format: integer duration: type: number format: integer attempted_at: type: number format: integer answered_at: type: number format: integer terminated_at: type: number format: integer termination_reason: type: string host: type: string remote_host: type: string direction: type: string enum: - inbound - outbound trunk: type: string required: - account_sid - call_sid - attempted_at - terminated_at - answered - direction - from - to - sip_status - duration Alert: type: object properties: alert_sid: type: string format: uuid call_sid: type: string format: uuid account_sid: type: string format: uuid application_sid: type: string format: uuid occurred_at: type: string format: date-time alert_type: type: string enum: - webhook-failed - bad-application-syntax - speech-operation-failed - limit-exceeded details: type: string required: - alert_sid - account_sid - occurred_at - alert_type Product: type: object properties: product_sid: type: string name: type: string description: type: string unit_label: type: string category: type: string required: - product_sid - name - unit_label - category PredefinedCarrier: type: object properties: predefined_carrier_sid: type: string format: uuid name: type: string requires_static_ip: type: boolean e164_leading_plus: type: boolean requires_register: type: boolean register_username: type: string register_sip_realm: type: string register_password: type: string register_from_user: type: string register_from_domain: type: string register_public_ip_in_contact: type: boolean tech_prefix: type: string inbound_auth_username: type: string inbound_auth_password: type: string diversion: type: string required: - predefined_carrier_sid - name - requires_static_ip - e164_leading_plus - requires_register Limits: type: object properties: category: type: string enum: - voice_call_session - api_limit - devices Lcr: type: object properties: name: type: string example: twilioLcr default_carrier_set_entry_sid: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 required: - name LcrRoute: type: object properties: lcr_sid: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 regex: type: string description: out going call Phone number regex example: 1* priority: type: number example: 1 description: type: string example: this is example description required: - lcr_sid - regex - priority LcrCarrierSetEntry: type: object properties: workload: type: number example: 90 description: traffic distribution value lcr_route_sid: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 voip_carrier_sid: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 priority: type: number example: 1 required: - lcr_route_sid - voip_carrier_sid - priority LcrRouteAndCarrierEntries: allOf: - $ref: '#/components/schemas/LcrRoute' - type: object properties: lcr_carrier_set_entries: type: array items: $ref: '#/components/schemas/LcrCarrierSetEntry' LcrRoutes: type: array items: $ref: '#/components/schemas/LcrRouteAndCarrierEntries' GoogleCustomVoice: type: object properties: speech_credential_sid: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 name: type: string example: Sally reported_usage: type: string example: REALTIME model: type: string example: projects/12412312/locations/global/models/2134124123-2dbf-43be-9593-12314123 required: - speech_credential_sid - name - reported_usage - model RegisteredClient: type: object properties: name: type: string example: xhoaluu contact: type: string example: sip:0dluqjt6@od41sl9jfc9m.invalid;transport=ws expiryTime: type: number example: 1698981449173 protocol: type: string example: wss allow_direct_app_calling: type: number example: 1 allow_direct_queue_calling: type: number example: 1 allow_direct_user_calling: type: number example: 1 registered_status: type: string enum: - active - inactive required: - speech_credential_sid - name - reported_usage - model TtsModel: type: object properties: name: type: string example: Turbo v2 value: type: string example: eleven_turbo_v2 LanguageVoice: type: object properties: name: type: string example: Standard-A (Female) value: type: string example: ar-XA-Standard-A LanguageVoices: type: object properties: name: type: string example: English (US) value: type: string example: en-US voices: type: array items: $ref: '#/components/schemas/LanguageVoice' SpeechLanguagesVoices: type: object properties: tts: type: array items: $ref: '#/components/schemas/LanguageVoices' stt: type: array items: $ref: '#/components/schemas/LanguageVoice' ttsModel: type: array items: $ref: '#/components/schemas/TtsModel' UserList: type: object properties: name: type: string email: type: string is_active: type: boolean force_change: type: boolean scope: type: string permissions: type: array items: type: string components: securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: token schemas: SuccessfulLogin: type: object required: - username - password properties: token: type: string user_sid: type: string scope: type: string force_change: type: boolean Login: type: object properties: username: type: string password: type: string required: - username - password SuccessfulApiKeyAdd: type: object required: - sid - token properties: sid: type: string token: type: string example: sid: 9d26a637-1679-471f-8da8-7150266e1254 token: 589cead6-de24-4689-8ac3-08ffaf102811 SuccessfulAdd: type: object required: - sid properties: sid: type: string example: sid: 9d26a637-1679-471f-8da8-7150266e1254 GeneralError: type: object required: - msg properties: msg: type: string example: msg: specific error detail will be provided here ServiceProvider: type: object properties: service_provider_sid: type: string format: uuid name: type: string description: type: string root_domain: type: string registration_hook: $ref: '#/components/schemas/Webhook' description: authentication webhook for registration ms_teams_fqdn: type: string test_number: type: string description: used for inbound testing for accounts on free plan test_application_name: type: string description: name of test application that can be used for new signups test_application_sid: type: string description: identifies test application that can be used for new signups required: - service_provider_sid - name VoipCarrier: type: object properties: voip_carrier_sid: type: string format: uuid name: type: string description: type: string account_sid: type: string format: uuid application_sid: type: string format: uuid e164_leading_plus: type: boolean requires_register: type: boolean register_username: type: string register_sip_realm: type: string register_password: type: string tech_prefix: type: string inbound_auth_username: type: string inbound_auth_password: type: string diversion: type: string is_active: type: boolean smpp_system_id: type: string smpp_password: type: string smpp_inbound_system_id: type: string smpp_inbound_password: type: string smpp_enquire_link_interval: type: number format: integer required: - voip_carrier_sid - name SipGateway: type: object properties: sip_gateway_sid: type: string format: uuid ipv4: type: string port: type: number netmask: type: number voip_carrier_sid: type: string format: uuid inbound: type: boolean outbound: type: boolean required: - sip_gateway_sid - voip_carrier_sid - ipv4 - port - netmask SmppGateway: type: object properties: smpp_gateway_sid: type: string format: uuid ipv4: type: string port: type: number netmask: type: number voip_carrier_sid: type: string format: uuid is_primary: type: boolean use_tls: type: boolean inbound: type: boolean outbound: type: boolean required: - smpp_gateway_sid - voip_carrier_sid - ipv4 - port - netmask Account: type: object properties: account_sid: type: string format: uuid name: type: string sip_realm: type: string registration_hook: $ref: '#/components/schemas/Webhook' description: authentication webhook for registration device_calling_application_sid: type: string format: uuid service_provider_sid: type: string format: uuid required: - account_sid - name - service_provider_sid Application: type: object properties: application_sid: type: string format: uuid name: type: string account_sid: type: string format: uuid call_hook: $ref: '#/components/schemas/Webhook' description: application webhook for inbound voice calls call_status_hook: $ref: '#/components/schemas/Webhook' description: webhhok for reporting call status events messaging_hook: $ref: '#/components/schemas/Webhook' description: application webhook for inbound SMS/MMS speech_synthesis_vendor: type: string speech_synthesis_voice: type: string speech_recognizer_vendor: type: string speech_recognizer_language: type: string required: - application_sid - name - account_sid ApiKey: type: object properties: api_key_sid: type: string format: uuid token: type: string format: uuid account_sid: type: string format: uuid service_provider_sid: type: string format: uuid expires_at: type: string format: date-time created_at: type: string format: date-time last_used: type: string format: date-time required: - api_key_sid - token PhoneNumber: type: object properties: phone_number_sid: type: string format: uuid number: type: string voip_carrier_sid: type: string format: uuid account_sid: type: string format: uuid application_sid: type: string format: uuid required: - phone_number_sid - number - voip_carrier_sid Registration: type: object properties: registration_sid: type: string format: uuid username: type: string domain: type: string sip_contact: type: string sip_user_agent: type: string required: - registration_sid - username - domain - sip_contact Webhook: type: object properties: webhook_sid: type: string format: uuid url: type: string format: url method: type: string enum: - get - post username: type: string password: type: string required: - url example: url: https://acme.com method: POST MsTeamsTenant: type: object properties: service_provider_sid: type: string format: uuid account_sid: type: string format: uuid application_sid: type: string format: uuid tenant_fqdn: type: string required: - service_provider_sid - tenant_fqdn Call: type: object properties: account_sid: type: string format: uuid application_sid: type: string format: uuid call_id: type: string call_sid: type: string format: uuid call_status: type: string enum: - trying - ringing - alerting - in-progress - completed - busy - no-answer - failed - queued caller_name: type: string direction: type: string enum: - inbound - outbound duration: type: integer from: type: string originating_sip_trunk_name: type: string parent_call_sid: type: string format: uuid service_url: type: string sip_status: type: integer to: type: string required: - account_sid - call_id - call_sid - call_status - direction - from - service_url - sip_status - to Target: properties: type: type: string enum: - phone - sip - user - teams number: type: string sipUri: type: string tenant: type: string description: Microsoft Teams customer tenant domain name trunk: type: string vmail: type: boolean description: Dial directly into user's voicemail to leave a message overrideTo: type: string name: type: string auth: type: object properties: username: type: string password: type: string required: - type example: type: phone number: '+16172375080' Message: properties: provider: type: string from: type: string to: type: string text: type: string media: type: string required: - from - to example: from: '13394445678' to: '16173333456' text: please call when you can SpeechCredential: properties: speech_credential_sid: type: string format: uuid account_sid: type: string format: uuid vendor: type: string enum: - google - aws service_key: type: string access_key_id: type: string secret_access_key: type: string aws_region: type: string last_used: type: string format: date-time last_tested: type: string format: date-time use_for_tts: type: boolean use_for_stt: type: boolean tts_tested_ok: type: boolean stt_tested_ok: type: boolean riva_server_uri: type: string SpeechCredentialUpdate: properties: use_for_tts: type: boolean use_for_stt: type: boolean UserAndAccountDetail: type: object properties: user: type: object properties: user_sid: type: string name: type: string email: type: string phone: type: string service_provider_sid: type: string force_change: type: boolean provider: type: string provider_userid: type: string scope: type: string email_validated: type: boolean phone_validated: type: string account: type: object properties: account_sid: type: string sip_realm: type: string service_provider_sid: type: string registration_hook_sid: type: string queue_event_hook_sid: type: string device_calling_application_sid: type: string is_active: type: boolean created_at: type: string format: date-time testapp: type: object properties: application_sid: type: string name: type: string service_provider_sid: type: string account_sid: type: string call_hook_sid: type: string call_status_hook_sid: type: string messaging_hook_sid: type: string speech_synthesis_vendor: type: string speech_synthesis_language: type: string speech_synthesis_voice: type: string speech_recognizer_vendor: type: string speech_recognizer_language: type: string balance: type: object properties: currency: type: string enum: - USD - EUR balance: type: number last_updated_at: type: string format: date-time created_at: type: string format: date-time last_transaction_id: type: string capacities: type: object properties: effective_start_date: type: string format: date-time effective_end_date: type: string format: date-time limit_sessions: type: integer limit_registrations: type: integer api_keys: type: array items: type: object properties: token: type: string last_used: type: string format: date-time created_at: type: string format: date-time products: type: array items: type: object properties: name: type: string description: type: string category: type: string quantity: type: string in_starter_set: type: boolean product_sid: type: string effective_start_date: type: string format: date-time effective_end_date: type: string format: date-time UserProfile: type: object properties: user_sid: type: string example: a5bce31e-a028-45cd-94c4-f121b72fec61 account_sid: type: string example: a5bce31e-a028-45cd-94c4-f121b72fec61 is_active: type: boolean description: indicates whether account is active example: true name: type: string description: full user name example: Dave Horton email: type: string description: email associated with user example: daveh@drachtio.org phone: type: string description: phone associated with user provider: type: string description: authentication provider enum: - github - google - local example: github scope: type: string description: scope of user permissions enum: - read-only - read-write example: read-write pristine: type: boolean description: true if account was newly created example: true email_validated: type: boolean description: indicates whether user has validated their email address example: true phone_validated: type: boolean description: indicates whether user has validated their mobile phone example: true tutorial_completion: type: number description: bitmask indicating which tutorials have been completed example: 1 jwt: type: string description: json web token to be used as bearer token in API requests required: - user_sid - provider - name - email - scope - account_validated - pristine - jwt - is_active Charge: type: object properties: charge_sid: type: string format: uuid account_sid: type: string format: uuid application_sid: type: string format: uuid billed_at: type: string format: date-time billed_activity: type: string enum: - inbound-call - outbound-call - inbound-sms - outbound-sms - inbound-mms - outbound-mms - tts - stt call_billing_record_sid: type: string format: uuid message_record_sid: type: string format: uuid call_secs_billed: type: number format: integer tts_chars_billed: type: number format: integer stt_secs_billed: type: number format: integer amount_charged: type: number format: double required: - account_sid - billed_activity - amount_charged RecentCalls: type: object properties: account_sid: type: string format: uuid call_sid: type: string format: uuid from: type: string to: type: string answered: type: boolean sip_call_id: type: string sip_status: type: number format: integer duration: type: number format: integer attempted_at: type: number format: integer answered_at: type: number format: integer terminated_at: type: number format: integer termination_reason: type: string host: type: string remote_host: type: string direction: type: string enum: - inbound - outbound trunk: type: string required: - account_sid - call_sid - attempted_at - terminated_at - answered - direction - from - to - sip_status - duration Alert: type: object properties: alert_sid: type: string format: uuid call_sid: type: string format: uuid account_sid: type: string format: uuid application_sid: type: string format: uuid occurred_at: type: string format: date-time alert_type: type: string enum: - webhook-failed - bad-application-syntax - speech-operation-failed - limit-exceeded details: type: string required: - alert_sid - account_sid - occurred_at - alert_type Product: type: object properties: product_sid: type: string name: type: string description: type: string unit_label: type: string category: type: string required: - product_sid - name - unit_label - category PredefinedCarrier: type: object properties: predefined_carrier_sid: type: string format: uuid name: type: string requires_static_ip: type: boolean e164_leading_plus: type: boolean requires_register: type: boolean register_username: type: string register_sip_realm: type: string register_password: type: string register_from_user: type: string register_from_domain: type: string register_public_ip_in_contact: type: boolean tech_prefix: type: string inbound_auth_username: type: string inbound_auth_password: type: string diversion: type: string required: - predefined_carrier_sid - name - requires_static_ip - e164_leading_plus - requires_register Limits: type: object properties: category: type: string enum: - voice_call_session - api_limit - devices Lcr: type: object properties: name: type: string example: twilioLcr default_carrier_set_entry_sid: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 required: - name LcrRoute: type: object properties: lcr_sid: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 regex: type: string description: out going call Phone number regex example: 1* priority: type: number example: 1 description: type: string example: this is example description required: - lcr_sid - regex - priority LcrCarrierSetEntry: type: object properties: workload: type: number example: 90 description: traffic distribution value lcr_route_sid: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 voip_carrier_sid: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 priority: type: number example: 1 required: - lcr_route_sid - voip_carrier_sid - priority LcrRouteAndCarrierEntries: allOf: - $ref: '#/components/schemas/LcrRoute' - type: object properties: lcr_carrier_set_entries: type: array items: $ref: '#/components/schemas/LcrCarrierSetEntry' LcrRoutes: type: array items: $ref: '#/components/schemas/LcrRouteAndCarrierEntries' GoogleCustomVoice: type: object properties: speech_credential_sid: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 name: type: string example: Sally reported_usage: type: string example: REALTIME model: type: string example: projects/12412312/locations/global/models/2134124123-2dbf-43be-9593-12314123 required: - speech_credential_sid - name - reported_usage - model RegisteredClient: type: object properties: name: type: string example: xhoaluu contact: type: string example: sip:0dluqjt6@od41sl9jfc9m.invalid;transport=ws expiryTime: type: number example: 1698981449173 protocol: type: string example: wss allow_direct_app_calling: type: number example: 1 allow_direct_queue_calling: type: number example: 1 allow_direct_user_calling: type: number example: 1 registered_status: type: string enum: - active - inactive required: - speech_credential_sid - name - reported_usage - model TtsModel: type: object properties: name: type: string example: Turbo v2 value: type: string example: eleven_turbo_v2 LanguageVoice: type: object properties: name: type: string example: Standard-A (Female) value: type: string example: ar-XA-Standard-A LanguageVoices: type: object properties: name: type: string example: English (US) value: type: string example: en-US voices: type: array items: $ref: '#/components/schemas/LanguageVoice' SpeechLanguagesVoices: type: object properties: tts: type: array items: $ref: '#/components/schemas/LanguageVoices' stt: type: array items: $ref: '#/components/schemas/LanguageVoice' ttsModel: type: array items: $ref: '#/components/schemas/TtsModel' UserList: type: object properties: name: type: string email: type: string is_active: type: boolean force_change: type: boolean scope: type: string permissions: type: array items: type: string