> For a complete documentation index, fetch https://docs.voximplant.ai/llms.txt # VoximplantAPI ## Classes * [Client](/api-reference/voxengine/voximplant-api/client) ## Types ### A2PGetSmsHistoryRequest **`count`** `number` *optional* Maximum number of resulting rows fetched. Should be not bigger than 1000. If left blank, then the default value of 1000 is used --- **`deliveryStatus`** `number` *optional* The delivery status ID: QUEUED - 1, DISPATCHED - 2, ABORTED - 3, REJECTED - 4, DELIVERED - 5, FAILED - 6, EXPIRED - 7, UNKNOWN - 8 --- **`destinationNumber`** `string` *optional* The destination phone number --- **`fromDate`** `Date` *optional* Date from which the search is to start. Format is 'yyyy-MM-dd HH:mm:ss', time zone is UTC --- **`messageId`** `'any' | number | number[]` *optional* Message id list separated by semicolons (;) --- **`offset`** `number` *optional* The first **N** records are skipped in the output --- **`output`** `string` *optional* The output format. The following values available: **json**, **csv**, **xls**. The default value is **json** --- **`sourceNumber`** `string` *optional* The source phone number --- **`toDate`** `Date` *optional* Date from which the search is to end. Format is 'yyyy-MM-dd HH:mm:ss', time zone is UTC --- ### A2PGetSmsHistoryResponse **`error`** `APIError` *optional* --- **`result`** `A2PSmsHistory[]` --- **`totalCount`** `number` Total number of messages matching the query parameters --- ### A2PSendSmsRequest **`dstNumbers`** `string | string[]` The destination phone numbers separated by semicolons (;). The maximum number of these phone numbers is 100 --- **`srcNumber`** `string` The SenderID for outgoing SMS. Please contact support for installing a SenderID --- **`storeBody`** `boolean` *optional* Whether to store outgoing message texts. Default value is false --- **`text`** `string` The message text, up to 1600 characters. We split long messages greater than 160 GSM-7 characters or 70 UTF-16 characters into multiple segments. Each segment is charged as one message --- ### A2PSendSmsResponse **`error`** `APIError` *optional* --- **`failed`** `FailedSms[]` --- **`fragmentsCount`** `number` The number of fragments the message is divided into --- **`result`** `SmsTransaction[]` --- ### A2PSmsHistory **`cost`** `number` The message cost --- **`deliveryStatus`** `string` Delivery status: QUEUED, DISPATCHED, ABORTED, REJECTED, DELIVERED, FAILED, EXPIRED, UNKNOWN --- **`destinationNumber`** `number` SMS destination number --- **`errorMessage`** `string` *optional* Error message (if any) --- **`fragments`** `number` Number of fragments the initial message is divided into --- **`messageId`** `number` Message ID --- **`processingDate`** `Date` Date of message processing. The format is yyyy-MM-dd HH:mm:ss --- **`sourceNumber`** `number` SMS source number --- **`statusId`** `string` The message status. The possible values are: 1 — Success, 2 — Error, 3 — Waiting --- **`text`** `string` *optional* Stored message text --- **`transactionId`** `number` The transaction ID for this message --- ### AccountInfo **`a2pSmsEnabled`** `boolean` *optional* Whether to activate one-way SMS --- **`accessEntries`** `string[]` *optional* The allowed access entries (the API function names) --- **`accountCustomData`** `string` *optional* The custom data --- **`accountEmail`** `string` The account's email --- **`accountFirstName`** `string` *optional* The first name --- **`accountId`** `number` The account's ID --- **`accountLastName`** `string` *optional* The last name --- **`accountName`** `string` The account's name --- **`accountNotifications`** `boolean` *optional* Whether Voximplant notifications are required --- **`active`** `boolean` Whether the account is active --- **`apiKey`** `string` *optional* The account API key. Use password or api\_key authentication to show the api\_key --- **`balance`** `number` *optional* The account's money --- **`billingAddressAddress`** `string` *optional* The office address --- **`billingAddressCountryCode`** `string` *optional* The billing address country code (2 symbols, ISO 3166-1 alpha-2). Examples: US, RU, GB --- **`billingAddressName`** `string` *optional* The company or businessman name --- **`billingAddressPhone`** `string` *optional* The office phone number --- **`billingAddressState`** `string` *optional* The office state (US) or province (Canada), up to 100 characters. Examples: California, Illinois, British Columbia --- **`billingAddressZip`** `string` *optional* The office ZIP --- **`billingLimits`** `BillingLimits` *optional* The payments limits applicable to each payment method --- **`callbackSalt`** `string` *optional* If salt string is specified, each HTTP request made by the Voximplant cloud toward the **callback\_url** has a **salt** field set to MD5 hash of account information and salt. That hash can be used be a developer to ensure that HTTP request is made by the Voximplant cloud --- **`callbackUrl`** `string` *optional* If URL is specified, Voximplant cloud makes HTTP POST requests to it when something happens. For a full list of reasons see the **type** field of the `AccountCallback` structure. The HTTP request has a JSON-encoded body that conforms to the `AccountCallbacks` structure --- **`created`** `Date` The UTC account created time in 24-h format: YYYY-MM-DD HH:mm:ss --- **`creditLimit`** `number` *optional* The account's credit limit --- **`currency`** `string` *optional* The currency code (USD, RUR, EUR...) --- **`frozen`** `boolean` *optional* Whether account is blocked by Voximplant admins --- **`languageCode`** `string` *optional* The notification language code (2 symbols, ISO639-1). Examples: en, ru --- **`location`** `string` *optional* The account location (timezone). Examples: America/Los\_Angeles, Etc/GMT-8, Etc/GMT+10 --- **`minBalanceToNotify`** `number` *optional* The minimum balance value to notify by email or SMS --- **`newsNotifications`** `boolean` *optional* Whether Voximplant news notifications are required --- **`sendJsError`** `boolean` *optional* Whether to send an email when a JS error occurs --- **`supportBankCard`** `boolean` *optional* Whether Bank card payments are allowed --- **`supportInvoice`** `boolean` *optional* Whether Bank invoices are allowed --- **`supportRobokassa`** `boolean` *optional* Whether Robokassa payments are allowed --- **`tariffChangingNotifications`** `boolean` *optional* Whether Voximplant plan changing notifications are required --- **`withAccessEntries`** `boolean` *optional* Whether the admin user permissions are granted --- ### AccountInvoice **`amount`** `InvoiceTotalDetails` Info on all money spent in the invoice --- **`invoiceDate`** `Date` Date when the invoice is created in the following format: YYYY-MM-DD --- **`invoiceId`** `number` Invoice id --- **`invoiceNumber`** `string` Unique invoice number --- **`period`** `InvoicePeriod` Invoice period --- **`rows`** `InvoiceSpendingDetails` Detailed info on each spending --- **`status`** `string` Invoice status --- ### AccountsInterface **`getAccountInfo`** `(request: GetAccountInfoRequest) => Promise` Gets the account's info such as account\_id, account\_name, account\_email etc. --- **`getCurrencyRate`** `(request: GetCurrencyRateRequest) => Promise` Gets the exchange rate on selected date (per USD). --- ### ACDAfterServiceOperatorState **`status`** `string` *optional* The operator [status string](/api-reference/websdk/overview) --- **`userDisplayName`** `string` The display user name of the operator --- **`userId`** `number` The user ID of the operator --- **`userName`** `string` The user name of the operator --- ### ACDLock **`created`** `Date` The UTC lock created time in 24-h format: YYYY-MM-DD HH:mm:ss --- **`id`** `string` The ACD lock ID --- ### ACDLockedOperatorState **`acdCalls`** `ACDOperatorCall[]` *optional* The ACD operator calls --- **`locks`** `ACDLock[]` *optional* The operator locks --- **`status`** `string` *optional* The operator [status string](/api-reference/websdk/overview). 'BANNED' string indicates temporarily [banned operators](/api-reference/voxengine/acd-request). The following values are possible: READY, BANNED --- **`unreached`** `Date` *optional* The UTC time when the operator becomes unavailable in 24-h format: YYYY-MM-DD HH:mm:ss --- **`userDisplayName`** `string` The display user name of the operator --- **`userId`** `number` The user ID of the operator --- **`userName`** `string` The user name of the operator --- ### ACDOperatorCall **`acdQueueId`** `number` The ACD queue ID --- **`acdQueueName`** `string` The ACD queue name --- **`acdRequestId`** `string` The internal ACD session history ID --- **`acdSessionHistoryId`** `number` The ACD session history ID of the request --- **`beginTime`** `Date` The begin time of the request in 24-h format: YYYY-MM-DD HH:mm:ss --- **`callerid`** `string` *optional* The client callerid --- **`submitted`** `Date` *optional* The submission time of the request in 24-h format: YYYY-MM-DD HH:mm:ss --- ### ACDQueueOperatorInfo **`acdQueueId`** `number` The ACD queue ID --- **`acdQueueName`** `string` The ACD queue name --- **`autoLink`** `boolean` Whether the user is bound to the ACD queue in manual mode if false --- ### ACDQueueState **`acdQueueId`** `number` The ACD queue ID --- **`afterServiceOperatorCount`** `number` Number of operators with the 'AFTER SERVICE' state --- **`afterServiceOperators`** `ACDAfterServiceOperatorState[]` List of operators with the 'AFTER\_SERVICE' state. This state is set right after a call is ended to indicate a call postprocessing --- **`lockedOperators`** `ACDLockedOperatorState[]` List of operators with the 'READY' state that cannot accept a call from this queue. Operator cannot accept a call if they are temporarily banned, or they are servicing a call right now --- **`lockedOperatorsCount`** `number` Number of locked operators --- **`readyOperators`** `ACDReadyOperatorState[]` List of operators with the 'READY' state that can accept a call from this queue --- **`readyOperatorsCount`** `number` Number of ready operators --- **`servicingCalls`** `ACDServicingCallState[]` List of calls enqueued into this queue that are being serviced right now by operators --- **`waitingCalls`** `ACDWaitingCallState[]` List of calls enqueued into this queue that are not yet serviced by operators --- ### ACDReadyOperatorState **`idleDuration`** `number` The idle duration in seconds. The minimum of the duration after the last hangup and the duration after the operator status changing to READY --- **`userDisplayName`** `string` The display user name of the operator --- **`userId`** `number` The user ID of the operator --- **`userName`** `string` The user name of the operator --- ### ACDServicingCallState **`acdSessionHistoryId`** `number` The ACD session history ID of the request --- **`beginTime`** `Date` The begin time of the request in 24-h format: YYYY-MM-DD HH:mm:ss --- **`callerid`** `string` *optional* The client callerid --- **`priority`** `number` The request priority --- **`userDisplayName`** `string` The display user name of the operator --- **`userId`** `number` The user ID of the operator --- **`userName`** `string` The user name of the operator --- **`waitingTime`** `number` The waiting time before servicing in seconds --- ### ACDState **`acdQueues`** `ACDQueueState[]` The queues' states --- ### ACDWaitingCallState **`acdSessionHistoryId`** `number` The ACD session history ID of the request --- **`beginTime`** `Date` The begin time of the request in 24-h format: YYYY-MM-DD HH:mm:ss --- **`callerid`** `string` *optional* The client callerid --- **`minutesToSubmit`** `number` The predicted minutes left to start servicing --- **`priority`** `number` The request priority --- **`userDisplayName`** `string` The display user name of the operator --- **`userId`** `number` *optional* The user ID of the operator to try to service the request --- **`userName`** `string` The user name of the operator --- **`waitingTime`** `number` The waiting time in seconds --- ### ActivateOutboundTestPhoneNumberRequest **`verificationCode`** `string` The verification code, see the `VerifyOutboundTestPhoneNumber` function --- ### ActivateOutboundTestPhoneNumberResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### AddApplicationRequest **`applicationName`** `string` Short application name in the \[a-z]\[a-z0-9-]\{1,64} format --- **`secureRecordStorage`** `boolean` *optional* Whether to enable secure storage for all logs and records of the application --- ### AddApplicationResponse **`applicationId`** `number` The application ID --- **`applicationName`** `string` The full application name --- **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- **`secureRecordStorage`** `boolean` Whether a secure storage for logs and records is enabled or not --- ### AddAuthorizedAccountIPRequest **`allowed`** `boolean` *optional* Whether to remove the IP from the blacklist --- **`authorizedIp`** `string` The authorized IP4 or network --- **`description`** `string` *optional* The IP address description --- ### AddAuthorizedAccountIPResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### AddOutboundTestPhoneNumberRequest **`phoneNumber`** `string` The personal phone number in the E.164 format --- ### AddOutboundTestPhoneNumberResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### AddPstnBlackListItemRequest **`pstnBlacklistPhone`** `string` The phone number in format e164 or regex pattern --- ### AddPstnBlackListItemResponse **`error`** `APIError` *optional* --- **`pstnBlacklistId`** `number` The PSTN black list item ID --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### AddQueueRequest **`acdQueueName`** `string` The queue name. The length should be less than 100 --- **`acdQueuePriority`** `number` *optional* The integer queue priority. The highest priority is 0 --- **`applicationId`** `number` *optional* The application ID. **Required** unless **application\_name** is provided. --- **`applicationName`** `string` *optional* The application name. **Required** unless **application\_id** is provided. --- **`autoBinding`** `boolean` *optional* Whether to enable the auto binding of operators to a queue by skills comparing --- **`averageServiceTime`** `number` *optional* The average service time in seconds. Specify the parameter to correct or initialize the waiting time prediction --- **`maxQueueSize`** `number` *optional* The maximum queue size --- **`maxWaitingTime`** `number` *optional* The maximum predicted waiting time in minutes. The client is rejected if the predicted waiting time is greater than the maximum predicted waiting time --- **`serviceProbability`** `number` *optional* The value in the range of \[0.5 ... 1.0]. The value 1.0 means the service probability 100% in challenge with a lower priority queue --- ### AddQueueResponse **`acdQueueId`** `number` The ACD queue ID --- **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### AddSecretRequest **`applicationId`** `number` *optional* Application ID to add the secret to. **Required** unless **application\_name** is provided. --- **`applicationName`** `string` *optional* Application name. **Required** unless **application\_id** is provided. --- **`description`** `string` *optional* Optional. Secret description. When processing, the length is truncated to the first 200 characters --- **`secretName`** `string` Secret name. The name should start with a Latin letter and can contain up to 64 characters, including Latin letters, digits and underscores --- **`secretValue`** `string` Secret value. Maximum length is 8192 characters --- ### AddSecretResponse **`error`** `APIError` *optional* --- **`result`** `AddSecretResult[]` Result with the added secret ID --- ### AddSecretResult **`secretId`** `number` Added secret ID --- ### AddSipWhiteListItemRequest **`description`** `string` *optional* The network address description --- **`sipWhitelistNetwork`** `string` The network address in format A.B.C.D/L or A.B.C.D/a.b.c.d (example 192.168.1.5/16) --- ### AddSipWhiteListItemResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- **`sipWhitelistId`** `number` The SIP white list item ID --- ### AddSkillRequest **`skillName`** `string` The ACD operator skill name. The length should be less than 512 --- ### AddSkillResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- **`skillId`** `number` The skill ID --- ### AddUserRequest **`applicationId`** `number` *optional* The application ID which a new user is to be bound to. **Required** unless **application\_name** is provided. --- **`applicationName`** `string` *optional* The application name which a new user is to be bound to. **Required** unless **application\_id** is provided. --- **`mobilePhone`** `string` *optional* --- **`parentAccounting`** `boolean` *optional* Whether the user uses the parent account's money, 'false' if the user has a separate balance --- **`userActive`** `boolean` *optional* Whether the user is active. Inactive users cannot log in to applications --- **`userCustomData`** `string` *optional* Any string --- **`userDisplayName`** `string` The user display name. The length should be less than 256 --- **`userName`** `string` The user name in format \[a-z0-9]\[a-z0-9\_-]\{2,49} --- **`userPassword`** `string` The user password. Should be at least 8 characters long and contain at least one uppercase and lowercase letter, one number, and one special character --- ### AddUserResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- **`userId`** `number` The new user ID --- ### APIError **`code`** `number` The error code --- **`msg`** `string` The error description --- ### AppendToCallListRequest **`delimiter`** `string` *optional* Separator values. The default value is ';' --- **`encoding`** `string` *optional* Encoding file. The default value is UTF-8 --- **`escape`** `string` *optional* Escape character for parsing csv --- **`fileContent`** `Buffer` Send as the request body or multiform. Refer to the [Call lists guide](/feature-guides/features/call-lists/automated-dial-lists#csv-table-setup) to learn about file syntax --- **`listId`** `number` *optional* Call list ID. **Required** unless **list\_name** is provided. --- **`listName`** `string` *optional* --- **`quote`** `string` *optional* Quote character for parsing csv --- ### AppendToCallListResponse **`batchId`** `number` Batch UUID --- **`count`** `number` Number of stored records --- **`error`** `APIError` *optional* --- **`listId`** `number` List ID --- **`result`** `boolean` Whether the request completed successfully --- ### ApplicationInfo **`applicationId`** `number` The application ID --- **`applicationName`** `string` The full application name --- **`modified`** `Date` The application editing UTC date in 24-h format: YYYY-MM-DD HH:mm:ss --- **`secureRecordStorage`** `boolean` Whether a secure storage for logs and records is enabled --- ### ApplicationsInterface **`addApplication`** `(request: AddApplicationRequest) => Promise` Adds a new account's application. --- **`delApplication`** `(request: DelApplicationRequest) => Promise` Deletes the account's application. --- **`getApplications`** `(request: GetApplicationsRequest) => Promise` Gets the account's applications. --- **`setApplicationInfo`** `(request: SetApplicationInfoRequest) => Promise` Edits the account's application. --- ### AttachedPhoneInfo **`activationStatus`** `string` *optional* Phone number activation status --- **`applicationId`** `number` *optional* ID of the bound application --- **`applicationName`** `string` *optional* Name of the bound application --- **`autoCharge`** `boolean` Whether to charge automatically --- **`canBeUsed`** `boolean` Whether a not verified account can use the phone --- **`canceled`** `boolean` Whether the subscription is cancelled --- **`categoryName`** `string` The phone category name (MOBILE, GEOGRAPHIC, TOLLFREE, MOSCOW495) --- **`deactivated`** `boolean` Whether the subscription is frozen --- **`emergencyCallsEnabled`** `boolean` Whether calls to emergency numbers are enabled --- **`emergencyCallsToBeEnabled`** `boolean` Whether you need to make a request to enable calls to emergency numbers --- **`extendedApplicationName`** `string` *optional* Full application name, e.g. myapp.myaccount.n1.voximplant.com --- **`incomingSmsCallbackUrl`** `string` *optional* If set, the callback of an incoming SMS is sent to this url, otherwise, it is sent to the general account URL --- **`isSmsEnabled`** `boolean` Whether SMS sending and receiving is enabled for this phone number via the `ControlSms` Management API --- **`isSmsSupported`** `boolean` Whether SMS is supported for this phone number. SMS needs to be explicitly enabled via the `ControlSms` Management API before sending or receiving SMS. If SMS is supported and enabled, SMS can be sent from this phone number via the `SendSmsMessage` Management API and received via the `InboundSmsCallback` property of the HTTP callback. See [this article](/platform/management-api/callbacks) for HTTP callback details --- **`modified`** `Date` UTC date of an event associated with the number in 24-h format: YYYY-MM-DD HH:mm:ss --- **`phoneCountryCode`** `string` The phone country code (2 symbols) --- **`phoneId`** `number` The phone ID --- **`phoneNextRenewal`** `Date` The next renewal date in the following format: YYYY-MM-DD --- **`phoneNumber`** `string` The phone number --- **`phonePrice`** `number` The phone monthly charge in the account's currency --- **`phonePurchaseDate`** `Date` The purchase date in 24-h format: YYYY-MM-DD HH:mm:ss --- **`phoneRegionName`** `string` *optional* Phone region name --- **`requiredVerification`** `string` *optional* Whether the verification is required for the account --- **`ruleId`** `number` *optional* ID of the bound rule --- **`ruleName`** `string` *optional* Name of the bound rule --- **`subscriptionId`** `number` Phone number subscription ID --- **`unverifiedHoldUntil`** `Date` *optional* Unverified phone hold until the date in the following format: YYYY-MM-DD (if the account verification is required). The number is detached on that day automatically! --- **`verificationStatus`** `string` *optional* The account verification status. The following values are possible: REQUIRED, IN\_PROGRESS, VERIFIED --- ### AuthorizedAccountIP **`allowed`** `boolean` Whether the IP is allowed (true - whitelist, false - blacklist) --- **`authorizedIp`** `string` The authorized IP4 or network --- **`created`** `Date` The item creating UTC date in 24-h format: YYYY-MM-DD HH:mm:ss --- ### AuthorizedIPsInterface **`addAuthorizedAccountIP`** `(\n request: AddAuthorizedAccountIPRequest\n ) => Promise` Adds a new authorized IP4 or network to the white/black list. --- **`checkAuthorizedAccountIP`** `(\n request: CheckAuthorizedAccountIPRequest\n ) => Promise` Tests whether the IP4 is banned or allowed. --- **`delAuthorizedAccountIP`** `(\n request: DelAuthorizedAccountIPRequest\n ) => Promise` Removes the authorized IP4 or network from the white/black list. --- **`getAuthorizedAccountIPs`** `(\n request: GetAuthorizedAccountIPsRequest\n ) => Promise` Gets the authorized IP4 or network. --- ### BankCardBillingLimitInfo **`currency`** `string` The currency --- **`minAmount`** `number` The minimum amount --- ### BillingLimitInfo **`currency`** `string` The currency --- **`minAmount`** `number` The minimum amount --- ### BillingLimits **`bankCard`** `BankCardBillingLimitInfo` *optional* The bank card limits --- **`invoice`** `BillingLimitInfo` *optional* The invoice limits --- **`robokassa`** `BillingLimitInfo` *optional* The Robokassa limits --- ### BindSipRegistrationRequest **`applicationId`** `number` *optional* The application ID which the SIP registration is to be bound to. Can be used instead of the **application\_name** parameter --- **`applicationName`** `string` *optional* The application name which the SIP registration is to be bound to. Can be used instead of the **application\_id** parameter --- **`bind`** `boolean` *optional* Whether to bind or unbind (set true or false respectively) --- **`ruleId`** `number` *optional* The rule ID which the SIP registration is to be bound to. Can be used instead of the **rule\_name** parameter --- **`ruleName`** `string` *optional* The rule name which the SIP registration is to be bound to. Can be used instead of the **rule\_id** parameter --- **`sipRegistrationId`** `number` *optional* The registration ID --- **`userId`** `number` *optional* The user ID which the SIP registration is to be bound to. Can be used instead of the **user\_name** parameter --- **`userName`** `string` *optional* The user name which the SIP registration is to be bound to. Can be used instead of the **user\_id** parameter --- ### BindSipRegistrationResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### BindSkillRequest **`acdQueueId`** `'any' | number | number[]` *optional* The ACD queue ID list separated by semicolons (;). Use the 'all' value to select all ACD queues. **Required** unless **acd\_queue\_name** is provided. --- **`acdQueueName`** `string | string[]` *optional* The ACD queue name. The ACD queue name list separated by semicolons (;). **Required** unless **acd\_queue\_id** is provided. --- **`applicationId`** `number` *optional* The application ID. It is required if the **user\_name** is specified --- **`applicationName`** `string` *optional* The application name that can be used instead of **application\_id** --- **`bind`** `boolean` *optional* Whether to bind or unbind (set true or false respectively) --- **`skillId`** `'any' | number | number[]` *optional* The skill ID list separated by semicolons (;). Use the 'all' value to select all skills. **Required** unless **skill\_name** is provided. --- **`skillName`** `string | string[]` *optional* The skill name list separated by semicolons (;). **Required** unless **skill\_id** is provided. --- **`userId`** `'any' | number | number[]` *optional* The user ID list separated by semicolons (;). Use the 'all' value to select all users. **Required** unless **user\_name** is provided. --- **`userName`** `string | string[]` *optional* The user name list separated by semicolons (;). **Required** unless **user\_id** is provided. --- ### BindSkillResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### BindUserToQueueRequest **`acdQueueId`** `'any' | number | number[]` *optional* The ACD queue ID list separated by semicolons (;). Use the 'all' value to specify all queues bound to the application. **Required** unless **acd\_queue\_name** is provided. --- **`acdQueueName`** `string | string[]` *optional* The queue name. The queue name list separated by semicolons (;). **Required** unless **acd\_queue\_id** is provided. --- **`applicationId`** `number` *optional* The application ID. **Required** unless **application\_name** is provided. --- **`applicationName`** `string` *optional* The application name. **Required** unless **application\_id** is provided. --- **`bind`** `boolean` Whether to bind or unbind users --- **`userId`** `'any' | number | number[]` *optional* The user ID list separated by semicolons (;). Use the 'all' value to specify all users bound to the application. **Required** unless **user\_name** is provided. --- **`userName`** `string | string[]` *optional* The user name list separated by semicolons (;). **Required** unless **user\_id** is provided. --- ### BindUserToQueueResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### CallerIDInfo **`active`** `boolean` Whether active --- **`calleridId`** `number` The callerID id --- **`calleridNumber`** `string` The callerID number --- **`codeEnteringAttemptsLeft`** `number` *optional* The code entering attempts left for the unverified callerID --- **`verificationCallAttemptsLeft`** `number` *optional* The verification call attempts left for the unverified callerID --- **`verifiedUntil`** `Date` *optional* The verification ending date in the following format: YYYY-MM-DD (for the verified callerID) --- ### CallerIDsInterface **`delCallerID`** `(request: DelCallerIDRequest) => Promise` Deletes the CallerID. Note: you cannot delete a CID permanently (the antispam defence). --- **`getCallerIDs`** `(request: GetCallerIDsRequest) => Promise` Gets the account callerIDs. --- ### CallInfo **`callId`** `number` Call's history ID --- **`cost`** `number` *optional* Call's cost --- **`customData`** `string` *optional* Custom data passed to the JS session --- **`diversionNumber`** `string` *optional* Call forwarding number --- **`duration`** `number` *optional* Call duration in seconds --- **`endReason`** `string` *optional* End reason code and description --- **`incoming`** `boolean` Whether the call is incoming --- **`localNumber`** `string` Local number on the platform side --- **`mediaServerAddress`** `string` Media server's IP address --- **`recordUrl`** `string` *optional* Record URL --- **`remoteNumber`** `string` Remote number on the client side --- **`remoteNumberType`** `string` Type of the remote number, e.g., a PSTN, mobile, user or sip address --- **`startTime`** `Date` Call start time in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss --- **`successful`** `boolean` Whether the call is successful --- **`transactionId`** `number` Transaction ID --- ### CallList **`dtComplete`** `Date` *optional* The completion date in 24-h format: YYYY-MM-DD HH:mm:ss --- **`dtSubmit`** `Date` The date of submitted the list in 24-h format: YYYY-MM-DD HH:mm:ss --- **`intervalSeconds`** `number` The interval between attempts in seconds --- **`listId`** `number` The list ID --- **`listName`** `string` The list name --- **`maxSimultaneous`** `number` The maximum number of simultaneous tasks --- **`numAttempts`** `number` The number of task attempts run, which failed to call --- **`priority`** `number` The priority of the call list --- **`ruleId`** `number` The rule id --- **`status`** `string` The status name. The possible values are **In progress**, **Completed**, **Canceled** --- **`taskPriorityStrategy`** `string` Whether the first or repeated calls have priority. --- ### CallListsInterface **`appendToCallList`** `(request: AppendToCallListRequest) => Promise` Appends a new task to the existing call list. This method accepts CSV files with custom delimiters, such a commas (,), semicolons (;) and other. To specify a delimiter, pass it to the **delimiter** parameter. You can specify a custom call schedule for every record. Refer to the [Call lists guide](/feature-guides/features/call-lists/automated-dial-lists) for more information. --- **`cancelCallListBatch`** `(\n request: CancelCallListBatchRequest\n ) => Promise` Cancels all tasks in the call list with the specified batch UUID. --- **`cancelCallListTask`** `(request: CancelCallListTaskRequest) => Promise` Cancels the specified tasks in the call list by their IDs or UUIDs. The maximum number of tasks to cancel is 1000. --- **`createCallList`** `(request: CreateCallListRequest) => Promise` Adds a new CSV file for call list processing and starts the specified rule immediately. To send a file, use the request body. To set the call time constraints, use the following options in a CSV file: **\_\_start\_execution\_time** – when the call list processing starts every day, UTC+0 24-h format: HH:mm:ss**\_\_end\_execution\_time** – when the call list processing stops every day, UTC+0 24-h format: HH:mm:ss**\_\_start\_at** – when the call list processing starts, UNIX timestamp. If not specified, the processing starts immediately after a method call**\_\_task\_uuid** – call list UUID. A string up to 40 characters, can contain latin letters, digits, hyphens (-) and colons (:). Unique within the call list This method accepts CSV files with custom delimiters, such a commas (,), semicolons (;) and other. To specify a delimiter, pass it to the **delimiter** parameter. **IMPORTANT:** the account's balance should be equal or greater than 1 USD. If the balance is lower than 1 USD, the call list processing does not start, or it stops immediately if it is active. You can specify a custom call schedule for every record. Refer to the [Call lists guide](/feature-guides/features/call-lists/automated-dial-lists) for more information. --- **`deleteCallList`** `(request: DeleteCallListRequest) => Promise` Deletes an existing call list by its ID. --- **`editCallList`** `(request: EditCallListRequest) => Promise` Edits the specified call list by its ID. --- **`editCallListTasksPriority`** `(\n request: EditCallListTasksPriorityRequest\n ) => Promise` Edits priorities of existing tasks in the specified call list. --- **`getCallLists`** `(request: GetCallListsRequest) => Promise` Get all call lists for the specified user. --- ### CallSessionInfo **`accountId`** `number` Account ID that initiates the JS session --- **`applicationId`** `number` Application ID that initiates the JS session --- **`applicationName`** `string` Application name --- **`audioQuality`** `string` Call's audio quality. The possible values are: Standard | HD | Ultra HD. --- **`calls`** `CallInfo[]` *optional* Calls within the JS session, including durations, cost, phone numbers and other information --- **`callSessionHistoryId`** `number` Unique JS session identifier --- **`customData`** `string` *optional* Custom data --- **`duration`** `number` *optional* Entire JS session duration in seconds. The session can contain multiple calls --- **`finishReason`** `string` *optional* Finish reason. Possible values are **Normal termination**, **Insufficient funds**, **Internal error (billing timeout)**, **Terminated administratively**, **JS session error**, **Timeout** --- **`initiatorAddress`** `string` Initiator's IP address --- **`logFileUrl`** `string` Link to the session log. The log retention policy is 1 month, after that time this field clears. If you have issues accessing the log file, check if the application has "Secure storage of applications and logs" feature enabled. In this case, you need to [authorize](/platform/management-api/secure-objects). --- **`mediaServerAddress`** `string` Media server IP address --- **`otherResourceUsage`** `ResourceUsage[]` *optional* Used resources --- **`records`** `Record[]` *optional* Bound records --- **`ruleName`** `string` Routing rule name --- **`startDate`** `Date` Start date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss --- **`userId`** `number` User ID that initiates the JS session --- ### CancelCallListBatchRequest **`batchIds`** `string` Batch UUIDs of the tasks to cancel, separated by semicolon (;) --- **`listId`** `number` Call list ID --- ### CancelCallListBatchResponse **`error`** `APIError` *optional* --- **`result`** `boolean` Whether the request completed successfully --- ### CancelCallListTaskRequest **`accountId`** `string` Account's ID --- **`listId`** `number` Call list's ID --- **`tasksIds`** `'any' | number | number[]` *optional* Task IDs separated by a semicolon. Specify either `tasks_ids` or `tasks_uuids`. The method returns an error if none of the parameters is specified --- **`tasksUuids`** `string | string[]` *optional* Task UUIDs separated by a semicolon. Specify either `tasks_ids` or `tasks_uuids`. The method returns an error if none of the parameters is specified --- ### CancelCallListTaskResponse **`error`** `APIError` *optional* --- **`errorMsg`** `string` Reason for the error --- **`result`** `boolean` Result of the operation --- **`taskId`** `number` Task's ID --- **`taskUuid`** `string` Task's UUID --- ### CheckAuthorizedAccountIPRequest **`authorizedIp`** `string` The IP4 to test --- ### CheckAuthorizedAccountIPResponse **`authorizedIp`** `string` *optional* The matched authorized IP or network (if found) --- **`error`** `APIError` *optional* --- **`result`** `boolean` Whether the IP is allowed --- ### ClientOptions **`externalLogging`** `boolean` *optional* --- ### ControlSmsRequest **`command`** `string` The SMS control command. The following values are possible: enable, disable --- **`phoneNumber`** `string` The phone number --- ### ControlSmsResponse **`error`** `APIError` *optional* --- **`result`** `number` --- ### CreateCallListRequest **`acdVersion`** `string` *optional* The ACD version. The possible values are: V1, V2. Applies only if **call\_list\_type** is predictive or progressive --- **`avgDialTimeSec`** `number` *optional* The initial average dial time in seconds for the dialing statistics. Applies only if **call\_list\_type** is predictive or progressive --- **`avgTimeTalkSec`** `number` *optional* The initial average talk time in seconds for the dialing statistics. Applies only if **call\_list\_type** is predictive or progressive --- **`avgTotalTimeSec`** `number` *optional* The initial average total call time in seconds for the dialing statistics. Applies only if **call\_list\_type** is predictive or progressive --- **`bufferSizeTarget`** `string` *optional* The PDS buffer size target. The possible values are: VALUE, OPERATOR, AGENT. Applies only if **call\_list\_type** is predictive or progressive --- **`bufferSizeValue`** `number` *optional* The PDS buffer size, from 20 to 500. Applies only if **buffer\_size\_target** is VALUE --- **`bufferThresholdFactor`** `number` *optional* The PDS buffer threshold factor. Cannot be negative. Applies only if **buffer\_size\_target** is specified --- **`callListType`** `string` *optional* Call list type. The possible values are: automatic, predictive, progressive. The value is case-insensitive --- **`delimiter`** `string` *optional* Separator values. The default value is ';' --- **`encoding`** `string` *optional* Encoding file. The default value is UTF-8 --- **`escape`** `string` *optional* Escape character for parsing csv --- **`fileContent`** `Buffer` Send as the "body" part of the HTTP request or as multiform. The sending "file\_content" via URL is at its own risk because the network devices tend to drop HTTP requests with large headers. Refer to the [Call lists guide](/feature-guides/features/call-lists/automated-dial-lists#csv-table-setup) to learn about file syntax --- **`intervalSeconds`** `number` *optional* Interval between call attempts in seconds. The default value is 0 --- **`ipAddress`** `string` *optional* IP from the geolocation of the call list subscribers. It allows selecting the nearest server for serving subscribers. If not specified, the client IP of the request is used --- **`isCancelled`** `boolean` *optional* Whether to create the call list in the cancelled state --- **`isPersonalCampaign`** `boolean` *optional* Whether the call list is a personal campaign. Applies only if **call\_list\_type** is progressive --- **`listCustomData`** `string` *optional* Custom data string for the call list --- **`maximumErrorRate`** `number` *optional* The maximum abandoned call rate for predictive dialing, from 0 to 1. Applies only if **call\_list\_type** is predictive or progressive --- **`maxSimultaneous`** `number` Number of simultaneously processed tasks --- **`minimumBusyFactor`** `number` *optional* The minimum agent busy factor for predictive dialing, from 0 to 1. Applies only if **call\_list\_type** is predictive or progressive --- **`name`** `string` File name, up to 255 characters and cannot contain the '/' and '' symbols --- **`numAttempts`** `number` Number of attempts. Minimum is **1**, maximum is **5** --- **`percentSuccessful`** `number` *optional* The initial successful call ratio for the dialing statistics. Applies only if **call\_list\_type** is predictive or progressive --- **`personalCampaignType`** `string` *optional* The personal campaign mode. The possible values are: smart, strict. Allowed only if **is\_personal\_campaign** is true; the default value in that case is smart --- **`predictiveType`** `string` *optional* The predictive dialing algorithm. The possible values are: DEFAULT\_PREDICTIVE\_TYPE, AR\_OPTIMIZED, BF\_OPTIMIZED, AR\_SMALL\_GROUP, AR\_AUTO\_BALANCED. Applies only if **call\_list\_type** is predictive --- **`priority`** `number` Call list priority. The value is in the range of \[0 ... 2^31] where zero is the highest priority --- **`queueId`** `number` *optional* The ACD queue ID. **Required** if **call\_list\_type** is predictive or progressive, and should be omitted otherwise --- **`quote`** `string` *optional* Quote character for parsing csv --- **`ruleId`** `number` Rule ID. It is specified in the [Applications](https://manage.voximplant.com/applications) section of the Control Panel --- **`serverLocation`** `string` *optional* Location of the server where the scenario needs to be executed. Has higher priority than `ip_address`. Request [getServerLocations](https://api.voximplant.com/getServerLocations) for possible values --- **`startAt`** `number` *optional* Time when the call list should start, as a Unix timestamp in seconds (UTC). The default value is the current time. The value cannot be in the past --- **`taskMultiplier`** `number` *optional* The task multiplier for progressive dialing. The minimum value is 1. Applies only if **call\_list\_type** is progressive --- **`taskPriorityStrategy`** `string` *optional* Optional. Whether to prioritize first calling attempts or repeated ones. The possible values are: first\_attempts, repeated\_attempts. The default values is first\_attempts. --- ### CreateCallListResponse **`batchId`** `string` Batch UUID --- **`count`** `number` Number of stored records --- **`error`** `APIError` *optional* --- **`listId`** `number` List ID --- **`result`** `boolean` Whether the request completed successfully --- ### DelApplicationRequest **`applicationId`** `'any' | number | number[]` *optional* The application ID list separated by semicolons (;). Use the 'all' value to select all applications. **Required** unless **application\_name** is provided. --- **`applicationName`** `string | string[]` *optional* The application name list separated by semicolons (;). **Required** unless **application\_id** is provided. --- ### DelApplicationResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### DelAuthorizedAccountIPRequest **`allowed`** `boolean` *optional* Whether to remove the network from the white list. Set false to remove the network from the black list. Omit the parameter to remove the network from all lists --- **`authorizedIp`** `string` *optional* The authorized IP4 or network to remove. Set to 'all' to remove all items. **Required** unless **contains\_ip** is provided. --- **`containsIp`** `string` *optional* Specify the parameter to remove the networks that contains the particular IP4. **Required** unless **authorized\_ip** is provided. --- ### DelAuthorizedAccountIPResponse **`error`** `APIError` *optional* --- **`result`** `number` The removed network count --- ### DelCallerIDRequest **`calleridId`** `number` *optional* ID of the callerID object. **Required** unless **callerid\_number** is provided. --- **`calleridNumber`** `string` *optional* The callerID number. **Required** unless **callerid\_id** is provided. --- ### DelCallerIDResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### DeleteCallListRequest **`accountId`** `number` Account's ID --- **`listId`** `number` Call list's ID to delete --- ### DeleteCallListResponse **`error`** `APIError` *optional* --- **`msg`** `string` Text description --- **`result`** `boolean` Result --- ### DelKeyValueItemRequest **`applicationId`** `number` The application ID --- **`applicationName`** `string` *optional* The application name --- **`key`** `string` Key, up to 200 characters --- ### DelKeyValueItemResponse **`error`** `APIError` *optional* --- **`result`** `number` --- ### DelOutboundTestPhoneNumberRequest ### DelOutboundTestPhoneNumberResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### DelPstnBlackListItemRequest **`pstnBlacklistId`** `number` The PSTN black list item ID --- ### DelPstnBlackListItemResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### DelQueueRequest **`acdQueueId`** `'any' | number | number[]` *optional* The ACD queue ID list separated by semicolons (;). **Required** unless **acd\_queue\_name** is provided. --- **`acdQueueName`** `string | string[]` *optional* The ACD queue name. The ACD queue name list separated by semicolons (;). **Required** unless **acd\_queue\_id** is provided. --- ### DelQueueResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### DelSecretRequest **`applicationId`** `number` *optional* Application ID. **Required** unless **application\_name** is provided. --- **`applicationName`** `string` *optional* Application name. **Required** unless **application\_id** is provided. --- **`secretId`** `'any' | number | number[]` IDs to delete. A list separated by semicolons (;). Use the 'all' value to delete all secrets --- **`secretName`** `string | string[]` Secret names to delete. List separated by semicolons (;) --- ### DelSecretResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the secret has been deleted successfully --- ### DelSipWhiteListItemRequest **`sipWhitelistId`** `number` The SIP white list item ID to delete --- ### DelSipWhiteListItemResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### DelSkillRequest **`skillId`** `number` *optional* The skill ID. **Required** unless **skill\_name** is provided. --- **`skillName`** `string` *optional* The skill name. **Required** unless **skill\_id** is provided. --- ### DelSkillResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### DelUserRequest **`applicationId`** `number` *optional* Delete the specified users bound to the application ID. It is required if the **user\_name** is specified --- **`applicationName`** `string` *optional* Delete the specified users bound to the application name. Can be used instead of the **application\_id** parameter --- **`userId`** `'any' | number | number[]` *optional* The user ID list separated by semicolons (;). Use the 'all' value to select all users. **Required** unless **user\_name** is provided. --- **`userName`** `string | string[]` *optional* The user name list separated by semicolons (;). **Required** unless **user\_id** is provided. --- ### DelUserResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### DialogflowCredentialsInterface **`setDialogflowKey`** `(request: SetDialogflowKeyRequest) => Promise` Edits a Dialogflow key. --- ### DownloadInvoiceRequest **`invoiceId`** `number` Invoice ID --- ### DownloadInvoiceResponse **`error`** `APIError` *optional* --- **`fileContent`** `Buffer` The method returns a raw data, there is no 'file\_content' parameter in fact --- ### EditCallListRequest **`avgDialTimeSec`** `number` *optional* The average dial time in seconds for the dialing statistics. Cannot be negative --- **`avgTimeTalkSec`** `number` *optional* The average talk time in seconds for the dialing statistics. Cannot be negative --- **`avgTotalTimeSec`** `number` *optional* The average total call time in seconds for the dialing statistics. Cannot be negative --- **`callListType`** `string` *optional* Call list type. The possible values are: automatic, manual, predictive, progressive. The value is case-insensitive --- **`callType`** `string` *optional* Alias for **call\_list\_type**. Applies only if **call\_list\_type** is not specified --- **`intervalSeconds`** `number` *optional* Minimum interval between call attempts. Cannot be a negative value --- **`ipAddress`** `string` *optional* IP address in the `Inet4Address` format --- **`isPersonalCampaign`** `boolean` *optional* Whether the call list is a personal campaign. **Required** if **personal\_campaign\_type** is specified --- **`listCustomData`** `string` *optional* Custom data string for the call list --- **`listId`** `number` Call list ID. If the ID is non existing, the 251 error returns --- **`maximumErrorRate`** `number` *optional* The maximum abandoned call rate for predictive dialing, from 0 to 1. If omitted while **call\_list\_type** is set to predictive, the value becomes 0.02 --- **`maxSimultaneous`** `number` *optional* Maximum simultaneous call attempts for this call list. Cannot be less than 1 --- **`minimumBusyFactor`** `number` *optional* The minimum agent busy factor for predictive dialing. Cannot be negative. If omitted while **call\_list\_type** is set to predictive, the value becomes 0.8 --- **`name`** `string` *optional* Call list name. Cannot be bigger than 255 characters, cannot contain slash symbol --- **`numAttempts`** `number` *optional* Maximum call attempt number. Cannot be less than 1 --- **`percentSuccessful`** `number` *optional* The successful call ratio for the dialing statistics. Cannot be negative --- **`personalCampaignType`** `string` *optional* The personal campaign mode. The possible values are: smart, strict. Allowed only if **is\_personal\_campaign** is true; the default value in that case is smart --- **`predictiveType`** `string` *optional* The predictive dialing algorithm. The possible values are: AR\_OPTIMIZED, BF\_OPTIMIZED, AR\_SMALL\_GROUP, AR\_AUTO\_BALANCED. If omitted while **call\_list\_type** is set to predictive, the value becomes AR\_OPTIMIZED; for progressive the value is reset --- **`priority`** `number` *optional* Call list's priority among other call list. The lower the value, the higher is the call list's priority --- **`serverLocation`** `string` *optional* Location of the server processing the call list. If the ID is non existing, the 496 error returns: The 'server\_location' parameter is invalid. --- **`startAt`** `number` *optional* Time when the call list should start, as a Unix timestamp in seconds (UTC) --- **`taskMultiplier`** `number` *optional* The task multiplier for progressive dialing. Cannot be negative. If omitted while **call\_list\_type** is set to progressive, the value becomes 1 --- **`taskPriorityStrategy`** `string` *optional* Optional. Whether to prioritize first calling attempts or repeated ones. The possible values are: first\_attempts, repeated\_attempts. The default values is first\_attempts --- ### EditCallListResponse **`error`** `APIError` *optional* --- **`result`** `boolean` Whether the request completed successfully --- ### EditCallListTasksPriorityRequest **`listId`** `number` Call list ID. If the ID does not exist, the 251 error returns. --- **`tasks`** `string` JSON-encoded array of task objects. Each object should contain either 'task\_id' (number) or 'task\_uuid' (string), and 'task\_priority' (number). --- ### EditCallListTasksPriorityResponse **`error`** `APIError` *optional* --- **`results`** `string` JSON-encoded array of each task update. --- ### ExchangeRates **`EUR`** `number` *optional* The EUR exchange rate --- **`KZT`** `number` *optional* The KZT exchange rate --- **`RUR`** `number` *optional* The RUR exchange rate --- **`USD`** `number` *optional* The USD exchange rate. It is always equal to 1 --- ### FailedSms **`destinationNumber`** `string` The SMS destination number --- **`errorCode`** `number` The error code --- **`errorDescription`** `string` The error description --- ### GetAccountInfoRequest **`returnLiveBalance`** `boolean` *optional* Whether to get the account's live balance --- ### GetAccountInfoResponse **`apiAddress`** `string` The preferred address for the Management API requests --- **`error`** `APIError` *optional* --- **`result`** `AccountInfo` Account's info as the `AccountInfoType` object instance --- ### GetAccountInvoicesRequest **`count`** `number` *optional* Number of invoices to show per page. Default value is 20 --- **`offset`** `number` *optional* Number of invoices to skip (e.g. if you set count = 20 and offset = 0 the first time, the next time, offset has to be equal to 20 to skip the items shown earlier). Default value is 0 --- **`status`** `string` *optional* --- ### GetAccountInvoicesResponse **`count`** `number` Number of returned invoices matching the query parameters --- **`error`** `APIError` *optional* --- **`result`** `AccountInvoice` Array of the account invoices --- **`totalCount`** `number` Total number of invoices matching the query parameters --- ### GetACDStateRequest **`acdQueueId`** `'any' | number | number[]` *optional* The ACD queue ID list separated by semicolons (;). Use the 'all' value to select all ACD queues --- ### GetACDStateResponse **`error`** `APIError` *optional* --- **`result`** `ACDState` --- ### GetApplicationsRequest **`applicationId`** `number` *optional* The application ID to filter --- **`applicationName`** `string` *optional* The application name part to filter --- **`count`** `number` *optional* The maximum returning record count --- **`offset`** `number` *optional* The first **N** records are skipped in the output --- **`withRules`** `boolean` *optional* Whether to get bound rules info --- **`withScenarios`** `boolean` *optional* Whether to get bound rules and scenarios info --- ### GetApplicationsResponse **`count`** `number` The returned application count --- **`error`** `APIError` *optional* --- **`result`** `ApplicationInfo[]` --- **`totalCount`** `number` The total found application count --- ### GetAuthorizedAccountIPsRequest **`allowed`** `boolean` *optional* Whether the IP is allowed --- **`authorizedIp`** `string` *optional* The authorized IP4 or network to filter --- **`containsIp`** `string` *optional* Specify the parameter to filter the networks that contains the particular IP4 --- **`count`** `number` *optional* The maximum returning record count --- **`description`** `string` *optional* The IP address description --- **`offset`** `number` *optional* The first **N** records are skipped in the output --- ### GetAuthorizedAccountIPsResponse **`count`** `number` The returned network count --- **`error`** `APIError` *optional* --- **`result`** `AuthorizedAccountIP[]` --- **`totalCount`** `number` The total found network count --- ### GetBriefCallHistoryRequest **`applicationId`** `number` *optional* To receive the call history for a specific application, pass the application ID to this parameter --- **`applicationName`** `string` *optional* The application name, can be used instead of **application\_id** --- **`callSessionHistoryCustomData`** `string` *optional* To filter the call history by the custom\_data passed to the call sessions, pass the custom data to this parameter --- **`callSessionHistoryId`** `'any' | number | number[]` *optional* To get the call history for the specific sessions, pass the session IDs to this parameter separated by a semicolon (;). You can find the session ID in the [AppEvents.Started](/api-reference/voxengine/app-events#started) event's **sessionID** property in a scenario, or retrieve it from the **call\_session\_history\_id** value returned from the [StartScenarios](/api-reference/management-api/reference/scenarios/start-scenarios) or [StartConference](/api-reference/management-api/reference/scenarios/start-conference) methods --- **`descOrder`** `boolean` *optional* Whether to get records in the descent order --- **`fromDate`** `Date` *optional* The from date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss --- **`localNumber`** `string | string[]` *optional* To receive a call history for a specific local numbers, pass the number list separated by semicolons (;). A local number is a number on the platform side --- **`output`** `string` The output format. The following values available: **csv**. --- **`remoteNumber`** `string | string[]` *optional* To receive a call history for a specific remote numbers, pass the number list separated by semicolons (;). A remote number is a number on the client side --- **`ruleName`** `string` *optional* To receive the call history for a specific routing rule, pass the rule name to this parameter. Applies only if you set application\_id or application\_name --- **`timezone`** `string` *optional* --- **`toDate`** `Date` *optional* The to date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss --- **`withHeader`** `boolean` *optional* Whether to get a CSV file with the column names if the output=csv --- ### GetBriefCallHistoryResponse **`error`** `APIError` *optional* --- **`historyReportId`** `number` The history report ID --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### GetCallerIDsRequest **`active`** `boolean` *optional* Whether the account is active to filter --- **`calleridId`** `number` *optional* ID of the callerID object to filter --- **`calleridNumber`** `string` *optional* The phone number to filter --- **`count`** `number` *optional* The maximum returning record count --- **`offset`** `number` *optional* The first **N** records are skipped in the output --- **`orderBy`** `string` *optional* The following values are available: 'caller\_number' (ascent order), 'verified\_until' (ascent order) --- ### GetCallerIDsResponse **`count`** `number` The returned record count --- **`error`** `APIError` *optional* --- **`result`** `CallerIDInfo[]` --- **`totalCount`** `number` The total found record count --- ### GetCallHistoryAsyncRequest **`applicationId`** `number` *optional* To receive the call history for a specific application, pass the application ID to this parameter --- **`applicationName`** `string` *optional* The application name, can be used instead of **application\_id** --- **`callSessionHistoryCustomData`** `string` *optional* To filter the call history by the custom\_data passed to the call sessions, pass the custom data to this parameter --- **`callSessionHistoryId`** `'any' | number | number[]` *optional* To get the call history for the specific sessions, pass the session IDs to this parameter separated by a semicolon (;). You can find the session ID in the [AppEvents.Started](/api-reference/voxengine/app-events#started) event's **sessionID** property in a scenario, or retrieve it from the **call\_session\_history\_id** value returned from the [StartScenarios](/api-reference/management-api/reference/scenarios/start-scenarios) or [StartConference](/api-reference/management-api/reference/scenarios/start-conference) methods --- **`childAccountId`** `'any' | number | number[]` *optional* The child account ID list separated by semicolons (;) --- **`childrenCallsOnly`** `boolean` *optional* Whether to get the children account calls only --- **`count`** `number` *optional* The maximum number of records to include in the report. If omitted, the report service applies its own limit. Unlike GetCallHistory, there is no default of 20 and no cap of 1000 on the Management API side --- **`descOrder`** `boolean` *optional* Whether to get records in the descent order --- **`fromDate`** `Date` *optional* The from date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss. If both dates are omitted, a server-configured default interval is used (default is one month) --- **`localNumber`** `string | string[]` *optional* To receive a call history for a specific local numbers, pass the number list separated by semicolons (;). A local number is a number on the platform side --- **`maxDuration`** `number` *optional* The maximum call duration in seconds to filter. You can restrict the allowed date range via duration filters --- **`minDuration`** `number` *optional* The minimum call duration in seconds to filter. You can restrict the allowed date range via duration filters --- **`offset`** `number` *optional* The number of records to skip in the output --- **`output`** `string` *optional* The output format. The following values available: **csv**. The default value is **csv** --- **`remoteNumber`** `string | string[]` *optional* To receive a call history for a specific remote numbers, pass the number list separated by semicolons (;). A remote number is a number on the client side --- **`remoteNumberList`** `string` *optional* A JSON-formatted list of strings containing phone numbers for history filtering. Has a higher priority than the **remote\_number** parameter. If the array is empty, the **remote\_number** parameter is used instead --- **`ruleName`** `string` *optional* To receive the call history for a specific routing rule, pass the rule name to this parameter. Applies only if you set application\_id or application\_name --- **`timezone`** `string` *optional* --- **`toDate`** `Date` *optional* The to date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss. If both dates are omitted, a server-configured default interval is used (default is one month) --- **`userId`** `'any' | number | number[]` *optional* To receive the call history for a specific users, pass the user ID list separated by semicolons (;). If it is specified, the output contains the calls from the listed users only --- **`withCalls`** `boolean` *optional* Whether to receive a list of sessions with all calls within the sessions, including phone numbers, call cost and other information --- **`withHeader`** `boolean` *optional* Whether to get a CSV file with the column names if the output=csv --- **`withOtherResources`** `boolean` *optional* Whether to get other resources usage (see `ResourceUsageType`) --- **`withRecords`** `boolean` *optional* Whether to get the calls' records --- ### GetCallHistoryAsyncResponse **`error`** `APIError` *optional* --- **`historyReportId`** `number` The history report ID --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### GetCallHistoryRequest **`applicationId`** `number` *optional* To receive the call history for a specific application, pass the application ID to this parameter --- **`applicationName`** `string` *optional* The application name, can be used instead of **application\_id** --- **`callSessionHistoryCustomData`** `string` *optional* To filter the call history by the custom\_data passed to the call sessions, pass the custom data to this parameter --- **`callSessionHistoryId`** `'any' | number | number[]` *optional* To get the call history for the specific sessions, pass the session IDs to this parameter separated by a semicolon (;). The maximum number of records is 1000. You can find the session ID in the [AppEvents.Started](/api-reference/voxengine/app-events#started) event's **sessionID** property in a scenario, or retrieve it from the **call\_session\_history\_id** value returned from the [StartScenarios](/api-reference/management-api/reference/scenarios/start-scenarios) or [StartConference](/api-reference/management-api/reference/scenarios/start-conference) methods --- **`childAccountId`** `'any' | number | number[]` *optional* The child account ID list separated by semicolons (;) --- **`childrenCallsOnly`** `boolean` *optional* Whether to get the children account calls only --- **`count`** `number` *optional* The number of returning records. The maximum value is 1000 --- **`descOrder`** `boolean` *optional* Whether to get records in the descent order --- **`fromDate`** `Date` *optional* The from date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss. If both dates are omitted, a server-configured default interval is used (default is one month) --- **`isAsync`** `boolean` *optional* Whether to create an asynchronous history report instead of returning the data immediately. Has the same effect as calling GetCallHistoryAsync and requires the output=csv --- **`localNumber`** `string | string[]` *optional* To receive a call history for a specific local numbers, pass the number list separated by semicolons (;). A local number is a number on the platform side --- **`maxDuration`** `number` *optional* The maximum call duration in seconds to filter. You can restrict the allowed date range via duration filters --- **`minDuration`** `number` *optional* The minimum call duration in seconds to filter. You can restrict the allowed date range via duration filters --- **`offset`** `number` *optional* The number of records to skip in the output. The maximum value of 10000 --- **`remoteNumber`** `string | string[]` *optional* To receive a call history for a specific remote numbers, pass the number list separated by semicolons (;). A remote number is a number on the client side. Ignored if the `remote_number_list` parameter is not empty --- **`remoteNumberList`** `string` *optional* A JSON array of strings of specific remote phone numbers to sort the call history. Has higher priority than the `remote_number` parameter. If the array is empty, the `remote_number` parameter is used instead --- **`ruleName`** `string` *optional* To receive the call history for a specific routing rule, pass the rule name to this parameter. Applies only if you set application\_id or application\_name --- **`timezone`** `string` *optional* --- **`toDate`** `Date` *optional* The to date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss. If both dates are omitted, a server-configured default interval is used (default is one month) --- **`userId`** `'any' | number | number[]` *optional* To receive the call history for a specific users, pass the user ID list separated by semicolons (;). If it is specified, the output contains the calls from the listed users only --- **`withCalls`** `boolean` *optional* Whether to receive a list of sessions with all calls within the sessions, including phone numbers, call cost and other information --- **`withHeader`** `boolean` *optional* Whether to get a CSV file with the column names if the output=csv --- **`withOtherResources`** `boolean` *optional* Whether to get other resources usage (see `ResourceUsageType`) --- **`withRecords`** `boolean` *optional* Whether to get the calls' records --- **`withTotalCount`** `boolean` *optional* Whether to include the 'total\_count' and increase performance --- ### GetCallHistoryResponse **`count`** `number` The returned call session count --- **`error`** `APIError` *optional* --- **`result`** `CallSessionInfo[]` The CallSessionInfoType records --- **`timezone`** `string` The used timezone --- **`totalCount`** `number` The total found call session count --- ### GetCallListsRequest **`applicationId`** `'any' | number | number[]` *optional* The application ID to filter. Can be a list separated by semicolons (;). Use the 'all' value to select all applications --- **`applicationName`** `string | string[]` *optional* The application name list separated by semicolons (;). Can be used instead of **application\_id** --- **`count`** `number` *optional* The maximum returning record count. The maximum value is 1000 --- **`fromDate`** `Date` *optional* The UTC 'from' date filter in 24-h format: YYYY-MM-DD HH:mm:ss --- **`isActive`** `boolean` *optional* Whether to find only active call lists --- **`listId`** `'any' | number | number[]` *optional* The list ID to filter. Can be a list separated by semicolons (;). Use the 'all' value to select all lists --- **`name`** `string` *optional* Find call lists by name --- **`offset`** `number` *optional* The first **N** records are skipped in the output --- **`ruleId`** `'any' | number | number[]` *optional* The rule ID to filter. Can be a list separated by semicolons (;). Use the 'all' value to select all rules --- **`ruleName`** `string | string[]` *optional* The rule name list separated by semicolons (;). Can be used instead of **rule\_id** --- **`status`** `string` *optional* The call list status to filter. The possible values are: In progress, Canceled, Completed, Suspended --- **`toDate`** `Date` *optional* The UTC 'to' date filter in 24-h format: YYYY-MM-DD HH:mm:ss --- **`typeList`** `string` *optional* The type of the call list. The possible values are AUTOMATIC and MANUAL --- ### GetCallListsResponse **`count`** `number` Returned call list count --- **`error`** `APIError` *optional* --- **`result`** `CallList[]` Array of lists --- **`totalCount`** `number` Total found call list count --- ### GetCurrencyRateRequest **`currency`** `string | string[]` The currency code list separated by semicolons (;). Examples: RUR, KZT, EUR, USD --- **`date`** `Date` *optional* The date, format: YYYY-MM-DD --- ### GetCurrencyRateResponse **`error`** `APIError` *optional* --- **`result`** `ExchangeRates` The exchange rates --- ### GetKeyValueItemRequest **`applicationId`** `number` The application ID --- **`applicationName`** `string` *optional* The application name --- **`key`** `string` Key, up to 200 characters --- ### GetKeyValueItemResponse **`error`** `APIError` *optional* --- **`result`** `KeyValueItems` The key-value item --- ### GetKeyValueItemsRequest **`applicationId`** `number` The application ID --- **`applicationName`** `string` *optional* The application name --- **`count`** `number` *optional* Number of items to show per page with a maximum value of 50. Default value is 10 --- **`key`** `string` Namespace that keys should contain, up to 200 characters --- **`offset`** `number` *optional* Number of items to skip (e.g. if you set count = 20 and offset = 0 the first time, the next time, offset has to be equal to 20 to skip the items shown earlier). Default value is 0 --- ### GetKeyValueItemsResponse **`error`** `APIError` *optional* --- **`result`** `KeyValueItems` The key-value pairs --- ### GetKeyValueKeysRequest **`applicationId`** `number` The application ID --- **`applicationName`** `string` *optional* The application name --- **`count`** `number` *optional* Number of items to show per page with a maximum value of 50. Default value is 10 --- **`key`** `string` *optional* Namespace that keys should contain, up to 200 characters --- **`offset`** `number` *optional* Number of items to skip (e.g. if you set count = 20 and offset = 0 the first time, the next time, offset has to be equal to 20 to skip the items shown earlier). Default value is 0 --- ### GetKeyValueKeysResponse **`error`** `APIError` *optional* --- **`result`** `KeyValueKeys` The key-value keys --- ### GetOutboundTestPhoneNumbersRequest ### GetOutboundTestPhoneNumbersResponse **`error`** `APIError` *optional* --- **`result`** `OutboundTestPhonenumberInfo[]` --- ### GetPhoneNumbersAsyncRequest **`withHeader`** `boolean` *optional* Whether to get a CSV file with the column names --- ### GetPhoneNumbersAsyncResponse **`error`** `APIError` *optional* --- **`result`** `number` The report ID (async mode) --- ### GetPhoneNumbersRequest **`activationStatus`** `string | string[]` *optional* Phone number activation statuses to filter, separated by semicolons (;). The possible values are: ACTIVE, ACTIVATING, DEACTIVATED, PROVISIONING, AWAITING\_BUSINESS\_PHONE\_NUMBER\_CONFIGURATION, LEGAL\_OWNERSHIP\_LIMIT\_REACHED, GOSUSLUGI\_DECLINED, SELF\_BAN\_ENABLED --- **`applicationId`** `number` *optional* Application ID --- **`applicationName`** `string` *optional* Application name that can be used instead of **application\_id** --- **`autoCharge`** `boolean` *optional* Whether the auto\_charge flag is enabled --- **`canBeUsed`** `boolean` *optional* Whether a not verified account can use the phone --- **`canceled`** `boolean` *optional* Whether the subscription is cancelled to filter --- **`childAccountId`** `'any' | number | number[]` *optional* Child account ID list separated by semicolons (;). Use the 'all' value to select all child accounts --- **`childrenPhonesOnly`** `boolean` *optional* Whether to get the children phones only --- **`count`** `number` *optional* Maximum returning record count --- **`countryCode`** `string | string[]` *optional* Country code list separated by semicolons (;) --- **`deactivated`** `boolean` *optional* Whether the subscription is frozen to filter --- **`fromPhoneNextRenewal`** `Date` *optional* UTC 'from' date filter in the following format: YYYY-MM-DD --- **`fromPhonePurchaseDate`** `Date` *optional* UTC 'from' date filter in 24-h format: YYYY-MM-DD HH:mm:ss --- **`fromUnverifiedHoldUntil`** `Date` *optional* Unverified phone hold until the date (from ...) in the following format: YYYY-MM-DD --- **`isBoundToApplication`** `boolean` *optional* Whether the phone number bound to an application --- **`isBoundToRule`** `boolean` *optional* Whether the phone number is bound to some rule --- **`offset`** `number` *optional* First **N** records are skipped in the output --- **`orderBy`** `string` *optional* Following values are available: 'phone\_number' (ascent order), 'phone\_price' (ascent order), 'phone\_country\_code' (ascent order), 'deactivated' (deactivated first, active last), 'purchase\_date' (descent order), 'phone\_next\_renewal' (ascent order), 'verification\_status', 'unverified\_hold\_until' (ascent order), 'verification\_name' --- **`phoneCategoryName`** `string` *optional* Phone category name. See the `GetPhoneNumberCategories` method --- **`phoneId`** `'any' | number | number[]` *optional* Particular phone ID to filter --- **`phoneNumber`** `string | string[]` *optional* Phone number list separated by semicolons (;) that can be used instead of **phone\_id** --- **`phoneRegionName`** `string | string[]` *optional* Region names list separated by semicolons (;) --- **`phoneTemplate`** `string` *optional* Phone number start to filter --- **`ruleId`** `'any' | number | number[]` *optional* Rule ID list separated by semicolons (;) --- **`ruleName`** `string | string[]` *optional* Rule names list separated by semicolons (;). Can be used only if **application\_id** or **application\_name** is specified --- **`sandbox`** `string` *optional* Flag allows you to display only the numbers of the sandbox, real numbers, or all numbers. The following values are possible: 'all', 'true', 'false' --- **`smsSupported`** `boolean` *optional* --- **`toPhoneNextRenewal`** `Date` *optional* UTC 'to' date filter in the following format: YYYY-MM-DD --- **`toPhonePurchaseDate`** `Date` *optional* UTC 'to' date filter in 24-h format: YYYY-MM-DD HH:mm:ss --- **`toUnverifiedHoldUntil`** `Date` *optional* Unverified phone hold until the date (... to) in the following format: YYYY-MM-DD --- **`verificationName`** `string` *optional* Required account verification name to filter --- **`verificationStatus`** `string | string[]` *optional* Account verification status list separated by semicolons (;). The following values are possible: REQUIRED, IN\_PROGRESS, VERIFIED --- ### GetPhoneNumbersResponse **`count`** `number` Returned phone count --- **`error`** `APIError` *optional* --- **`result`** `AttachedPhoneInfo[]` Phone numbers info --- **`totalCount`** `number` Total found phone count --- ### GetPstnBlackListRequest **`count`** `number` *optional* The maximum returning record count --- **`offset`** `number` *optional* The first **N** records are skipped in the output --- **`pstnBlacklistId`** `number` *optional* The PSTN black list item ID for filter --- **`pstnBlacklistPhone`** `string` *optional* The phone number in format e164 for filter --- ### GetPstnBlackListResponse **`count`** `number` The returned phone numbers count --- **`error`** `APIError` *optional* --- **`result`** `PstnBlackListInfo[]` --- **`totalCount`** `number` The total found phone numbers count --- ### GetQueuesRequest **`acdQueueId`** `number` *optional* The ACD queue ID to filter --- **`acdQueueName`** `string` *optional* The ACD queue name part to filter --- **`applicationId`** `number` *optional* The application ID to filter --- **`count`** `number` *optional* The maximum returning record count --- **`excludedSkillId`** `number` *optional* The excluded skill ID to filter --- **`offset`** `number` *optional* The first **N** records are skipped in the output --- **`showingSkillId`** `number` *optional* The skill to show in the 'skills' field output --- **`skillId`** `number` *optional* The skill ID to filter --- **`withOperatorcount`** `boolean` *optional* Whether to include the number of agents bound to the queue --- **`withSkills`** `boolean` *optional* Whether to get the bound skills --- ### GetQueuesResponse **`count`** `number` The returned queue count --- **`error`** `APIError` *optional* --- **`result`** `QueueInfo[]` --- **`totalCount`** `number` The total found queue count --- ### GetRecordStoragesRequest **`recordStorageId`** `'any' | number | number[]` *optional* The record storage ID list separated by semicolons (;) --- **`recordStorageName`** `string | string[]` *optional* The record storage name list separated by semicolons (;) --- **`withPrivate`** `boolean` *optional* --- ### GetRecordStoragesResponse **`error`** `APIError` *optional* --- **`result`** `RecordStorageInfo` --- ### GetRoleGroupsRequest ### GetRoleGroupsResponse **`error`** `APIError` *optional* --- **`result`** `RoleGroupView[]` --- ### GetSecretsRequest **`applicationId`** `number` *optional* Application ID. **Required** unless **application\_name** is provided. --- **`applicationName`** `string` *optional* Application name. **Required** unless **application\_id** is provided. --- **`count`** `number` *optional* Maximum returning number of records --- **`offset`** `number` *optional* First **N** records to be skipped in the output --- **`secretNamePart`** `string` *optional* Filter by the secret name part --- ### GetSecretsResponse **`count`** `number` Returned secrets number --- **`error`** `APIError` *optional* --- **`result`** `SecretListItem[]` Secrets list --- **`totalCount`** `number` Total found secrets number --- ### GetSecretValueRequest **`applicationId`** `number` *optional* Application ID. **Required** unless **application\_name** is provided. --- **`applicationName`** `string` *optional* Application name. **Required** unless **application\_id** is provided. --- **`secretId`** `number` *optional* Secret ID. **Required** unless **secret\_name** is provided. --- **`secretName`** `string` *optional* Secret name. **Required** unless **secret\_id** is provided. --- ### GetSecretValueResponse **`error`** `APIError` *optional* --- **`result`** `GetSecretValueResult[]` The full secret info (with value) --- ### GetSecretValueResult **`created`** `Date` Secret creation timestamp --- **`description`** `string` *optional* Secret description --- **`modified`** `Date` Secret modification timestamp --- **`secretId`** `number` Secret ID --- **`secretName`** `string` Secret name --- **`secretValue`** `string` Secret value --- ### GetSipRegistrationsRequest **`applicationId`** `'any' | number | number[]` *optional* The application ID list separated by semicolons (;) to filter. Can be used instead of **application\_name** --- **`applicationName`** `string | string[]` *optional* The application name list separated by semicolons (;) to filter. Can be used instead of **application\_id** --- **`count`** `number` *optional* The maximum returning record count --- **`deactivated`** `boolean` *optional* Whether to show the frozen SIP registrations only --- **`inProgress`** `boolean` *optional* Whether SIP registration is still in progress --- **`isBoundToApplication`** `boolean` *optional* Whether SIP registration bound to an application --- **`isPersistent`** `boolean` *optional* Whether the SIP registration is persistent to filter --- **`offset`** `number` *optional* The first **N** records are skipped in the output --- **`proxy`** `string | string[]` *optional* The list of proxy servers to use, divided by semicolon (;) --- **`ruleId`** `'any' | number | number[]` *optional* The rule ID list separated by semicolons (;) to filter. **Required** unless **rule\_name** is provided. --- **`ruleName`** `string | string[]` *optional* The rule name list separated by semicolons (;) to filter. **Required** unless **rule\_id** is provided. --- **`sipRegistrationId`** `number` *optional* The SIP registration ID --- **`sipUsername`** `string` *optional* The SIP user name to filter --- **`statusCode`** `string` *optional* The list of SIP response codes. The **code1:code2** means a range from **code1** to **code2** including; the **code1;code2** meanse either **code1** or **code2**. You can combine ranges, e.g., **code1;code2:code3** --- **`successful`** `boolean` *optional* Whether to show the successful SIP registrations only --- **`userId`** `'any' | number | number[]` *optional* The user ID list separated by semicolons (;) to filter. **Required** unless **user\_name** is provided. --- **`userName`** `string | string[]` *optional* --- ### GetSipRegistrationsResponse **`count`** `number` Count rows --- **`error`** `APIError` *optional* --- **`result`** `SIPRegistration[]` Active SIP registrations --- ### GetSipWhiteListRequest **`count`** `number` *optional* The maximum returning record count --- **`offset`** `number` *optional* The first **N** records are skipped in the output --- **`sipWhitelistId`** `number` *optional* The SIP white list item ID to filter --- ### GetSipWhiteListResponse **`count`** `number` The returned networks count --- **`error`** `APIError` *optional* --- **`result`** `SipWhiteListInfo[]` --- **`totalCount`** `number` The total found networks count --- ### GetSkillsRequest **`count`** `number` *optional* The maximum returning record count --- **`offset`** `number` *optional* The first **N** records are skipped in the output --- **`skillId`** `number` *optional* The skill ID to filter --- **`skillName`** `string` *optional* The skill name part to filter --- ### GetSkillsResponse **`count`** `number` The returned skill count --- **`error`** `APIError` *optional* --- **`result`** `SkillInfo[]` --- **`totalCount`** `number` The total found skill count --- ### GetSmartQueueDayHistoryRequest **`applicationId`** `number` *optional* The application ID to search by. **Required** unless **application\_name** is provided. --- **`applicationName`** `string` *optional* The application name to search by. **Required** unless **application\_id** is provided. --- **`fromDate`** `Date` *optional* The from date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss. Default is the current time minus 1 day --- **`groupBy`** `string` *optional* Group the result by **agent** or *queue*. The **agent** grouping is allowed only for 1 queue and for the occupancy\_rate, sum\_agents\_online\_time, sum\_agents\_ready\_time, sum\_agents\_dialing\_time, sum\_agents\_in\_service\_time, sum\_agents\_afterservice\_time, sum\_agents\_dnd\_time, sum\_agents\_banned\_time, min\_handle\_time, max\_handle\_time, average\_handle\_time, count\_handled\_calls, min\_after\_call\_worktime, max\_after\_call\_worktime, average\_after\_call\_worktime report types. The **queue** grouping allowed for the calls\_blocked\_percentage, count\_blocked\_calls, average\_abandonment\_rate, count\_abandonment\_calls, service\_level, occupancy\_rate, min\_time\_in\_queue, max\_time\_in\_queue, average\_time\_in\_queue, min\_answer\_speed, max\_answer\_speed, average\_answer\_speed, min\_handle\_time, max\_handle\_time, average\_handle\_time, count\_handled\_calls, min\_after\_call\_worktime, max\_after\_call\_worktime, average\_after\_call\_worktime report types --- **`interval`** `string` *optional* Interval format: YYYY-MM-DD HH:mm:ss. Default is 1 day --- **`maxWaitingSec`** `number` *optional* Maximum waiting time. Required for the **service\_level** report type --- **`reportType`** `string | string[]` The report type. Possible values are: calls\_blocked\_percentage, count\_blocked\_calls, im\_blocked\_chats\_percentage, im\_count\_blocked\_chats, im\_answered\_chats\_rate, average\_abandonment\_rate, count\_abandonment\_calls, service\_level, im\_service\_level, occupancy\_rate, im\_agent\_occupancy\_rate, agent\_utilization\_rate, im\_agent\_utilization\_rate, sum\_agents\_online\_time, sum\_agents\_ready\_time, sum\_agents\_dialing\_time, sum\_agents\_in\_service\_time, sum\_agents\_in\_service\_incoming\_time, sum\_agents\_in\_service\_outcoming\_time, sum\_agents\_afterservice\_time, sum\_agents\_dnd\_time, sum\_agents\_custom\_1\_time, sum\_agents\_custom\_2\_time, sum\_agents\_custom\_3\_time, sum\_agents\_custom\_4\_time, sum\_agents\_custom\_5\_time, sum\_agents\_custom\_6\_time, sum\_agents\_custom\_7\_time, sum\_agents\_custom\_8\_time, sum\_agents\_custom\_9\_time, sum\_agents\_custom\_10\_time, sum\_agents\_banned\_time, im\_sum\_agents\_online\_time, im\_sum\_agents\_ready\_time, im\_sum\_agents\_in\_service\_time, im\_sum\_agents\_dnd\_time, im\_sum\_agents\_custom\_1\_time, im\_sum\_agents\_custom\_2\_time, im\_sum\_agents\_custom\_3\_time, im\_sum\_agents\_custom\_4\_time, im\_sum\_agents\_custom\_5\_time, im\_sum\_agents\_custom\_6\_time, im\_sum\_agents\_custom\_7\_time, im\_sum\_agents\_custom\_8\_time, im\_sum\_agents\_custom\_9\_time, im\_sum\_agents\_custom\_10\_time, im\_sum\_agents\_banned\_time, average\_agents\_idle\_time, max\_agents\_idle\_time, min\_agents\_idle\_time, percentile\_0\_25\_agents\_idle\_time, percentile\_0\_50\_agents\_idle\_time, percentile\_0\_75\_agents\_idle\_time, min\_time\_in\_queue, max\_time\_in\_queue, average\_time\_in\_queue, min\_answer\_speed, max\_answer\_speed, average\_answer\_speed, im\_min\_answer\_speed, im\_max\_answer\_speed, im\_average\_answer\_speed, min\_handle\_time, max\_handle\_time, average\_handle\_time, count\_handled\_calls, min\_after\_call\_worktime, max\_after\_call\_worktime, average\_after\_call\_worktime, count\_agent\_unanswered\_calls, im\_count\_agent\_unanswered\_chats, min\_reaction\_time, max\_reaction\_time, average\_reaction\_time, im\_min\_reaction\_time, im\_max\_reaction\_time, im\_average\_reaction\_time, im\_count\_abandonment\_chats, im\_count\_lost\_chats, im\_lost\_chats\_rate, call\_count\_assigned\_to\_queue, im\_count\_assigned\_to\_queue --- **`sqQueueId`** `'any' | number | number[]` The SmartQueue ID list with a maximum of 5 values separated by semicolons (;). Can operate as filter for the **calls\_blocked\_percentage**, **count\_blocked\_calls**, **average\_abandonment\_rate**, **count\_abandonment\_calls**, **service\_level**, **occupancy\_rate**, **min\_time\_in\_queue**, **max\_time\_in\_queue**, **average\_time\_in\_queue**, **min\_answer\_speed**, **max\_answer\_speed**, **average\_answer\_speed**, **min\_handle\_time**, **max\_handle\_time**, **average\_handle\_time**, **count\_handled\_calls**, **min\_after\_call\_worktime**, **max\_after\_call\_worktime**, **average\_after\_call\_worktime** report types --- **`sqQueueName`** `string | string[]` *optional* The SmartQueue name list separated by semicolons (;). Can be used instead of **sq\_queue\_id** --- **`timezone`** `string` *optional* The selected timezone or the 'auto' value (the account location) --- **`toDate`** `Date` *optional* The to date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss. Default is the current time --- **`userId`** `'any' | number | number[]` *optional* The user ID list with a maximum of 5 values separated by semicolons (;). Use the 'all' value to select all users. Can operate as a filter for the **occupancy\_rate**, **sum\_agents\_online\_time**, **sum\_agents\_ready\_time**, **sum\_agents\_dialing\_time**, **sum\_agents\_in\_service\_time**, **sum\_agents\_afterservice\_time**, **sum\_agents\_dnd\_time**, **sum\_agents\_banned\_time**, **min\_handle\_time**, **max\_handle\_time**, **average\_handle\_time**, **count\_handled\_calls**, **min\_after\_call\_worktime**, **max\_after\_call\_worktime**, **average\_after\_call\_worktime** report types --- **`userName`** `string | string[]` *optional* The user name list separated by semicolons (;). **user\_name** can be used instead of **user\_id** --- ### GetSmartQueueDayHistoryResponse **`error`** `APIError` *optional* --- **`result`** `SmartQueueMetricsResult[]` --- **`timezone`** `string` The used timezone, e.g., 'Etc/GMT' --- ### GetSmartQueueRealtimeMetricsRequest **`applicationId`** `number` *optional* The application ID to search by. **Required** unless **application\_name** is provided. --- **`applicationName`** `string` *optional* The application name to search by. **Required** unless **application\_id** is provided. --- **`fromDate`** `Date` *optional* The from date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss. Default is the current time minus 30 minutes --- **`groupBy`** `string` *optional* Group the result by **agent** or *queue*. The **agent** grouping is allowed for 1 queue and for the occupancy\_rate, sum\_agents\_online\_time, sum\_agents\_ready\_time, sum\_agents\_dialing\_time, sum\_agents\_in\_service\_time, sum\_agents\_afterservice\_time, sum\_agents\_dnd\_time, sum\_agents\_banned\_time, min\_handle\_time, max\_handle\_time, average\_handle\_time, count\_handled\_calls, min\_after\_call\_worktime, max\_after\_call\_worktime, average\_after\_call\_worktime report types. The **queue** grouping allowed for the calls\_blocked\_percentage, count\_blocked\_calls, average\_abandonment\_rate, count\_abandonment\_calls, service\_level, occupancy\_rate, min\_time\_in\_queue, max\_time\_in\_queue, average\_time\_in\_queue, min\_answer\_speed, max\_answer\_speed, average\_answer\_speed, min\_handle\_time, max\_handle\_time, average\_handle\_time, count\_handled\_calls, min\_after\_call\_worktime, max\_after\_call\_worktime, average\_after\_call\_worktime report types --- **`interval`** `string` *optional* Interval format: YYYY-MM-DD HH:mm:ss. Default is 30 minutes --- **`maxWaitingSec`** `number` *optional* Maximum waiting time. Required for the **service\_level** report type --- **`reportType`** `string | string[]` The report type. Possible values are: calls\_blocked\_percentage, count\_blocked\_calls, im\_blocked\_chats\_percentage, im\_count\_blocked\_chats, im\_answered\_chats\_rate, average\_abandonment\_rate, count\_abandonment\_calls, service\_level, im\_service\_level, occupancy\_rate, im\_agent\_occupancy\_rate, agent\_utilization\_rate, im\_agent\_utilization\_rate, sum\_agents\_online\_time, sum\_agents\_ready\_time, sum\_agents\_dialing\_time, sum\_agents\_in\_service\_time, sum\_agents\_in\_service\_incoming\_time, sum\_agents\_in\_service\_outcoming\_time, sum\_agents\_afterservice\_time, sum\_agents\_dnd\_time, sum\_agents\_custom\_1\_time, sum\_agents\_custom\_2\_time, sum\_agents\_custom\_3\_time, sum\_agents\_custom\_4\_time, sum\_agents\_custom\_5\_time, sum\_agents\_custom\_6\_time, sum\_agents\_custom\_7\_time, sum\_agents\_custom\_8\_time, sum\_agents\_custom\_9\_time, sum\_agents\_custom\_10\_time, sum\_agents\_banned\_time, im\_sum\_agents\_online\_time, im\_sum\_agents\_ready\_time, im\_sum\_agents\_in\_service\_time, im\_sum\_agents\_dnd\_time, im\_sum\_agents\_custom\_1\_time, im\_sum\_agents\_custom\_2\_time, im\_sum\_agents\_custom\_3\_time, im\_sum\_agents\_custom\_4\_time, im\_sum\_agents\_custom\_5\_time, im\_sum\_agents\_custom\_6\_time, im\_sum\_agents\_custom\_7\_time, im\_sum\_agents\_custom\_8\_time, im\_sum\_agents\_custom\_9\_time, im\_sum\_agents\_custom\_10\_time, im\_sum\_agents\_banned\_time, average\_agents\_idle\_time, max\_agents\_idle\_time, min\_agents\_idle\_time, percentile\_0\_25\_agents\_idle\_time, percentile\_0\_50\_agents\_idle\_time, percentile\_0\_75\_agents\_idle\_time, min\_time\_in\_queue, max\_time\_in\_queue, average\_time\_in\_queue, min\_answer\_speed, max\_answer\_speed, average\_answer\_speed, im\_min\_answer\_speed, im\_max\_answer\_speed, im\_average\_answer\_speed, min\_handle\_time, max\_handle\_time, average\_handle\_time, count\_handled\_calls, min\_after\_call\_worktime, max\_after\_call\_worktime, average\_after\_call\_worktime, count\_agent\_unanswered\_calls, im\_count\_agent\_unanswered\_chats, min\_reaction\_time, max\_reaction\_time, average\_reaction\_time, im\_min\_reaction\_time, im\_max\_reaction\_time, im\_average\_reaction\_time, im\_count\_abandonment\_chats, im\_count\_lost\_chats, im\_lost\_chats\_rate, call\_count\_assigned\_to\_queue, im\_count\_assigned\_to\_queue --- **`sqQueueName`** `string | string[]` *optional* The SmartQueue name list separated by semicolons (;). Can be used instead of **sq\_queue\_id** --- **`timezone`** `string` *optional* The selected timezone or the 'auto' value (the account location) --- **`toDate`** `Date` *optional* The to date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss. Default is the current time --- **`userId`** `'any' | number | number[]` *optional* The user ID list with a maximum of 5 values separated by semicolons (;). Use the 'all' value to select all users. Can operate as a filter for the **occupancy\_rate**, **sum\_agents\_online\_time**, **sum\_agents\_ready\_time**, **sum\_agents\_dialing\_time**, **sum\_agents\_in\_service\_time**, **sum\_agents\_afterservice\_time**, **sum\_agents\_dnd\_time**, **sum\_agents\_banned\_time**, **min\_handle\_time**, **max\_handle\_time**, **average\_handle\_time**, **count\_handled\_calls**, **min\_after\_call\_worktime**, **max\_after\_call\_worktime**, **average\_after\_call\_worktime** report types --- **`userName`** `string | string[]` *optional* The user name list separated by semicolons (;). **user\_name** can be used instead of **user\_id** --- ### GetSmartQueueRealtimeMetricsResponse **`error`** `APIError` *optional* --- **`result`** `SmartQueueMetricsResult[]` --- **`timezone`** `string` The used timezone, e.g., 'Etc/GMT' --- ### GetSmsHistoryRequest **`count`** `number` *optional* Maximum number of resulting rows fetched. Should be not bigger than 1000. If left blank, then the default value of 1000 is used --- **`destinationNumber`** `string` *optional* The destination phone number --- **`direction`** `string` *optional* Sent or received SMS. Possible values: 'IN', 'OUT', 'in, 'out'. Leave blank to get both incoming and outgoing messages --- **`fromDate`** `Date` *optional* Date from which to perform search. Format is 'yyyy-MM-dd HH:mm:ss', time zone is UTC --- **`messageId`** `'any' | number | number[]` *optional* Message id list separated by semicolons (;) --- **`offset`** `number` *optional* The first **N** records are skipped in the output --- **`output`** `string` *optional* The output format. The following values available: **json**, **csv**, **xls**. The default value is **json** --- **`sourceNumber`** `string` *optional* The source phone number --- **`timezone`** `string` *optional* --- **`toDate`** `Date` *optional* Date until which to perform search. Format is 'yyyy-MM-dd HH:mm:ss', time zone is UTC --- ### GetSmsHistoryResponse **`error`** `APIError` *optional* --- **`result`** `SmsHistory[]` --- **`totalCount`** `number` Total number of messages matching the query parameters --- ### GetSQAgentsResult **`maxSimultaneousConversations`** `number` *optional* Maximum number of chats that the user processes simultaneously --- **`sqQueues`** `string` *optional* JSON array of the agent's queues --- **`sqSkills`** `string` *optional* JSON array of the agent's skills --- **`sqStatuses`** `SmartQueueStateAgentStatus[]` *optional* Agent statuses info --- **`userDisplayName`** `string` *optional* Display name of the user --- **`userId`** `number` *optional* ID of the user --- **`userName`** `string` *optional* Name of the user --- ### GetSQQueuesResult **`agentcount`** `number` *optional* Number of agents bound to the queue --- **`agentSelection`** `string` Agent selection strategy --- **`callMaxQueueSize`** `number` *optional* Maximum size of the queue with CALL-type requests --- **`callMaxWaitingTime`** `number` *optional* Maximum time in minutes that a CALL-type request can remain in the queue without being assigned to an agent in minutes. If the value has been passed in seconds, this field is also present in the answer, rounded to the bigger number --- **`callMaxWaitingTimeInSeconds`** `number` *optional* Maximum time in minutes that a CALL-type request can remain in the queue without being assigned to an agent in seconds. If the value has been passed in minutes, this field is also present in the answer --- **`created`** `Date` *optional* UTC date of the queue creation in 24-h format: YYYY-MM-DD HH:mm:ss --- **`description`** `string` *optional* Comment --- **`holdCallsIfInactiveAgents`** `boolean` *optional* Whether the call task is kept in the queue if all agents are unavailable --- **`holdImIfInactiveAgents`** `boolean` *optional* Whether the tasks are queued when there are no active agents --- **`imMaxQueueSize`** `number` *optional* Maximum size of the queue with IM-type requests --- **`imMaxWaitingTime`** `number` *optional* Maximum time in minutes that an IM-type request can remain in the queue without being assigned to an agent in minutes. If the value has been passed in seconds, this field is also present in the answer, rounded to the bigger number --- **`imMaxWaitingTimeInSeconds`** `number` *optional* Maximum time in minutes that an IM-type request can remain in the queue without being assigned to an agent in seconds. If the value has been passed in minutes, this field is also present in the answer --- **`modified`** `Date` *optional* UTC date of the queue modification in 24-h format: YYYY-MM-DD HH:mm:ss --- **`sqQueueId`** `number` ID of the SmartQueue --- **`sqQueueName`** `string` Name of the SmartQueue --- **`taskSelection`** `string` Strategy of prioritizing requests for service --- ### GetSQSkillsResult **`created`** `Date` *optional* UTC date of the queue creation in 24-h format: YYYY-MM-DD HH:mm:ss --- **`description`** `string` *optional* Comment --- **`modified`** `Date` *optional* UTC date of the queue modification in 24-h format: YYYY-MM-DD HH:mm:ss --- **`sqSkillId`** `number` ID of the skill --- **`sqSkillName`** `string` Name of the skill --- ### GetSQStateRequest **`applicationId`** `number` The application ID to search by --- **`applicationName`** `string` *optional* The application name to search by. Can be used instead of the **application\_id** parameter --- **`sqQueueId`** `'any' | number | number[]` The SmartQueue ID list separated by semicolons (;). Use the 'all' value to select all SmartQueues --- **`sqQueueName`** `string | string[]` *optional* The SmartQueue name list separated by semicolons (;). Can be used instead of **sq\_queue\_id** --- **`timezone`** `string` *optional* The selected timezone or the 'auto' value (the account location) --- ### GetSQStateResponse **`error`** `APIError` *optional* --- **`result`** `SmartQueueState[]` --- ### GetTransactionHistoryAsyncRequest **`applicationId`** `number` *optional* The application ID to filter. Can be used together with or instead of the **application\_name** parameter --- **`applicationName`** `string` *optional* The application name to filter. Can be used instead of the **application\_id** parameter --- **`childAccountId`** `'any' | number | number[]` *optional* The child account ID list separated by semicolons (;). Use the 'all' value to select all child accounts --- **`childrenTransactionsOnly`** `boolean` *optional* Whether to get the children account transactions only --- **`count`** `number` *optional* The maximum number of records to include in the report. If omitted, the report service applies its own limit. Unlike GetTransactionHistory, there is no default of 20 and no cap of 1000 on the Management API side --- **`descOrder`** `boolean` *optional* Whether to get records in the descent order --- **`fromDate`** `Date` *optional* The from date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss. If both dates are omitted and is\_uncommitted is false, a server-configured default interval is used (default is one month) --- **`isUncommitted`** `boolean` *optional* Whether to get transactions on hold (transactions for which money is reserved but not yet withdrawn from the account) --- **`offset`** `number` *optional* The number of records to skip in the output --- **`output`** `string` *optional* The output format. The following values available: **csv**. The default value is **csv** --- **`paymentReference`** `string` *optional* --- **`priceGroupName`** `string | string[]` *optional* The price group name list separated by semicolons (;) to filter --- **`resourceType`** `string | string[]` *optional* The resource type list separated by semicolons (;) to filter --- **`subscriptionId`** `'any' | number | number[]` *optional* The subscription ID list separated by semicolons (;) to filter --- **`subscriptionName`** `string | string[]` *optional* The subscription name list separated by semicolons (;) to filter --- **`timezone`** `string` *optional* --- **`toDate`** `Date` *optional* The to date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss. If both dates are omitted and is\_uncommitted is false, a server-configured default interval is used (default is one month) --- **`transactionId`** `'any' | number | number[]` *optional* The transaction ID list separated by semicolons (;) --- **`transactionType`** `string | string[]` *optional* The transaction type list separated by semicolons (;). The following values are possible: gift\_revoke, resource\_charge, money\_distribution, subscription\_charge, subscription\_installation\_charge, card\_periodic\_payment, card\_overrun\_payment, card\_payment, rub\_card\_periodic\_payment, rub\_card\_overrun\_payment, rub\_card\_payment, robokassa\_payment, gift, promo, adjustment, wire\_transfer, us\_wire\_transfer, refund, discount, mgp\_charge, mgp\_startup, mgp\_business, mgp\_big\_business, mgp\_enterprise, mgp\_large\_enterprise, techsupport\_charge, tax\_charge, monthly\_fee\_charge, grace\_credit\_payment, grace\_credit\_provision, mau\_charge, mau\_overrun, im\_charge, im\_overrun, fmc\_charge, sip\_registration\_charge, development\_fee, money\_transfer\_to\_child, money\_transfer\_to\_parent, money\_acceptance\_from\_child, money\_acceptance\_from\_parent, phone\_number\_installation, phone\_number\_charge, toll\_free\_phone\_number\_installation, toll\_free\_phone\_number\_charge, services, user\_money\_transfer, paypal\_payment, paypal\_overrun\_payment, paypal\_periodic\_payment --- **`useAccountingDates`** `boolean` *optional* Whether to filter by the accounting dates instead of the transaction's `performed_at` timestamps --- **`userId`** `'any' | number | number[]` *optional* The user ID list separated by semicolons (;) --- **`usersTransactionsOnly`** `boolean` *optional* Whether to get the users' transactions only --- **`withHeader`** `boolean` *optional* Whether to get a CSV file with the column names if the output=csv --- ### GetTransactionHistoryAsyncResponse **`error`** `APIError` *optional* --- **`historyReportId`** `number` The history report ID --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### GetTransactionHistoryRequest **`applicationId`** `number` *optional* The application ID to filter. Can be used together with or instead of the **application\_name** parameter --- **`applicationName`** `string` *optional* The application name to filter. Can be used instead of the **application\_id** parameter --- **`childAccountId`** `'any' | number | number[]` *optional* The child account ID list separated by semicolons (;). Use the 'all' value to select all child accounts --- **`childrenTransactionsOnly`** `boolean` *optional* Whether to get the children account transactions only --- **`count`** `number` *optional* The number of returning records. The maximum value is 1000 --- **`decimalSeparator`** `string` *optional* The decimal mark for the CSV numbers if the output=csv. If omitted, the account locale setting is used --- **`descOrder`** `boolean` *optional* Whether to get records in the descent order --- **`fromDate`** `Date` *optional* The from date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss. If both dates are omitted and is\_uncommitted is false, a server-configured default interval is used (default is one month) --- **`isAsync`** `boolean` *optional* Whether to create an asynchronous history report instead of returning the data immediately. Has the same effect as calling `GetTransactionHistoryAsync` and requires the output=csv --- **`isUncommitted`** `boolean` *optional* Whether to get transactions on hold (transactions for which money is reserved but not yet withdrawn from the account) --- **`offset`** `number` *optional* The number of records to skip in the output with a maximum value of 10000 --- **`paymentReference`** `string` *optional* --- **`priceGroupName`** `string | string[]` *optional* The price group name list separated by semicolons (;) to filter --- **`resourceType`** `string | string[]` *optional* The resource type list separated by semicolons (;) to filter --- **`subscriptionId`** `'any' | number | number[]` *optional* The subscription ID list separated by semicolons (;) to filter --- **`subscriptionName`** `string | string[]` *optional* The subscription name list separated by semicolons (;) to filter --- **`timezone`** `string` *optional* --- **`toDate`** `Date` *optional* The to date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss. If both dates are omitted and is\_uncommitted is false, a server-configured default interval is used (default is one month) --- **`transactionId`** `'any' | number | number[]` *optional* The transaction ID list separated by semicolons (;) --- **`transactionType`** `string | string[]` *optional* The transaction type list separated by semicolons (;). The following values are possible: gift\_revoke, resource\_charge, money\_distribution, subscription\_charge, subscription\_installation\_charge, card\_periodic\_payment, card\_overrun\_payment, card\_payment, rub\_card\_periodic\_payment, rub\_card\_overrun\_payment, rub\_card\_payment, robokassa\_payment, gift, promo, adjustment, wire\_transfer, us\_wire\_transfer, refund, discount, mgp\_charge, mgp\_startup, mgp\_business, mgp\_big\_business, mgp\_enterprise, mgp\_large\_enterprise, techsupport\_charge, tax\_charge, monthly\_fee\_charge, grace\_credit\_payment, grace\_credit\_provision, mau\_charge, mau\_overrun, im\_charge, im\_overrun, fmc\_charge, sip\_registration\_charge, development\_fee, money\_transfer\_to\_child, money\_transfer\_to\_parent, money\_acceptance\_from\_child, money\_acceptance\_from\_parent, phone\_number\_installation, phone\_number\_charge, toll\_free\_phone\_number\_installation, toll\_free\_phone\_number\_charge, services, user\_money\_transfer, paypal\_payment, paypal\_overrun\_payment, paypal\_periodic\_payment --- **`useAccountingDates`** `boolean` *optional* Whether to filter by the accounting dates instead of the transaction's `performed_at` timestamps --- **`userId`** `'any' | number | number[]` *optional* The user ID list separated by semicolons (;) --- **`usersTransactionsOnly`** `boolean` *optional* Whether to get the users' transactions only --- **`withExtendedInfo`** `boolean` *optional* Whether to include the extended transaction fields, such as the application, subscription, resource type and price group, in the response --- **`withHeader`** `boolean` *optional* Whether to get a CSV file with the column names if the output=csv --- **`withTotalCount`** `boolean` *optional* Whether to include the 'total\_count' and increase performance --- ### GetTransactionHistoryResponse **`count`** `number` The returned transaction count --- **`error`** `APIError` *optional* --- **`result`** `TransactionInfo[]` --- **`timezone`** `string` The used timezone. 'Etc/GMT' for example --- **`totalCount`** `number` The total found transaction count --- ### GetUsersRequest **`acdQueueId`** `number` *optional* The ACD queue ID to filter --- **`acdStatus`** `string | string[]` *optional* The ACD status list separated by semicolons (;) to filter. The following values are possible: OFFLINE, ONLINE, READY, BANNED, IN\_SERVICE, AFTER\_SERVICE, TIMEOUT, DND --- **`applicationId`** `number` The application ID to filter --- **`applicationName`** `string` The application name part to filter --- **`count`** `number` *optional* The maximum returning record count --- **`excludedAcdQueueId`** `number` *optional* The excluded ACD queue ID to filter --- **`excludedSkillId`** `number` *optional* The excluded skill ID to filter --- **`offset`** `number` *optional* The first **N** records are skipped in the output --- **`orderBy`** `string` *optional* The following values are available: 'user\_id', 'user\_name' and 'user\_display\_name' --- **`returnLiveBalance`** `boolean` *optional* Whether to get the user live balance --- **`showingSkillId`** `number` *optional* The skill to show in the 'skills' field output --- **`skillId`** `number` *optional* The skill ID to filter --- **`userActive`** `boolean` *optional* Whether the user is active to filter. Inactive users cannot log in to applications --- **`userDisplayName`** `string` *optional* The user display name part to filter --- **`userId`** `number` *optional* The user ID to filter --- **`userName`** `string` *optional* The user name part to filter --- **`withQueues`** `boolean` *optional* Whether to get the bound queues --- **`withSkills`** `boolean` *optional* Whether to get the bound skills --- ### GetUsersResponse **`count`** `number` The returned user count --- **`error`** `APIError` *optional* --- **`result`** `UserInfo[]` The UserInfoType records --- **`totalCount`** `number` The total found user count --- ### GetWABPhoneNumbersRequest **`applicationId`** `number` *optional* Application ID that is bound to the WhatsApp Business phone number --- **`applicationName`** `string` *optional* Bound application name that can be used instead of **application\_id** --- **`count`** `number` *optional* Maximum returning records count --- **`countryCode`** `string` *optional* Country code filter (2 symbols) for the WhatsApp Business phone number --- **`offset`** `number` *optional* Number of records to be skipped in the result --- **`wabPhoneNumber`** `string` *optional* WhatsApp Business phone number --- ### GetWABPhoneNumbersResponse **`count`** `number` Number of returned records --- **`error`** `APIError` *optional* --- **`result`** `WABPhoneInfo[]` WhatsApp Business phone numbers info --- **`totalCount`** `number` Number of total records found --- ### HistoryInterface **`getBriefCallHistory`** `(\n request: GetBriefCallHistoryRequest\n ) => Promise` Gets the account's brief call history in the asynchronous mode. Take a look at the `GetHistoryReports` and `DownloadHistoryReport` functions for downloading details. --- **`getCallHistory`** `(request: GetCallHistoryRequest) => Promise` Gets the account's call history (including call duration, cost, logs and other call information). You can filter the call history by a certain date. --- **`getCallHistoryAsync`** `(\n request: GetCallHistoryAsyncRequest\n ) => Promise` The `GetCallHistory` asynchronous implementation. Use this function to download a large amounts of data. Take a look at the `GetHistoryReports` and `DownloadHistoryReport` functions for downloading details. --- **`getTransactionHistory`** `(\n request: GetTransactionHistoryRequest\n ) => Promise` Gets the transaction history. --- **`getTransactionHistoryAsync`** `(\n request: GetTransactionHistoryAsyncRequest\n ) => Promise` The `GetTransactionHistory` asynchronous implementation. Use this function to download a large amounts of data. Take a look at the `GetHistoryReports` and `DownloadHistoryReport` functions for downloading details. --- ### InvoicePeriod **`from`** `Date` From date in the following format: YYYY-MM-DD --- **`to`** `Date` To date in the following format: YYYY-MM-DD --- ### InvoicesInterface **`downloadInvoice`** `(request: DownloadInvoiceRequest) => Promise` Downloads the specified invoice. --- **`getAccountInvoices`** `(request: GetAccountInvoicesRequest) => Promise` Gets all invoices for the specified USD or EUR account. --- ### InvoiceSpendingDetails **`amount`** `InvoiceTotalDetails` Paid amount --- **`serviceName`** `string` Service name --- **`taxes`** `InvoiceTaxesDetails` Array of taxes --- ### InvoiceTaxesDetails **`amount`** `number` Paid amount --- **`category`** `string` Tax category --- **`currency`** `string` Tax currency --- **`level`** `string` Tax type. Possible values: Federal, State, County, City, Unincorporated --- **`name`** `string` Tax name --- **`rate`** `number` Tax rate --- **`taxableMeasure`** `number` Taxable sum --- ### InvoiceTotalDetails **`amountToPay`** `number` Discounted amount to pay --- **`currency`** `string` Invoice currency --- **`discountAmount`** `number` Discount --- **`taxAmount`** `number` Total amount of taxes --- **`totalAmount`** `number` Invoice total amount including taxes --- ### IsAccountPhoneNumberRequest **`phoneNumber`** `string` Phone number to check in the international format without `+` --- ### IsAccountPhoneNumberResponse **`error`** `APIError` *optional* --- **`result`** `boolean` Whether the number belongs to the account --- ### KeyValueItems **`expiresAt`** `number` Expiration date based on **ttl** (timestamp without milliseconds) --- **`key`** `string` Key that matches the specified key or key pattern --- **`value`** `string` Value for the specified key --- ### KeyValueKeys **`expiresAt`** `number` Expiration date based on **ttl** (timestamp without milliseconds) --- **`key`** `string` Key that matches the pattern --- ### KeyValueStorageInterface **`delKeyValueItem`** `(request: DelKeyValueItemRequest) => Promise` Deletes the specified key-value pair from the storage. --- **`getKeyValueItem`** `(request: GetKeyValueItemRequest) => Promise` Gets the specified key-value pair from the storage. --- **`getKeyValueItems`** `(request: GetKeyValueItemsRequest) => Promise` Gets all the key-value pairs in which the keys begin with a pattern. --- **`getKeyValueKeys`** `(request: GetKeyValueKeysRequest) => Promise` Gets all the keys of key-value pairs. --- **`setKeyValueItem`** `(request: SetKeyValueItemRequest) => Promise` Creates or updates a key-value pair. If an existing key is passed, the method returns the existing item and changes the value if needed. The keys should be unique within a Voximplant application. --- ### OutboundTestNumbersInterface **`activateOutboundTestPhoneNumber`** `(\n request: ActivateOutboundTestPhoneNumberRequest\n ) => Promise` Activates the phone number by the verification code. --- **`addOutboundTestPhoneNumber`** `(\n request: AddOutboundTestPhoneNumberRequest\n ) => Promise` Adds a personal phone number to test outgoing calls. Only one personal phone number can be used. To replace it with another, delete the existing one first. --- **`delOutboundTestPhoneNumber`** `(\n request: DelOutboundTestPhoneNumberRequest\n ) => Promise` Deletes the existing phone number. --- **`getOutboundTestPhoneNumbers`** `(\n request: GetOutboundTestPhoneNumbersRequest\n ) => Promise` Shows the phone number info. --- **`verifyOutboundTestPhoneNumber`** `(\n request: VerifyOutboundTestPhoneNumberRequest\n ) => Promise` Starts a call to the added phone number and pronounces a verification code. You have only 5 verification attempts per day and 100 in total. 1 minute should pass between 2 attempts. --- ### OutboundTestPhonenumberInfo **`countryCode`** `string` The country code --- **`isVerified`** `boolean` Whether the phone number is verified --- **`phoneNumber`** `string` The personal phone number --- ### PhoneNumbersInterface **`getPhoneNumbers`** `(request: GetPhoneNumbersRequest) => Promise` Gets the account phone numbers. --- **`getPhoneNumbersAsync`** `(\n request: GetPhoneNumbersAsyncRequest\n ) => Promise` Gets the asynchronous report regarding purchased phone numbers. --- **`isAccountPhoneNumber`** `(\n request: IsAccountPhoneNumberRequest\n ) => Promise` Checks if the phone number belongs to the authorized account. --- ### PstnBlackListInfo **`pstnBlacklistId`** `number` The black list item ID --- **`pstnBlacklistPhone`** `string` The phone number --- ### PSTNBlacklistInterface **`addPstnBlackListItem`** `(\n request: AddPstnBlackListItemRequest\n ) => Promise` Add a new phone number to the PSTN blacklist. Use blacklist to block incoming calls from specified phone numbers to numbers purchased from Voximplant. Since we have no control over exact phone number format for calls from SIP integrations, blacklisting such numbers should be done via JavaScript scenarios. --- **`delPstnBlackListItem`** `(\n request: DelPstnBlackListItemRequest\n ) => Promise` Remove phone number from the PSTN blacklist. --- **`getPstnBlackList`** `(request: GetPstnBlackListRequest) => Promise` Get the whole PSTN blacklist. --- **`setPstnBlackListItem`** `(\n request: SetPstnBlackListItemRequest\n ) => Promise` Update the PSTN blacklist item. BlackList works for numbers that are purchased from Voximplant only. Since we have no control over exact phone number format for calls from SIP integrations, blacklisting such numbers should be done via JavaScript scenarios. --- ### QueueInfo **`acdQueueId`** `number` The ACD queue ID --- **`acdQueueName`** `string` The queue name --- **`acdQueuePriority`** `number` The integer queue priority. The highest priority is 0 --- **`applicationId`** `number` *optional* The application ID --- **`autoBinding`** `boolean` Whether to enable the auto binding of operators to a queue by skills comparing --- **`averageServiceTime`** `number` *optional* The average service time in seconds. Specify the parameter to correct or initialize the waiting time prediction --- **`created`** `Date` The ACD queue creating UTC date in 24-h format: YYYY-MM-DD HH:mm:ss --- **`deleted`** `Date` *optional* The ACD queue deleting UTC date in 24-h format: YYYY-MM-DD HH:mm:ss --- **`maxQueueSize`** `number` *optional* The maximum number of calls that can be enqueued into this queue --- **`maxWaitingTime`** `number` *optional* The maximum predicted waiting time in minutes. When a call is going to be enqueued to the queue, its predicted waiting time should be less or equal to the maximum predicted waiting time; otherwise, a call would be rejected --- **`modified`** `Date` The ACD queue editing UTC date in 24-h format: YYYY-MM-DD HH:mm:ss --- **`operatorcount`** `number` *optional* Number of agents bound to the queue --- **`serviceProbability`** `number` The value in the range of \[0.5 ... 1.0]. The value 1.0 means the service probability 100% in challenge with a lower priority queue --- **`skills`** `QueueSkills[]` *optional* The queue skills info --- **`slThresholds`** `number[]` *optional* The service level thresholds in seconds --- **`users`** `QueueUsers[]` *optional* The queue users info --- ### QueuesInterface **`addQueue`** `(request: AddQueueRequest) => Promise` Adds a new ACD queue. --- **`bindUserToQueue`** `(request: BindUserToQueueRequest) => Promise` Bind/unbind users to/from the specified ACD queues. Note that users and queues should be already bound to the same application. --- **`delQueue`** `(request: DelQueueRequest) => Promise` Deletes the ACD queue. --- **`getACDState`** `(request: GetACDStateRequest) => Promise` Gets the current ACD queue state. --- **`getQueues`** `(request: GetQueuesRequest) => Promise` Gets the ACD queues. --- **`setQueueInfo`** `(request: SetQueueInfoRequest) => Promise` Edits the ACD queue. --- ### QueueSkills **`skillId`** `number` The skill ID --- **`skillName`** `string` The skill name --- ### QueueUsers **`userId`** `number` The user ID --- ### Record **`cost`** `number` *optional* The record cost --- **`duration`** `number` *optional* The call duration in seconds --- **`fileSize`** `number` *optional* The file size --- **`recordId`** `number` The record ID --- **`recordName`** `string` *optional* The record name --- **`recordUrl`** `string` *optional* The record URL. If you have issues accessing the record file, check if the application has "Secure storage of applications and logs" feature enabled. In this case, you need to [authorize](/platform/management-api/secure-objects). --- **`startTime`** `Date` The start recording time in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss --- **`transactionId`** `number` The transaction ID --- **`transcriptionStatus`** `string` *optional* The status of transcription. The possible values are Not required, In progress, Complete --- **`transcriptionUrl`** `string` *optional* Transcription URL. To open the URL, please add authorization parameters and **record\_id** to it --- ### RecordStorageInfo **`recordStorageId`** `number` *optional* The record storage ID --- **`recordStorageName`** `string` *optional* The record storage name --- ### RecordStoragesInterface **`getRecordStorages`** `(request: GetRecordStoragesRequest) => Promise` Gets the record storages. --- ### RequestSmartQueueHistoryRequest **`applicationId`** `number` *optional* The application ID to search by. **Required** unless **application\_name** is provided. --- **`applicationName`** `string` *optional* The application name to search by. **Required** unless **application\_id** is provided. --- **`fromDate`** `Date` The from date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss. Default is the current time minus 1 day --- **`groupBy`** `string` *optional* Group the result by **agent** or *queue*. The **agent** grouping is allowed only for 1 queue and for the occupancy\_rate, sum\_agents\_online\_time, sum\_agents\_ready\_time, sum\_agents\_dialing\_time, sum\_agents\_in\_service\_time, sum\_agents\_afterservice\_time, sum\_agents\_dnd\_time, sum\_agents\_banned\_time, min\_handle\_time, max\_handle\_time, average\_handle\_time, count\_handled\_calls, min\_after\_call\_worktime, max\_after\_call\_worktime, average\_after\_call\_worktime report types. The **queue** grouping allowed for the calls\_blocked\_percentage, count\_blocked\_calls, average\_abandonment\_rate, count\_abandonment\_calls, service\_level, occupancy\_rate, min\_time\_in\_queue, max\_time\_in\_queue, average\_time\_in\_queue, min\_answer\_speed, max\_answer\_speed, average\_answer\_speed, min\_handle\_time, max\_handle\_time, average\_handle\_time, count\_handled\_calls, min\_after\_call\_worktime, max\_after\_call\_worktime, average\_after\_call\_worktime report types --- **`interval`** `string` *optional* Interval format: YYYY-MM-DD HH:mm:ss. Default is 1 day --- **`maxWaitingSec`** `number` *optional* Maximum waiting time. Required for the **service\_level** report type --- **`reportType`** `string | string[]` The report type. Possible values are: calls\_blocked\_percentage, count\_blocked\_calls, im\_blocked\_chats\_percentage, im\_count\_blocked\_chats, im\_answered\_chats\_rate, average\_abandonment\_rate, count\_abandonment\_calls, service\_level, im\_service\_level, occupancy\_rate, im\_agent\_occupancy\_rate, agent\_utilization\_rate, im\_agent\_utilization\_rate, sum\_agents\_online\_time, sum\_agents\_ready\_time, sum\_agents\_dialing\_time, sum\_agents\_in\_service\_time, sum\_agents\_in\_service\_incoming\_time, sum\_agents\_in\_service\_outcoming\_time, sum\_agents\_afterservice\_time, sum\_agents\_dnd\_time, sum\_agents\_custom\_1\_time, sum\_agents\_custom\_2\_time, sum\_agents\_custom\_3\_time, sum\_agents\_custom\_4\_time, sum\_agents\_custom\_5\_time, sum\_agents\_custom\_6\_time, sum\_agents\_custom\_7\_time, sum\_agents\_custom\_8\_time, sum\_agents\_custom\_9\_time, sum\_agents\_custom\_10\_time, sum\_agents\_banned\_time, im\_sum\_agents\_online\_time, im\_sum\_agents\_ready\_time, im\_sum\_agents\_in\_service\_time, im\_sum\_agents\_dnd\_time, im\_sum\_agents\_custom\_1\_time, im\_sum\_agents\_custom\_2\_time, im\_sum\_agents\_custom\_3\_time, im\_sum\_agents\_custom\_4\_time, im\_sum\_agents\_custom\_5\_time, im\_sum\_agents\_custom\_6\_time, im\_sum\_agents\_custom\_7\_time, im\_sum\_agents\_custom\_8\_time, im\_sum\_agents\_custom\_9\_time, im\_sum\_agents\_custom\_10\_time, im\_sum\_agents\_banned\_time, average\_agents\_idle\_time, max\_agents\_idle\_time, min\_agents\_idle\_time, percentile\_0\_25\_agents\_idle\_time, percentile\_0\_50\_agents\_idle\_time, percentile\_0\_75\_agents\_idle\_time, min\_time\_in\_queue, max\_time\_in\_queue, average\_time\_in\_queue, min\_answer\_speed, max\_answer\_speed, average\_answer\_speed, im\_min\_answer\_speed, im\_max\_answer\_speed, im\_average\_answer\_speed, min\_handle\_time, max\_handle\_time, average\_handle\_time, count\_handled\_calls, min\_after\_call\_worktime, max\_after\_call\_worktime, average\_after\_call\_worktime, count\_agent\_unanswered\_calls, im\_count\_agent\_unanswered\_chats, min\_reaction\_time, max\_reaction\_time, average\_reaction\_time, im\_min\_reaction\_time, im\_max\_reaction\_time, im\_average\_reaction\_time, im\_count\_abandonment\_chats, im\_count\_lost\_chats, im\_lost\_chats\_rate, call\_count\_assigned\_to\_queue, im\_count\_assigned\_to\_queue --- **`sqQueueId`** `'any' | number | number[]` The SmartQueue ID list with a maximum of 5 values separated by semicolons (;). Can operate as filter for the **calls\_blocked\_percentage**, **count\_blocked\_calls**, **average\_abandonment\_rate**, **count\_abandonment\_calls**, **service\_level**, **occupancy\_rate**, **min\_time\_in\_queue**, **max\_time\_in\_queue**, **average\_time\_in\_queue**, **min\_answer\_speed**, **max\_answer\_speed**, **average\_answer\_speed**, **min\_handle\_time**, **max\_handle\_time**, **average\_handle\_time**, **count\_handled\_calls**, **min\_after\_call\_worktime**, **max\_after\_call\_worktime**, **average\_after\_call\_worktime** report types --- **`sqQueueName`** `string | string[]` *optional* The SmartQueue name list separated by semicolons (;). Can be used instead of **sq\_queue\_id** --- **`timezone`** `string` *optional* The selected timezone or the 'auto' value (the account location) --- **`toDate`** `Date` The to date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss. Default is the current time --- **`userId`** `'any' | number | number[]` *optional* The user ID list with a maximum of 5 values separated by semicolons (;). Use the 'all' value to select all users. Can operate as a filter for the **occupancy\_rate**, **sum\_agents\_online\_time**, **sum\_agents\_ready\_time**, **sum\_agents\_dialing\_time**, **sum\_agents\_in\_service\_time**, **sum\_agents\_afterservice\_time**, **sum\_agents\_dnd\_time**, **sum\_agents\_banned\_time**, **min\_handle\_time**, **max\_handle\_time**, **average\_handle\_time**, **count\_handled\_calls**, **min\_after\_call\_worktime**, **max\_after\_call\_worktime**, **average\_after\_call\_worktime** report types --- **`userName`** `string | string[]` *optional* The user name list separated by semicolons (;). Can be used instead of **user\_id** --- ### RequestSmartQueueHistoryResponse **`error`** `APIError` *optional* --- **`historyReportId`** `number` History report ID --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### ResourceUsage **`cost`** `number` *optional* The resource cost --- **`description`** `string` *optional* The description --- **`refCallId`** `number` *optional* The reference to call --- **`resourceQuantity`** `number` *optional* The resource quantity --- **`resourceType`** `string` The resource type. The possible values are CALLSESSION, VIDEOCALL, VIDEORECORD, VOICEMAILDETECTION, ASR, TRANSCRIPTION, TTS\_TEXT\_GOOGLE, AUDIOHDCONFERENCE --- **`resourceUsageId`** `number` The resource usage ID --- **`transactionId`** `number` The transaction ID --- **`unit`** `string` *optional* The resource unit --- **`usedAt`** `Date` The start resource using time in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss --- ### RoleGroupView **`id`** `number` The role group ID --- **`name`** `string` The role group name --- ### RoleSystemInterface **`getRoleGroups`** `(request: GetRoleGroupsRequest) => Promise` Gets role groups. --- ### ScenariosInterface **`startConference`** `(request: StartConferenceRequest) => Promise` Runs a session for video conferencing or joins the existing video conference session. When you create a session by calling this method, a scenario runs on one of the servers dedicated to video conferencing. All further method calls with the same **conference\_name** do not create a new video conference session but join the existing one. Use the `StartScenarios` method for creating audio conferences. --- ### SecretListItem **`created`** `Date` Secret creation timestamp --- **`description`** `string` *optional* Secret description --- **`modified`** `Date` Secret modification timestamp --- **`secretId`** `number` Secret ID --- **`secretName`** `string` Secret name --- ### SecretsInterface **`addSecret`** `(request: AddSecretRequest) => Promise` Adds a new secret. --- **`delSecret`** `(request: DelSecretRequest) => Promise` Deletes an existing secret. --- **`getSecrets`** `(request: GetSecretsRequest) => Promise` Gets the list of an application's secrets. --- **`getSecretValue`** `(request: GetSecretValueRequest) => Promise` Gets the value of a specific secret. --- **`setSecretInfo`** `(request: SetSecretInfoRequest) => Promise` Edits a secret's parameters. --- ### SendSmsMessageRequest **`destination`** `string` The destination phone number --- **`smsBody`** `string` The message text, up to 765 characters. We split long messages greater than 160 GSM-7 characters or 70 UTF-16 characters into multiple segments. Each segment is charged as one message --- **`source`** `string` The source phone number --- **`storeBody`** `boolean` *optional* Whether to store outgoing message texts. Default value is false --- ### SendSmsMessageResponse **`error`** `APIError` *optional* --- **`fragmentsCount`** `number` The number of fragments the message is divided into --- **`messageId`** `number` Message ID --- **`result`** `number` --- ### SetApplicationInfoRequest **`applicationId`** `number` *optional* The application ID. **Required** unless **required\_application\_name** is provided. --- **`applicationName`** `string` *optional* The new short application name in format \[a-z]\[a-z0-9-]\{1,79} --- **`requiredApplicationName`** `string` *optional* The application name. **Required** unless **application\_id** is provided. --- **`secureRecordStorage`** `boolean` *optional* Whether to enable secure storage for all logs and records of the application --- ### SetApplicationInfoResponse **`applicationName`** `string` The new full application name --- **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- **`secureRecordStorage`** `boolean` Whether a secure storage for logs and records is enabled or not --- ### SetDialogflowKeyRequest **`description`** `string` The Dialogflow key's description. To clear previously set description leave the parameter blank or put whitespaces only --- **`dialogflowKeyId`** `number` The Dialogflow key's ID --- ### SetDialogflowKeyResponse **`error`** `APIError` *optional* --- **`result`** `number` --- ### SetKeyValueItemRequest **`applicationId`** `number` Application ID --- **`applicationName`** `string` *optional* Application name --- **`expiresAt`** `number` *optional* Expiration date based on **ttl** (timestamp without milliseconds). Note that one of the two parameters (ttl or expires\_at) should be set --- **`key`** `string` Key, up to 200 characters. A key can contain a namespace that is written before the ':' symbol, for example, test:1234. Thus, namespace 'test' can be used as a pattern in the [GetKeyValueItems](/api-reference/management-api/reference/key-value-storage/get-key-value-items) and [GetKeyValueKeys](/api-reference/management-api/reference/key-value-storage/get-key-value-keys) methods to find the keys with the same namespace. The key should match the following regular expression: `^[a-zA-Z0-9а-яА-ЯёЁ_\-:;.#+]*$` --- **`ttl`** `number` *optional* Key expiry time in seconds. The value is in range of 0..7,776,000 (90 days), the default value is 30 days (2,592,000 seconds). The TTL is converted to an **expires\_at** Unix timestamp field as part of the storage object. Note that one of the two parameters (ttl or expires\_at) should be set --- **`value`** `string` Value for the specified key, up to 2000 characters --- ### SetKeyValueItemResponse **`error`** `APIError` *optional* --- **`result`** `KeyValueItems` The key-value item --- ### SetPstnBlackListItemRequest **`pstnBlacklistId`** `number` The PSTN black list item ID --- **`pstnBlacklistPhone`** `string` The new phone number in format e164 --- ### SetPstnBlackListItemResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SetQueueInfoRequest **`acdQueueId`** `number` *optional* The ACD queue ID. **Required** unless **acd\_queue\_name** is provided. --- **`acdQueueName`** `string` *optional* The ACD queue name. **Required** unless **acd\_queue\_id** is provided. --- **`acdQueuePriority`** `number` *optional* The integer queue priority. The highest priority is 0 --- **`applicationId`** `number` *optional* The new application ID --- **`autoBinding`** `boolean` *optional* Whether to enable the auto binding of operators to a queue by skills comparing --- **`averageServiceTime`** `number` *optional* The average service time in seconds. Specify the parameter to correct or initialize the waiting time prediction --- **`maxQueueSize`** `number` *optional* The maximum queue size --- **`maxWaitingTime`** `number` *optional* The maximum predicted waiting time in minutes. The client is rejected if the predicted waiting time is greater than the maximum predicted waiting time --- **`newAcdQueueName`** `string` *optional* The new queue name. The length should be less than 100 --- **`serviceProbability`** `number` *optional* The value in the range of \[0.5 ... 1.0]. The value 1.0 means the service probability 100% in challenge with a lower priority queue --- ### SetQueueInfoResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SetSecretInfoRequest **`applicationId`** `number` *optional* Application ID. **Required** unless **application\_name** is provided. --- **`applicationName`** `string` *optional* Application name. **Required** unless **application\_id** is provided. --- **`description`** `string` *optional* Secret description. When processing, the length is truncated to the first 200 characters --- **`newSecretName`** `string` *optional* New secret name. The name should start with a Latin letter and can contain up to 64 characters, including Latin letters, digits and underscores --- **`secretId`** `number` *optional* Secret ID to edit. **Required** unless **secret\_name** is provided. --- **`secretName`** `string` *optional* Secret name. **Required** unless **secret\_id** is provided. --- **`secretValue`** `string` *optional* Secret value. Maximum length is 8192 characters --- ### SetSecretInfoResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the secret has been updated successfully --- ### SetSipWhiteListItemRequest **`description`** `string` *optional* The network address description --- **`sipWhitelistId`** `number` The SIP white list item ID --- **`sipWhitelistNetwork`** `string` The new network address in format A.B.C.D/L or A.B.C.D/a.b.c.d (example 192.168.1.5/16) --- ### SetSipWhiteListItemResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SetSkillInfoRequest **`newSkillName`** `string` The new skill name. The length should be less than 512 --- **`skillId`** `number` *optional* The skill ID. **Required** unless **skill\_name** is provided. --- **`skillName`** `string` *optional* The skill name. **Required** unless **skill\_id** is provided. --- ### SetSkillInfoResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SetUserInfoRequest **`applicationId`** `number` *optional* The application ID. It is required if the **user\_name** is specified --- **`applicationName`** `string` *optional* The application name that can be used instead of **application\_id** --- **`mobilePhone`** `string` *optional* --- **`newUserName`** `string` *optional* The new user name in format \[a-z0-9]\[a-z0-9\_-]\{2,49} --- **`parentAccounting`** `boolean` *optional* Whether to use the parent account's money, 'false' to use a separate user balance --- **`userActive`** `boolean` *optional* Whether the user is active. Inactive users cannot log in to applications --- **`userCustomData`** `string` *optional* Any string --- **`userDisplayName`** `string` *optional* The new user display name. The length should be less than 256 --- **`userId`** `number` *optional* The user to edit. **Required** unless **user\_name** is provided. --- **`userName`** `string` *optional* The user name. **Required** unless **user\_id** is provided. --- **`userPassword`** `string` *optional* The new user password. Should be at least 8 characters long and contain at least one uppercase and lowercase letter, one number, and one special character --- ### SetUserInfoResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SIPRegistration **`applicationId`** `number` *optional* ID of the bound application --- **`applicationName`** `string` *optional* Name of the bound application --- **`authUser`** `string` *optional* The SIP authentications user --- **`deactivated`** `boolean` Whether the subscription is deactivation. The SIP registration is frozen if true --- **`errorMessage`** `string` *optional* The error message from a SIP registration --- **`isPersistent`** `boolean` Whether the SIP registration is persistent. Set false to activate it only on the user login --- **`lastUpdated`** `number` The last time updated --- **`nextSubscriptionRenewal`** `Date` The next subscription renewal date in the following format: YYYY-MM-DD --- **`outboundProxy`** `string` *optional* The outgoing proxy --- **`proxy`** `string` The sip proxy --- **`purchaseDate`** `Date` The purchase date in 24-h format: YYYY-MM-DD HH:mm:ss --- **`ruleId`** `number` *optional* ID of the bound rule --- **`ruleName`** `string` *optional* Name of the bound rule --- **`sipRegistrationId`** `number` The SIP registration ID --- **`sipUsername`** `string` The user name from sip proxy --- **`statusCode`** `number` *optional* The status code from a SIP registration --- **`subscriptionPrice`** `string` The subscription monthly charge --- **`successful`** `boolean` *optional* Whether the SIP registration is successful --- **`userId`** `number` *optional* ID of the bound user --- **`userName`** `string` *optional* Name of the bound user --- ### SIPRegistrationInterface **`bindSipRegistration`** `(\n request: BindSipRegistrationRequest\n ) => Promise` Bind the SIP registration to the application/user or unbind the SIP registration from the application/user. You should specify the application\_id or application\_name if you specify the rule\_name or user\_id, or user\_name. You should specify the sip\_registration\_id if you set bind=true. You can bind only one SIP registration to the user (the previous SIP registration is automatically unbound). --- **`getSipRegistrations`** `(\n request: GetSipRegistrationsRequest\n ) => Promise` Get active SIP registrations. --- ### SipWhiteListInfo **`description`** `string` *optional* The network address description --- **`sipWhitelistId`** `number` The SIP white list item ID --- **`sipWhitelistNetwork`** `string` The network address in format A.B.C.D/L --- ### SIPWhiteListInterface **`addSipWhiteListItem`** `(\n request: AddSipWhiteListItemRequest\n ) => Promise` Adds a new network address to the SIP white list. --- **`delSipWhiteListItem`** `(\n request: DelSipWhiteListItemRequest\n ) => Promise` Deletes the network address from the SIP white list. --- **`getSipWhiteList`** `(request: GetSipWhiteListRequest) => Promise` Gets the SIP white list. --- **`setSipWhiteListItem`** `(\n request: SetSipWhiteListItemRequest\n ) => Promise` Edits the SIP white list. --- ### SkillInfo **`skillId`** `number` The skill ID --- **`skillName`** `string` The skill name --- ### SkillsInterface **`addSkill`** `(request: AddSkillRequest) => Promise` Adds a new operator's skill. Works only for ACDv1. For SmartQueue/ACDv2, use [the SmartQueue Management API reference](/api-reference/management-api/reference/smartqueue). --- **`bindSkill`** `(request: BindSkillRequest) => Promise` Binds the specified skills to the users (ACD operators) and/or the ACD queues. Works only for ACDv1. For SmartQueue/ACDv2, use [the SmartQueue Management API reference](/api-reference/management-api/reference/smartqueue). --- **`delSkill`** `(request: DelSkillRequest) => Promise` Deletes an operator's skill. Works only for ACDv1. For SmartQueue/ACDv2, use [the SmartQueue Management API reference](/api-reference/management-api/reference/smartqueue). --- **`getSkills`** `(request: GetSkillsRequest) => Promise` Gets the skills of an operator. Works only for ACDv1. For SmartQueue/ACDv2, use [the SmartQueue Management API reference](/api-reference/management-api/reference/smartqueue). --- **`setSkillInfo`** `(request: SetSkillInfoRequest) => Promise` Edits an operator's skill. Works only for ACDv1. For SmartQueue/ACDv2, use [the SmartQueue Management API reference](/api-reference/management-api/reference/smartqueue). --- ### SmartQueueAgentSkill **`sqSkillId`** `number` The agent skill ID --- **`sqSkillLevel`** `number` The agent skill level --- **`sqSkillName`** `string` The agent skill name --- ### SmartQueueInterface **`getSmartQueueDayHistory`** `(\n request: GetSmartQueueDayHistoryRequest\n ) => Promise` Gets the metrics for the specified SmartQueue for the last 2 days. Refer to the [SmartQueue reporting guide](/api-reference/management-api/reference/smartqueue) to learn more. --- **`getSmartQueueRealtimeMetrics`** `(\n request: GetSmartQueueRealtimeMetricsRequest\n ) => Promise` Gets the metrics for the specified SmartQueue for the last 30 minutes. Refer to the [SmartQueue reporting guide](/api-reference/management-api/reference/smartqueue) to learn more. --- **`getSQState`** `(request: GetSQStateRequest) => Promise` Gets the current state of the specified SmartQueue. --- **`requestSmartQueueHistory`** `(\n request: RequestSmartQueueHistoryRequest\n ) => Promise` Gets history for the specified SmartQueue. Refer to the [SmartQueue reporting guide](/api-reference/management-api/reference/smartqueue) to learn more. --- **`sQ_AddQueue`** `(request: SQ_AddQueueRequest) => Promise` Adds a new queue. --- **`sQ_AddSkill`** `(request: SQ_AddSkillRequest) => Promise` Adds a new skill to the app. --- **`sQ_BindAgent`** `(request: SQ_BindAgentRequest) => Promise` Binds agents to a queue. --- **`sQ_BindSkill`** `(request: SQ_BindSkillRequest) => Promise` Binds skills to agents. --- **`sQ_DeleteAgentCustomStatusMapping`** `(\n request: SQ_DeleteAgentCustomStatusMappingRequest\n ) => Promise` Removes a mapping from the mapping table. If there is no such mapping, does nothing. --- **`sQ_DelQueue`** `(request: SQ_DelQueueRequest) => Promise` Deletes a queue. --- **`sQ_DelSkill`** `(request: SQ_DelSkillRequest) => Promise` Deletes a skill and detaches it from agents. --- **`sQ_GetAgentCustomStatusMapping`** `(\n request: SQ_GetAgentCustomStatusMappingRequest\n ) => Promise` Returns the mapping list of SQ statuses and custom statuses. SQ statuses are returned whether they have mappings to custom statuses. --- **`sQ_GetAgents`** `(request: SQ_GetAgentsRequest) => Promise` Gets agents. --- **`sQ_GetQueues`** `(request: SQ_GetQueuesRequest) => Promise` Gets the queue(s). --- **`sQ_GetSkills`** `(request: SQ_GetSkillsRequest) => Promise` Gets the skill(s). --- **`sQ_SetAgentCustomStatusMapping`** `(\n request: SQ_SetAgentCustomStatusMappingRequest\n ) => Promise` Adds a status if there is no match for the given internal status and renames it if there is a match. It means that if the passed **sq\_status\_name** parameter is not in the mapping table, a new entry is created in there; if it is, the **name** field in its mapping is replaced with **custom\_status\_name**. --- **`sQ_SetAgentInfo`** `(request: SQ_SetAgentInfoRequest) => Promise` Edits the agent settings. --- **`sQ_SetQueueInfo`** `(request: SQ_SetQueueInfoRequest) => Promise` Edits an existing queue. --- **`sQ_SetSkillInfo`** `(request: SQ_SetSkillInfoRequest) => Promise` Edits an existing skill. --- **`sQ_UnbindAgent`** `(request: SQ_UnbindAgentRequest) => Promise` Unbinds agents from queues. --- **`sQ_UnbindSkill`** `(request: SQ_UnbindSkillRequest) => Promise` Unbinds skills from agents. --- ### SmartQueueMetricsGroups **`sqQueueId`** `number` *optional* The SmartQueue ID --- **`sqQueueName`** `string` *optional* The SmartQueue name --- **`userDisplayName`** `string` *optional* The user display name --- **`userId`** `number` *optional* The user ID --- **`userName`** `string` *optional* The user name --- **`values`** `SmartQueueMetricsGroupsValues[]` The group values --- ### SmartQueueMetricsGroupsValues **`fromDate`** `Date` The start of the period --- **`toDate`** `Date` The end of the period --- **`value`** `number` The report value --- ### SmartQueueMetricsResult **`groups`** `SmartQueueMetricsGroups[]` Grouping by agent or queue --- **`reportType`** `string` The report type(s). Possible values are calls\_blocked\_percentage, count\_blocked\_calls, average\_abandonment\_rate, count\_abandonment\_calls, service\_level, occupancy\_rate, sum\_agents\_online\_time, sum\_agents\_ready\_time, sum\_agents\_dialing\_time, sum\_agents\_in\_service\_time, sum\_agents\_afterservice\_time, sum\_agents\_dnd\_time, sum\_agents\_banned\_time, min\_time\_in\_queue,max\_time\_in\_queue, average\_time\_in\_queue, min\_answer\_speed, max\_answer\_speed, average\_answer\_speed, min\_handle\_time, max\_handle\_time, average\_handle\_time, count\_handled\_calls, min\_after\_call\_worktime, max\_after\_call\_worktime, average\_after\_call\_worktime, sum\_agents\_custom\_1\_time ... sum\_agents\_custom\_10\_time, call\_count\_assigned\_to\_queue, im\_count\_assigned\_to\_queue --- ### SmartQueueState **`sqAgents`** `SmartQueueStateAgent[]` The list of logged-in agents with their skills and statuses --- **`sqQueueId`** `number` The SmartQueue ID --- **`sqQueueName`** `string` The SmartQueue name --- **`tasks`** `SmartQueueStateTask[]` The list of tasks --- ### SmartQueueStateAgent **`sqSkills`** `SmartQueueAgentSkill[]` Agent skills --- **`sqStatuses`** `SmartQueueStateAgentStatus[]` Agent statuses info --- **`userDisplayName`** `string` The display user name --- **`userId`** `number` The user ID --- **`userName`** `string` The user name --- ### SmartQueueStateAgentStatus **`CALL`** `SmartQueueStateAgentStatus_` The CALL status info --- **`IM`** `SmartQueueStateAgentStatus_` The IM status info --- ### SmartQueueStateAgentStatus\_ **`fromDate`** `Date` Time in 24-h format: YYYY-MM-DD HH:mm:ss --- **`sqStatusName`** `string` The status name --- ### SmartQueueStateTask **`customData`** `string` *optional* Custom data text string for the current task. You can set the custom data in the [enqueueTask](/api-reference/voxengine/voxengine#enqueuetask) method --- **`processingTime`** `number` Processing time in ms --- **`sqSkills`** `SmartQueueTaskSkill[]` Task skills --- **`status`** `string` The task status. Possible values are IN\_QUEUE, DISTRIBUTED, IN\_PROCESSING --- **`taskType`** `string` The task type. Possible values are CALL, IM --- **`userId`** `number` *optional* Selected agent --- **`waitingTime`** `number` Waiting time in ms --- ### SmartQueueTaskSkill **`sqSkillLevel`** `number` The skill level --- **`sqSkillName`** `string` The skill name --- ### SmsHistory **`cost`** `number` Cost of the message --- **`destinationNumber`** `number` Number being called to --- **`direction`** `string` Incoming or outgoing message --- **`errorMessage`** `string` *optional* Error message (if any) --- **`fragments`** `number` Number of fragments the initial message is divided into --- **`messageId`** `number` Message ID --- **`processedDate`** `Date` Date of message processing. The format is yyyy-MM-dd HH:mm:ss --- **`sourceNumber`** `number` Number being called from --- **`statusId`** `string` Status of the message. The possible values are: 1 — Success, 2 — Error, 3 — Waiting --- **`text`** `string` *optional* Stored message text --- **`transactionId`** `number` *optional* Id of the transaction for this message --- ### SMSInterface **`a2PGetSmsHistory`** `(request: A2PGetSmsHistoryRequest) => Promise` Gets the history of sent/or received A2P SMS. --- **`a2PSendSms`** `(request: A2PSendSmsRequest) => Promise` Sends an A2P SMS message from the application to customers. A SenderID is required for A2P messages. Please contact support for installing a SenderID. --- **`controlSms`** `(request: ControlSmsRequest) => Promise` Enables or disables sending and receiving SMS for the phone number. Can be used only for phone numbers with SMS support, which is indicated by the **is\_sms\_supported** property in the objects returned by the `GetPhoneNumbers` Management API. Each incoming SMS message is charged according to the [pricing](https://voximplant.com/pricing). If enabled, SMS can be sent from this phone number via the `SendSmsMessage` Management API and received via the `InboundSmsCallback` property of the HTTP callback. See [this article](/platform/management-api/callbacks) for HTTP callback details. --- **`getSmsHistory`** `(request: GetSmsHistoryRequest) => Promise` Gets the history of sent and/or received SMS. --- **`sendSmsMessage`** `(request: SendSmsMessageRequest) => Promise` Sends an SMS message between two phone numbers. The source phone number should be purchased from Voximplant and support SMS (which is indicated by the **is\_sms\_supported** property in the objects returned by the `GetPhoneNumbers` Management API) and SMS should be enabled for it via the `ControlSms` Management API. SMS messages can be received via HTTP callbacks, see [this article](/platform/management-api/callbacks) for details. --- ### SmsTransaction **`destinationNumber`** `string` The SMS destination number --- **`messageId`** `number` Message ID --- ### SQ\_AddQueueRequest **`applicationId`** `number` Application ID to bind to --- **`applicationName`** `string` *optional* Application name to bind to. Can be used instead of **application\_id** --- **`callAgentSelection`** `string` Agent selection strategy for calls. Accepts one of the following values: "MOST\_QUALIFIED", "LEAST\_QUALIFIED", "MAX\_WAITING\_TIME" --- **`callMaxQueueSize`** `number` *optional* Maximum size of the queue with CALL-type requests --- **`callMaxWaitingTime`** `number` *optional* Maximum time in minutes that a CALL-type request can remain in the queue without being assigned to an agent. Specify either this parameter or `call_max_waiting_time_in_seconds`. Specifying both parameters simultaniously leads to an error --- **`callMaxWaitingTimeInSeconds`** `number` *optional* Maximum call waiting time in seconds. Specify either this parameter or `call_max_waiting_time`. Specifying both parameters simultaniously leads to an error --- **`callTaskSelection`** `string` Call type requests prioritizing strategy. Accepts one of the `SQTaskSelectionStrategies` enum values --- **`description`** `string` *optional* Comment, up to 200 characters --- **`fallbackAgentSelection`** `string` *optional* --- **`holdCallsIfInactiveAgents`** `boolean` *optional* Whether to keep the call task in the queue if all agents are in the DND/BANNED/OFFLINE statuses. --- **`holdImIfInactiveAgents`** `boolean` *optional* Whether to add the task to the queue if there are no available agents --- **`imAgentSelection`** `string` *optional* Agent selection strategy for messages. Accepts one of the following values: "MOST\_QUALIFIED", "LEAST\_QUALIFIED", "MAX\_WAITING\_TIME". The default value is **call\_agent\_selection** --- **`imMaxQueueSize`** `number` *optional* Maximum size of the queue with IM-type requests --- **`imMaxWaitingTime`** `number` *optional* Maximum time in minutes that an IM-type request can remain in the queue without being assigned to an agent. Specify either this parameter or `im_max_waiting_time_in_seconds`. Specifying both parameters simultaniously leads to an error --- **`imMaxWaitingTimeInSeconds`** `number` *optional* Maximum chat message waiting time in seconds. Specify either this parameter or `im_max_waiting_time`. Specifying both parameters simultaniously leads to an error --- **`imTaskSelection`** `string` *optional* IM type requests prioritizing strategy. Accepts one of the `SQTaskSelectionStrategies` enum values. The default value is **call\_task\_selection** --- **`priority`** `number` *optional* The queue's priority from 1 to 100 --- **`sqQueueName`** `string` Unique SmartQueue name within the application, up to 100 characters --- ### SQ\_AddQueueResponse **`error`** `APIError` *optional* --- **`result`** `SQAddQueueResult` Result with ID of the added queue --- ### SQ\_AddSkillRequest **`applicationId`** `number` Application ID to bind to --- **`applicationName`** `string` *optional* Application name to bind to. Can be used instead of **application\_id** --- **`description`** `string` *optional* Comment, up to 200 characters --- **`sqSkillName`** `string` Unique skill name within the application --- ### SQ\_AddSkillResponse **`error`** `APIError` *optional* --- **`result`** `SQAddSkillResult` Result with ID of the added skill --- ### SQ\_BindAgentRequest **`applicationId`** `number` Application ID to search by --- **`applicationName`** `string` *optional* Application name to search by. Can be used instead of **application\_id** --- **`bindMode`** `string` *optional* Binding mode. Accepts one of the `SQAgentBindingModes` enum values --- **`sqQueueId`** `string` ID of the SmartQueue. Pass a list of values divided by ; or the "all" keyword --- **`sqQueueName`** `string` *optional* Name of the SmartQueue. Pass a list of names divided by ; or the "all" keyword --- **`userId`** `'any' | number | number[]` List of user IDs separated by semicolons (;). Use 'all' to select all the users --- **`userName`** `string | string[]` *optional* List of user names separated by semicolons (;). Can be used instead of **user\_id** --- ### SQ\_BindAgentResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SQ\_BindSkillRequest **`applicationId`** `number` Application ID to search by --- **`applicationName`** `string` *optional* Application name to search by. Can be used instead of **application\_id** --- **`bindMode`** `string` *optional* Binding mode. Accepts one of the `SQSkillBindingModes` enum values --- **`sqSkills`** `string` Skills to be bound to agents in the JSON array format. The array should contain objects with the **sq\_skill\_id**/**sq\_skill\_name** and **sq\_skill\_level** keys where skill levels range from 1 to 5 --- **`userId`** `'any' | number | number[]` List of user IDs separated by semicolons (;). Use 'all' to select all the users --- **`userName`** `string | string[]` *optional* List of user names separated by semicolons (;). Can be used instead of **user\_id** --- ### SQ\_BindSkillResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SQ\_DeleteAgentCustomStatusMappingRequest **`applicationId`** `number` Application ID --- **`sqStatusName`** `string` *optional* Status name --- ### SQ\_DeleteAgentCustomStatusMappingResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SQ\_DelQueueRequest **`applicationId`** `number` Application ID to search by --- **`applicationName`** `string` *optional* Application name to search by. Can be used instead of **application\_id** --- **`sqQueueId`** `'any' | number | number[]` List of SmartQueue IDs separated by semicolons (;). Use 'all' to delete all the queues --- **`sqQueueName`** `string | string[]` *optional* List of SmartQueue names separated by semicolons (;). Can be used instead of **sq\_queue\_id** --- ### SQ\_DelQueueResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SQ\_DelSkillRequest **`applicationId`** `number` Application ID to search by --- **`applicationName`** `string` *optional* Application name to search by. Can be used instead of **application\_id** --- **`sqSkillId`** `'any' | number | number[]` List of skill IDs separated by semicolons (;). Use 'all' to delete all the skills --- **`sqSkillName`** `string | string[]` *optional* List of skill names separated by semicolons (;). Can be used instead of **sq\_skill\_id** --- ### SQ\_DelSkillResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SQ\_GetAgentCustomStatusMappingRequest **`applicationId`** `number` *optional* Application ID --- ### SQ\_GetAgentCustomStatusMappingResponse **`customStatusName`** `string` Custom status name --- **`error`** `APIError` *optional* --- **`sqStatusName`** `string` Status name --- ### SQ\_GetAgentsRequest **`applicationId`** `number` Application ID to search by --- **`applicationName`** `string` *optional* Application name to search by. Can be used instead of **application\_id** --- **`count`** `number` *optional* Number of items to show in the output --- **`excludedSqQueueId`** `number` *optional* ID of the SmartQueue to exclude --- **`excludedSqQueueName`** `string` *optional* Name of the SmartQueue to exclude. Can be used instead of **excluded\_sq\_queue\_id** --- **`handleCalls`** `boolean` Whether the agent can handle calls. When set to false, the agent is excluded from the CALL-request distribution --- **`offset`** `number` *optional* Number of items to skip in the output --- **`sqQueueId`** `'any' | number | number[]` *optional* List of SmartQueue IDs separated by semicolons (;). Use 'all' to select all the queues --- **`sqQueueName`** `string | string[]` *optional* List of SmartQueue names separated by semicolons (;). Can be used instead of **sq\_queue\_id** --- **`sqSkills`** `string` *optional* Skills to filter in the JSON array format. The array should contain objects with the **sq\_skill\_id**/**sq\_skill\_name**, **min\_sq\_skill\_level**, and **max\_sq\_skill\_level** keys where skill levels range from 1 to 5 --- **`sqStatuses`** `string` *optional* Filter statuses in the JSON array format. The array should contain objects with the **sq\_status\_type** and **sq\_status\_name** keys. Possible values for **sq\_status\_type** are 'CALL' and 'IM'. Possible values for **sq\_status\_name** are 'OFFLINE', 'ONLINE', 'READY', 'IN\_SERVICE', 'AFTER\_SERVICE', 'DND' --- **`userId`** `'any' | number | number[]` *optional* List of user IDs separated by semicolons (;) --- **`userName`** `string | string[]` *optional* List of user names separated by semicolons (;). Can be used instead of **user\_id** --- **`userNameTemplate`** `string` *optional* Substring of the user name to filter --- **`withSqQueues`** `boolean` *optional* Whether to display agent queues --- **`withSqSkills`** `boolean` *optional* Whether to display agent skills --- **`withSqStatuses`** `boolean` *optional* Whether to display agent current statuses --- ### SQ\_GetAgentsResponse **`error`** `APIError` *optional* --- **`result`** `GetSQAgentsResult` The found agent(s) --- ### SQ\_GetQueuesRequest **`applicationId`** `number` Application ID to search by --- **`applicationName`** `string` *optional* Application name to search by. Can be used instead of **application\_id** --- **`count`** `number` *optional* Number of items to show in the output --- **`excludedUserId`** `number` *optional* ID of the user that is not bound to the queue --- **`excludedUserName`** `string` *optional* Name of the user that is not bound to the queue. Can be used instead of **excluded\_user\_id** --- **`offset`** `number` *optional* Number of items to skip in the output --- **`sqQueueId`** `'any' | number | number[]` *optional* List of SmartQueue IDs separated by semicolons (;) --- **`sqQueueName`** `string | string[]` *optional* List of SmartQueue names separated by semicolons (;). Can be used instead of **sq\_queue\_id** --- **`sqQueueNameTemplate`** `string` *optional* Substring of the SmartQueue name to filter --- **`userId`** `number` *optional* ID of the user that is bound to the queue --- **`userName`** `string` *optional* Name of the user that is bound to the queue. Can be used instead of **user\_id** --- **`withAgentcount`** `boolean` *optional* Whether to include the number of agents bound to the queue --- ### SQ\_GetQueuesResponse **`error`** `APIError` *optional* --- **`result`** `GetSQQueuesResult` The found queue(s) --- ### SQ\_GetSkillsRequest **`applicationId`** `number` Application ID to search by --- **`applicationName`** `string` *optional* Application name to search by. Can be used instead of **application\_id** --- **`count`** `number` *optional* Number of items to show in the output --- **`excludedUserId`** `number` *optional* ID of the user that is not bound to the skill --- **`excludedUserName`** `string` *optional* Name of the user that is not bound to the skill. Can be used instead of **excluded\_user\_id** --- **`offset`** `number` *optional* Number of items to skip in the output --- **`sqSkillId`** `'any' | number | number[]` *optional* List of skill IDs separated by semicolons (;) --- **`sqSkillName`** `string | string[]` *optional* List of skill names separated by semicolons (;). Can be used instead of **sq\_skill\_id** --- **`sqSkillNameTemplate`** `string` *optional* Substring of the skill name to filter, case-insensitive --- **`userId`** `'any' | number | number[]` *optional* List of user IDs separated by semicolons (;) --- **`userName`** `string | string[]` *optional* List of user names separated by semicolons (;). Can be used instead of **user\_id** --- ### SQ\_GetSkillsResponse **`error`** `APIError` *optional* --- **`result`** `GetSQSkillsResult` The found skill(s). --- ### SQ\_SetAgentCustomStatusMappingRequest **`applicationId`** `number` Application ID --- **`customStatusName`** `string` Custom status name --- **`sqStatusName`** `string` Status name --- ### SQ\_SetAgentCustomStatusMappingResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SQ\_SetAgentInfoRequest **`applicationId`** `number` Application ID to search by --- **`applicationName`** `string` *optional* Application name to search by. Can be used instead of **application\_id** --- **`handleCalls`** `boolean` Whether the agent can handle calls. When set to false, the agent is excluded from the CALL-request distribution --- **`maxSimultaneousConversations`** `number` *optional* Maximum number of chats that the user processes simultaneously --- **`userId`** `'any' | number | number[]` List of user IDs separated by semicolons (;). Use 'all' to select all the users --- **`userName`** `string | string[]` *optional* List of user names separated by semicolons (;). Can be used instead of **user\_id** --- ### SQ\_SetAgentInfoResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SQ\_SetQueueInfoRequest **`applicationId`** `number` Application ID to search by --- **`applicationName`** `string` *optional* Application name to search by. Can be used instead of **application\_id** --- **`callAgentSelection`** `string` *optional* Agent selection strategy for calls. Accepts one of the following values: "MOST\_QUALIFIED", "LEAST\_QUALIFIED", "MAX\_WAITING\_TIME" --- **`callMaxQueueSize`** `number` *optional* Maximum size of the queue with CALL-type requests --- **`callMaxWaitingTime`** `number` *optional* Maximum time in minutes that a CALL-type request can remain in the queue without being assigned to an agent. Specify either this parameter or `call_max_waiting_time_in_seconds`. Specifying both parameters simultaniously leads to an error --- **`callMaxWaitingTimeInSeconds`** `number` *optional* Maximum call waiting time in seconds. Specify either this parameter or `call_max_waiting_time`. Specifying both parameters simultaniously leads to an error --- **`callTaskSelection`** `string` *optional* Strategy of prioritizing CALL-type requests for service. Accepts one of the following values: "MAX\_PRIORITY", "MAX\_WAITING\_TIME" --- **`description`** `string` *optional* Comment, up to 200 characters --- **`fallbackAgentSelection`** `string` *optional* --- **`holdCallsIfInactiveAgents`** `boolean` *optional* Whether to keep the call task in the queue if all agents are in the DND/BANNED statuses. --- **`holdImIfInactiveAgents`** `boolean` *optional* Whether to add the task to the queue if there are no available agents --- **`imAgentSelection`** `string` *optional* Agent selection strategy for messages. Accepts one of the following values: "MOST\_QUALIFIED", "LEAST\_QUALIFIED", "MAX\_WAITING\_TIME". The default value is **call\_agent\_selection** --- **`imMaxQueueSize`** `number` *optional* Maximum size of the queue with IM-type requests --- **`imMaxWaitingTime`** `number` *optional* Maximum time in minutes that an IM-type request can remain in the queue without being assigned to an agent. Specify either this parameter or `im_max_waiting_time_in_seconds`. Specifying both parameters simultaniously leads to an error --- **`imMaxWaitingTimeInSeconds`** `number` *optional* Maximum chat message waiting time in seconds. Specify either this parameter or `im_max_waiting_time`. Specifying both parameters simultaniously leads to an error --- **`imTaskSelection`** `string` *optional* Strategy of prioritizing IM-type requests for service. Accepts one of the following values: "MAX\_PRIORITY", "MAX\_WAITING\_TIME". The default value is **call\_task\_selection** --- **`newSqQueueName`** `string` *optional* New SmartQueue name within the application, up to 100 characters --- **`priority`** `number` *optional* The queue's priority from 1 to 100 --- **`sqQueueId`** `number` ID of the SmartQueue to search for --- **`sqQueueName`** `string` *optional* Name of the SmartQueue to search for. Can be used instead of **sq\_queue\_id** --- ### SQ\_SetQueueInfoResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SQ\_SetSkillInfoRequest **`applicationId`** `number` Application ID to search by --- **`applicationName`** `string` *optional* Application name to search by. Can be used instead of **application\_id** --- **`description`** `string` *optional* Comment, up to 200 characters --- **`newSqSkillName`** `string` *optional* New unique skill name within the application --- **`sqSkillId`** `number` ID of the skill --- **`sqSkillName`** `string` *optional* Name of the skill. Can be used instead of **sq\_skill\_id** --- ### SQ\_SetSkillInfoResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SQ\_UnbindAgentRequest **`applicationId`** `number` Application ID to search by --- **`applicationName`** `string` *optional* Application name to search by. Can be used instead of **application\_id** --- **`sqQueueId`** `'any' | number | number[]` List of SmartQueue IDs separated by semicolons (;). Use 'all' to select all the queues --- **`sqQueueName`** `string | string[]` *optional* List of SmartQueue names separated by semicolons (;). Can be used instead of **sq\_queue\_id** --- **`userId`** `'any' | number | number[]` List of user IDs separated by semicolons (;). Use 'all' to select all the users --- **`userName`** `string | string[]` *optional* List of user names separated by semicolons (;). Can be used instead of **user\_id** --- ### SQ\_UnbindAgentResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SQ\_UnbindSkillRequest **`applicationId`** `number` Application ID to search by --- **`applicationName`** `string` *optional* Application name to search by. Can be used instead of **application\_id** --- **`sqSkillId`** `'any' | number | number[]` List of skill IDs separated by semicolons (;). Use 'all' to unbind all the skills --- **`sqSkillName`** `string | string[]` *optional* List of skill names separated by semicolons (;). Can be used instead of **sq\_skill\_id** --- **`userId`** `'any' | number | number[]` List of user IDs separated by semicolons (;). Use 'all' to select all the users --- **`userName`** `string | string[]` *optional* List of user names separated by semicolons (;). Can be used instead of **user\_id** --- ### SQ\_UnbindSkillResponse **`error`** `APIError` *optional* --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### SQAddQueueResult **`sqQueueId`** `number` ID of the added queue --- ### SQAddSkillResult **`sqSkillId`** `number` ID of the added skill --- ### StartConferenceRequest **`applicationId`** `number` *optional* The application ID --- **`applicationName`** `string` *optional* The application name that can be used instead of **application\_id** --- **`conferenceName`** `string` The conference name. The name length should be less than 50 symbols --- **`referenceIp`** `string` *optional* Specifies the IP from the geolocation of predicted subscribers. It allows selecting the nearest server for serving subscribers --- **`ruleId`** `number` The rule ID that needs to be launched. Please note, the necessary scenario needs to be attached to the rule --- **`scriptCustomData`** `string` *optional* The script custom data, that can be accessed in the scenario via the [VoxEngine.customData()](/api-reference/voxengine/voxengine#customdata) method. Use the application/x-www-form-urlencoded content type with UTF-8 encoding. --- **`serverLocation`** `string` *optional* Specifies the location of the server where the scenario needs to be executed. Has higher priority than `reference_ip`. Request [getServerLocations](https://api.voximplant.com/getServerLocations) for possible values --- **`userId`** `number` *optional* The user ID. Run the scripts from the user if set --- **`userName`** `string` *optional* The user name that can be used instead of **user\_id**. Run the scripts from the user if set --- ### StartConferenceResponse **`callSessionHistoryId`** `number` The call session history ID. To search a call session result, paste the ID to the [GetCallHistory](/api-reference/management-api/reference/history/get-call-history) method's **call\_session\_history\_id** parameter --- **`error`** `APIError` *optional* --- **`mediaSessionAccessSecureUrl`** `string` The URL to control a created media session. It can be used for arbitrary tasks such as stopping scenario or passing additional data to it. Making HTTPS request on this URL results in the [AppEvents.HttpRequest](/api-reference/voxengine/app-events#httprequest) VoxEngine event being triggered for a scenario, with an HTTP request data passed to it --- **`mediaSessionAccessUrl`** `string` The URL to control a created media session. It can be used for arbitrary tasks such as stopping scenario or passing additional data to it. Making HTTP request on this URL results in the [AppEvents.HttpRequest](/api-reference/voxengine/app-events#httprequest) VoxEngine event being triggered for a scenario, with an HTTP request data passed to it --- **`result`** `number` Returns 1 if the request has been completed successfully --- ### TransactionInfo **`accountId`** `string` The account ID --- **`amount`** `number` The transaction amount, \$ --- **`currency`** `string` The amount currency (USD, RUR, EUR...). --- **`performedAt`** `Date` The transaction date in the selected timezone in 24-h format: YYYY-MM-DD HH:mm:ss --- **`transactionDescription`** `string` *optional* The transaction description --- **`transactionId`** `number` The transaction ID --- **`transactionType`** `string` The transaction type. The following values are possible: gift\_revoke, resource\_charge, money\_distribution, subscription\_charge, subscription\_installation\_charge, card\_periodic\_payment, card\_overrun\_payment, card\_payment, rub\_card\_periodic\_payment, rub\_card\_overrun\_payment, rub\_card\_payment, robokassa\_payment, gift, promo, adjustment, wire\_transfer, us\_wire\_transfer, refund, discount, mgp\_charge, mgp\_startup, mgp\_business, mgp\_big\_business, mgp\_enterprise, mgp\_large\_enterprise, techsupport\_charge, tax\_charge, monthly\_fee\_charge, grace\_credit\_payment, grace\_credit\_provision, mau\_charge, mau\_overrun, im\_charge, im\_overrun, fmc\_charge, sip\_registration\_charge, development\_fee, money\_transfer\_to\_child, money\_transfer\_to\_parent, money\_acceptance\_from\_child, money\_acceptance\_from\_parent, phone\_number\_installation, phone\_number\_charge, toll\_free\_phone\_number\_installation, toll\_free\_phone\_number\_charge, services, user\_money\_transfer, paypal\_payment, paypal\_overrun\_payment, paypal\_periodic\_payment --- ### UserInfo **`acdQueues`** `ACDQueueOperatorInfo[]` *optional* The bound ACD queues --- **`acdStatus`** `string` *optional* The ACD operator status. The following values are possible: OFFLINE, ONLINE, READY, BANNED, IN\_SERVICE, AFTER\_SERVICE, TIMEOUT, DND --- **`acdStatusChangeTime`** `Date` The ACD status changing UTC date in 24-h format: YYYY-MM-DD HH:mm:ss --- **`applications`** `ApplicationInfo[]` *optional* The bound applications --- **`balance`** `number` The current user's money in the currency specified for the account. The value is the number rounded to 4 decimal places. The parameter is the alias to live\_balance by default. But there is a possibility to make the alias to fixed\_balance: just to pass return\_live\_balance=false into the `GetAccountInfo` method --- **`created`** `Date` The user editing UTC date in 24-h format: YYYY-MM-DD HH:mm:ss --- **`fixedBalance`** `number` The last committed balance which has been approved by billing's transaction --- **`liveBalance`** `number` The current user's money in the currency specified for the account. The value is the number rounded to 4 decimal places, and it changes during the calls, transcribing, purchases etc --- **`modified`** `Date` The user editing UTC date in 24-h format: YYYY-MM-DD HH:mm:ss --- **`parentAccounting`** `boolean` Whether the user uses the parent account's money, 'false' if the user has a separate balance --- **`skills`** `SkillInfo[]` *optional* The bound skills --- **`userActive`** `boolean` Whether the user is active. Inactive users cannot log in to applications --- **`userCustomData`** `string` *optional* The custom data --- **`userDisplayName`** `string` The display user name --- **`userId`** `number` The user ID --- **`userName`** `string` The user name --- ### UsersInterface **`addUser`** `(request: AddUserRequest) => Promise` Adds a new user. --- **`delUser`** `(request: DelUserRequest) => Promise` Deletes the specified user(s). --- **`getUsers`** `(request: GetUsersRequest) => Promise` Shows the users of the specified account. --- **`setUserInfo`** `(request: SetUserInfoRequest) => Promise` Edits the user. --- ### VerifyOutboundTestPhoneNumberRequest ### VerifyOutboundTestPhoneNumberResponse **`dailyAttemptsLeft`** `number` The number of attempts left for the day. The number is reset every day at 00:00 UTC --- **`error`** `APIError` *optional* --- ### WABPhoneInfo **`applicationId`** `number` *optional* ID of the bound application --- **`applicationName`** `string` *optional* Name of the bound application --- **`countryCode`** `string` The WhatsApp Business country code (2 symbols) --- **`created`** `Date` UTC date in 24-h format: YYYY-MM-DD HH:mm:ss --- **`description`** `string` *optional* WhatsApp Business phone number description --- **`extendedApplicationName`** `string` *optional* Full application name, e.g. myapp.myaccount.n1.voximplant.com --- **`modified`** `Date` UTC date of an event associated with the number in 24-h format: YYYY-MM-DD HH:mm:ss --- **`ruleId`** `number` *optional* ID of the bound rule --- **`ruleName`** `string` *optional* Name of the bound rule --- **`wabPhoneNumber`** `string` WhatsApp Business phone number --- ### WABPhoneNumbersInterface **`getWABPhoneNumbers`** `(request: GetWABPhoneNumbersRequest) => Promise` Gets the account's WhatsApp Business phone numbers. ---