Skip to content

Instantly share code, notes, and snippets.

@tylerlong
Last active May 13, 2016 11:31
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tylerlong/c19bc951c99b8994bfa2b540443249d3 to your computer and use it in GitHub Desktop.
Save tylerlong/c19bc951c99b8994bfa2b540443249d3 to your computer and use it in GitHub Desktop.
RingCentral Swagger Specification
{
"swagger": "2.0",
"info": {
"version": "v1.0",
"title": "RingCentral API",
"description": "RingCentral Connect Platform API",
"termsOfService": "http://www.ringcentral.com/legal/eulatos.html"
},
"host": "platform.devtest.ringcentral.com",
"basePath": "/restapi",
"schemes": [
"https"
],
"produces": [
"application/json"
],
"consumes": [
"application/json"
],
"parameters": {
"accountId": {
"name": "accountId",
"in": "path",
"required": true,
"type": "string",
"description": "Internal identifier of a RingCentral account or tilde (~) to indicate the account logged-in within the current session"
},
"answeringRuleId": {
"name": "answeringRuleId",
"in": "path",
"required": true,
"type": "string",
"description": "Internal identifier of an answering rule. The value can be standard digital ID or specific ID - either business-hours-rule or after-hours-rule"
},
"attachmentId": {
"name": "attachmentId",
"in": "path",
"required": true,
"type": "integer",
"description": "Internal identifier of a message attachment"
},
"blockedNumberId": {
"name": "blockedNumberId",
"in": "path",
"required": true,
"type": "integer",
"description": "Internal identifiers of a blocked number list entry"
},
"callLogId": {
"name": "callLogId",
"in": "path",
"required": true,
"type": "integer",
"description": "Internal identifier of a call log record"
},
"contactId": {
"name": "contactId",
"in": "path",
"required": true,
"type": "integer",
"description": "Internal identifier of a contact record in the RingCentral database"
},
"countryId": {
"name": "countryId",
"in": "path",
"required": true,
"type": "integer",
"description": "Internal identifier of a country"
},
"customDataKey": {
"name": "customDataKey",
"in": "path",
"required": true,
"type": "string",
"description": "Custom data access key. The number of unique custom data keys is limited to 100 keys per extension, summarized for all the applications. For example, if you have created 50 custom data keys under the Android mobile client application for the particular extension, then logged in the iOS application and created another 50 keys, the web client application won't be allowed to create any custom data key for that extension"
},
"departmentId": {
"name": "departmentId",
"in": "path",
"required": true,
"type": "integer",
"description": "Internal identifier of a Department extension (same as extensionId but only the ID of a department extension is valid)"
},
"deviceId": {
"name": "deviceId",
"in": "path",
"required": true,
"type": "integer",
"description": "Internal identifier of a device"
},
"extensionId": {
"name": "extensionId",
"in": "path",
"required": true,
"type": "string",
"description": "Internal identifier of an extension or tilde (~) to indicate the extension assigned to the account logged-in within the current session"
},
"languageId": {
"name": "languageId",
"in": "path",
"required": true,
"type": "integer",
"description": "Internal identifier of a language"
},
"messageId": {
"name": "messageId",
"in": "path",
"required": true,
"type": "integer",
"description": "Internal identifier of a message"
},
"orderId": {
"name": "orderId",
"in": "path",
"required": true,
"type": "integer",
"description": "Internal identifier of an order"
},
"phoneNumberId": {
"name": "phoneNumberId",
"in": "path",
"required": true,
"type": "integer",
"description": "Internal identifier of a phone number"
},
"recordingId": {
"name": "recordingId",
"in": "path",
"required": true,
"type": "integer",
"description": "Internal identifier of recording (returned in Call Log)"
},
"ringoutId": {
"name": "ringoutId",
"in": "path",
"required": true,
"type": "integer",
"description": "Internal identifier of a RingOut call"
},
"scaleSize": {
"name": "scaleSize",
"in": "path",
"required": true,
"type": "string",
"description": "Dimensions of a profile image which will be returned in response.",
"enum": [
"90x90",
"195x195",
"584x584"
]
},
"stateId": {
"name": "stateId",
"in": "path",
"required": true,
"type": "integer",
"description": "Internal identifier of a state"
},
"subscriptionId": {
"name": "subscriptionId",
"in": "path",
"required": true,
"type": "string",
"description": "Internal identifier of a subscription"
},
"timezoneId": {
"name": "timezoneId",
"in": "path",
"required": true,
"type": "integer",
"description": "Internal identifier of a timezone"
}
},
"definitions": {
"AccountInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of an account"
},
"uri": {
"type": "string",
"description": "Canonical URI of an account"
},
"mainNumber": {
"type": "string",
"description": "Main phone number of the current account"
},
"operator": {
"$ref": "#/definitions/ExtensionInfo"
},
"partnerId": {
"type": "string",
"description": "Additional account identifier, developed and applied by the client"
},
"serviceInfo": {
"$ref": "#/definitions/ServiceInfo"
},
"setupWizardState": {
"type": "string",
"description": "Specifies account configuration wizard state (web service setup). The default value is 'NotStarted'",
"enum": [
"NotStarted",
"Incomplete",
"Completed"
]
},
"status": {
"type": "string",
"description": "Status of the current account",
"enum": [
"Confirmed",
"Disabled"
]
},
"statusInfo": {
"$ref": "#/definitions/StatusInfo"
}
}
},
"AccountLimits": {
"type": "object",
"properties": {
"freeSoftPhoneLinesPerExtension": {
"type": "integer",
"description": "The maximum number of free softphone digital lines per user extension"
},
"meetingSize": {
"type": "integer",
"description": "The maximum number of participants in RingCentral Meeting hosted by this account's user"
},
"maxMonitoredExtensionsPerUser": {
"type": "integer",
"description": "The maximum number of extensions which can be included in the list of users monitored for Presence"
}
}
},
"AddonInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Addon identifier. For HardPhones of certain types, which are compatible with this addon identifier"
},
"count": {
"type": "integer",
"description": "Number of addons. For HardPhones of certain types, which are compatible with such addon identifier"
}
}
},
"AnsweringRuleInfo": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Canonical URI to the answering rule resource"
},
"id": {
"type": "string",
"description": "Internal identifier of an asnwering rule"
},
"type": {
"type": "string",
"description": "Type of an answering rule",
"enum": [
"BusinessHours",
"AfterHours",
"Custom"
]
},
"name": {
"type": "string",
"description": "Name of an answering rule specified by user"
},
"enabled": {
"type": "boolean",
"description": "Specifies if an answering rule is active or inactive"
},
"schedule": {
"$ref": "#/definitions/ScheduleInfo"
},
"calledNumbers": {
"type": "array",
"description": "Answering rules are applied when calling to selected number(s)",
"items": {
"$ref": "#/definitions/AnsweringRuleInfo.CalleeInfo"
}
},
"callers": {
"type": "array",
"description": "Answering rules are applied when calls are received from specified caller(s)",
"items": {
"$ref": "#/definitions/AnsweringRuleInfo.CallerInfo"
}
},
"callHandlingAction": {
"type": "string",
"description": "Specifies how incoming calls are forwarded",
"enum": [
"ForwardCalls",
"TakeMessagesOnly",
"PlayAnnouncementOnly",
"UnconditionalForwarding"
]
},
"forwarding": {
"$ref": "#/definitions/ForwardingInfo"
},
"unconditionalForwarding": {
"$ref": "#/definitions/UnconditionalForwardingInfo"
},
"voicemail": {
"$ref": "#/definitions/VoicemailInfo"
}
}
},
"AnsweringRuleInfo.CalleeInfo": {
"type": "object",
"properties": {
"phoneNumber": {
"type": "string",
"description": "Called phone number"
}
}
},
"AnsweringRuleInfo.CallerInfo": {
"type": "object",
"properties": {
"callerId": {
"type": "string",
"description": "Phone number of a caller"
},
"name": {
"type": "string",
"description": "Contact name of a caller"
}
}
},
"AttachmentInfo": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Link to custom data attachment"
},
"contentType": {
"type": "string",
"description": "Type of custom data attachment, see also MIME Types"
}
}
},
"BillingPlanInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a billing plan"
},
"name": {
"type": "string",
"description": "Billing plan name"
},
"durationUnit": {
"type": "string",
"description": "Duration period",
"enum": [
"Month",
"Day"
]
},
"duration": {
"type": "string",
"description": "Number of duration units"
},
"type": {
"type": "string",
"description": "Billing plan type",
"enum": [
"Initial",
"Regular",
"Suspended",
"Trial",
"TrialNoCC",
"Free"
]
}
}
},
"BlockedNumberInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Standard resource properties ID and canonical URI, see the section called “Resource Identification Properties”"
},
"uri": {
"type": "string",
"description": "Canonical URI of a blocked number resource"
},
"name": {
"type": "string",
"description": "Name assigned by a user to a blocked phone number"
},
"phoneNumber": {
"type": "string",
"description": "Phone number to be blocked"
}
}
},
"BrandInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a brand"
},
"name": {
"type": "string",
"description": "Brand name, for example \"RingCentral UK\", \"ClearFax\""
},
"homeCountry": {
"$ref": "#/definitions/CountryInfo"
}
}
},
"BusinessAddressInfo": {
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Name of a country"
},
"state": {
"type": "string",
"description": "Name of a state/province"
},
"city": {
"type": "string",
"description": "Name of a city"
},
"street": {
"type": "string",
"description": "Street address"
},
"zip": {
"type": "string",
"description": "Zip code"
}
}
},
"BusinessHour.ScheduleInfo": {
"type": "object",
"properties": {
"weeklyRanges": {
"$ref": "#/definitions/WeeklyScheduleInfo"
}
}
},
"CallLogInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a cal log record"
},
"uri": {
"type": "string",
"description": "Canonical URI of a call log record"
},
"sessionId": {
"type": "string",
"description": "Internal identifier of a call session"
},
"from": {
"$ref": "#/definitions/CallerInfo"
},
"to": {
"$ref": "#/definitions/CallerInfo"
},
"type": {
"type": "string",
"description": "Call type",
"enum": [
"Voice",
"Fax"
]
},
"direction": {
"type": "string",
"description": "Call direction",
"enum": [
"Inbound",
"Outbound"
]
},
"action": {
"type": "string",
"description": "Action description of the call operation",
"enum": [
"Unknown",
"Phone Call",
"Phone Login",
"Incoming Fax",
"Accept Call",
"FindMe",
"FollowMe",
"Outgoing Fax",
"Call Return",
"Calling Card",
"Ring Directly",
"RingOut Web",
"VoIP Call",
"RingOut PC",
"RingMe",
"Transfer",
"411 Info",
"Emergency",
"E911 Update",
"Support",
"RingOut Mobile"
]
},
"result": {
"type": "string",
"description": "Status description of the call operation",
"enum": [
"Unknown",
"ResultInProgress",
"Missed",
"Call accepted",
"Voicemail",
"Rejected",
"Reply",
"Received",
"Receive Error",
"Fax on Demand",
"Partial Receive",
"Blocked",
"Call connected",
"No Answer",
"International Disabled",
"Busy",
"Send Error",
"Sent",
"No fax machine",
"ResultEmpty",
"Account",
"Suspended",
"Call Failed",
"Call Failure",
"Internal Error",
"IP Phone offline",
"Restricted Number",
"Wrong Number",
"Stopped",
"Hang up",
"Poor Line Quality",
"Partially Sent",
"International Restriction",
"Abandoned",
"Declined",
"Fax Receipt Error",
"Fax Send Error"
]
},
"startTime": {
"type": "string",
"description": "The call start datetime in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z",
"format": "date-time"
},
"duration": {
"type": "integer",
"description": "Call duration in seconds"
},
"recording": {
"$ref": "#/definitions/RecordingInfo"
}
}
},
"CallLogRecord": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a cal log record"
},
"uri": {
"type": "string",
"description": "Canonical URI of a call log record"
},
"sessionId": {
"type": "string",
"description": "Internal identifier of a call session"
},
"from": {
"$ref": "#/definitions/CallerInfo"
},
"to": {
"$ref": "#/definitions/CallerInfo"
},
"type": {
"type": "string",
"description": "Call type",
"enum": [
"Voice",
"Fax"
]
},
"direction": {
"type": "string",
"description": "Call direction",
"enum": [
"Inbound",
"Outbound"
]
},
"action": {
"type": "string",
"description": "Action description of the call operation",
"enum": [
"Unknown",
"Phone Call",
"Phone Login",
"Incoming Fax",
"Accept Call",
"FindMe",
"FollowMe",
"Outgoing Fax",
"Call Return",
"Calling Card",
"Ring Directly",
"RingOut Web",
"VoIP Call",
"RingOut PC",
"RingMe",
"Transfer",
"411 Info",
"Emergency",
"E911 Update",
"Support",
"RingOut Mobile"
]
},
"result": {
"type": "string",
"description": "Status description of the call operation",
"enum": [
"Unknown",
"ResultInProgress",
"Missed",
"Call accepted",
"Voicemail",
"Rejected",
"Reply",
"Received",
"Receive Error",
"Fax on Demand",
"Partial Receive",
"Blocked",
"Call connected",
"No Answer",
"International Disabled",
"Busy",
"Send Error",
"Sent",
"No fax machine",
"ResultEmpty",
"Account",
"Suspended",
"Call Failed",
"Call Failure",
"Internal Error",
"IP Phone offline",
"Restricted Number",
"Wrong Number",
"Stopped",
"Hang up",
"Poor Line Quality",
"Partially Sent",
"International Restriction",
"Abandoned",
"Declined",
"Fax Receipt Error",
"Fax Send Error"
]
},
"startTime": {
"type": "string",
"description": "The call start datetime in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z",
"format": "date-time"
},
"duration": {
"type": "integer",
"description": "Call duration in seconds"
},
"recording": {
"$ref": "#/definitions/RecordingInfo"
},
"lastModifiedTime": {
"type": "string",
"description": "For 'Detailed' view only. The datetime when the call log record was modified in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z",
"format": "date-time"
},
"transport": {
"type": "string",
"description": "For 'Detailed' view only. Call transport",
"enum": [
"PSTN",
"VoIP"
]
},
"legs": {
"type": "array",
"description": "For 'Detailed' view only. Leg description",
"items": {
"$ref": "#/definitions/LegInfo"
}
}
}
},
"CallerInfo": {
"type": "object",
"properties": {
"phoneNumber": {
"type": "string",
"description": "Phone number of a party. Usually it is a plain number including country and area code like 18661234567. But sometimes it could be returned from database with some formatting applied, for example (866)123-4567. This property is filled in all cases where parties communicate by means of global phone numbers, for example when calling to direct numbers or sending/receiving SMS"
},
"extensionNumber": {
"type": "string",
"description": "Extension short number (usually 3 or 4 digits). This property is filled when parties communicate by means of short internal numbers, for example when calling to other extension or sending/receiving Company Pager message"
},
"location": {
"type": "string",
"description": "Contains party location (city, state) if one can be determined from phoneNumber. This property is filled only when phoneNumber is not empty and server can calculate location information from it (for example, this information is unavailable for US toll-free numbers)"
},
"name": {
"type": "string",
"description": "Symbolic name associated with a party. If the phone does not belong to the known extension, only the location is returned, the name is not determined then"
}
}
},
"Conferencing.Request.PhoneNumber": {
"type": "object",
"properties": {
"phoneNumber": {
"type": "string",
"description": "Dial-in phone number to connect to a conference"
},
"default": {
"type": "boolean",
"description": "'True' if the number is default for the conference. Default conference number is a domestic number that can be set by user (otherwise it is set by the system). Only one default number per country is allowed"
}
}
},
"ConferencingInfo": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Canonical URI of a conferencing"
},
"allowJoinBeforeHost": {
"type": "boolean",
"description": "Determines if host user allows conference participants to join before the host"
},
"hostCode": {
"type": "string",
"description": "Access code for a host user"
},
"mode": {
"type": "string",
"description": "Internal parameter specifying conferencing engine"
},
"participantCode": {
"type": "string",
"description": "Access code for any participant"
},
"phoneNumber": {
"type": "string",
"description": "Primary conference phone number for user's home country returned in E.164 (11-digits) format"
},
"tapToJoinUri": {
"type": "string",
"description": "Short URL leading to the service web page Tap to Join for audio conference bridge"
},
"phoneNumbers": {
"type": "array",
"description": "List of multiple dial-in phone numbers to connect to audio conference service, relevant for user's brand. Each number is given with the country and location information, in order to let the user choose the less expensive way to connect to a conference. The first number in the list is the primary conference number, that is default and domestic",
"items": {
"$ref": "#/definitions/ConferencingInfo.PhoneNumberInfo"
}
}
}
},
"ConferencingInfo.PhoneNumberInfo": {
"type": "object",
"properties": {
"country": {
"$ref": "#/definitions/ConferencingInfo.PhoneNumberInfo.CountryInfo"
},
"default": {
"type": "boolean",
"description": "'True' if the number is default for the conference. Default conference number is a domestic number that can be set by user (otherwise it is set by the system). Only one default number per country is allowed"
},
"hasGreeting": {
"type": "boolean",
"description": "'True' if the greeting message is played on this number"
},
"location": {
"type": "string",
"description": "Location (city, region, state) of a conference phone number"
},
"phoneNumber": {
"type": "string",
"description": "Dial-in phone number to connect to a conference"
}
}
},
"ConferencingInfo.PhoneNumberInfo.CountryInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a country"
},
"uri": {
"type": "string",
"description": "Canonical URI of a country"
},
"callingCode": {
"type": "string",
"description": "Country calling code defined by ITU-T recommendations E.123 and E.164, see Calling Codes"
},
"emergencyCalling": {
"type": "boolean",
"description": "Emergency calling feature availability/emergency address requirement indicator"
},
"isoCode": {
"type": "string",
"description": "Country code according to the ISO standard, see ISO 3166"
},
"name": {
"type": "string",
"description": "Official name of a country"
}
}
},
"ContactAddressInfo": {
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Country name of extension user company. Not returned for Address Book"
},
"state": {
"type": "string",
"description": "State/province name of extension user company"
},
"city": {
"type": "string",
"description": "City name of extension user company"
},
"street": {
"type": "string",
"description": "Street address of extension user company"
},
"zip": {
"type": "string",
"description": "Zip code of extension user company"
}
}
},
"ContactInfo": {
"type": "object",
"properties": {
"firstName": {
"type": "string",
"description": "For User extension type only. Extension user first name"
},
"lastName": {
"type": "string",
"description": "For User extension type only. Extension user last name"
},
"company": {
"type": "string",
"description": "Extension user company name"
},
"email": {
"type": "string",
"description": "Email of extension user"
},
"businessPhone": {
"type": "string",
"description": "Extension user contact phone number"
},
"businessAddress": {
"$ref": "#/definitions/ContactAddressInfo"
}
}
},
"CountryInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a home country"
},
"uri": {
"type": "string",
"description": "Canonical URI of a home country"
},
"name": {
"type": "string",
"description": "Official name of a home country"
}
}
},
"DeliveryMode": {
"type": "object",
"properties": {
"transportType": {
"type": "string",
"description": "Notifications transportation provider name. 'APNS' (Apple Push Notifications Service)",
"enum": [
"PubNub",
"APNS",
"PubNub/APNS/VoIP"
]
},
"encryption": {
"type": "boolean",
"description": "Optional parameter. Specifies if the message will be encrypted or not. For APNS transport type the value is always \"false\""
},
"address": {
"type": "string",
"description": "PubNub channel name. For APNS transport type - internal identifier of a device \"device_token\""
},
"subscriberKey": {
"type": "string",
"description": "PubNub subscriber credentials required to subscribe to the channel"
},
"secretKey": {
"type": "string",
"description": "PubNub subscriber credentials required to subscribe to the channel. Optional (for PubNub transport type only)"
},
"encryptionAlgorithm": {
"type": "string",
"description": "Encryption algorithm 'AES' (for PubNub transport type only)"
},
"encryptionKey": {
"type": "string",
"description": "Key for notification message decryption (for PubNub transport type only)"
}
}
},
"Department.Response.ExtensionInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of an extension"
},
"uri": {
"type": "string",
"description": "Canonical URI of an extension"
},
"extensionNumber": {
"type": "string",
"description": "Number of department extension"
},
"partnerId": {
"type": "string",
"description": "For Partner Applications Internal identifier of an extension created by partner. The RingCentral supports the mapping of accounts and stores the corresponding account ID/extension ID for each partner ID of a client application. In request URIs partner IDs are accepted instead of regular RingCentral native IDs as path parameters using pid = XXX clause. Though in response URIs contain the corresponding account IDs and extension IDs. In all request and response bodies these values are reflected via partnerId attributes of account and extension"
}
}
},
"DepartmentInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a department extension"
},
"uri": {
"type": "string",
"description": "Canonical URI of a department extension"
},
"extensionNumber": {
"type": "string",
"description": "Number of a department extension"
}
}
},
"DeviceInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a device"
},
"uri": {
"type": "string",
"description": "Canonical URI of a device"
},
"sku": {
"type": "string",
"description": "Device identification number (stock keeping unit) in the format TP-ID [-AT-AC], where TP is device type (HP for RC HardPhone, DV for all other devices including softphone); ID - device model ID; AT -addon type ID; AC - addon count (if any). For example 'HP-56-2-2'"
},
"type": {
"type": "string",
"description": "Device type. The default value is 'HardPhone'",
"enum": [
"SoftPhone",
"OtherPhone",
"HardPhone"
]
},
"name": {
"type": "string",
"description": "Device name. Mandatory if ordering \"SoftPhone\" or \"OtherPhone\". Optional for \"HardPhone\". If not specified for HardPhone, then device \"model\" name is used as device \"name\""
},
"serial": {
"type": "string",
"description": "Serial number for HardPhone (is returned only when the phone is shipped and provisioned); endpoint_id for softphone and mobile applications"
},
"computerName": {
"type": "string",
"description": "PC name for softphone"
},
"model": {
"$ref": "#/definitions/ModelInfo"
},
"extension": {
"$ref": "#/definitions/DeviceInfo.ExtensionInfo"
},
"emergencyServiceAddress": {
"$ref": "#/definitions/EmergencyAddressInfo"
},
"phoneLines": {
"$ref": "#/definitions/PhoneLinesInfo"
},
"shipping": {
"$ref": "#/definitions/ShippingInfo"
},
"boxBillingId": {
"type": "integer",
"description": "Box billing identifier of a device. Applicable only for HardPhones. It is an alternative way to identify the device to be ordered. Either \"model\" structure, or \"boxBillingId\" must be specified for HardPhone"
}
}
},
"DeviceInfo.ExtensionInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of an extension"
},
"uri": {
"type": "string",
"description": "Canonical URI of an extension"
},
"extensionNumber": {
"type": "string",
"description": "Number of department extension"
},
"partnerId": {
"type": "string",
"description": "For Partner Applications Internal identifier of an extension created by partner. The RingCentral supports the mapping of accounts and stores the corresponding account ID/extension ID for each partner ID of a client application. In request URIs partner IDs are accepted instead of regular RingCentral native IDs as path parameters using pid = XXX clause. Though in response URIs contain the corresponding account IDs and extension IDs. In all request and response bodies these values are reflected via partnerId attributes of account and extension"
}
}
},
"EmergencyAddressInfo": {
"type": "object",
"properties": {
"customerName": {
"type": "string",
"description": "Name of a customer"
},
"street": {
"type": "string",
"description": "Street address, line 1 - street address, P.O. box, company name, c/o"
},
"street2": {
"type": "string",
"description": "Street address, line 2 - apartment, suite, unit, building, floor, etc."
},
"city": {
"type": "string",
"description": "City name"
},
"state": {
"type": "string",
"description": "State/province name"
},
"zip": {
"type": "string",
"description": "Zip code"
},
"country": {
"type": "string",
"description": "Country name"
}
}
},
"ExtensionInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of an extension"
},
"uri": {
"type": "string",
"description": "Canonical URI of an extension"
},
"contact": {
"$ref": "#/definitions/ContactInfo"
},
"departments": {
"$ref": "#/definitions/DepartmentInfo"
},
"extensionNumber": {
"type": "string",
"description": "Number of department extension"
},
"name": {
"type": "string",
"description": "Extension user name"
},
"partnerId": {
"type": "string",
"description": "For Partner Applications Internal identifier of an extension created by partner. The RingCentral supports the mapping of accounts and stores the corresponding account ID/extension ID for each partner ID of a client application. In request URIs partner IDs are accepted instead of regular RingCentral native IDs as path parameters using pid = XXX clause. Though in response URIs contain the corresponding account IDs and extension IDs. In all request and response bodies these values are reflected via partnerId attributes of account and extension"
},
"permissions": {
"$ref": "#/definitions/ExtensionPermissions"
},
"profileImage": {
"$ref": "#/definitions/ProfileImageInfo"
},
"references": {
"type": "array",
"description": "List of non-RC internal identifiers assigned to an extension",
"items": {
"$ref": "#/definitions/ReferenceInfo"
}
},
"regionalSettings": {
"$ref": "#/definitions/RegionalSettings"
},
"serviceFeatures": {
"type": "array",
"description": "Extension service features returned in response only when the logged-in user requests his/her own extension info, see also Extension Service Features",
"items": {
"$ref": "#/definitions/ExtensionServiceFeatureInfo"
}
},
"setupWizardState": {
"type": "string",
"description": "Specifies extension configuration wizard state (web service setup). The default value is 'NotStarted'",
"enum": [
"NotStarted",
"Incomplete",
"Completed"
]
},
"status": {
"type": "string",
"description": "Extension current state. If the status is 'Unassigned'. Returned for all extensions",
"enum": [
"Enabled",
"Disabled",
"NotActivated",
"Unassigned"
]
},
"statusInfo": {
"$ref": "#/definitions/StatusInfo"
},
"type": {
"type": "string",
"description": "Extension type",
"enum": [
"User",
"FaxUser",
"VirtualUser",
"DigitalUser",
"Department",
"Announcement",
"Voicemail",
"SharedLinesGroup",
"PagingOnlyGroup",
"IvrMenu",
"ApplicationExtension",
"ParkLocation"
]
}
}
},
"ExtensionInfo.Request.ContactInfo": {
"type": "object",
"properties": {
"contact": {
"$ref": "#/definitions/ContactInfo"
},
"regionalSettings": {
"$ref": "#/definitions/ExtensionInfo.Request.ContactInfo.RegionalSettings"
},
"setupWizardState": {
"type": "string",
"description": "Specifies extension configuration wizard state (web service setup). The default value is 'NotStarted'",
"enum": [
"NotStarted",
"Incomplete",
"Completed"
]
},
"department": {
"type": "string",
"description": "Extension user department"
}
}
},
"ExtensionInfo.Request.ContactInfo.RegionalSettings": {
"type": "object",
"properties": {
"timezone": {
"$ref": "#/definitions/ExtensionInfo.Request.ContactInfo.RegionalSettings.Timezone"
},
"language": {
"$ref": "#/definitions/ExtensionInfo.Request.ContactInfo.RegionalSettings.Language"
},
"greetingLanguage": {
"$ref": "#/definitions/ExtensionInfo.Request.ContactInfo.RegionalSettings.GreetingLanguage"
},
"formattingLocale": {
"$ref": "#/definitions/ExtensionInfo.Request.ContactInfo.RegionalSettings.FormattingLocale"
}
}
},
"ExtensionInfo.Request.ContactInfo.RegionalSettings.FormattingLocale": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a formatting language"
}
}
},
"ExtensionInfo.Request.ContactInfo.RegionalSettings.GreetingLanguage": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a greeting language"
}
}
},
"ExtensionInfo.Request.ContactInfo.RegionalSettings.Language": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Language identifier. The default value is \"1033\" (English US)"
}
}
},
"ExtensionInfo.Request.ContactInfo.RegionalSettings.Timezone": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Timezone identifier. The default value is \"58\" (US&Canada)"
}
}
},
"ExtensionInfo.Request.PartnerId": {
"type": "object",
"properties": {
"partnerId": {
"type": "string",
"description": "Extension partner identifier"
}
}
},
"ExtensionInfo.Request.PasswordPIN": {
"type": "object",
"properties": {
"password": {
"type": "string",
"description": "Password for extension"
},
"ivrPin": {
"type": "string",
"description": "IVR PIN"
}
}
},
"ExtensionInfo.Request.Provision": {
"type": "object",
"properties": {
"status": {
"type": "string",
"description": "Mandatory. Resulting extension status",
"enum": [
"NotActivated"
]
},
"contact": {
"$ref": "#/definitions/ExtensionInfo.Request.Provision.ContactInfo"
}
}
},
"ExtensionInfo.Request.Provision.ContactInfo": {
"type": "object",
"properties": {
"firstName": {
"type": "string",
"description": "Mandatory. Extension user first name"
},
"lastName": {
"type": "string",
"description": "Mandatory. Extension user last name"
},
"email": {
"type": "string",
"description": "Mandatory. Extension user contact email"
}
}
},
"ExtensionInfo.Request.StatusInfo": {
"type": "object",
"properties": {
"status": {
"type": "string",
"description": "Required extension status",
"enum": [
"Disabled",
"Enabled",
"NotActivated"
]
},
"statusInfo": {
"$ref": "#/definitions/StatusInfo"
}
}
},
"ExtensionPermissions": {
"type": "object",
"properties": {
"admin": {
"$ref": "#/definitions/PermissionInfo"
},
"internationalCalling": {
"$ref": "#/definitions/PermissionInfo"
}
}
},
"ExtensionServiceFeatureInfo": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean",
"description": "Feature status; shows feature availability for an extension"
},
"featureName": {
"type": "string",
"description": "Feature name, see all available values in Service Feature List"
},
"reason": {
"type": "string",
"description": "Reason of limitation for a particular service feature. Returned only if the enabled parameter value is 'False', see Service Feature Limitations and Reasons. When retrieving service features for an extension, the reasons for the limitations, if any, are returned in response"
}
}
},
"FormattingLocaleInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a formatting language"
},
"localeCode": {
"type": "string",
"description": "Localization code of a formatting language"
},
"name": {
"type": "string",
"description": "Official name of a formatting language"
}
}
},
"ForwardingInfo": {
"type": "object",
"properties": {
"notifyMySoftPhones": {
"type": "boolean",
"description": "Specifies if the user's softphone(s) are notified before forwarding the incoming call to desk phones and forwarding numbers"
},
"notifyAdminSoftPhones": {
"type": "boolean",
"description": "Specifies if the administrator's softphone is notified before forwarding the incoming call to desk phones and forwarding numbers. The default value is 'False'"
},
"softPhonesRingCount": {
"type": "integer",
"description": "Number of rings before forwarding starts"
},
"ringingMode": {
"type": "string",
"description": "Specifies the order in which forwarding numbers ring. 'Sequentially' means that forwarding numbers are ringing one at a time, in order of priority. 'Simultaneously' means that forwarding numbers are ring all at the same time",
"enum": [
"Sequentially",
"Simultaneously"
]
},
"rules": {
"type": "array",
"description": "Information on a call forwarding rule",
"items": {
"$ref": "#/definitions/RuleInfo"
}
}
}
},
"ForwardingNumberInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a forwarding/call flip phone number"
},
"uri": {
"type": "string",
"description": "Canonical URI of a forwarding/call flip phone number"
},
"phoneNumber": {
"type": "string",
"description": "Forwarding/Call flip phone number"
},
"label": {
"type": "string",
"description": "Forwarding/Call flip number title"
},
"features": {
"type": "string",
"description": "Type of option this phone number is used for. Multiple values are accepted",
"enum": [
"CallFlip",
"CallForwarding"
]
},
"flipNumber": {
"type": "integer",
"description": "Number assigned to the call flip phone number, corresponds to the shortcut dial number"
}
}
},
"FullCountryInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a country"
},
"uri": {
"type": "string",
"description": "Canonical URI of a country"
},
"callingCode": {
"type": "string",
"description": "Country calling code defined by ITU-T recommendations E.123 and E.164, see Calling Codes"
},
"emergencyCalling": {
"type": "boolean",
"description": "Emergency calling feature availability/emergency address requirement indicator"
},
"isoCode": {
"type": "string",
"description": "Country code according to the ISO standard, see ISO 3166"
},
"name": {
"type": "string",
"description": "Official name of a country"
},
"numberSelling": {
"type": "boolean",
"description": "Determines whether phone numbers are available for a country"
},
"loginAllowed": {
"type": "boolean",
"description": "Specifies whether login with the phone numbers of this country is enabled or not"
}
}
},
"GrantInfo": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Canonical URI of a grant"
},
"extension": {
"$ref": "#/definitions/GrantInfo.ExtensionInfo"
},
"callPickup": {
"type": "boolean",
"description": "Specifies if picking up of other extensions' calls is allowed for the extension. If 'Presence' feature is disabled for the given extension, the flag is not returned"
},
"callMonitoring": {
"type": "boolean",
"description": "Specifies if monitoring of other extensions' calls is allowed for the extension. If 'CallMonitoring' feature is disabled for the given extension, the flag is not returned"
}
}
},
"GrantInfo.ExtensionInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of an extension"
},
"uri": {
"type": "string",
"description": "Canonical URI of an extension"
},
"extensionNumber": {
"type": "string",
"description": "Extension short number (usually 3 or 4 digits)"
},
"type": {
"type": "string",
"description": "Extension type",
"enum": [
"User",
"Fax User",
"VirtualUser",
"DigitalUser",
"Department",
"Announcement",
"Voicemail",
"SharedLinesGroup",
"PagingOnly",
"IvrMenu",
"ApplicationExtension",
"Park Location"
]
}
}
},
"GreetingLanguageInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a greeting language"
},
"localeCode": {
"type": "string",
"description": "Localization code of a greeting language"
},
"name": {
"type": "string",
"description": "Official name of a greeting language"
}
}
},
"GroupInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a group"
},
"uri": {
"type": "string",
"description": "Canonical URI of a group"
},
"contactsCount": {
"type": "integer",
"description": "Amount of contacts in a group"
},
"groupName": {
"type": "string",
"description": "Name of a group"
},
"notes": {
"type": "string",
"description": "Notes for a group"
}
}
},
"LanguageInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a language"
},
"uri": {
"type": "string",
"description": "Canonical URI of a language"
},
"greeting": {
"type": "boolean",
"description": "Indicates whether a language is available as greeting language"
},
"formattingLocale": {
"type": "boolean",
"description": "Indicates whether a language is available as formatting locale"
},
"localeCode": {
"type": "string",
"description": "Localization code of a language"
},
"name": {
"type": "string",
"description": "Official name of a language"
},
"ui": {
"type": "boolean",
"description": "Indicates whether a language is available as UI language"
}
}
},
"LegInfo": {
"type": "object",
"properties": {
"action": {
"type": "string",
"description": "Action description of the call operation",
"enum": [
"Unknown",
"Phone Call",
"Phone Login",
"Incoming Fax",
"Accept Call",
"FindMe",
"FollowMe",
"Outgoing Fax",
"Call Return",
"Calling Card",
"Ring Directly",
"RingOut Web",
"VoIP Call",
"RingOut PC",
"RingMe",
"Transfer",
"411 Info",
"Emergency",
"E911 Update",
"Support",
"RingOut Mobile"
]
},
"direction": {
"type": "string",
"description": "Call direction",
"enum": [
"Inbound",
"Outbound"
]
},
"duration": {
"type": "integer",
"description": "Call duration in seconds"
},
"extension": {
"$ref": "#/definitions/LegInfo.ExtensionInfo"
},
"legType": {
"type": "string",
"description": "Leg type"
},
"startTime": {
"type": "string",
"description": "The call start datetime in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z",
"format": "date-time"
},
"type": {
"type": "string",
"description": "Call type",
"enum": [
"Voice",
"Fax"
]
},
"result": {
"type": "string",
"description": "Status description of the call operation",
"enum": [
"Unknown",
"ResultInProgress",
"Missed",
"Call accepted",
"Voicemail",
"Rejected",
"Reply",
"Received",
"Receive Error",
"Fax on Demand",
"Partial Receive",
"Blocked",
"Call connected",
"No Answer",
"International Disabled",
"Busy",
"Send Error",
"Sent",
"No fax machine",
"ResultEmpty",
"Account",
"Suspended",
"Call Failed",
"Call Failure",
"Internal Error",
"IP Phone offline",
"Restricted Number",
"Wrong Number",
"Stopped",
"Hang up",
"Poor Line Quality",
"Partially Sent",
"International Restriction",
"Abandoned",
"Declined",
"Fax Receipt Error",
"Fax Send Error"
]
},
"from": {
"$ref": "#/definitions/CallerInfo"
},
"to": {
"$ref": "#/definitions/CallerInfo"
},
"transport": {
"type": "string",
"description": "Call transport",
"enum": [
"PSTN",
"VoIP"
]
},
"recording": {
"$ref": "#/definitions/RecordingInfo"
}
}
},
"LegInfo.ExtensionInfo": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Internal identifier of an extension"
},
"uri": {
"type": "string",
"description": "Canonical URI of an extension"
}
}
},
"LocationInfo": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Canonical URI of a location"
},
"areaCode": {
"type": "string",
"description": "Area code of the location"
},
"city": {
"type": "string",
"description": "Official name of the city, belonging to the certain state"
},
"npa": {
"type": "string",
"description": "Area code of the location (3-digit usually), according to the NANP number format, that can be summarized as NPA-NXX-xxxx and covers Canada, the United States, parts of the Caribbean Sea, and some Atlantic and Pacific islands. See for details North American Numbering Plan"
},
"nxx": {
"type": "string",
"description": "Central office code of the location, according to the NANP number format, that can be summarized as NPA-NXX-xxxx and covers Canada, the United States, parts of the Caribbean Sea, and some Atlantic and Pacific islands. See for details North American Numbering Plan"
},
"state": {
"type": "string",
"description": "ID and URI of the state this location belongs to, see State Info"
}
}
},
"LookUpPhoneNumber.PhoneNumberInfo": {
"type": "object",
"properties": {
"phoneNumber": {
"type": "string",
"description": "Phone number in E.164 format without a '+'"
},
"formattedNumber": {
"type": "string",
"description": "Phone number formatted according to current brand's default country"
},
"vanityPattern": {
"type": "string",
"description": "Vanity pattern for this number. Returned only when vanity search option is requested. Vanity pattern corresponds to request parameters nxx plus line or numberPattern"
},
"rank": {
"type": "integer",
"description": "The value is returned if the extendedSearch parameter is true. '10' is the closest match"
}
}
},
"MessageAttachmentInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a message attachment"
},
"uri": {
"type": "string",
"description": "Canonical URI of a message attachment"
},
"type": {
"type": "string",
"description": "Type of message attachment",
"enum": [
"AudioRecording",
"AudioTranscription",
"Text",
"SourceDocument",
"RenderedDocument"
]
},
"contentType": {
"type": "string",
"description": "MIME type for a given attachment, for instance 'audio/wav'"
},
"vmDuration": {
"type": "integer",
"description": "Voicemail only Duration of the voicemail in seconds"
}
}
},
"MessageInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a message"
},
"uri": {
"type": "string",
"description": "Canonical URI of a message"
},
"attachments": {
"type": "array",
"description": "The list of message attachments",
"items": {
"$ref": "#/definitions/MessageAttachmentInfo"
}
},
"availability": {
"type": "string",
"description": "Message availability status. Message in 'Deleted' state is still preserved with all its attachments and can be restored. 'Purged' means that all attachments are already deleted and the message itself is about to be physically deleted shortly",
"enum": [
"Alive",
"Deleted",
"Purged"
]
},
"conversationId": {
"type": "integer",
"description": "SMS and Pager only. Identifier of the conversation the message belongs to",
"format": "int64"
},
"creationTime": {
"type": "string",
"description": "Message creation datetime in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z",
"format": "date-time"
},
"deliveryErrorCode": {
"type": "string",
"description": "SMS only. Delivery error code returned by gateway"
},
"direction": {
"type": "string",
"description": "Message direction. Note that for some message types not all directions are allowed. For example voicemail messages can be only inbound",
"enum": [
"Inbound",
"Outbound"
]
},
"faxPageCount": {
"type": "integer",
"description": "Fax only. Page count in fax message"
},
"faxResolution": {
"type": "string",
"description": "Fax only. Resolution of fax message. ('High' for black and white image scanned at 200 dpi, 'Low' for black and white image scanned at 100 dpi)",
"enum": [
"High",
"Low"
]
},
"from": {
"$ref": "#/definitions/MessageInfo.CallerInfo"
},
"lastModifiedTime": {
"type": "string",
"description": "The datetime when the message was modified on server in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z",
"format": "date-time"
},
"messageStatus": {
"type": "string",
"description": "Message status. Different message types may have different allowed status values.",
"enum": [
"Queued",
"Sent",
"Delivered",
"DeliveryFailed",
"SendingFailed",
"Received"
]
},
"pgToDepartment": {
"type": "boolean",
"description": "Pager only True if at least one of the message recipients is Department extension"
},
"priority": {
"type": "string",
"description": "Message priority",
"enum": [
"Normal",
"High"
]
},
"readStatus": {
"type": "string",
"description": "Message read status",
"enum": [
"Read",
"Unread"
]
},
"smsDeliveryTime": {
"type": "string",
"description": "SMS only. The datetime when outbound SMS was delivered to recipient's handset in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z. It is filled only if the carrier sends a delivery receipt to RingCentral",
"format": "date-time"
},
"smsSendingAttemptsCount": {
"type": "integer",
"description": "SMS only. Number of attempts made to send an outbound SMS to the gateway (if gateway is temporary unavailable)"
},
"subject": {
"type": "string",
"description": "Message subject. For SMS and Pager messages it replicates message text which is also returned as an attachment"
},
"to": {
"type": "array",
"description": "Recipient information",
"items": {
"$ref": "#/definitions/MessageInfo.CallerInfo"
}
},
"type": {
"type": "string",
"description": "Message type",
"enum": [
"Fax",
"SMS",
"VoiceMail",
"Pager",
"Text"
]
},
"vmTranscriptionStatus": {
"type": "string",
"description": "Voicemail only. Status of voicemail to text transcription. If VoicemailToText feature is not activated for account, the 'NotAvailable' value is returned",
"enum": [
"NotAvailable",
"InProgress",
"TimedOut",
"Completed",
"CompletedPartially",
"Failed"
]
}
}
},
"MessageInfo.CallerInfo": {
"type": "object",
"properties": {
"extensionNumber": {
"type": "string",
"description": "Extension short number (usually 3 or 4 digits). This property is filled when parties communicate by means of short internal numbers, for example when calling to other extension or sending/receiving Company Pager message"
},
"location": {
"type": "string",
"description": "Contains party location (city, state) if one can be determined from phoneNumber. This property is filled only when phoneNumber is not empty and server can calculate location information from it (for example, this information is unavailable for US toll-free numbers)"
},
"messageStatus": {
"type": "string",
"description": "Status of a message. Returned for outbound fax messages only",
"enum": [
"Queued",
"Sent",
"Delivered",
"DeliveryFailed",
"SendingFailed",
"Received"
]
},
"faxErrorCode": {
"type": "string",
"description": "Fax only. Error code returned in case of fax sending failure. Returned if messageStatus value is 'SendingFailed'",
"enum": [
"Undefined",
"NoFaxSendPermission",
"NoInternationalPermission",
"NoFaxMachine",
"OutgoingCallError",
"RenderingFailed",
"TooManyPages",
"ReturnToDBQueue",
"NoCallTime",
"WrongNumber",
"ProhibitedNumber",
"InternalError",
"FaxSendingProhibited",
"ThePhoneIsBlacklisted",
"UserNotFound",
"ConvertError",
"DBGeneralError",
"SkypeBillingFailed",
"AccountSuspended",
"ProhibitedDestination",
"InternationalDisabled"
]
},
"name": {
"type": "string",
"description": "Symbolic name associated with a party. If the phone does not belong to the known extension, only the location is returned, the name is not determined then"
},
"phoneNumber": {
"type": "string",
"description": "Phone number of a party. Usually it is a plain number including country and area code like 18661234567. But sometimes it could be returned from database with some formatting applied, for example (866)123-4567. This property is filled in all cases where parties communicate by means of global phone numbers, for example when calling to direct numbers or sending/receiving SMS"
}
}
},
"ModelInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Device model identifier. Mandatory when ordering a HardPhone if boxBillingId is not used for ordering"
},
"name": {
"type": "string",
"description": "Device name"
},
"addons": {
"type": "array",
"description": "Addons description",
"items": {
"$ref": "#/definitions/AddonInfo"
}
}
}
},
"NavigationInfo": {
"type": "object",
"properties": {
"firstPage": {
"type": "string",
"description": "Canonical URI for the first page of the list"
},
"nextPage": {
"type": "string",
"description": "Canonical URI for the next page of the list"
},
"previousPage": {
"type": "string",
"description": "Canonical URI for the previous page of the list"
},
"lastPage": {
"type": "string",
"description": "Canonical URI for the last page of the list"
}
}
},
"PagingInfo": {
"type": "object",
"properties": {
"page": {
"type": "integer",
"description": "The current page number. 1-indexed, so the first page is 1 by default. May be omitted if result is empty (because non-existent page was specified or perPage=0 was requested)"
},
"perPage": {
"type": "integer",
"description": "Current page size, describes how many items are in each page. Default value is 100. Maximum value is 1000. If perPage value in the request is greater than 1000, the maximum value (1000) is applied"
},
"pageStart": {
"type": "integer",
"description": "The zero-based number of the first element on the current page. Omitted if the page is omitted or result is empty"
},
"pageEnd": {
"type": "integer",
"description": "The zero-based index of the last element on the current page. Omitted if the page is omitted or result is empty"
},
"totalPages": {
"type": "integer",
"description": "The total number of pages in a dataset. May be omitted for some resources due to performance reasons"
},
"totalElements": {
"type": "integer",
"description": "The total number of elements in a dataset. May be omitted for some resource due to performance reasons"
}
}
},
"ParsePhoneNumber.CountryInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a country"
},
"uri": {
"type": "string",
"description": "Canonical URI of a country"
},
"callingCode": {
"type": "string",
"description": "Country calling code defined by ITU-T recommendations E.123 and E.164, see Calling Codes"
},
"emergencyCalling": {
"type": "boolean",
"description": "Emergency calling feature availability/emergency address requirement indicator"
},
"isoCode": {
"type": "string",
"description": "Country code according to the ISO standard, see ISO 3166"
},
"name": {
"type": "string",
"description": "Official name of a country"
}
}
},
"ParsePhoneNumber.PhoneNumberInfo": {
"type": "object",
"properties": {
"areaCode": {
"type": "string",
"description": "Area code of the location (3-digit usually), according to the NANP number format, that can be summarized as NPA-NXX-xxxx and covers Canada, the United States, parts of the Caribbean Sea, and some Atlantic and Pacific islands. See North American Numbering Plan for details"
},
"country": {
"type": "array",
"description": "Information on a country the phone number belongs to",
"items": {
"$ref": "#/definitions/ParsePhoneNumber.CountryInfo"
}
},
"dialable": {
"type": "string",
"description": "Dialing format of a phone number"
},
"e164": {
"type": "string",
"description": "E.164 (11-digits) format of a phone number"
},
"formattedInternational": {
"type": "string",
"description": "International format of a phone number"
},
"formattedNational": {
"type": "string",
"description": "Domestic format of a phone number"
},
"originalString": {
"type": "string",
"description": "One of the numbers to be parsed, passed as a string in response"
},
"special": {
"type": "boolean",
"description": "\"True\" if the number is in a special format (for example N11 code)"
},
"normalized": {
"type": "string",
"description": "E.164 (11-digits) format of a phone number without the plus sign ('+')"
}
}
},
"PermissionInfo": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean",
"description": "Specifies if a permission is enabled or not"
}
}
},
"PersonalContactInfo": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Standard resource properties ID"
},
"url": {
"type": "string",
"description": "Canonical URI"
},
"availability": {
"type": "string",
"description": "This property has a special meaning only on Address Book Sync (e.g. a contact can be 'Deleted'). For simple contact list reading it has always the default value - 'Alive'",
"enum": [
"Alive",
"Deleted",
"Purged"
]
},
"firstName": {
"type": "string",
"description": "First name of a personal contact"
},
"lastName": {
"type": "string",
"description": "Last name of a personal contact"
},
"middleName": {
"type": "string",
"description": "Middle name of a personal contact"
},
"nickName": {
"type": "string",
"description": "Nick name of a personal contact"
},
"company": {
"type": "string",
"description": "Company name of a personal contact"
},
"jobTitle": {
"type": "string",
"description": "Job title of a personal contact"
},
"homePhone": {
"type": "string",
"description": "Home phone of a personal contact"
},
"homePhone2": {
"type": "string",
"description": "The 2-d home phone of a personal contact"
},
"businessPhone": {
"type": "string",
"description": "Business phone of a personal contact"
},
"businessPhone2": {
"type": "string",
"description": "The 2-d business phone of a personal contact"
},
"mobilePhone": {
"type": "string",
"description": "Mobile phone of a personal contact"
},
"businessFax": {
"type": "string",
"description": "Business fax of a personal contact"
},
"companyPhone": {
"type": "string",
"description": "Company phone of a personal contact"
},
"assistantPhone": {
"type": "string",
"description": "Assistant phone of a personal contact"
},
"carPhone": {
"type": "string",
"description": "Car phone of a personal contact"
},
"otherPhone": {
"type": "string",
"description": "Other phone of a personal contact"
},
"otherFax": {
"type": "string",
"description": "Other fax of a personal contact"
},
"callbackPhone": {
"type": "string",
"description": "Callback phone of a personal contact"
},
"email": {
"type": "string",
"description": "Email of a personal contact"
},
"email2": {
"type": "string",
"description": "The 2-d email of a personal contact"
},
"email3": {
"type": "string",
"description": "The 3-d email of a personal contact"
},
"homeAddress": {
"$ref": "#/definitions/ContactAddressInfo"
},
"businessAddress": {
"$ref": "#/definitions/ContactAddressInfo"
},
"otherAddress": {
"$ref": "#/definitions/ContactAddressInfo"
},
"birthday": {
"type": "string",
"description": "Date of birth of a personal contact in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z",
"format": "date-time"
},
"webPage": {
"type": "string",
"description": "Web page of a personal contact"
},
"notes": {
"type": "string",
"description": "Notes of a personal contact"
}
}
},
"PhoneLinesInfo": {
"type": "object",
"properties": {
"lineType": {
"type": "string",
"description": "Type of phone line",
"enum": [
"Standalone",
"StandaloneFree",
"BlaPrimary",
"BlaSecondary"
]
},
"phoneInfo": {
"$ref": "#/definitions/PhoneLinesInfo.PhoneNumberInfo"
}
}
},
"PhoneLinesInfo.PhoneNumberInfo": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Internal identifier of a phone number"
},
"country": {
"$ref": "#/definitions/CountryInfo"
},
"location": {
"type": "string",
"description": "Location (City, State). Filled for local US numbers"
},
"paymentType": {
"type": "string",
"description": "Payment type. 'External' is returned for forwarded numbers which are not terminated in the RingCentral phone system",
"enum": [
"External",
"TollFree",
"Local"
]
},
"phoneNumber": {
"type": "string",
"description": "Phone number"
},
"status": {
"type": "string",
"description": "Status of a phone number. If the value is 'Normal', the phone number is ready to be used. Otherwise it is an external number not yet ported to RingCentral"
},
"type": {
"type": "string",
"description": "Phone number type",
"enum": [
"VoiceFax",
"FaxOnly",
"VoiceOnly"
]
},
"usageType": {
"type": "string",
"description": "Usage type of the phone number",
"enum": [
"MainCompanyNumber",
"AdditionalCompanyNumber",
"CompanyNumber",
"DirectNumber",
"CompanyFaxNumber",
"ForwardedNumber"
]
}
}
},
"PhoneNumberInfo": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Internal identifier of a phone number"
},
"country": {
"$ref": "#/definitions/CountryInfo"
},
"extension": {
"$ref": "#/definitions/PhoneNumberInfo.ExtensionInfo"
},
"features": {
"type": "array",
"description": "Indicates if this phone number is enabled to appear as CallerId and/or to send outbound SMS from it. Returned only for the request of Extension phone number list",
"items": {
"type": "string"
}
},
"location": {
"type": "string",
"description": "Location (City, State). Filled for local US numbers"
},
"paymentType": {
"type": "string",
"description": "Payment type. 'External' is returned for forwarded numbers which are not terminated in the RingCentral phone system",
"enum": [
"External",
"TollFree",
"Local"
]
},
"phoneNumber": {
"type": "string",
"description": "Phone number"
},
"status": {
"type": "string",
"description": "Status of a phone number. If the value is 'Normal', the phone number is ready to be used. Otherwise it is an external number not yet ported to RingCentral"
},
"type": {
"type": "string",
"description": "Phone number type",
"enum": [
"VoiceFax",
"FaxOnly",
"VoiceOnly"
]
},
"usageType": {
"type": "string",
"description": "Usage type of the phone number",
"enum": [
"MainCompanyNumber",
"AdditionalCompanyNumber",
"CompanyNumber",
"DirectNumber",
"CompanyFaxNumber",
"ForwardedNumber"
]
}
}
},
"PhoneNumberInfo.ExtensionInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of an extension"
},
"uri": {
"type": "string",
"description": "Canonical URI of an extension"
},
"extensionNumber": {
"type": "string",
"description": "Number of department extension"
},
"partnerId": {
"type": "string",
"description": "For Partner Applications Internal identifier of an extension created by partner. The RingCentral supports the mapping of accounts and stores the corresponding account ID/extension ID for each partner ID of a client application. In request URIs partner IDs are accepted instead of regular RingCentral native IDs as path parameters using pid = XXX clause. Though in response URIs contain the corresponding account IDs and extension IDs. In all request and response bodies these values are reflected via partnerId attributes of account and extension"
}
}
},
"PresenceInfo": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Canonical URI of a presence info resource"
},
"allowSeeMyPresence": {
"type": "boolean",
"description": "If 'True' enables other extensions to see the extension presence status"
},
"dndStatus": {
"type": "string",
"description": "Extended DnD (Do not Disturb) status. Cannot be set for Department/Announcement/Voicemail (Take Messages Only)/Fax User/Shared Lines Group/Paging Only Group/IVR Menu/Application Extension/Park Location extensions. The 'DoNotAcceptDepartmentCalls' and 'TakeDepartmentCallsOnly' values are applicable only for extensions - members of a Department; if these values are set for department outsiders, the 400 Bad Request error code is returned. The 'TakeDepartmentCallsOnly' status can be set through the old RingCentral user interface and is available for some migrated accounts only.",
"enum": [
"TakeAllCalls",
"DoNotAcceptAnyCalls",
"DoNotAcceptDepartmentCalls",
"TakeDepartmentCallsOnly"
]
},
"extension": {
"$ref": "#/definitions/PresenceInfo.ExtensionInfo"
},
"message": {
"type": "string",
"description": "Custom status message (as previously published by user)"
},
"pickUpCallsOnHold": {
"type": "boolean",
"description": "If 'True' enables the extension user to pick up a monitored line on hold"
},
"presenceStatus": {
"type": "string",
"description": "Aggregated presence status, calculated from a number of sources",
"enum": [
"Offline",
"Busy",
"Available"
]
},
"ringOnMonitoredCall": {
"type": "boolean",
"description": "If 'True' enables to ring extension phone, if any user monitored by this extension is ringing"
},
"telephonyStatus": {
"type": "string",
"description": "Telephony presence status",
"enum": [
"NoCall",
"CallConnected",
"Ringing",
"OnHold",
"ParkedCall"
]
},
"userStatus": {
"type": "string",
"description": "User-defined presence status (as previously published by the user)",
"enum": [
"Offline",
"Busy",
"Available"
]
}
}
},
"PresenceInfo.ExtensionInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of an extension"
},
"uri": {
"type": "string",
"description": "Canonical URI of an extension"
},
"extensionNumber": {
"type": "string",
"description": "Extension number (usually 3 or 4 digits)"
}
}
},
"ProfileImageInfo": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Link to a profile image. If an image is not uploaded for an extension, only uri is returned"
},
"etag": {
"type": "string",
"description": "Identifier of an image"
},
"lastModified": {
"type": "string",
"description": "The datetime when an image was last updated in ISO 8601 format, for example 2016-03-10T18:07:52.534Z",
"format": "date-time"
},
"contentType": {
"type": "string",
"description": "The type of an image"
},
"scales": {
"type": "array",
"description": "List of URIs to profile images in different dimensions",
"items": {
"type": "string"
}
}
}
},
"RangesInfo": {
"type": "object",
"properties": {
"from": {
"type": "string",
"description": "Date and time in format YYYY-MM-DD hh:mm",
"format": "date-time"
},
"to": {
"type": "string",
"description": "Date and time in format YYYY-MM-DD hh:mm",
"format": "date-time"
}
}
},
"RecipientInfo": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Link to a recipient extension resource"
},
"id": {
"type": "string",
"description": "Internal identifier of a recipient extension"
}
}
},
"RecordingInfo": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Internal identifier of the call recording"
},
"uri": {
"type": "string",
"description": "Link to the call recording metadata resource"
},
"type": {
"type": "string",
"description": "Indicates recording mode used",
"enum": [
"Automatic",
"OnDemand"
]
},
"contentUri": {
"type": "string",
"description": "Link to the call recording binary content"
}
}
},
"ReferenceInfo": {
"type": "object",
"properties": {
"ref": {
"type": "string",
"description": "Non-RC identifier of an extension"
},
"type": {
"type": "string",
"description": "Type of external identifier",
"enum": [
"PartnerId",
"CustomerDirectoryId"
]
}
}
},
"RegionalSettings": {
"type": "object",
"properties": {
"homeCountry": {
"$ref": "#/definitions/CountryInfo"
},
"timezone": {
"$ref": "#/definitions/TimezoneInfo"
},
"language": {
"$ref": "#/definitions/LanguageInfo"
},
"greetingLanguage": {
"$ref": "#/definitions/GreetingLanguageInfo"
},
"formattingLocale": {
"$ref": "#/definitions/FormattingLocaleInfo"
}
}
},
"ReservePhoneNumber.Request.ReserveRecord": {
"type": "object",
"properties": {
"phoneNumber": {
"type": "string",
"description": "Phone number in E.164 format without a '+'"
},
"reservedTill": {
"type": "string",
"description": "The datetime up to which the number is reserved in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z. If it is omitted or explicitly set to 'null', the number will be un-reserved if it was reserved previously by the same session. 'Min' value is 30 seconds; 'Max' value is 30 days (for reservation by brand) and 20 minutes (for reservation by account/session)",
"format": "date-time"
}
}
},
"ReservePhoneNumber.Response.ReserveRecord": {
"type": "object",
"properties": {
"phoneNumber": {
"type": "string",
"description": "Phone number in E.164 format without a '+'"
},
"formattedNumber": {
"type": "string",
"description": "Domestic format of a phone number"
},
"reservedTill": {
"type": "string",
"description": "The datetime up to which the number is reserved in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z. No value means that number is not reserved anymore",
"format": "date-time"
},
"reservationId": {
"type": "string",
"description": "Internal identifier of phone number reservation; encoded data including reservation type (by brand, by account, by session), particular brand/account/session data, and reservation date and time"
},
"status": {
"type": "string",
"description": "Phone number status",
"enum": [
"Enabled",
"Pending",
"Disabled"
]
},
"error": {
"type": "string",
"description": "The error code in case of reservation/un-reservation failure",
"enum": [
"NumberIsAlreadyProvisioned",
"NumberReserved",
"NumberNotAvailable"
]
}
}
},
"RingOut.Request.CountryInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Dialing plan country identifier"
}
}
},
"RingOut.Request.From": {
"type": "object",
"properties": {
"phoneNumber": {
"type": "string",
"description": "Phone number in E.164 format"
},
"forwardingNumberId": {
"type": "string",
"description": "Internal identifier of a forwarding number; returned in response in the id field. Can be specified instead of the phoneNumber attribute"
}
}
},
"RingOut.Request.To": {
"type": "object",
"properties": {
"phoneNumber": {
"type": "string",
"description": "Phone number in E.164 format"
}
}
},
"RingOutInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a RingOut call"
},
"status": {
"$ref": "#/definitions/RingOutStatusInfo"
}
}
},
"RingOutStatusInfo": {
"type": "object",
"properties": {
"callStatus": {
"type": "string",
"description": "Status of a call",
"enum": [
"Invalid",
"Success",
"InProgress",
"Busy",
"NoAnswer",
"Rejected",
"GenericError",
"Finished",
"InternationalDisabled",
"DestinationBlocked",
"NotEnoughFunds",
"NoSuchUser"
]
},
"callerStatus": {
"type": "string",
"description": "Status of a calling party",
"enum": [
"Invalid",
"Success",
"InProgress",
"Busy",
"NoAnswer",
"Rejected",
"GenericError",
"Finished",
"InternationalDisabled",
"DestinationBlocked",
"NotEnoughFunds",
"NoSuchUser"
]
},
"calleeStatus": {
"type": "string",
"description": "Status of a called party",
"enum": [
"Invalid",
"Success",
"InProgress",
"Busy",
"NoAnswer",
"Rejected",
"GenericError",
"Finished",
"InternationalDisabled",
"DestinationBlocked",
"NotEnoughFunds",
"NoSuchUser"
]
}
}
},
"RuleInfo": {
"type": "object",
"properties": {
"index": {
"type": "integer",
"description": "Forwarding number (or group) ordinal"
},
"ringCount": {
"type": "integer",
"description": "Number of rings for a forwarding number (or group)"
},
"forwardingNumbers": {
"type": "array",
"description": "Forwarding number (or group) data",
"items": {
"$ref": "#/definitions/RuleInfo.ForwardingNumberInfo"
}
}
}
},
"RuleInfo.ForwardingNumberInfo": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Link to a forwarding number resource"
},
"id": {
"type": "string",
"description": "Internal identifier of a forwarding number"
},
"phoneNumber": {
"type": "string",
"description": "Phone number to which the call is forwarded"
},
"label": {
"type": "string",
"description": "Title of a forwarding number"
}
}
},
"ScheduleInfo": {
"type": "object",
"properties": {
"weeklyRanges": {
"$ref": "#/definitions/WeeklyScheduleInfo"
},
"ranges": {
"$ref": "#/definitions/RangesInfo"
},
"ref": {
"type": "string",
"description": "The user's schedule specified for business hours or after hours; it can also be set/retrieved calling the corresponding method",
"enum": [
"BusinessHours",
"AfterHours"
]
}
}
},
"ServerInfo": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Canonical URI of the API version"
},
"apiVersions": {
"type": "array",
"description": "Full API version information: uri, number, release date",
"items": {
"$ref": "#/definitions/VersionInfo"
}
},
"serverVersion": {
"type": "string",
"description": "Server version"
},
"serverRevision": {
"type": "string",
"description": "Server revision"
}
}
},
"ServiceFeatureInfo": {
"type": "object",
"properties": {
"featureName": {
"type": "string",
"description": "Feature name, see all available values in Service Feature List"
},
"enabled": {
"type": "boolean",
"description": "Feature status, shows feature availability for the extension"
}
}
},
"ServiceInfo": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Canonical URI of a service info resource"
},
"billingPlan": {
"$ref": "#/definitions/BillingPlanInfo"
},
"brand": {
"$ref": "#/definitions/BrandInfo"
},
"servicePlan": {
"$ref": "#/definitions/ServicePlanInfo"
},
"targetServicePlan": {
"$ref": "#/definitions/TargetServicePlanInfo"
}
}
},
"ServicePlanInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a service plan"
},
"name": {
"type": "string",
"description": "Name of a service plan"
},
"edition": {
"type": "string",
"description": "Edition of a service plan"
}
}
},
"ShippingAddress": {
"type": "object",
"properties": {
"customerName": {
"type": "string",
"description": "Name of a receiver"
},
"street": {
"type": "string",
"description": "Street address, line 1 - street address, P.O. box, company name, c/o"
},
"street2": {
"type": "string",
"description": "Street address, line 2 - apartment, suite, unit, building, floor, etc."
},
"city": {
"type": "string",
"description": "City name"
},
"state": {
"type": "string",
"description": "State/province name"
},
"zip": {
"type": "string",
"description": "Zip code"
},
"country": {
"type": "string",
"description": "Country name"
}
}
},
"ShippingInfo": {
"type": "object",
"properties": {
"status": {
"type": "string",
"description": "Shipping status of the order item. It is set to 'Initial' when the order is submitted. Then it is changed to 'Accepted' when a distributor starts processing the order. Finally it is changed to Shipped which means that distributor has shipped the device.",
"enum": [
"Initial",
"Accepted",
"Shipped"
]
},
"carrier": {
"type": "string",
"description": "Shipping carrier name. Appears only if the device status is \"Shipped\""
},
"trackingNumber": {
"type": "string",
"description": "Carrier-specific tracking number. Appears only if the device status is \"Shipped\""
},
"method": {
"type": "array",
"description": "Shipping method information",
"items": {
"$ref": "#/definitions/ShippingMethod"
}
},
"address": {
"type": "array",
"description": "Shipping address for the order. If it coincides with the Emergency Service Address, then can be omitted. By default the same value as the emergencyServiceAddress. Multiple addresses can be specified; in case an order contains several devices, they can be delivered to different addresses",
"items": {
"$ref": "#/definitions/ShippingAddress"
}
}
}
},
"ShippingMethod": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Method identifier. The default value is \"1\" (Ground)",
"enum": [
"1",
"2",
"3"
]
},
"name": {
"type": "string",
"description": "Method name, corresponding to the identifier",
"enum": [
"Ground",
"2 Day",
"Overnight"
]
}
}
},
"StateInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a state"
},
"uri": {
"type": "string",
"description": "Canonical URI of a state"
},
"country": {
"$ref": "#/definitions/StateInfo.CountryInfo"
},
"isoCode": {
"type": "string",
"description": "Short code for a state (2-letter usually)"
},
"name": {
"type": "string",
"description": "Official name of a state"
}
}
},
"StateInfo.CountryInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a state"
},
"uri": {
"type": "string",
"description": "Canonical URI of a state"
}
}
},
"StatusInfo": {
"type": "object",
"properties": {
"comment": {
"type": "string",
"description": "A free-form user comment, describing the status change reason"
},
"reason": {
"type": "string",
"description": "Type of suspension",
"enum": [
"Voluntarily",
"Involuntarily"
]
}
}
},
"Subscription.Request.DeliveryMode": {
"type": "object",
"properties": {
"transportType": {
"type": "string",
"description": "Notifications transportation provider name. 'APNS' (Apple Push Notifications Service)",
"enum": [
"PubNub",
"APNS",
"PubNub/APNS/VoIP"
]
},
"encryption": {
"type": "boolean",
"description": "Optional parameter. Specifies if the message will be encrypted or not. If request contains any presence event filter the value by default is 'True' (even if specified as 'false'). If request contains only message event filters the value by default is 'False'"
}
}
},
"SubscriptionInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a subscription"
},
"uri": {
"type": "string",
"description": "Canonical URI of a subscription"
},
"eventFilters": {
"type": "array",
"description": "Collection of URIs to API resources (message-store/presence/detailed presence)",
"items": {
"type": "string"
}
},
"expirationTime": {
"type": "string",
"description": "Subscription expiration datetime in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z",
"format": "date-time"
},
"expiresIn": {
"type": "integer",
"description": "Subscription lifetime in seconds. The default value is 900"
},
"status": {
"type": "string",
"description": "Subscription status",
"enum": [
"Active",
"Suspended"
]
},
"creationTime": {
"type": "string",
"description": "Subscription creation datetime in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z",
"format": "date-time"
},
"deliveryMode": {
"$ref": "#/definitions/DeliveryMode"
}
}
},
"SyncInfo": {
"type": "object",
"properties": {
"syncType": {
"type": "string",
"description": "Type of synchronization",
"enum": [
"FSync",
"ISync"
]
},
"syncToken": {
"type": "string",
"description": "Synchronization token"
},
"syncTime": {
"type": "string",
"description": "Last synchronization datetime in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z",
"format": "date-time"
}
}
},
"TargetServicePlanInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a target service plan"
},
"name": {
"type": "string",
"description": "Name of a target service plan"
}
}
},
"TimeInterval": {
"type": "object",
"properties": {
"from": {
"type": "string",
"description": "Time in format hh:mm",
"format": "date-time"
},
"to": {
"type": "string",
"description": "Time in format hh:mm",
"format": "date-time"
}
}
},
"TimezoneInfo": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Internal identifier of a timezone"
},
"uri": {
"type": "string",
"description": "Canonical URI of a timezone"
},
"name": {
"type": "string",
"description": "Short name of a timezone"
},
"description": {
"type": "string",
"description": "Meaningful description of the timezone"
}
}
},
"UnconditionalForwardingInfo": {
"type": "object",
"properties": {
"phoneNumber": {
"type": "string",
"description": "Phone number to which the call is forwarded"
}
}
},
"VersionInfo": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Canonical URI of API versions"
},
"versionString": {
"type": "string",
"description": "Version of the RingCentral REST API"
},
"releaseDate": {
"type": "string",
"description": "Release date of this version"
},
"uriString": {
"type": "string",
"description": "URI part determining the current version"
}
}
},
"VoicemailInfo": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean",
"description": "If 'True' then voicemails are allowed to be received"
},
"recipient": {
"$ref": "#/definitions/RecipientInfo"
}
}
},
"WeeklyScheduleInfo": {
"type": "object",
"properties": {
"monday": {
"type": "array",
"description": "Time intervals for a particular day",
"items": {
"$ref": "#/definitions/TimeInterval"
}
},
"tuesday": {
"type": "array",
"description": "Time intervals for a particular day",
"items": {
"$ref": "#/definitions/TimeInterval"
}
},
"wednesday": {
"type": "array",
"description": "Time intervals for a particular day",
"items": {
"$ref": "#/definitions/TimeInterval"
}
},
"thursday": {
"type": "array",
"description": "Time intervals for a particular day",
"items": {
"$ref": "#/definitions/TimeInterval"
}
},
"friday": {
"type": "array",
"description": "Time intervals for a particular day",
"items": {
"$ref": "#/definitions/TimeInterval"
}
},
"saturday": {
"type": "array",
"description": "Time intervals for a particular day",
"items": {
"$ref": "#/definitions/TimeInterval"
}
},
"sunday": {
"type": "array",
"description": "Time intervals for a particular day",
"items": {
"$ref": "#/definitions/TimeInterval"
}
}
}
}
},
"paths": {
"/restapi": {
"get": {
"description": "Get Server Info",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ServerInfo"
}
}
}
}
},
"/restapi/oauth/authorize": {
"post": {
"description": "OAuth2 Authorize",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"code": {
"type": "string",
"description": "The authorization code returned for your application"
},
"expires_in": {
"type": "integer",
"description": "The remaining lifetime of the authorization code"
},
"state": {
"type": "string",
"description": "This parameter will be included in response if it was specified in the client authorization request. The value will be copied from the one received from the client"
}
}
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"response_type": {
"type": "string",
"description": "Must be set to code"
},
"client_id": {
"type": "string",
"description": "Required. Enter your application key (Production or Sandbox) here"
},
"redirect_uri": {
"type": "string",
"description": "Required. This is a callback URI which determines where the response will be sent to. The value of this parameter must exactly match one of the URIs you have provided for your app upon registration. This URI can be HTTP/HTTPS address for web applications or custom scheme URI for mobile or desktop applications."
},
"state": {
"type": "string",
"description": "Optional, recommended. An opaque value used by the client to maintain state between the request and callback. The authorization server includes this value when redirecting the user-agent back to the client. The parameter should be used for preventing cross-site request forgery"
}
}
}
}
]
}
},
"/restapi/oauth/revoke": {
"post": {
"description": "OAuth2 Revoke Token",
"responses": {
"default": {
"description": "OK"
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"token": {
"type": "string",
"description": "Active access or refresh token to be revoked"
}
}
}
}
]
}
},
"/restapi/oauth/token": {
"post": {
"description": "OAuth2 Get Token",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"access_token": {
"type": "string",
"description": "Access token to pass to subsequent API requests"
},
"expires_in": {
"type": "integer",
"description": "Issued access token TTL (time to live), in seconds"
},
"refresh_token": {
"type": "string",
"description": "Refresh token to get a new access token, when the issued one expires"
},
"refresh_token_expires_in": {
"type": "integer",
"description": "Issued refresh token TTL (time to live), in seconds"
},
"scope": {
"type": "string",
"description": "List of permissions allowed with this access token, white-space separated"
},
"token_type": {
"type": "string",
"description": "Type of token. Use this parameter in Authorization header of requests"
},
"owner_id": {
"type": "string",
"description": "Extension identifier"
},
"endpoint_id": {
"type": "string",
"description": "Unique identifier of a client application passed by the client, or auto-generated by server if not specified in request"
}
}
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"grant_type": {
"type": "string",
"description": "Must hold password value for Resource Owner Credentials flow. If client application is not authorized by the specified grant_type, response does not contain refresh_token and refresh_token_ttl attributes"
},
"access_token_ttl": {
"type": "integer",
"description": "Optional. Access token lifetime in seconds; the possible values are from 600 sec (10 min) to 3600 sec (1 hour). The default value is 3600 sec. If the value specified exceeds the default one, the default value is set. If the value specified is less than 600 seconds, the minimum value (600 sec) is set"
},
"refresh_token_ttl": {
"type": "integer",
"description": "Optional. Refresh token lifetime in seconds. The default value depends on the client application, but as usual it equals to 7 days. If the value specified exceeds the default one, the default value is applied. If client specifies refresh_token_ttl<=0, refresh token is not returned even if the corresponding grant type is supported"
},
"username": {
"type": "string",
"description": "Phone number linked to account or extension in account in E.164 format with or without leading \"+\" sign"
},
"extension": {
"type": "string",
"description": "Optional. Extension short number. If company number is specified as a username, and extension is not specified, the server will attempt to authenticate client as main company administrator"
},
"password": {
"type": "string",
"description": "User's password"
},
"scope": {
"type": "string",
"description": "Optional. List of API permissions to be used with access token (see Application Permissions). Can be omitted when requesting all permissions defined during the application registration phase"
},
"endpoint_id": {
"type": "string",
"description": "Optional. Unique identifier of a client application. You can pass it in request according to pattern [a-zA-Z0-9_\\-]{1,64}. Otherwise it is auto-generated by server. The value will be returned in response in both cases"
}
}
}
}
]
}
},
"/restapi/v1.0": {
"get": {
"description": "Get API Version Info",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/VersionInfo"
}
}
}
}
},
"/restapi/v1.0/account/{accountId}": {
"get": {
"description": "Get Account Info by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AccountInfo"
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
}
]
},
"/restapi/v1.0/account/{accountId}/active-calls": {
"get": {
"description": "Get Account Active (Recent) Calls",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of call log records",
"items": {
"$ref": "#/definitions/CallLogRecord"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
},
"parameters": [
{
"type": "string",
"description": "The direction for the result records. It is allowed to specify more than one direction. If not specified, both inbound and outbound records are returned. Multiple values are accepted",
"enum": [
"Inbound",
"Outbound"
],
"name": "direction",
"in": "query"
},
{
"type": "string",
"description": "Call type of a record. It is allowed to specify more than one type. If not specified, all call types are returned. Multiple values are accepted",
"enum": [
"Voice",
"Fax"
],
"name": "type",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. Default value is '1'.",
"name": "page",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default.",
"name": "perPage",
"in": "query"
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
}
]
},
"/restapi/v1.0/account/{accountId}/business-address": {
"get": {
"description": "Get Company Business Address",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Canonical URI of the business address resource"
},
"company": {
"type": "string",
"description": "Company business name"
},
"email": {
"type": "string",
"description": "Company business email address"
},
"businessAddress": {
"$ref": "#/definitions/BusinessAddressInfo"
}
}
}
}
}
},
"put": {
"description": "Update Company Business Address",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Canonical URI of the business address resource"
},
"company": {
"type": "string",
"description": "Company business name"
},
"email": {
"type": "string",
"description": "Company business email address"
},
"businessAddress": {
"$ref": "#/definitions/BusinessAddressInfo"
}
}
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"company": {
"type": "string",
"description": "Company business name"
},
"email": {
"type": "string",
"description": "Company business email address"
},
"businessAddress": {
"$ref": "#/definitions/BusinessAddressInfo"
}
}
}
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
}
]
},
"/restapi/v1.0/account/{accountId}/call-log": {
"get": {
"description": "Get Account Call Log",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of call log records",
"items": {
"$ref": "#/definitions/CallLogRecord"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
},
"parameters": [
{
"type": "string",
"description": "Extension number of a user. If specified, returns call log for a particular extension only. Cannot be specified together with the phoneNumber filter",
"name": "extensionNumber",
"in": "query"
},
{
"type": "string",
"description": "Phone number of a caller/call recipient. If specified, returns all calls (both incoming and outcoming) with the mentioned phone number. Cannot be specified together with the extensionNumber filter",
"name": "phoneNumber",
"in": "query"
},
{
"type": "string",
"description": "The direction for the result records. It is allowed to specify more than one direction. If not specified, both inbound and outbound records are returned. Multiple values are accepted",
"enum": [
"Inbound",
"Outbound"
],
"name": "direction",
"in": "query"
},
{
"type": "string",
"description": "Call type of a record. It is allowed to specify more than one type. If not specified, all call types are returned. Multiple values are accepted",
"enum": [
"Voice",
"Fax"
],
"name": "type",
"in": "query"
},
{
"type": "string",
"description": "The default value is 'Simple' for both account and extension call log",
"enum": [
"Simple",
"Detailed"
],
"name": "view",
"in": "query"
},
{
"type": "boolean",
"description": "'True' if only recorded calls have to be returned",
"name": "withRecording",
"in": "query"
},
{
"type": "string",
"description": "The start datetime for resulting records in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z. The default value is dateTo minus 24 hours",
"format": "date-time",
"name": "dateFrom",
"in": "query"
},
{
"type": "string",
"description": "The end datetime for resulting records in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z. The default value is current time",
"format": "date-time",
"name": "dateTo",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. The default value is '1'",
"name": "page",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default.",
"name": "perPage",
"in": "query"
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
}
]
},
"/restapi/v1.0/account/{accountId}/call-log/{callLogId}": {
"get": {
"description": "Get Account Call Log Record by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/CallLogInfo"
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/callLogId"
}
]
},
"/restapi/v1.0/account/{accountId}/department/{departmentId}/members": {
"get": {
"description": "Get Department Members",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of extensions belonging to a given department",
"items": {
"$ref": "#/definitions/Department.Response.ExtensionInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
},
"parameters": [
{
"type": "integer",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. Default value is '1'",
"name": "page",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default",
"name": "perPage",
"in": "query"
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/departmentId"
}
]
},
"/restapi/v1.0/account/{accountId}/device": {
"get": {
"description": "Get Account Device List",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of extension records",
"items": {
"$ref": "#/definitions/DeviceInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
}
]
},
"/restapi/v1.0/account/{accountId}/device/{deviceId}": {
"get": {
"description": "Get Device by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/DeviceInfo"
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/deviceId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension": {
"get": {
"description": "Get Extension List",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of extensions with extension information",
"items": {
"$ref": "#/definitions/ExtensionInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
},
"parameters": [
{
"type": "integer",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. Default value is '1'",
"name": "page",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default.",
"name": "perPage",
"in": "query"
},
{
"type": "string",
"description": "Extension current state. Multiple values are supported. If 'Unassigned' is specified, then extensions without extensionNumber are returned. If not specified, then all extensions are returned",
"enum": [
"Enabled",
"Disabled",
"NotActivated",
"Unassigned"
],
"name": "status",
"in": "query"
},
{
"type": "string",
"description": "Extension type. Multiple values are supported",
"enum": [
"User",
"FaxUser",
"VirtualUser",
"DigitalUser",
"Department",
"Announcement",
"Voicemail",
"SharedLinesGroup",
"PagingOnlyGroup",
"IvrMenu",
"ApplicationExtension",
"ParkLocation"
],
"name": "type",
"in": "query"
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}": {
"get": {
"description": "Get Extension Info by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ExtensionInfo"
}
}
}
},
"put": {
"description": "Update Extension by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ExtensionInfo"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"enum": [
{
"$ref": "#/definitions/ExtensionInfo.Request.StatusInfo"
},
{
"$ref": "#/definitions/ExtensionInfo.Request.ContactInfo"
},
{
"$ref": "#/definitions/ExtensionInfo.Request.PasswordPIN"
},
{
"$ref": "#/definitions/ExtensionInfo.Request.PartnerId"
},
{
"$ref": "#/definitions/ExtensionInfo.Request.Provision"
}
]
}
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/active-calls": {
"get": {
"description": "Get Extension Active (Recent) Calls",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of call log records",
"items": {
"$ref": "#/definitions/CallLogRecord"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
},
"parameters": [
{
"type": "string",
"description": "The direction for the result records. It is allowed to specify more than one direction. If not specified, both inbound and outbound records are returned. Multiple values are accepted",
"enum": [
"Inbound",
"Outbound"
],
"name": "direction",
"in": "query"
},
{
"type": "string",
"description": "Call type of a record. It is allowed to specify more than one type. If not specified, all call types are returned. Multiple values are accepted",
"enum": [
"Voice",
"Fax"
],
"name": "type",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. Default value is '1'",
"name": "page",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default",
"name": "perPage",
"in": "query"
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/address-book-sync": {
"get": {
"description": "Contacts Synchronization",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of contacts with synchronization information",
"items": {
"$ref": "#/definitions/PersonalContactInfo"
}
},
"syncInfo": {
"$ref": "#/definitions/SyncInfo"
},
"nextPageId": {
"type": "integer",
"description": "Internal identifier of the next page, if any"
},
"nextPageUri": {
"type": "string",
"description": "URL of the next page, if any"
}
}
}
}
},
"parameters": [
{
"type": "string",
"description": "Type of synchronization. The default value is 'FSync'",
"enum": [
"FSync",
"ISync"
],
"name": "syncType",
"in": "query"
},
{
"type": "string",
"description": "Value of syncToken property of the last sync request response",
"name": "syncToken",
"in": "query"
},
{
"type": "integer",
"description": "Number of records per page to be returned. The max number of records is 250, which is also the default. For FSync — if the number of records exceeds the parameter value (either specified or default), all of the pages can be retrieved in several requests. For ISync — if the number of records exceeds the page size, the number of incoming changes to this number is limited",
"name": "perPage",
"in": "query"
},
{
"type": "integer",
"description": "Internal identifier of a page. It can be obtained from the 'nextPageId' parameter passed in response body",
"name": "pageId",
"in": "query"
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/address-book/contact": {
"post": {
"description": "Create New Contact",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PersonalContactInfo"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"$ref": "#/definitions/PersonalContactInfo"
}
}
]
},
"get": {
"description": "Get Contact List",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of personal contacts from the extension address book",
"items": {
"$ref": "#/definitions/PersonalContactInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
},
"parameters": [
{
"type": "string",
"description": "If specified, only contacts whose First name or Last name start with the mentioned substring are returned. Case-insensitive",
"name": "startsWith",
"in": "query"
},
{
"type": "string",
"description": "Sorts results by the specified property. The default is 'First Name'",
"enum": [
"FirstName",
"LastName",
"Company"
],
"name": "sortBy",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. Default value is '1'",
"name": "page",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default",
"name": "perPage",
"in": "query"
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/address-book/contact/{contactId}": {
"delete": {
"description": "Delete Contact by ID",
"responses": {
"default": {
"description": "OK"
}
}
},
"get": {
"description": "Get Contact by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PersonalContactInfo"
}
}
}
},
"put": {
"description": "Update Contact by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PersonalContactInfo"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"$ref": "#/definitions/PersonalContactInfo"
}
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
},
{
"$ref": "#/parameters/contactId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/address-book/group": {
"get": {
"description": "Get Contact Group List",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of groups",
"items": {
"$ref": "#/definitions/GroupInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/answering-rule/{answeringRuleId}": {
"get": {
"description": "Get Custom Answering Rule by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AnsweringRuleInfo"
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
},
{
"$ref": "#/parameters/answeringRuleId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/blocked-number": {
"post": {
"description": "Add New Blocked Number",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/BlockedNumberInfo"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"$ref": "#/definitions/BlockedNumberInfo"
}
}
]
},
"get": {
"description": "Get Blocked Number List",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of blocked phone numbers",
"items": {
"$ref": "#/definitions/BlockedNumberInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/blocked-number/{blockedNumberId}": {
"delete": {
"description": "Delete Blocked Number by ID",
"responses": {
"default": {
"description": "OK"
}
}
},
"get": {
"description": "Get Blocked Number by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/BlockedNumberInfo"
}
}
}
},
"put": {
"description": "Update Blocked Number Label",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/BlockedNumberInfo"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"$ref": "#/definitions/BlockedNumberInfo"
}
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
},
{
"$ref": "#/parameters/blockedNumberId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/business-hours": {
"get": {
"description": "Get User Hours Setting",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Canonical URI of a business-hours resource"
},
"schedule": {
"$ref": "#/definitions/BusinessHour.ScheduleInfo"
}
}
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/call-log": {
"delete": {
"description": "Delete Extension Call Log",
"responses": {
"default": {
"description": "OK"
}
},
"parameters": [
{
"type": "string",
"description": "The end datetime for records deletion in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z. The default value is current time",
"format": "date-time",
"name": "dateTo",
"in": "query"
}
]
},
"get": {
"description": "Get Extension Call Log",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of call log records",
"items": {
"$ref": "#/definitions/CallLogRecord"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
},
"parameters": [
{
"type": "string",
"description": "Extension number of a user. If specified, returns call log for a particular extension only. Cannot be specified together with the phoneNumber filter",
"name": "extensionNumber",
"in": "query"
},
{
"type": "string",
"description": "Phone number of a caller/call recipient. If specified, returns all calls (both incoming and outcoming) with the mentioned phone number. Cannot be specified together with the extensionNumber filter",
"name": "phoneNumber",
"in": "query"
},
{
"type": "string",
"description": "The direction for the result records. It is allowed to specify more than one direction. If not specified, both inbound and outbound records are returned. Multiple values are accepted",
"enum": [
"Inbound",
"Outbound"
],
"name": "direction",
"in": "query"
},
{
"type": "string",
"description": "Call type of a record. It is allowed to specify more than one type. If not specified, all call types are returned. Multiple values are accepted",
"enum": [
"Voice",
"Fax"
],
"name": "type",
"in": "query"
},
{
"type": "string",
"description": "The default value is 'Simple' for both account and extension call log",
"enum": [
"Simple",
"Detailed"
],
"name": "view",
"in": "query"
},
{
"type": "boolean",
"description": "'True' if only recorded calls have to be returned",
"name": "withRecording",
"in": "query"
},
{
"type": "string",
"description": "The end datetime for resulting records in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z. The default value is current time",
"format": "date-time",
"name": "dateTo",
"in": "query"
},
{
"type": "string",
"description": "The start datetime for resulting records in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z. The default value is dateTo minus 24 hours",
"format": "date-time",
"name": "dateFrom",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. Default value is '1'",
"name": "page",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default",
"name": "perPage",
"in": "query"
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/call-log-sync": {
"get": {
"description": "Call Log Synchronization",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of call log records with synchronization information. For ISync the total number of returned records is limited to 250; this includes both new records and the old ones, specified by the recordCount parameter",
"items": {
"$ref": "#/definitions/CallLogRecord"
}
},
"syncInfo": {
"$ref": "#/definitions/SyncInfo"
}
}
}
}
},
"parameters": [
{
"type": "string",
"description": "Type of synchronization. 'FSync' is a default value",
"enum": [
"FSync",
"ISync"
],
"name": "syncType",
"in": "query"
},
{
"type": "string",
"description": "Value of syncToken property of last sync request response",
"name": "syncToken",
"in": "query"
},
{
"type": "string",
"description": "The start datetime for resulting records in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z. The default value is the current moment",
"format": "date-time",
"name": "dateFrom",
"in": "query"
},
{
"type": "integer",
"description": "For FSync the parameter is mandatory, it limits the number of records to be returned in response. For ISync it specifies with how many records to extend sync Frame to the past, the maximum number of records is 250",
"name": "recordCount",
"in": "query"
},
{
"type": "string",
"description": "Type of calls to be returned. The default value is 'All'",
"enum": [
"Missed",
"All"
],
"name": "statusGroup",
"in": "query"
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/call-log/{callLogId}": {
"get": {
"description": "Get Extension Call Log Record by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/CallLogInfo"
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
},
{
"$ref": "#/parameters/callLogId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/company-pager": {
"post": {
"description": "Create and Send Pager Message",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/MessageInfo"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"from": {
"$ref": "#/definitions/CallerInfo"
},
"replyOn": {
"type": "integer",
"description": "Internal identifier of a message this message replies to"
},
"text": {
"type": "string",
"description": "Text of a pager message. Max length is 1024 symbols (2-byte UTF-16 encoded). If a character is encoded in 4 bytes in UTF-16 it is treated as 2 characters, thus restricting the maximum message length to 512 symbols"
},
"to": {
"type": "array",
"description": "Optional if replyOn parameter is specified. Receiver of a pager message. The extensionNumber property must be filled",
"items": {
"$ref": "#/definitions/CallerInfo"
}
}
}
}
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/conferencing": {
"get": {
"description": "Get Conferencing info",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ConferencingInfo"
}
}
},
"parameters": [
{
"type": "string",
"description": "Internal identifier of a country. If not specified, the response is returned for the brand country",
"name": "countryId",
"in": "query"
}
]
},
"put": {
"description": "Update Conferencing info",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ConferencingInfo"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"phoneNumbers": {
"type": "array",
"description": "Multiple dial-in phone numbers to connect to audio conference service, relevant for user's brand. Each number is given with the country and location information, in order to let the user choose the less expensive way to connect to a conference. The first number in the list is the primary conference number, that is default and domestic",
"items": {
"$ref": "#/definitions/Conferencing.Request.PhoneNumber"
}
},
"allowJoinBeforeHost": {
"type": "boolean",
"description": "Determines if host user allows conference participants to join before the host"
}
}
}
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/device": {
"get": {
"description": "Get Extension Device List",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of extension devices",
"items": {
"$ref": "#/definitions/DeviceInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/fax": {
"post": {
"description": "Create and Send Fax Message",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/MessageInfo"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"to": {
"type": "array",
"description": "Recipient information. Phone number property is mandatory. Optional for resend fax request",
"items": {
"$ref": "#/definitions/CallerInfo"
}
},
"resolution": {
"type": "string",
"description": "Fax resolution",
"enum": [
"High",
"Low"
]
},
"sendTime": {
"type": "string",
"description": "The datetime to send fax at, in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z. If time is not specified, the fax will be send immediately",
"format": "date-time"
},
"coverIndex": {
"type": "integer",
"description": "Optional. Cover page index. If not specified, the default cover page which is configured in \"Outbound Fax Settings\" is attached. See also 'Available Cover Pages' table below"
},
"coverPageText": {
"type": "string",
"description": "Optional. Cover page text, entered by the fax sender and printed on the cover page. Maximum length is limited to 1024 symbols"
},
"originalMessageId": {
"type": "string",
"description": "Internal identifier of the original fax message which needs to be resent. Mandatory for resend fax request"
}
}
}
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/forwarding-number": {
"post": {
"description": "Add New Forwarding Number",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ForwardingNumberInfo"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"phoneNumber": {
"type": "string",
"description": "Forwarding/Call flip phone number"
},
"label": {
"type": "string",
"description": "Forwarding/Call flip number title"
}
}
}
}
]
},
"get": {
"description": "Get Forwarding Numbers",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of forwarding phone numbers",
"items": {
"$ref": "#/definitions/ForwardingNumberInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
},
"parameters": [
{
"type": "integer",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. Default value is '1'",
"name": "page",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default",
"name": "perPage",
"in": "query"
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/grant": {
"get": {
"description": "Get Extension Grants",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of extension grants with the data",
"items": {
"$ref": "#/definitions/GrantInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
},
"parameters": [
{
"type": "integer",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. Default value is '1'",
"name": "page",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default",
"name": "perPage",
"in": "query"
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/message-store": {
"get": {
"description": "Get Message List",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of records with message information",
"items": {
"$ref": "#/definitions/MessageInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
},
"parameters": [
{
"type": "string",
"description": "Specifies the availability status for the resulting messages. Default value is 'Alive'. Multiple values are accepted",
"enum": [
"Alive",
"Deleted",
"Purged"
],
"name": "availability",
"in": "query"
},
{
"type": "integer",
"description": "Specifies the conversation identifier for the resulting messages",
"format": "int64",
"name": "conversationId",
"in": "query"
},
{
"type": "string",
"description": "The start datetime for resulting messages in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z. The default value is dateTo minus 24 hours",
"format": "date-time",
"name": "dateFrom",
"in": "query"
},
{
"type": "string",
"description": "The end datetime for resulting messages in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z. The default value is current time",
"format": "date-time",
"name": "dateTo",
"in": "query"
},
{
"type": "string",
"description": "The direction for the resulting messages. If not specified, both inbound and outbound messages are returned. Multiple values are accepted",
"enum": [
"Inbound",
"Outbound"
],
"name": "direction",
"in": "query"
},
{
"type": "boolean",
"description": "If 'True', then the latest messages per every conversation ID are returned",
"name": "distinctConversations",
"in": "query"
},
{
"type": "string",
"description": "The type of the resulting messages. If not specified, all messages without message type filtering are returned. Multiple values are accepted",
"enum": [
"Fax",
"SMS",
"VoiceMail",
"Pager",
"Text"
],
"name": "messageType",
"in": "query"
},
{
"type": "string",
"description": "The read status for the resulting messages. Multiple values are accepted",
"enum": [
"Read",
"Unread"
],
"name": "readStatus",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. Default value is '1'",
"name": "page",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default",
"name": "perPage",
"in": "query"
},
{
"type": "string",
"description": "The phone number. If specified, messages are returned for this particular phone number only",
"name": "phoneNumber",
"in": "query"
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/message-store/{messageId}": {
"delete": {
"description": "Delete Message by ID",
"responses": {
"default": {
"description": "OK"
}
},
"parameters": [
{
"type": "boolean",
"description": "If the value is 'True', then the message is purged immediately with all the attachments. The default value is 'False'",
"name": "purge",
"in": "query"
},
{
"type": "integer",
"description": "Internal identifier of a message thread",
"format": "int64",
"name": "conversationId",
"in": "query"
}
]
},
"get": {
"description": "Get Message by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/MessageInfo"
}
}
}
},
"put": {
"description": "Update Message by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/MessageInfo"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"readStatus": {
"type": "string",
"description": "Read status of a message to be changed. Multiple values are accepted",
"enum": [
"Read",
"Unread"
]
}
}
}
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
},
{
"$ref": "#/parameters/messageId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/message-store/{messageId}/content/{attachmentId}": {
"get": {
"description": "Get Message Attachment",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "string",
"format": "binary"
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
},
{
"$ref": "#/parameters/messageId"
},
{
"$ref": "#/parameters/attachmentId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/message-sync": {
"get": {
"description": "Message Synchronization",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of message records with synchronization information",
"items": {
"$ref": "#/definitions/MessageInfo"
}
},
"syncInfo": {
"$ref": "#/definitions/SyncInfo"
}
}
}
}
},
"parameters": [
{
"type": "integer",
"description": "Conversation identifier for the resulting messages. Meaningful for SMS and Pager messages only.",
"format": "int64",
"name": "conversationId",
"in": "query"
},
{
"type": "string",
"description": "The start datetime for resulting messages in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z. The default value is dateTo minus 24 hours",
"format": "date-time",
"name": "dateFrom",
"in": "query"
},
{
"type": "string",
"description": "The end datetime for resulting messages in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z. The default value is current time",
"format": "date-time",
"name": "dateTo",
"in": "query"
},
{
"type": "string",
"description": "Direction for the resulting messages. If not specified, both inbound and outbound messages are returned. Multiple values are accepted",
"enum": [
"Inbound",
"Outbound"
],
"name": "direction",
"in": "query"
},
{
"type": "boolean",
"description": "If 'True', then the latest messages per every conversation ID are returned",
"name": "distinctConversations",
"in": "query"
},
{
"type": "string",
"description": "Type for the resulting messages. If not specified, all types of messages are returned. Multiple values are accepted",
"enum": [
"Fax",
"SMS",
"VoiceMail",
"Pager",
"Text"
],
"name": "messageType",
"in": "query"
},
{
"type": "integer",
"description": "Limits the number of records to be returned (works in combination with dateFrom and dateTo if specified)",
"name": "recordCount",
"in": "query"
},
{
"type": "string",
"description": "Value of syncToken property of last sync request response",
"name": "syncToken",
"in": "query"
},
{
"type": "string",
"description": "Type of message synchronization",
"enum": [
"FSync",
"ISync"
],
"name": "syncType",
"in": "query"
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/phone-number": {
"get": {
"description": "Get Extension Phone Numbers",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of phone numbers",
"items": {
"$ref": "#/definitions/PhoneNumberInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
},
"parameters": [
{
"type": "string",
"description": "Usage type of the phone number",
"enum": [
"MainCompanyNumber",
"AdditionalCompanyNumber",
"CompanyNumber",
"DirectNumber",
"CompanyFaxNumber",
"ForwardedNumber"
],
"name": "usageType",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. Default value is '1'",
"name": "page",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default",
"name": "perPage",
"in": "query"
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/presence": {
"get": {
"description": "Get Extension Presence",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PresenceInfo"
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/profile-image": {
"get": {
"description": "Get Profile Image",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "string",
"format": "binary"
}
}
}
},
"put": {
"description": "Update Profile Image",
"responses": {
"default": {
"description": "OK"
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "string",
"format": "binary"
}
}
]
},
"post": {
"description": "Update Profile Image (same as PUT)",
"responses": {
"default": {
"description": "OK"
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "string",
"format": "binary"
}
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/profile-image/{scaleSize}": {
"get": {
"description": "Get Scaled Profile Image",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "string",
"format": "binary"
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
},
{
"$ref": "#/parameters/scaleSize"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/ringout": {
"post": {
"description": "Initiate RingOut Call",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/RingOutInfo"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"from": {
"$ref": "#/definitions/RingOut.Request.From"
},
"to": {
"$ref": "#/definitions/RingOut.Request.To"
},
"callerId": {
"$ref": "#/definitions/RingOut.Request.To"
},
"playPrompt": {
"type": "boolean",
"description": "The audio prompt that the calling party hears when the call is connected"
},
"country": {
"$ref": "#/definitions/RingOut.Request.CountryInfo"
}
}
}
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/ringout/{ringoutId}": {
"delete": {
"description": "Cancel RingOut Call",
"responses": {
"default": {
"description": "OK"
}
}
},
"get": {
"description": "Get RingOut Call Status",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/RingOutInfo"
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
},
{
"$ref": "#/parameters/ringoutId"
}
]
},
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/sms": {
"post": {
"description": "Create and Send SMS Message",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/MessageInfo"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"from": {
"$ref": "#/definitions/CallerInfo"
},
"to": {
"type": "array",
"description": "Receiver of an SMS message. The phoneNumber property must be filled",
"items": {
"$ref": "#/definitions/CallerInfo"
}
},
"text": {
"type": "string",
"description": "Text of a message. Max length is 1000 symbols (2-byte UTF-16 encoded). If a character is encoded in 4 bytes in UTF-16 it is treated as 2 characters, thus restricting the maximum message length to 500 symbols"
}
}
}
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/extensionId"
}
]
},
"/restapi/v1.0/account/{accountId}/order": {
"post": {
"description": "Create New Order",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"devices": {
"type": "array",
"description": "List of the ordered devices",
"items": {
"$ref": "#/definitions/DeviceInfo"
}
}
}
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"devices": {
"type": "array",
"description": "List of devices to order",
"items": {
"$ref": "#/definitions/DeviceInfo"
}
}
}
}
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
}
]
},
"/restapi/v1.0/account/{accountId}/order/{orderId}": {
"get": {
"description": "Get Order by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Identifier of a device"
},
"uri": {
"type": "string",
"description": "Canonical URI of an order resource"
},
"devices": {
"type": "array",
"description": "List of the ordered devices",
"items": {
"$ref": "#/definitions/DeviceInfo"
}
}
}
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/orderId"
}
]
},
"/restapi/v1.0/account/{accountId}/phone-number": {
"get": {
"description": "Get Account Phone Numbers",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of account phone numbers",
"items": {
"$ref": "#/definitions/PhoneNumberInfo"
}
},
"paging": {
"$ref": "#/definitions/PagingInfo"
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
}
}
}
}
},
"parameters": [
{
"type": "integer",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. Default value is '1'",
"name": "page",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default",
"name": "perPage",
"in": "query"
},
{
"type": "string",
"description": "Usage type of the phone number",
"enum": [
"MainCompanyNumber",
"AdditionalCompanyNumber",
"CompanyNumber",
"DirectNumber",
"CompanyFaxNumber",
"ForwardedNumber"
],
"name": "usageType",
"in": "query"
}
]
},
"parameters": [
{
"$ref": "#/parameters/accountId"
}
]
},
"/restapi/v1.0/account/{accountId}/phone-number/{phoneNumberId}": {
"get": {
"description": "Get Phone Number by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PhoneNumberInfo"
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/phoneNumberId"
}
]
},
"/restapi/v1.0/account/{accountId}/recording/{recordingId}": {
"get": {
"description": "Get Call Recording Metadata",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Internal identifier of the call recording"
},
"contentUri": {
"type": "string",
"description": "Link to the call recording binary content"
},
"contentType": {
"type": "string",
"description": "Call recording file format. Supported format is audio/x-wav"
},
"duration": {
"type": "integer",
"description": "Recorded call duration"
}
}
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/recordingId"
}
]
},
"/restapi/v1.0/account/{accountId}/recording/{recordingId}/content": {
"get": {
"description": "Get Call Recording Content",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "string",
"format": "binary"
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
},
{
"$ref": "#/parameters/recordingId"
}
]
},
"/restapi/v1.0/account/{accountId}/service-info": {
"get": {
"description": "Get Account Service Info",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Canonical URI of the account Service Info resource"
},
"servicePlanName": {
"type": "string",
"description": "Account Service Plan name"
},
"serviceFeatures": {
"type": "array",
"description": "Service features information, see Service Feature List",
"items": {
"$ref": "#/definitions/ServiceFeatureInfo"
}
},
"limits": {
"type": "array",
"description": "Limits which are effective for the account",
"items": {
"$ref": "#/definitions/AccountLimits"
}
}
}
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/accountId"
}
]
},
"/restapi/v1.0/client-info/custom-data/{customDataKey}": {
"put": {
"description": "Update Custom Data by Key",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Custom data access key"
},
"uri": {
"type": "string",
"description": "Link to the custom data"
},
"value": {
"type": "string",
"description": "Description of custom data"
},
"lastModifiedTime": {
"type": "string",
"description": "Time of the last change in custom data"
},
"attachment": {
"$ref": "#/definitions/AttachmentInfo"
}
}
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Custom data access key. Optional. If specified, must match the custom key in the URL"
},
"value": {
"type": "string",
"description": "Description of custom data. Mandatory for create, if there is no attachment specified. Maximum length is limited to 256 symbols"
}
}
}
}
]
},
"parameters": [
{
"$ref": "#/parameters/customDataKey"
}
]
},
"/restapi/v1.0/dictionary/country": {
"get": {
"description": "Get Country List",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of countries with the country data",
"items": {
"$ref": "#/definitions/FullCountryInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
},
"parameters": [
{
"type": "boolean",
"description": "Specifies whether login with the phone numbers of this country is enabled or not",
"name": "loginAllowed",
"in": "query"
},
{
"type": "boolean",
"description": "Specifies if RingCentral sells phone numbers of this country",
"name": "numberSelling",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. Default value is '1'",
"name": "page",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default",
"name": "perPage",
"in": "query"
}
]
}
},
"/restapi/v1.0/dictionary/country/{countryId}": {
"get": {
"description": "Get Country by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/FullCountryInfo"
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/countryId"
}
]
},
"/restapi/v1.0/dictionary/language": {
"get": {
"description": "Get Supported Language List",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "Language data",
"items": {
"$ref": "#/definitions/LanguageInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
}
}
},
"/restapi/v1.0/dictionary/language/{languageId}": {
"get": {
"description": "Get Language by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/LanguageInfo"
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/languageId"
}
]
},
"/restapi/v1.0/dictionary/location": {
"get": {
"description": "Get Location List",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of locations",
"items": {
"$ref": "#/definitions/LocationInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
},
"parameters": [
{
"type": "string",
"description": "Sorts results by the specified property. The default value is 'City'",
"enum": [
"Npa",
"City"
],
"name": "orderBy",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. Default value is '1'.",
"name": "page",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default.",
"name": "perPage",
"in": "query"
},
{
"type": "string",
"description": "Internal identifier of a state",
"name": "stateId",
"in": "query"
},
{
"type": "boolean",
"description": "Specifies if nxx codes are returned",
"name": "withNxx",
"in": "query"
}
]
}
},
"/restapi/v1.0/dictionary/state": {
"get": {
"description": "Get State/Province List",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of states",
"items": {
"$ref": "#/definitions/StateInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
},
"parameters": [
{
"type": "integer",
"description": "Internal identifier of a country",
"name": "countryId",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. Default value is '1'.",
"name": "page",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default",
"name": "perPage",
"in": "query"
},
{
"type": "boolean",
"description": "If 'True', the list of states with phone numbers available for buying is returned. The default value is 'False'",
"name": "withPhoneNumbers",
"in": "query"
}
]
}
},
"/restapi/v1.0/dictionary/state/{stateId}": {
"get": {
"description": "Get State/Province by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/StateInfo"
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/stateId"
}
]
},
"/restapi/v1.0/dictionary/timezone": {
"get": {
"description": "Get Time Zone List",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "List of timezones",
"items": {
"$ref": "#/definitions/TimezoneInfo"
}
},
"navigation": {
"$ref": "#/definitions/NavigationInfo"
},
"paging": {
"$ref": "#/definitions/PagingInfo"
}
}
}
}
},
"parameters": [
{
"type": "string",
"description": "Indicates the page number to retrieve. Only positive number values are allowed. Default value is '1'",
"name": "page",
"in": "query"
},
{
"type": "string",
"description": "Indicates the page size (number of items). If not specified, the value is '100' by default",
"name": "perPage",
"in": "query"
}
]
}
},
"/restapi/v1.0/dictionary/timezone/{timezoneId}": {
"get": {
"description": "Get Time Zone by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/TimezoneInfo"
}
}
}
},
"parameters": [
{
"$ref": "#/parameters/timezoneId"
}
]
},
"/restapi/v1.0/number-parser/parse": {
"post": {
"description": "Parse Phone Number",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Canonical URI of a resource"
},
"homeCountry": {
"type": "array",
"description": "Information on a user home country",
"items": {
"$ref": "#/definitions/ParsePhoneNumber.CountryInfo"
}
},
"phoneNumbers": {
"type": "array",
"description": "Parsed phone numbers data",
"items": {
"$ref": "#/definitions/ParsePhoneNumber.PhoneNumberInfo"
}
},
"originalString": {
"type": "string",
"description": "One of the numbers to be parsed, passed as a string in response"
},
"areaCode": {
"type": "string",
"description": "Area code of the location (3-digit usually), according to the NANP number format, that can be summarized as NPA-NXX-xxxx and covers Canada, the United States, parts of the Caribbean Sea, and some Atlantic and Pacific islands. See North American Numbering Plan for details"
},
"formattedNational": {
"type": "string",
"description": "Domestic format of a phone number"
},
"formattedInternational": {
"type": "string",
"description": "International format of a phone number"
},
"dialable": {
"type": "string",
"description": "Dialing format of a phone number"
},
"e164": {
"type": "string",
"description": "E.164 (11-digits) format of a phone number"
},
"special": {
"type": "boolean",
"description": "\"True\" if the number is in a special format (for example N11 code)"
},
"normalized": {
"type": "string",
"description": "E.164 (11-digits) format of a phone number without the plus sign ('+')"
},
"country": {
"type": "array",
"description": "Information on a country the phone number belongs to",
"items": {
"$ref": "#/definitions/ParsePhoneNumber.CountryInfo"
}
}
}
}
}
},
"parameters": [
{
"type": "string",
"description": "Internal identifier of a home country. The default value is ISO code (ISO 3166) of the user's home country or brand country, if the user is undefined",
"name": "homeCountry",
"in": "query"
},
{
"type": "boolean",
"description": "The default value is \"False\". If \"True\", the numbers that are closer to the home country are given higher priority",
"name": "nationalAsPriority",
"in": "query"
},
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"originalStrings": {
"type": "array",
"description": "Phone numbers passed in a string. The maximum value of phone numbers is limited to 64. The maximum number of symbols in each phone number in a string is 64",
"items": {
"type": "string"
}
}
}
}
}
]
}
},
"/restapi/v1.0/number-pool/lookup": {
"post": {
"description": "Look up Phone Number",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Canonical URI of the phone numbers resource"
},
"records": {
"type": "array",
"description": "List of phone numbers filtered by the specified criteria",
"items": {
"$ref": "#/definitions/LookUpPhoneNumber.PhoneNumberInfo"
}
}
}
}
}
},
"parameters": [
{
"type": "integer",
"description": "Area code of the location",
"name": "areaCode",
"in": "query"
},
{
"type": "string",
"description": "Two-letter country code, complying with the ISO standard",
"name": "countryCode",
"in": "query"
},
{
"type": "string",
"description": "Internal identifier of a country; '1'- the US; '39' - Canada; '224' - the UK. The default value is '1'",
"name": "countryId",
"in": "query"
},
{
"type": "string",
"description": "A string of digits (one and more) that should not appear among the last four digits (line part) of the phone numbers that will be returned. It is possible to specify several exclude parameters. If specified, it is taken into account in all returned phone numbers both in the phone numbers satisfying to parameters of lookup and in alternative phone numbers (in case when extendedSearch is specified)",
"name": "exclude",
"in": "query"
},
{
"type": "boolean",
"description": "If the value is 'False', then the returned numbers exactly correspond to the specified NXX, NPA and LINE or countryCode, areaCode and numberPattern parameters. If the value is 'True', then the resulting numbers are ranked and returned with the rank attribute values (1-10). The default value is 'False'",
"name": "extendedSearch",
"in": "query"
},
{
"type": "string",
"description": "LINE pattern for vanity or wildcard search. Digits, Latin characters and asterisks are allowed (usually 4 characters)",
"name": "line",
"in": "query"
},
{
"type": "string",
"description": "Phone number pattern (for wildcard or vanity search). For NANP countries (US, Canada) is concatenation of nxx (the first three digits) and line. If the first three characters are specified as not digits (e.g. 5** or CAT) then parameter extendedSearch will be ignored.",
"name": "numberPattern",
"in": "query"
},
{
"type": "string",
"description": "NXX pattern for vanity or wildcard search. Digits, Latin characters and asterisks are allowed (usually 3 characters)",
"name": "nxx",
"in": "query"
},
{
"type": "string",
"description": "Area code (mandatory). For example, 800, 844, 855, 866, 877, 888 for North America; and 647 for Canada",
"name": "npa",
"in": "query"
},
{
"type": "string",
"description": "Payment type. Default is 'Local' (it should correlate with the npa provided)",
"enum": [
"TollFree",
"Local"
],
"name": "paymentType",
"in": "query"
},
{
"type": "integer",
"description": "Indicates the page size (number of items). If not specified, the value is '10' by default",
"name": "perPage",
"in": "query"
},
{
"type": "boolean",
"description": "Specifies if SMS activation is available for the number. If specified, it is taken into account in all returned phone numbers both in the phone numbers satisfying to parameters of lookup and in alternative phone numbers (in case when extendedSearch is specified). If not specified, the value is null.",
"name": "smsEnabled",
"in": "query"
}
]
}
},
"/restapi/v1.0/number-pool/reserve": {
"post": {
"description": "Reserve Phone Number",
"responses": {
"default": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "Phone numbers to be reserved/un-reserved",
"items": {
"$ref": "#/definitions/ReservePhoneNumber.Response.ReserveRecord"
}
}
}
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"records": {
"type": "array",
"description": "Phone numbers to be reserved/un-reserved",
"items": {
"$ref": "#/definitions/ReservePhoneNumber.Request.ReserveRecord"
}
}
}
}
}
]
}
},
"/restapi/v1.0/subscription": {
"post": {
"description": "Create New Subscription",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/SubscriptionInfo"
}
}
},
"parameters": [
{
"type": "boolean",
"description": "If 'True' then aggregated presence status is returned in a notification payload in the 'presenceStatus' field",
"name": "aggregated",
"in": "query"
},
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"eventFilters": {
"type": "array",
"description": "Mandatory. Collection of URIs to API resources (see Event Types for details). For APNS transport type only message event filter is available",
"items": {
"type": "string"
}
},
"deliveryMode": {
"$ref": "#/definitions/Subscription.Request.DeliveryMode"
}
}
}
}
]
}
},
"/restapi/v1.0/subscription/{subscriptionId}": {
"delete": {
"description": "Cancel Subscription by ID",
"responses": {
"default": {
"description": "OK"
}
}
},
"get": {
"description": "Get Subscription by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/SubscriptionInfo"
}
}
}
},
"put": {
"description": "Update/Renew Subscription by ID",
"responses": {
"default": {
"description": "OK",
"schema": {
"$ref": "#/definitions/SubscriptionInfo"
}
}
},
"parameters": [
{
"type": "boolean",
"description": "If 'True' then aggregated presence status is returned in a notification payload",
"name": "aggregated",
"in": "query"
},
{
"name": "body",
"in": "body",
"schema": {
"type": "object",
"properties": {
"eventFilters": {
"type": "array",
"description": "Collection of URIs to API resources (see Event Types). Mandatory field",
"items": {
"type": "string"
}
}
}
}
}
]
},
"parameters": [
{
"$ref": "#/parameters/subscriptionId"
}
]
}
}
}
---
swagger: '2.0'
info:
version: v1.0
title: RingCentral API
description: RingCentral Connect Platform API
termsOfService: http://www.ringcentral.com/legal/eulatos.html
host: platform.devtest.ringcentral.com
basePath: "/restapi"
schemes:
- https
produces:
- application/json
consumes:
- application/json
parameters:
accountId:
name: accountId
in: path
required: true
type: string
description: Internal identifier of a RingCentral account or tilde (~) to indicate
the account logged-in within the current session
answeringRuleId:
name: answeringRuleId
in: path
required: true
type: string
description: Internal identifier of an answering rule. The value can be standard
digital ID or specific ID - either business-hours-rule or after-hours-rule
attachmentId:
name: attachmentId
in: path
required: true
type: integer
description: Internal identifier of a message attachment
blockedNumberId:
name: blockedNumberId
in: path
required: true
type: integer
description: Internal identifiers of a blocked number list entry
callLogId:
name: callLogId
in: path
required: true
type: integer
description: Internal identifier of a call log record
contactId:
name: contactId
in: path
required: true
type: integer
description: Internal identifier of a contact record in the RingCentral database
countryId:
name: countryId
in: path
required: true
type: integer
description: Internal identifier of a country
customDataKey:
name: customDataKey
in: path
required: true
type: string
description: Custom data access key. The number of unique custom data keys is
limited to 100 keys per extension, summarized for all the applications. For
example, if you have created 50 custom data keys under the Android mobile client
application for the particular extension, then logged in the iOS application
and created another 50 keys, the web client application won't be allowed to
create any custom data key for that extension
departmentId:
name: departmentId
in: path
required: true
type: integer
description: Internal identifier of a Department extension (same as extensionId
but only the ID of a department extension is valid)
deviceId:
name: deviceId
in: path
required: true
type: integer
description: Internal identifier of a device
extensionId:
name: extensionId
in: path
required: true
type: string
description: Internal identifier of an extension or tilde (~) to indicate the
extension assigned to the account logged-in within the current session
languageId:
name: languageId
in: path
required: true
type: integer
description: Internal identifier of a language
messageId:
name: messageId
in: path
required: true
type: integer
description: Internal identifier of a message
orderId:
name: orderId
in: path
required: true
type: integer
description: Internal identifier of an order
phoneNumberId:
name: phoneNumberId
in: path
required: true
type: integer
description: Internal identifier of a phone number
recordingId:
name: recordingId
in: path
required: true
type: integer
description: Internal identifier of recording (returned in Call Log)
ringoutId:
name: ringoutId
in: path
required: true
type: integer
description: Internal identifier of a RingOut call
scaleSize:
name: scaleSize
in: path
required: true
type: string
description: Dimensions of a profile image which will be returned in response.
enum:
- 90x90
- 195x195
- 584x584
stateId:
name: stateId
in: path
required: true
type: integer
description: Internal identifier of a state
subscriptionId:
name: subscriptionId
in: path
required: true
type: string
description: Internal identifier of a subscription
timezoneId:
name: timezoneId
in: path
required: true
type: integer
description: Internal identifier of a timezone
definitions:
AccountInfo:
type: object
properties:
id:
type: string
description: Internal identifier of an account
uri:
type: string
description: Canonical URI of an account
mainNumber:
type: string
description: Main phone number of the current account
operator:
"$ref": "#/definitions/ExtensionInfo"
partnerId:
type: string
description: Additional account identifier, developed and applied by the client
serviceInfo:
"$ref": "#/definitions/ServiceInfo"
setupWizardState:
type: string
description: Specifies account configuration wizard state (web service setup).
The default value is 'NotStarted'
enum:
- NotStarted
- Incomplete
- Completed
status:
type: string
description: Status of the current account
enum:
- Confirmed
- Disabled
statusInfo:
"$ref": "#/definitions/StatusInfo"
AccountLimits:
type: object
properties:
freeSoftPhoneLinesPerExtension:
type: integer
description: The maximum number of free softphone digital lines per user extension
meetingSize:
type: integer
description: The maximum number of participants in RingCentral Meeting hosted
by this account's user
maxMonitoredExtensionsPerUser:
type: integer
description: The maximum number of extensions which can be included in the
list of users monitored for Presence
AddonInfo:
type: object
properties:
id:
type: string
description: Addon identifier. For HardPhones of certain types, which are
compatible with this addon identifier
count:
type: integer
description: Number of addons. For HardPhones of certain types, which are
compatible with such addon identifier
AnsweringRuleInfo:
type: object
properties:
uri:
type: string
description: Canonical URI to the answering rule resource
id:
type: string
description: Internal identifier of an asnwering rule
type:
type: string
description: Type of an answering rule
enum:
- BusinessHours
- AfterHours
- Custom
name:
type: string
description: Name of an answering rule specified by user
enabled:
type: boolean
description: Specifies if an answering rule is active or inactive
schedule:
"$ref": "#/definitions/ScheduleInfo"
calledNumbers:
type: array
description: Answering rules are applied when calling to selected number(s)
items:
"$ref": "#/definitions/AnsweringRuleInfo.CalleeInfo"
callers:
type: array
description: Answering rules are applied when calls are received from specified
caller(s)
items:
"$ref": "#/definitions/AnsweringRuleInfo.CallerInfo"
callHandlingAction:
type: string
description: Specifies how incoming calls are forwarded
enum:
- ForwardCalls
- TakeMessagesOnly
- PlayAnnouncementOnly
- UnconditionalForwarding
forwarding:
"$ref": "#/definitions/ForwardingInfo"
unconditionalForwarding:
"$ref": "#/definitions/UnconditionalForwardingInfo"
voicemail:
"$ref": "#/definitions/VoicemailInfo"
AnsweringRuleInfo.CalleeInfo:
type: object
properties:
phoneNumber:
type: string
description: Called phone number
AnsweringRuleInfo.CallerInfo:
type: object
properties:
callerId:
type: string
description: Phone number of a caller
name:
type: string
description: Contact name of a caller
AttachmentInfo:
type: object
properties:
uri:
type: string
description: Link to custom data attachment
contentType:
type: string
description: Type of custom data attachment, see also MIME Types
BillingPlanInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a billing plan
name:
type: string
description: Billing plan name
durationUnit:
type: string
description: Duration period
enum:
- Month
- Day
duration:
type: string
description: Number of duration units
type:
type: string
description: Billing plan type
enum:
- Initial
- Regular
- Suspended
- Trial
- TrialNoCC
- Free
BlockedNumberInfo:
type: object
properties:
id:
type: string
description: Standard resource properties ID and canonical URI, see the section
called “Resource Identification Properties”
uri:
type: string
description: Canonical URI of a blocked number resource
name:
type: string
description: Name assigned by a user to a blocked phone number
phoneNumber:
type: string
description: Phone number to be blocked
BrandInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a brand
name:
type: string
description: Brand name, for example "RingCentral UK", "ClearFax"
homeCountry:
"$ref": "#/definitions/CountryInfo"
BusinessAddressInfo:
type: object
properties:
country:
type: string
description: Name of a country
state:
type: string
description: Name of a state/province
city:
type: string
description: Name of a city
street:
type: string
description: Street address
zip:
type: string
description: Zip code
BusinessHour.ScheduleInfo:
type: object
properties:
weeklyRanges:
"$ref": "#/definitions/WeeklyScheduleInfo"
CallLogInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a cal log record
uri:
type: string
description: Canonical URI of a call log record
sessionId:
type: string
description: Internal identifier of a call session
from:
"$ref": "#/definitions/CallerInfo"
to:
"$ref": "#/definitions/CallerInfo"
type:
type: string
description: Call type
enum:
- Voice
- Fax
direction:
type: string
description: Call direction
enum:
- Inbound
- Outbound
action:
type: string
description: Action description of the call operation
enum:
- Unknown
- Phone Call
- Phone Login
- Incoming Fax
- Accept Call
- FindMe
- FollowMe
- Outgoing Fax
- Call Return
- Calling Card
- Ring Directly
- RingOut Web
- VoIP Call
- RingOut PC
- RingMe
- Transfer
- 411 Info
- Emergency
- E911 Update
- Support
- RingOut Mobile
result:
type: string
description: Status description of the call operation
enum:
- Unknown
- ResultInProgress
- Missed
- Call accepted
- Voicemail
- Rejected
- Reply
- Received
- Receive Error
- Fax on Demand
- Partial Receive
- Blocked
- Call connected
- No Answer
- International Disabled
- Busy
- Send Error
- Sent
- No fax machine
- ResultEmpty
- Account
- Suspended
- Call Failed
- Call Failure
- Internal Error
- IP Phone offline
- Restricted Number
- Wrong Number
- Stopped
- Hang up
- Poor Line Quality
- Partially Sent
- International Restriction
- Abandoned
- Declined
- Fax Receipt Error
- Fax Send Error
startTime:
type: string
description: The call start datetime in ISO 8601 format including timezone,
for example 2016-03-10T18:07:52.534Z
format: date-time
duration:
type: integer
description: Call duration in seconds
recording:
"$ref": "#/definitions/RecordingInfo"
CallLogRecord:
type: object
properties:
id:
type: string
description: Internal identifier of a cal log record
uri:
type: string
description: Canonical URI of a call log record
sessionId:
type: string
description: Internal identifier of a call session
from:
"$ref": "#/definitions/CallerInfo"
to:
"$ref": "#/definitions/CallerInfo"
type:
type: string
description: Call type
enum:
- Voice
- Fax
direction:
type: string
description: Call direction
enum:
- Inbound
- Outbound
action:
type: string
description: Action description of the call operation
enum:
- Unknown
- Phone Call
- Phone Login
- Incoming Fax
- Accept Call
- FindMe
- FollowMe
- Outgoing Fax
- Call Return
- Calling Card
- Ring Directly
- RingOut Web
- VoIP Call
- RingOut PC
- RingMe
- Transfer
- 411 Info
- Emergency
- E911 Update
- Support
- RingOut Mobile
result:
type: string
description: Status description of the call operation
enum:
- Unknown
- ResultInProgress
- Missed
- Call accepted
- Voicemail
- Rejected
- Reply
- Received
- Receive Error
- Fax on Demand
- Partial Receive
- Blocked
- Call connected
- No Answer
- International Disabled
- Busy
- Send Error
- Sent
- No fax machine
- ResultEmpty
- Account
- Suspended
- Call Failed
- Call Failure
- Internal Error
- IP Phone offline
- Restricted Number
- Wrong Number
- Stopped
- Hang up
- Poor Line Quality
- Partially Sent
- International Restriction
- Abandoned
- Declined
- Fax Receipt Error
- Fax Send Error
startTime:
type: string
description: The call start datetime in ISO 8601 format including timezone,
for example 2016-03-10T18:07:52.534Z
format: date-time
duration:
type: integer
description: Call duration in seconds
recording:
"$ref": "#/definitions/RecordingInfo"
lastModifiedTime:
type: string
description: For 'Detailed' view only. The datetime when the call log record
was modified in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z
format: date-time
transport:
type: string
description: For 'Detailed' view only. Call transport
enum:
- PSTN
- VoIP
legs:
type: array
description: For 'Detailed' view only. Leg description
items:
"$ref": "#/definitions/LegInfo"
CallerInfo:
type: object
properties:
phoneNumber:
type: string
description: Phone number of a party. Usually it is a plain number including
country and area code like 18661234567. But sometimes it could be returned
from database with some formatting applied, for example (866)123-4567. This
property is filled in all cases where parties communicate by means of global
phone numbers, for example when calling to direct numbers or sending/receiving
SMS
extensionNumber:
type: string
description: Extension short number (usually 3 or 4 digits). This property
is filled when parties communicate by means of short internal numbers, for
example when calling to other extension or sending/receiving Company Pager
message
location:
type: string
description: Contains party location (city, state) if one can be determined
from phoneNumber. This property is filled only when phoneNumber is not empty
and server can calculate location information from it (for example, this
information is unavailable for US toll-free numbers)
name:
type: string
description: Symbolic name associated with a party. If the phone does not
belong to the known extension, only the location is returned, the name is
not determined then
Conferencing.Request.PhoneNumber:
type: object
properties:
phoneNumber:
type: string
description: Dial-in phone number to connect to a conference
default:
type: boolean
description: "'True' if the number is default for the conference. Default
conference number is a domestic number that can be set by user (otherwise
it is set by the system). Only one default number per country is allowed"
ConferencingInfo:
type: object
properties:
uri:
type: string
description: Canonical URI of a conferencing
allowJoinBeforeHost:
type: boolean
description: Determines if host user allows conference participants to join
before the host
hostCode:
type: string
description: Access code for a host user
mode:
type: string
description: Internal parameter specifying conferencing engine
participantCode:
type: string
description: Access code for any participant
phoneNumber:
type: string
description: Primary conference phone number for user's home country returned
in E.164 (11-digits) format
tapToJoinUri:
type: string
description: Short URL leading to the service web page Tap to Join for audio
conference bridge
phoneNumbers:
type: array
description: List of multiple dial-in phone numbers to connect to audio conference
service, relevant for user's brand. Each number is given with the country
and location information, in order to let the user choose the less expensive
way to connect to a conference. The first number in the list is the primary
conference number, that is default and domestic
items:
"$ref": "#/definitions/ConferencingInfo.PhoneNumberInfo"
ConferencingInfo.PhoneNumberInfo:
type: object
properties:
country:
"$ref": "#/definitions/ConferencingInfo.PhoneNumberInfo.CountryInfo"
default:
type: boolean
description: "'True' if the number is default for the conference. Default
conference number is a domestic number that can be set by user (otherwise
it is set by the system). Only one default number per country is allowed"
hasGreeting:
type: boolean
description: "'True' if the greeting message is played on this number"
location:
type: string
description: Location (city, region, state) of a conference phone number
phoneNumber:
type: string
description: Dial-in phone number to connect to a conference
ConferencingInfo.PhoneNumberInfo.CountryInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a country
uri:
type: string
description: Canonical URI of a country
callingCode:
type: string
description: Country calling code defined by ITU-T recommendations E.123 and
E.164, see Calling Codes
emergencyCalling:
type: boolean
description: Emergency calling feature availability/emergency address requirement
indicator
isoCode:
type: string
description: Country code according to the ISO standard, see ISO 3166
name:
type: string
description: Official name of a country
ContactAddressInfo:
type: object
properties:
country:
type: string
description: Country name of extension user company. Not returned for Address
Book
state:
type: string
description: State/province name of extension user company
city:
type: string
description: City name of extension user company
street:
type: string
description: Street address of extension user company
zip:
type: string
description: Zip code of extension user company
ContactInfo:
type: object
properties:
firstName:
type: string
description: For User extension type only. Extension user first name
lastName:
type: string
description: For User extension type only. Extension user last name
company:
type: string
description: Extension user company name
email:
type: string
description: Email of extension user
businessPhone:
type: string
description: Extension user contact phone number
businessAddress:
"$ref": "#/definitions/ContactAddressInfo"
CountryInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a home country
uri:
type: string
description: Canonical URI of a home country
name:
type: string
description: Official name of a home country
DeliveryMode:
type: object
properties:
transportType:
type: string
description: Notifications transportation provider name. 'APNS' (Apple Push
Notifications Service)
enum:
- PubNub
- APNS
- PubNub/APNS/VoIP
encryption:
type: boolean
description: Optional parameter. Specifies if the message will be encrypted
or not. For APNS transport type the value is always "false"
address:
type: string
description: PubNub channel name. For APNS transport type - internal identifier
of a device "device_token"
subscriberKey:
type: string
description: PubNub subscriber credentials required to subscribe to the channel
secretKey:
type: string
description: PubNub subscriber credentials required to subscribe to the channel.
Optional (for PubNub transport type only)
encryptionAlgorithm:
type: string
description: Encryption algorithm 'AES' (for PubNub transport type only)
encryptionKey:
type: string
description: Key for notification message decryption (for PubNub transport
type only)
Department.Response.ExtensionInfo:
type: object
properties:
id:
type: string
description: Internal identifier of an extension
uri:
type: string
description: Canonical URI of an extension
extensionNumber:
type: string
description: Number of department extension
partnerId:
type: string
description: For Partner Applications Internal identifier of an extension
created by partner. The RingCentral supports the mapping of accounts and
stores the corresponding account ID/extension ID for each partner ID of
a client application. In request URIs partner IDs are accepted instead of
regular RingCentral native IDs as path parameters using pid = XXX clause.
Though in response URIs contain the corresponding account IDs and extension
IDs. In all request and response bodies these values are reflected via partnerId
attributes of account and extension
DepartmentInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a department extension
uri:
type: string
description: Canonical URI of a department extension
extensionNumber:
type: string
description: Number of a department extension
DeviceInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a device
uri:
type: string
description: Canonical URI of a device
sku:
type: string
description: Device identification number (stock keeping unit) in the format
TP-ID [-AT-AC], where TP is device type (HP for RC HardPhone, DV for all
other devices including softphone); ID - device model ID; AT -addon type
ID; AC - addon count (if any). For example 'HP-56-2-2'
type:
type: string
description: Device type. The default value is 'HardPhone'
enum:
- SoftPhone
- OtherPhone
- HardPhone
name:
type: string
description: Device name. Mandatory if ordering "SoftPhone" or "OtherPhone".
Optional for "HardPhone". If not specified for HardPhone, then device "model"
name is used as device "name"
serial:
type: string
description: Serial number for HardPhone (is returned only when the phone
is shipped and provisioned); endpoint_id for softphone and mobile applications
computerName:
type: string
description: PC name for softphone
model:
"$ref": "#/definitions/ModelInfo"
extension:
"$ref": "#/definitions/DeviceInfo.ExtensionInfo"
emergencyServiceAddress:
"$ref": "#/definitions/EmergencyAddressInfo"
phoneLines:
"$ref": "#/definitions/PhoneLinesInfo"
shipping:
"$ref": "#/definitions/ShippingInfo"
boxBillingId:
type: integer
description: Box billing identifier of a device. Applicable only for HardPhones.
It is an alternative way to identify the device to be ordered. Either "model"
structure, or "boxBillingId" must be specified for HardPhone
DeviceInfo.ExtensionInfo:
type: object
properties:
id:
type: string
description: Internal identifier of an extension
uri:
type: string
description: Canonical URI of an extension
extensionNumber:
type: string
description: Number of department extension
partnerId:
type: string
description: For Partner Applications Internal identifier of an extension
created by partner. The RingCentral supports the mapping of accounts and
stores the corresponding account ID/extension ID for each partner ID of
a client application. In request URIs partner IDs are accepted instead of
regular RingCentral native IDs as path parameters using pid = XXX clause.
Though in response URIs contain the corresponding account IDs and extension
IDs. In all request and response bodies these values are reflected via partnerId
attributes of account and extension
EmergencyAddressInfo:
type: object
properties:
customerName:
type: string
description: Name of a customer
street:
type: string
description: Street address, line 1 - street address, P.O. box, company name,
c/o
street2:
type: string
description: Street address, line 2 - apartment, suite, unit, building, floor,
etc.
city:
type: string
description: City name
state:
type: string
description: State/province name
zip:
type: string
description: Zip code
country:
type: string
description: Country name
ExtensionInfo:
type: object
properties:
id:
type: string
description: Internal identifier of an extension
uri:
type: string
description: Canonical URI of an extension
contact:
"$ref": "#/definitions/ContactInfo"
departments:
"$ref": "#/definitions/DepartmentInfo"
extensionNumber:
type: string
description: Number of department extension
name:
type: string
description: Extension user name
partnerId:
type: string
description: For Partner Applications Internal identifier of an extension
created by partner. The RingCentral supports the mapping of accounts and
stores the corresponding account ID/extension ID for each partner ID of
a client application. In request URIs partner IDs are accepted instead of
regular RingCentral native IDs as path parameters using pid = XXX clause.
Though in response URIs contain the corresponding account IDs and extension
IDs. In all request and response bodies these values are reflected via partnerId
attributes of account and extension
permissions:
"$ref": "#/definitions/ExtensionPermissions"
profileImage:
"$ref": "#/definitions/ProfileImageInfo"
references:
type: array
description: List of non-RC internal identifiers assigned to an extension
items:
"$ref": "#/definitions/ReferenceInfo"
regionalSettings:
"$ref": "#/definitions/RegionalSettings"
serviceFeatures:
type: array
description: Extension service features returned in response only when the
logged-in user requests his/her own extension info, see also Extension Service
Features
items:
"$ref": "#/definitions/ExtensionServiceFeatureInfo"
setupWizardState:
type: string
description: Specifies extension configuration wizard state (web service setup).
The default value is 'NotStarted'
enum:
- NotStarted
- Incomplete
- Completed
status:
type: string
description: Extension current state. If the status is 'Unassigned'. Returned
for all extensions
enum:
- Enabled
- Disabled
- NotActivated
- Unassigned
statusInfo:
"$ref": "#/definitions/StatusInfo"
type:
type: string
description: Extension type
enum:
- User
- FaxUser
- VirtualUser
- DigitalUser
- Department
- Announcement
- Voicemail
- SharedLinesGroup
- PagingOnlyGroup
- IvrMenu
- ApplicationExtension
- ParkLocation
ExtensionInfo.Request.ContactInfo:
type: object
properties:
contact:
"$ref": "#/definitions/ContactInfo"
regionalSettings:
"$ref": "#/definitions/ExtensionInfo.Request.ContactInfo.RegionalSettings"
setupWizardState:
type: string
description: Specifies extension configuration wizard state (web service setup).
The default value is 'NotStarted'
enum:
- NotStarted
- Incomplete
- Completed
department:
type: string
description: Extension user department
ExtensionInfo.Request.ContactInfo.RegionalSettings:
type: object
properties:
timezone:
"$ref": "#/definitions/ExtensionInfo.Request.ContactInfo.RegionalSettings.Timezone"
language:
"$ref": "#/definitions/ExtensionInfo.Request.ContactInfo.RegionalSettings.Language"
greetingLanguage:
"$ref": "#/definitions/ExtensionInfo.Request.ContactInfo.RegionalSettings.GreetingLanguage"
formattingLocale:
"$ref": "#/definitions/ExtensionInfo.Request.ContactInfo.RegionalSettings.FormattingLocale"
ExtensionInfo.Request.ContactInfo.RegionalSettings.FormattingLocale:
type: object
properties:
id:
type: string
description: Internal identifier of a formatting language
ExtensionInfo.Request.ContactInfo.RegionalSettings.GreetingLanguage:
type: object
properties:
id:
type: string
description: Internal identifier of a greeting language
ExtensionInfo.Request.ContactInfo.RegionalSettings.Language:
type: object
properties:
id:
type: string
description: Language identifier. The default value is "1033" (English US)
ExtensionInfo.Request.ContactInfo.RegionalSettings.Timezone:
type: object
properties:
id:
type: string
description: Timezone identifier. The default value is "58" (US&Canada)
ExtensionInfo.Request.PartnerId:
type: object
properties:
partnerId:
type: string
description: Extension partner identifier
ExtensionInfo.Request.PasswordPIN:
type: object
properties:
password:
type: string
description: Password for extension
ivrPin:
type: string
description: IVR PIN
ExtensionInfo.Request.Provision:
type: object
properties:
status:
type: string
description: Mandatory. Resulting extension status
enum:
- NotActivated
contact:
"$ref": "#/definitions/ExtensionInfo.Request.Provision.ContactInfo"
ExtensionInfo.Request.Provision.ContactInfo:
type: object
properties:
firstName:
type: string
description: Mandatory. Extension user first name
lastName:
type: string
description: Mandatory. Extension user last name
email:
type: string
description: Mandatory. Extension user contact email
ExtensionInfo.Request.StatusInfo:
type: object
properties:
status:
type: string
description: Required extension status
enum:
- Disabled
- Enabled
- NotActivated
statusInfo:
"$ref": "#/definitions/StatusInfo"
ExtensionPermissions:
type: object
properties:
admin:
"$ref": "#/definitions/PermissionInfo"
internationalCalling:
"$ref": "#/definitions/PermissionInfo"
ExtensionServiceFeatureInfo:
type: object
properties:
enabled:
type: boolean
description: Feature status; shows feature availability for an extension
featureName:
type: string
description: Feature name, see all available values in Service Feature List
reason:
type: string
description: Reason of limitation for a particular service feature. Returned
only if the enabled parameter value is 'False', see Service Feature Limitations
and Reasons. When retrieving service features for an extension, the reasons
for the limitations, if any, are returned in response
FormattingLocaleInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a formatting language
localeCode:
type: string
description: Localization code of a formatting language
name:
type: string
description: Official name of a formatting language
ForwardingInfo:
type: object
properties:
notifyMySoftPhones:
type: boolean
description: Specifies if the user's softphone(s) are notified before forwarding
the incoming call to desk phones and forwarding numbers
notifyAdminSoftPhones:
type: boolean
description: Specifies if the administrator's softphone is notified before
forwarding the incoming call to desk phones and forwarding numbers. The
default value is 'False'
softPhonesRingCount:
type: integer
description: Number of rings before forwarding starts
ringingMode:
type: string
description: Specifies the order in which forwarding numbers ring. 'Sequentially'
means that forwarding numbers are ringing one at a time, in order of priority.
'Simultaneously' means that forwarding numbers are ring all at the same
time
enum:
- Sequentially
- Simultaneously
rules:
type: array
description: Information on a call forwarding rule
items:
"$ref": "#/definitions/RuleInfo"
ForwardingNumberInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a forwarding/call flip phone number
uri:
type: string
description: Canonical URI of a forwarding/call flip phone number
phoneNumber:
type: string
description: Forwarding/Call flip phone number
label:
type: string
description: Forwarding/Call flip number title
features:
type: string
description: Type of option this phone number is used for. Multiple values
are accepted
enum:
- CallFlip
- CallForwarding
flipNumber:
type: integer
description: Number assigned to the call flip phone number, corresponds to
the shortcut dial number
FullCountryInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a country
uri:
type: string
description: Canonical URI of a country
callingCode:
type: string
description: Country calling code defined by ITU-T recommendations E.123 and
E.164, see Calling Codes
emergencyCalling:
type: boolean
description: Emergency calling feature availability/emergency address requirement
indicator
isoCode:
type: string
description: Country code according to the ISO standard, see ISO 3166
name:
type: string
description: Official name of a country
numberSelling:
type: boolean
description: Determines whether phone numbers are available for a country
loginAllowed:
type: boolean
description: Specifies whether login with the phone numbers of this country
is enabled or not
GrantInfo:
type: object
properties:
uri:
type: string
description: Canonical URI of a grant
extension:
"$ref": "#/definitions/GrantInfo.ExtensionInfo"
callPickup:
type: boolean
description: Specifies if picking up of other extensions' calls is allowed
for the extension. If 'Presence' feature is disabled for the given extension,
the flag is not returned
callMonitoring:
type: boolean
description: Specifies if monitoring of other extensions' calls is allowed
for the extension. If 'CallMonitoring' feature is disabled for the given
extension, the flag is not returned
GrantInfo.ExtensionInfo:
type: object
properties:
id:
type: string
description: Internal identifier of an extension
uri:
type: string
description: Canonical URI of an extension
extensionNumber:
type: string
description: Extension short number (usually 3 or 4 digits)
type:
type: string
description: Extension type
enum:
- User
- Fax User
- VirtualUser
- DigitalUser
- Department
- Announcement
- Voicemail
- SharedLinesGroup
- PagingOnly
- IvrMenu
- ApplicationExtension
- Park Location
GreetingLanguageInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a greeting language
localeCode:
type: string
description: Localization code of a greeting language
name:
type: string
description: Official name of a greeting language
GroupInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a group
uri:
type: string
description: Canonical URI of a group
contactsCount:
type: integer
description: Amount of contacts in a group
groupName:
type: string
description: Name of a group
notes:
type: string
description: Notes for a group
LanguageInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a language
uri:
type: string
description: Canonical URI of a language
greeting:
type: boolean
description: Indicates whether a language is available as greeting language
formattingLocale:
type: boolean
description: Indicates whether a language is available as formatting locale
localeCode:
type: string
description: Localization code of a language
name:
type: string
description: Official name of a language
ui:
type: boolean
description: Indicates whether a language is available as UI language
LegInfo:
type: object
properties:
action:
type: string
description: Action description of the call operation
enum:
- Unknown
- Phone Call
- Phone Login
- Incoming Fax
- Accept Call
- FindMe
- FollowMe
- Outgoing Fax
- Call Return
- Calling Card
- Ring Directly
- RingOut Web
- VoIP Call
- RingOut PC
- RingMe
- Transfer
- 411 Info
- Emergency
- E911 Update
- Support
- RingOut Mobile
direction:
type: string
description: Call direction
enum:
- Inbound
- Outbound
duration:
type: integer
description: Call duration in seconds
extension:
"$ref": "#/definitions/LegInfo.ExtensionInfo"
legType:
type: string
description: Leg type
startTime:
type: string
description: The call start datetime in ISO 8601 format including timezone,
for example 2016-03-10T18:07:52.534Z
format: date-time
type:
type: string
description: Call type
enum:
- Voice
- Fax
result:
type: string
description: Status description of the call operation
enum:
- Unknown
- ResultInProgress
- Missed
- Call accepted
- Voicemail
- Rejected
- Reply
- Received
- Receive Error
- Fax on Demand
- Partial Receive
- Blocked
- Call connected
- No Answer
- International Disabled
- Busy
- Send Error
- Sent
- No fax machine
- ResultEmpty
- Account
- Suspended
- Call Failed
- Call Failure
- Internal Error
- IP Phone offline
- Restricted Number
- Wrong Number
- Stopped
- Hang up
- Poor Line Quality
- Partially Sent
- International Restriction
- Abandoned
- Declined
- Fax Receipt Error
- Fax Send Error
from:
"$ref": "#/definitions/CallerInfo"
to:
"$ref": "#/definitions/CallerInfo"
transport:
type: string
description: Call transport
enum:
- PSTN
- VoIP
recording:
"$ref": "#/definitions/RecordingInfo"
LegInfo.ExtensionInfo:
type: object
properties:
id:
type: integer
description: Internal identifier of an extension
uri:
type: string
description: Canonical URI of an extension
LocationInfo:
type: object
properties:
uri:
type: string
description: Canonical URI of a location
areaCode:
type: string
description: Area code of the location
city:
type: string
description: Official name of the city, belonging to the certain state
npa:
type: string
description: Area code of the location (3-digit usually), according to the
NANP number format, that can be summarized as NPA-NXX-xxxx and covers Canada,
the United States, parts of the Caribbean Sea, and some Atlantic and Pacific
islands. See for details North American Numbering Plan
nxx:
type: string
description: Central office code of the location, according to the NANP number
format, that can be summarized as NPA-NXX-xxxx and covers Canada, the United
States, parts of the Caribbean Sea, and some Atlantic and Pacific islands.
See for details North American Numbering Plan
state:
type: string
description: ID and URI of the state this location belongs to, see State Info
LookUpPhoneNumber.PhoneNumberInfo:
type: object
properties:
phoneNumber:
type: string
description: Phone number in E.164 format without a '+'
formattedNumber:
type: string
description: Phone number formatted according to current brand's default country
vanityPattern:
type: string
description: Vanity pattern for this number. Returned only when vanity search
option is requested. Vanity pattern corresponds to request parameters nxx
plus line or numberPattern
rank:
type: integer
description: The value is returned if the extendedSearch parameter is true.
'10' is the closest match
MessageAttachmentInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a message attachment
uri:
type: string
description: Canonical URI of a message attachment
type:
type: string
description: Type of message attachment
enum:
- AudioRecording
- AudioTranscription
- Text
- SourceDocument
- RenderedDocument
contentType:
type: string
description: MIME type for a given attachment, for instance 'audio/wav'
vmDuration:
type: integer
description: Voicemail only Duration of the voicemail in seconds
MessageInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a message
uri:
type: string
description: Canonical URI of a message
attachments:
type: array
description: The list of message attachments
items:
"$ref": "#/definitions/MessageAttachmentInfo"
availability:
type: string
description: Message availability status. Message in 'Deleted' state is still
preserved with all its attachments and can be restored. 'Purged' means that
all attachments are already deleted and the message itself is about to be
physically deleted shortly
enum:
- Alive
- Deleted
- Purged
conversationId:
type: integer
description: SMS and Pager only. Identifier of the conversation the message
belongs to
format: int64
creationTime:
type: string
description: Message creation datetime in ISO 8601 format including timezone,
for example 2016-03-10T18:07:52.534Z
format: date-time
deliveryErrorCode:
type: string
description: SMS only. Delivery error code returned by gateway
direction:
type: string
description: Message direction. Note that for some message types not all directions
are allowed. For example voicemail messages can be only inbound
enum:
- Inbound
- Outbound
faxPageCount:
type: integer
description: Fax only. Page count in fax message
faxResolution:
type: string
description: Fax only. Resolution of fax message. ('High' for black and white
image scanned at 200 dpi, 'Low' for black and white image scanned at 100
dpi)
enum:
- High
- Low
from:
"$ref": "#/definitions/MessageInfo.CallerInfo"
lastModifiedTime:
type: string
description: The datetime when the message was modified on server in ISO 8601
format including timezone, for example 2016-03-10T18:07:52.534Z
format: date-time
messageStatus:
type: string
description: Message status. Different message types may have different allowed
status values.
enum:
- Queued
- Sent
- Delivered
- DeliveryFailed
- SendingFailed
- Received
pgToDepartment:
type: boolean
description: Pager only True if at least one of the message recipients is
Department extension
priority:
type: string
description: Message priority
enum:
- Normal
- High
readStatus:
type: string
description: Message read status
enum:
- Read
- Unread
smsDeliveryTime:
type: string
description: SMS only. The datetime when outbound SMS was delivered to recipient's
handset in ISO 8601 format including timezone, for example 2016-03-10T18:07:52.534Z.
It is filled only if the carrier sends a delivery receipt to RingCentral
format: date-time
smsSendingAttemptsCount:
type: integer
description: SMS only. Number of attempts made to send an outbound SMS to
the gateway (if gateway is temporary unavailable)
subject:
type: string
description: Message subject. For SMS and Pager messages it replicates message
text which is also returned as an attachment
to:
type: array
description: Recipient information
items:
"$ref": "#/definitions/MessageInfo.CallerInfo"
type:
type: string
description: Message type
enum:
- Fax
- SMS
- VoiceMail
- Pager
- Text
vmTranscriptionStatus:
type: string
description: Voicemail only. Status of voicemail to text transcription. If
VoicemailToText feature is not activated for account, the 'NotAvailable'
value is returned
enum:
- NotAvailable
- InProgress
- TimedOut
- Completed
- CompletedPartially
- Failed
MessageInfo.CallerInfo:
type: object
properties:
extensionNumber:
type: string
description: Extension short number (usually 3 or 4 digits). This property
is filled when parties communicate by means of short internal numbers, for
example when calling to other extension or sending/receiving Company Pager
message
location:
type: string
description: Contains party location (city, state) if one can be determined
from phoneNumber. This property is filled only when phoneNumber is not empty
and server can calculate location information from it (for example, this
information is unavailable for US toll-free numbers)
messageStatus:
type: string
description: Status of a message. Returned for outbound fax messages only
enum:
- Queued
- Sent
- Delivered
- DeliveryFailed
- SendingFailed
- Received
faxErrorCode:
type: string
description: Fax only. Error code returned in case of fax sending failure.
Returned if messageStatus value is 'SendingFailed'
enum:
- Undefined
- NoFaxSendPermission
- NoInternationalPermission
- NoFaxMachine
- OutgoingCallError
- RenderingFailed
- TooManyPages
- ReturnToDBQueue
- NoCallTime
- WrongNumber
- ProhibitedNumber
- InternalError
- FaxSendingProhibited
- ThePhoneIsBlacklisted
- UserNotFound
- ConvertError
- DBGeneralError
- SkypeBillingFailed
- AccountSuspended
- ProhibitedDestination
- InternationalDisabled
name:
type: string
description: Symbolic name associated with a party. If the phone does not
belong to the known extension, only the location is returned, the name is
not determined then
phoneNumber:
type: string
description: Phone number of a party. Usually it is a plain number including
country and area code like 18661234567. But sometimes it could be returned
from database with some formatting applied, for example (866)123-4567. This
property is filled in all cases where parties communicate by means of global
phone numbers, for example when calling to direct numbers or sending/receiving
SMS
ModelInfo:
type: object
properties:
id:
type: string
description: Device model identifier. Mandatory when ordering a HardPhone
if boxBillingId is not used for ordering
name:
type: string
description: Device name
addons:
type: array
description: Addons description
items:
"$ref": "#/definitions/AddonInfo"
NavigationInfo:
type: object
properties:
firstPage:
type: string
description: Canonical URI for the first page of the list
nextPage:
type: string
description: Canonical URI for the next page of the list
previousPage:
type: string
description: Canonical URI for the previous page of the list
lastPage:
type: string
description: Canonical URI for the last page of the list
PagingInfo:
type: object
properties:
page:
type: integer
description: The current page number. 1-indexed, so the first page is 1 by
default. May be omitted if result is empty (because non-existent page was
specified or perPage=0 was requested)
perPage:
type: integer
description: Current page size, describes how many items are in each page.
Default value is 100. Maximum value is 1000. If perPage value in the request
is greater than 1000, the maximum value (1000) is applied
pageStart:
type: integer
description: The zero-based number of the first element on the current page.
Omitted if the page is omitted or result is empty
pageEnd:
type: integer
description: The zero-based index of the last element on the current page.
Omitted if the page is omitted or result is empty
totalPages:
type: integer
description: The total number of pages in a dataset. May be omitted for some
resources due to performance reasons
totalElements:
type: integer
description: The total number of elements in a dataset. May be omitted for
some resource due to performance reasons
ParsePhoneNumber.CountryInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a country
uri:
type: string
description: Canonical URI of a country
callingCode:
type: string
description: Country calling code defined by ITU-T recommendations E.123 and
E.164, see Calling Codes
emergencyCalling:
type: boolean
description: Emergency calling feature availability/emergency address requirement
indicator
isoCode:
type: string
description: Country code according to the ISO standard, see ISO 3166
name:
type: string
description: Official name of a country
ParsePhoneNumber.PhoneNumberInfo:
type: object
properties:
areaCode:
type: string
description: Area code of the location (3-digit usually), according to the
NANP number format, that can be summarized as NPA-NXX-xxxx and covers Canada,
the United States, parts of the Caribbean Sea, and some Atlantic and Pacific
islands. See North American Numbering Plan for details
country:
type: array
description: Information on a country the phone number belongs to
items:
"$ref": "#/definitions/ParsePhoneNumber.CountryInfo"
dialable:
type: string
description: Dialing format of a phone number
e164:
type: string
description: E.164 (11-digits) format of a phone number
formattedInternational:
type: string
description: International format of a phone number
formattedNational:
type: string
description: Domestic format of a phone number
originalString:
type: string
description: One of the numbers to be parsed, passed as a string in response
special:
type: boolean
description: '"True" if the number is in a special format (for example N11
code)'
normalized:
type: string
description: E.164 (11-digits) format of a phone number without the plus sign
('+')
PermissionInfo:
type: object
properties:
enabled:
type: boolean
description: Specifies if a permission is enabled or not
PersonalContactInfo:
type: object
properties:
id:
type: integer
description: Standard resource properties ID
url:
type: string
description: Canonical URI
availability:
type: string
description: This property has a special meaning only on Address Book Sync
(e.g. a contact can be 'Deleted'). For simple contact list reading it has
always the default value - 'Alive'
enum:
- Alive
- Deleted
- Purged
firstName:
type: string
description: First name of a personal contact
lastName:
type: string
description: Last name of a personal contact
middleName:
type: string
description: Middle name of a personal contact
nickName:
type: string
description: Nick name of a personal contact
company:
type: string
description: Company name of a personal contact
jobTitle:
type: string
description: Job title of a personal contact
homePhone:
type: string
description: Home phone of a personal contact
homePhone2:
type: string
description: The 2-d home phone of a personal contact
businessPhone:
type: string
description: Business phone of a personal contact
businessPhone2:
type: string
description: The 2-d business phone of a personal contact
mobilePhone:
type: string
description: Mobile phone of a personal contact
businessFax:
type: string
description: Business fax of a personal contact
companyPhone:
type: string
description: Company phone of a personal contact
assistantPhone:
type: string
description: Assistant phone of a personal contact
carPhone:
type: string
description: Car phone of a personal contact
otherPhone:
type: string
description: Other phone of a personal contact
otherFax:
type: string
description: Other fax of a personal contact
callbackPhone:
type: string
description: Callback phone of a personal contact
email:
type: string
description: Email of a personal contact
email2:
type: string
description: The 2-d email of a personal contact
email3:
type: string
description: The 3-d email of a personal contact
homeAddress:
"$ref": "#/definitions/ContactAddressInfo"
businessAddress:
"$ref": "#/definitions/ContactAddressInfo"
otherAddress:
"$ref": "#/definitions/ContactAddressInfo"
birthday:
type: string
description: Date of birth of a personal contact in ISO 8601 format including
timezone, for example 2016-03-10T18:07:52.534Z
format: date-time
webPage:
type: string
description: Web page of a personal contact
notes:
type: string
description: Notes of a personal contact
PhoneLinesInfo:
type: object
properties:
lineType:
type: string
description: Type of phone line
enum:
- Standalone
- StandaloneFree
- BlaPrimary
- BlaSecondary
phoneInfo:
"$ref": "#/definitions/PhoneLinesInfo.PhoneNumberInfo"
PhoneLinesInfo.PhoneNumberInfo:
type: object
properties:
id:
type: integer
description: Internal identifier of a phone number
country:
"$ref": "#/definitions/CountryInfo"
location:
type: string
description: Location (City, State). Filled for local US numbers
paymentType:
type: string
description: Payment type. 'External' is returned for forwarded numbers which
are not terminated in the RingCentral phone system
enum:
- External
- TollFree
- Local
phoneNumber:
type: string
description: Phone number
status:
type: string
description: Status of a phone number. If the value is 'Normal', the phone
number is ready to be used. Otherwise it is an external number not yet ported
to RingCentral
type:
type: string
description: Phone number type
enum:
- VoiceFax
- FaxOnly
- VoiceOnly
usageType:
type: string
description: Usage type of the phone number
enum:
- MainCompanyNumber
- AdditionalCompanyNumber
- CompanyNumber
- DirectNumber
- CompanyFaxNumber
- ForwardedNumber
PhoneNumberInfo:
type: object
properties:
id:
type: integer
description: Internal identifier of a phone number
country:
"$ref": "#/definitions/CountryInfo"
extension:
"$ref": "#/definitions/PhoneNumberInfo.ExtensionInfo"
features:
type: array
description: Indicates if this phone number is enabled to appear as CallerId
and/or to send outbound SMS from it. Returned only for the request of Extension
phone number list
items:
type: string
location:
type: string
description: Location (City, State). Filled for local US numbers
paymentType:
type: string
description: Payment type. 'External' is returned for forwarded numbers which
are not terminated in the RingCentral phone system
enum:
- External
- TollFree
- Local
phoneNumber:
type: string
description: Phone number
status:
type: string
description: Status of a phone number. If the value is 'Normal', the phone
number is ready to be used. Otherwise it is an external number not yet ported
to RingCentral
type:
type: string
description: Phone number type
enum:
- VoiceFax
- FaxOnly
- VoiceOnly
usageType:
type: string
description: Usage type of the phone number
enum:
- MainCompanyNumber
- AdditionalCompanyNumber
- CompanyNumber
- DirectNumber
- CompanyFaxNumber
- ForwardedNumber
PhoneNumberInfo.ExtensionInfo:
type: object
properties:
id:
type: string
description: Internal identifier of an extension
uri:
type: string
description: Canonical URI of an extension
extensionNumber:
type: string
description: Number of department extension
partnerId:
type: string
description: For Partner Applications Internal identifier of an extension
created by partner. The RingCentral supports the mapping of accounts and
stores the corresponding account ID/extension ID for each partner ID of
a client application. In request URIs partner IDs are accepted instead of
regular RingCentral native IDs as path parameters using pid = XXX clause.
Though in response URIs contain the corresponding account IDs and extension
IDs. In all request and response bodies these values are reflected via partnerId
attributes of account and extension
PresenceInfo:
type: object
properties:
uri:
type: string
description: Canonical URI of a presence info resource
allowSeeMyPresence:
type: boolean
description: If 'True' enables other extensions to see the extension presence
status
dndStatus:
type: string
description: Extended DnD (Do not Disturb) status. Cannot be set for Department/Announcement/Voicemail
(Take Messages Only)/Fax User/Shared Lines Group/Paging Only Group/IVR Menu/Application
Extension/Park Location extensions. The 'DoNotAcceptDepartmentCalls' and
'TakeDepartmentCallsOnly' values are applicable only for extensions - members
of a Department; if these values are set for department outsiders, the 400
Bad Request error code is returned. The 'TakeDepartmentCallsOnly' status
can be set through the old RingCentral user interface and is available for
some migrated accounts only.
enum:
- TakeAllCalls
- DoNotAcceptAnyCalls
- DoNotAcceptDepartmentCalls
- TakeDepartmentCallsOnly
extension:
"$ref": "#/definitions/PresenceInfo.ExtensionInfo"
message:
type: string
description: Custom status message (as previously published by user)
pickUpCallsOnHold:
type: boolean
description: If 'True' enables the extension user to pick up a monitored line
on hold
presenceStatus:
type: string
description: Aggregated presence status, calculated from a number of sources
enum:
- Offline
- Busy
- Available
ringOnMonitoredCall:
type: boolean
description: If 'True' enables to ring extension phone, if any user monitored
by this extension is ringing
telephonyStatus:
type: string
description: Telephony presence status
enum:
- NoCall
- CallConnected
- Ringing
- OnHold
- ParkedCall
userStatus:
type: string
description: User-defined presence status (as previously published by the
user)
enum:
- Offline
- Busy
- Available
PresenceInfo.ExtensionInfo:
type: object
properties:
id:
type: string
description: Internal identifier of an extension
uri:
type: string
description: Canonical URI of an extension
extensionNumber:
type: string
description: Extension number (usually 3 or 4 digits)
ProfileImageInfo:
type: object
properties:
uri:
type: string
description: Link to a profile image. If an image is not uploaded for an extension,
only uri is returned
etag:
type: string
description: Identifier of an image
lastModified:
type: string
description: The datetime when an image was last updated in ISO 8601 format,
for example 2016-03-10T18:07:52.534Z
format: date-time
contentType:
type: string
description: The type of an image
scales:
type: array
description: List of URIs to profile images in different dimensions
items:
type: string
RangesInfo:
type: object
properties:
from:
type: string
description: Date and time in format YYYY-MM-DD hh:mm
format: date-time
to:
type: string
description: Date and time in format YYYY-MM-DD hh:mm
format: date-time
RecipientInfo:
type: object
properties:
uri:
type: string
description: Link to a recipient extension resource
id:
type: string
description: Internal identifier of a recipient extension
RecordingInfo:
type: object
properties:
id:
type: integer
description: Internal identifier of the call recording
uri:
type: string
description: Link to the call recording metadata resource
type:
type: string
description: Indicates recording mode used
enum:
- Automatic
- OnDemand
contentUri:
type: string
description: Link to the call recording binary content
ReferenceInfo:
type: object
properties:
ref:
type: string
description: Non-RC identifier of an extension
type:
type: string
description: Type of external identifier
enum:
- PartnerId
- CustomerDirectoryId
RegionalSettings:
type: object
properties:
homeCountry:
"$ref": "#/definitions/CountryInfo"
timezone:
"$ref": "#/definitions/TimezoneInfo"
language:
"$ref": "#/definitions/LanguageInfo"
greetingLanguage:
"$ref": "#/definitions/GreetingLanguageInfo"
formattingLocale:
"$ref": "#/definitions/FormattingLocaleInfo"
ReservePhoneNumber.Request.ReserveRecord:
type: object
properties:
phoneNumber:
type: string
description: Phone number in E.164 format without a '+'
reservedTill:
type: string
description: The datetime up to which the number is reserved in ISO 8601 format
including timezone, for example 2016-03-10T18:07:52.534Z. If it is omitted
or explicitly set to 'null', the number will be un-reserved if it was reserved
previously by the same session. 'Min' value is 30 seconds; 'Max' value is
30 days (for reservation by brand) and 20 minutes (for reservation by account/session)
format: date-time
ReservePhoneNumber.Response.ReserveRecord:
type: object
properties:
phoneNumber:
type: string
description: Phone number in E.164 format without a '+'
formattedNumber:
type: string
description: Domestic format of a phone number
reservedTill:
type: string
description: The datetime up to which the number is reserved in ISO 8601 format
including timezone, for example 2016-03-10T18:07:52.534Z. No value means
that number is not reserved anymore
format: date-time
reservationId:
type: string
description: Internal identifier of phone number reservation; encoded data
including reservation type (by brand, by account, by session), particular
brand/account/session data, and reservation date and time
status:
type: string
description: Phone number status
enum:
- Enabled
- Pending
- Disabled
error:
type: string
description: The error code in case of reservation/un-reservation failure
enum:
- NumberIsAlreadyProvisioned
- NumberReserved
- NumberNotAvailable
RingOut.Request.CountryInfo:
type: object
properties:
id:
type: string
description: Dialing plan country identifier
RingOut.Request.From:
type: object
properties:
phoneNumber:
type: string
description: Phone number in E.164 format
forwardingNumberId:
type: string
description: Internal identifier of a forwarding number; returned in response
in the id field. Can be specified instead of the phoneNumber attribute
RingOut.Request.To:
type: object
properties:
phoneNumber:
type: string
description: Phone number in E.164 format
RingOutInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a RingOut call
status:
"$ref": "#/definitions/RingOutStatusInfo"
RingOutStatusInfo:
type: object
properties:
callStatus:
type: string
description: Status of a call
enum:
- Invalid
- Success
- InProgress
- Busy
- NoAnswer
- Rejected
- GenericError
- Finished
- InternationalDisabled
- DestinationBlocked
- NotEnoughFunds
- NoSuchUser
callerStatus:
type: string
description: Status of a calling party
enum:
- Invalid
- Success
- InProgress
- Busy
- NoAnswer
- Rejected
- GenericError
- Finished
- InternationalDisabled
- DestinationBlocked
- NotEnoughFunds
- NoSuchUser
calleeStatus:
type: string
description: Status of a called party
enum:
- Invalid
- Success
- InProgress
- Busy
- NoAnswer
- Rejected
- GenericError
- Finished
- InternationalDisabled
- DestinationBlocked
- NotEnoughFunds
- NoSuchUser
RuleInfo:
type: object
properties:
index:
type: integer
description: Forwarding number (or group) ordinal
ringCount:
type: integer
description: Number of rings for a forwarding number (or group)
forwardingNumbers:
type: array
description: Forwarding number (or group) data
items:
"$ref": "#/definitions/RuleInfo.ForwardingNumberInfo"
RuleInfo.ForwardingNumberInfo:
type: object
properties:
uri:
type: string
description: Link to a forwarding number resource
id:
type: string
description: Internal identifier of a forwarding number
phoneNumber:
type: string
description: Phone number to which the call is forwarded
label:
type: string
description: Title of a forwarding number
ScheduleInfo:
type: object
properties:
weeklyRanges:
"$ref": "#/definitions/WeeklyScheduleInfo"
ranges:
"$ref": "#/definitions/RangesInfo"
ref:
type: string
description: The user's schedule specified for business hours or after hours;
it can also be set/retrieved calling the corresponding method
enum:
- BusinessHours
- AfterHours
ServerInfo:
type: object
properties:
uri:
type: string
description: Canonical URI of the API version
apiVersions:
type: array
description: 'Full API version information: uri, number, release date'
items:
"$ref": "#/definitions/VersionInfo"
serverVersion:
type: string
description: Server version
serverRevision:
type: string
description: Server revision
ServiceFeatureInfo:
type: object
properties:
featureName:
type: string
description: Feature name, see all available values in Service Feature List
enabled:
type: boolean
description: Feature status, shows feature availability for the extension
ServiceInfo:
type: object
properties:
uri:
type: string
description: Canonical URI of a service info resource
billingPlan:
"$ref": "#/definitions/BillingPlanInfo"
brand:
"$ref": "#/definitions/BrandInfo"
servicePlan:
"$ref": "#/definitions/ServicePlanInfo"
targetServicePlan:
"$ref": "#/definitions/TargetServicePlanInfo"
ServicePlanInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a service plan
name:
type: string
description: Name of a service plan
edition:
type: string
description: Edition of a service plan
ShippingAddress:
type: object
properties:
customerName:
type: string
description: Name of a receiver
street:
type: string
description: Street address, line 1 - street address, P.O. box, company name,
c/o
street2:
type: string
description: Street address, line 2 - apartment, suite, unit, building, floor,
etc.
city:
type: string
description: City name
state:
type: string
description: State/province name
zip:
type: string
description: Zip code
country:
type: string
description: Country name
ShippingInfo:
type: object
properties:
status:
type: string
description: Shipping status of the order item. It is set to 'Initial' when
the order is submitted. Then it is changed to 'Accepted' when a distributor
starts processing the order. Finally it is changed to Shipped which means
that distributor has shipped the device.
enum:
- Initial
- Accepted
- Shipped
carrier:
type: string
description: Shipping carrier name. Appears only if the device status is "Shipped"
trackingNumber:
type: string
description: Carrier-specific tracking number. Appears only if the device
status is "Shipped"
method:
type: array
description: Shipping method information
items:
"$ref": "#/definitions/ShippingMethod"
address:
type: array
description: Shipping address for the order. If it coincides with the Emergency
Service Address, then can be omitted. By default the same value as the emergencyServiceAddress.
Multiple addresses can be specified; in case an order contains several devices,
they can be delivered to different addresses
items:
"$ref": "#/definitions/ShippingAddress"
ShippingMethod:
type: object
properties:
id:
type: string
description: Method identifier. The default value is "1" (Ground)
enum:
- '1'
- '2'
- '3'
name:
type: string
description: Method name, corresponding to the identifier
enum:
- Ground
- 2 Day
- Overnight
StateInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a state
uri:
type: string
description: Canonical URI of a state
country:
"$ref": "#/definitions/StateInfo.CountryInfo"
isoCode:
type: string
description: Short code for a state (2-letter usually)
name:
type: string
description: Official name of a state
StateInfo.CountryInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a state
uri:
type: string
description: Canonical URI of a state
StatusInfo:
type: object
properties:
comment:
type: string
description: A free-form user comment, describing the status change reason
reason:
type: string
description: Type of suspension
enum:
- Voluntarily
- Involuntarily
Subscription.Request.DeliveryMode:
type: object
properties:
transportType:
type: string
description: Notifications transportation provider name. 'APNS' (Apple Push
Notifications Service)
enum:
- PubNub
- APNS
- PubNub/APNS/VoIP
encryption:
type: boolean
description: Optional parameter. Specifies if the message will be encrypted
or not. If request contains any presence event filter the value by default
is 'True' (even if specified as 'false'). If request contains only message
event filters the value by default is 'False'
SubscriptionInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a subscription
uri:
type: string
description: Canonical URI of a subscription
eventFilters:
type: array
description: Collection of URIs to API resources (message-store/presence/detailed
presence)
items:
type: string
expirationTime:
type: string
description: Subscription expiration datetime in ISO 8601 format including
timezone, for example 2016-03-10T18:07:52.534Z
format: date-time
expiresIn:
type: integer
description: Subscription lifetime in seconds. The default value is 900
status:
type: string
description: Subscription status
enum:
- Active
- Suspended
creationTime:
type: string
description: Subscription creation datetime in ISO 8601 format including timezone,
for example 2016-03-10T18:07:52.534Z
format: date-time
deliveryMode:
"$ref": "#/definitions/DeliveryMode"
SyncInfo:
type: object
properties:
syncType:
type: string
description: Type of synchronization
enum:
- FSync
- ISync
syncToken:
type: string
description: Synchronization token
syncTime:
type: string
description: Last synchronization datetime in ISO 8601 format including timezone,
for example 2016-03-10T18:07:52.534Z
format: date-time
TargetServicePlanInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a target service plan
name:
type: string
description: Name of a target service plan
TimeInterval:
type: object
properties:
from:
type: string
description: Time in format hh:mm
format: date-time
to:
type: string
description: Time in format hh:mm
format: date-time
TimezoneInfo:
type: object
properties:
id:
type: string
description: Internal identifier of a timezone
uri:
type: string
description: Canonical URI of a timezone
name:
type: string
description: Short name of a timezone
description:
type: string
description: Meaningful description of the timezone
UnconditionalForwardingInfo:
type: object
properties:
phoneNumber:
type: string
description: Phone number to which the call is forwarded
VersionInfo:
type: object
properties:
uri:
type: string
description: Canonical URI of API versions
versionString:
type: string
description: Version of the RingCentral REST API
releaseDate:
type: string
description: Release date of this version
uriString:
type: string
description: URI part determining the current version
VoicemailInfo:
type: object
properties:
enabled:
type: boolean
description: If 'True' then voicemails are allowed to be received
recipient:
"$ref": "#/definitions/RecipientInfo"
WeeklyScheduleInfo:
type: object
properties:
monday:
type: array
description: Time intervals for a particular day
items:
"$ref": "#/definitions/TimeInterval"
tuesday:
type: array
description: Time intervals for a particular day
items:
"$ref": "#/definitions/TimeInterval"
wednesday:
type: array
description: Time intervals for a particular day
items:
"$ref": "#/definitions/TimeInterval"
thursday:
type: array
description: Time intervals for a particular day
items:
"$ref": "#/definitions/TimeInterval"
friday:
type: array
description: Time intervals for a particular day
items:
"$ref": "#/definitions/TimeInterval"
saturday:
type: array
description: Time intervals for a particular day
items:
"$ref": "#/definitions/TimeInterval"
sunday:
type: array
description: Time intervals for a particular day
items:
"$ref": "#/definitions/TimeInterval"
paths:
"/restapi":
get:
description: Get Server Info
responses:
default:
description: OK
schema:
"$ref": "#/definitions/ServerInfo"
"/restapi/oauth/authorize":
post:
description: OAuth2 Authorize
responses:
default:
description: OK
schema:
type: object
properties:
code:
type: string
description: The authorization code returned for your application
expires_in:
type: integer
description: The remaining lifetime of the authorization code
state:
type: string
description: This parameter will be included in response if it was
specified in the client authorization request. The value will be
copied from the one received from the client
parameters:
- name: body
in: body
schema:
type: object
properties:
response_type:
type: string
description: Must be set to code
client_id:
type: string
description: Required. Enter your application key (Production or Sandbox)
here
redirect_uri:
type: string
description: Required. This is a callback URI which determines where
the response will be sent to. The value of this parameter must exactly
match one of the URIs you have provided for your app upon registration.
This URI can be HTTP/HTTPS address for web applications or custom
scheme URI for mobile or desktop applications.
state:
type: string
description: Optional, recommended. An opaque value used by the client
to maintain state between the request and callback. The authorization
server includes this value when redirecting the user-agent back to
the client. The parameter should be used for preventing cross-site
request forgery
"/restapi/oauth/revoke":
post:
description: OAuth2 Revoke Token
responses:
default:
description: OK
parameters:
- name: body
in: body
schema:
type: object
properties:
token:
type: string
description: Active access or refresh token to be revoked
"/restapi/oauth/token":
post:
description: OAuth2 Get Token
responses:
default:
description: OK
schema:
type: object
properties:
access_token:
type: string
description: Access token to pass to subsequent API requests
expires_in:
type: integer
description: Issued access token TTL (time to live), in seconds
refresh_token:
type: string
description: Refresh token to get a new access token, when the issued
one expires
refresh_token_expires_in:
type: integer
description: Issued refresh token TTL (time to live), in seconds
scope:
type: string
description: List of permissions allowed with this access token, white-space
separated
token_type:
type: string
description: Type of token. Use this parameter in Authorization header
of requests
owner_id:
type: string
description: Extension identifier
endpoint_id:
type: string
description: Unique identifier of a client application passed by the
client, or auto-generated by server if not specified in request
parameters:
- name: body
in: body
schema:
type: object
properties:
grant_type:
type: string
description: Must hold password value for Resource Owner Credentials
flow. If client application is not authorized by the specified grant_type,
response does not contain refresh_token and refresh_token_ttl attributes
access_token_ttl:
type: integer
description: Optional. Access token lifetime in seconds; the possible
values are from 600 sec (10 min) to 3600 sec (1 hour). The default
value is 3600 sec. If the value specified exceeds the default one,
the default value is set. If the value specified is less than 600
seconds, the minimum value (600 sec) is set
refresh_token_ttl:
type: integer
description: Optional. Refresh token lifetime in seconds. The default
value depends on the client application, but as usual it equals to
7 days. If the value specified exceeds the default one, the default
value is applied. If client specifies refresh_token_ttl<=0, refresh
token is not returned even if the corresponding grant type is supported
username:
type: string
description: Phone number linked to account or extension in account
in E.164 format with or without leading "+" sign
extension:
type: string
description: Optional. Extension short number. If company number is
specified as a username, and extension is not specified, the server
will attempt to authenticate client as main company administrator
password:
type: string
description: User's password
scope:
type: string
description: Optional. List of API permissions to be used with access
token (see Application Permissions). Can be omitted when requesting
all permissions defined during the application registration phase
endpoint_id:
type: string
description: Optional. Unique identifier of a client application. You
can pass it in request according to pattern [a-zA-Z0-9_\-]{1,64}.
Otherwise it is auto-generated by server. The value will be returned
in response in both cases
"/restapi/v1.0":
get:
description: Get API Version Info
responses:
default:
description: OK
schema:
"$ref": "#/definitions/VersionInfo"
"/restapi/v1.0/account/{accountId}":
get:
description: Get Account Info by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/AccountInfo"
parameters:
- "$ref": "#/parameters/accountId"
"/restapi/v1.0/account/{accountId}/active-calls":
get:
description: Get Account Active (Recent) Calls
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of call log records
items:
"$ref": "#/definitions/CallLogRecord"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- type: string
description: The direction for the result records. It is allowed to specify
more than one direction. If not specified, both inbound and outbound records
are returned. Multiple values are accepted
enum:
- Inbound
- Outbound
name: direction
in: query
- type: string
description: Call type of a record. It is allowed to specify more than one
type. If not specified, all call types are returned. Multiple values are
accepted
enum:
- Voice
- Fax
name: type
in: query
- type: integer
description: Indicates the page number to retrieve. Only positive number values
are allowed. Default value is '1'.
name: page
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '100' by default.
name: perPage
in: query
parameters:
- "$ref": "#/parameters/accountId"
"/restapi/v1.0/account/{accountId}/business-address":
get:
description: Get Company Business Address
responses:
default:
description: OK
schema:
type: object
properties:
uri:
type: string
description: Canonical URI of the business address resource
company:
type: string
description: Company business name
email:
type: string
description: Company business email address
businessAddress:
"$ref": "#/definitions/BusinessAddressInfo"
put:
description: Update Company Business Address
responses:
default:
description: OK
schema:
type: object
properties:
uri:
type: string
description: Canonical URI of the business address resource
company:
type: string
description: Company business name
email:
type: string
description: Company business email address
businessAddress:
"$ref": "#/definitions/BusinessAddressInfo"
parameters:
- name: body
in: body
schema:
type: object
properties:
company:
type: string
description: Company business name
email:
type: string
description: Company business email address
businessAddress:
"$ref": "#/definitions/BusinessAddressInfo"
parameters:
- "$ref": "#/parameters/accountId"
"/restapi/v1.0/account/{accountId}/call-log":
get:
description: Get Account Call Log
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of call log records
items:
"$ref": "#/definitions/CallLogRecord"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- type: string
description: Extension number of a user. If specified, returns call log for
a particular extension only. Cannot be specified together with the phoneNumber
filter
name: extensionNumber
in: query
- type: string
description: Phone number of a caller/call recipient. If specified, returns
all calls (both incoming and outcoming) with the mentioned phone number.
Cannot be specified together with the extensionNumber filter
name: phoneNumber
in: query
- type: string
description: The direction for the result records. It is allowed to specify
more than one direction. If not specified, both inbound and outbound records
are returned. Multiple values are accepted
enum:
- Inbound
- Outbound
name: direction
in: query
- type: string
description: Call type of a record. It is allowed to specify more than one
type. If not specified, all call types are returned. Multiple values are
accepted
enum:
- Voice
- Fax
name: type
in: query
- type: string
description: The default value is 'Simple' for both account and extension
call log
enum:
- Simple
- Detailed
name: view
in: query
- type: boolean
description: "'True' if only recorded calls have to be returned"
name: withRecording
in: query
- type: string
description: The start datetime for resulting records in ISO 8601 format including
timezone, for example 2016-03-10T18:07:52.534Z. The default value is dateTo
minus 24 hours
format: date-time
name: dateFrom
in: query
- type: string
description: The end datetime for resulting records in ISO 8601 format including
timezone, for example 2016-03-10T18:07:52.534Z. The default value is current
time
format: date-time
name: dateTo
in: query
- type: integer
description: Indicates the page number to retrieve. Only positive number values
are allowed. The default value is '1'
name: page
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '100' by default.
name: perPage
in: query
parameters:
- "$ref": "#/parameters/accountId"
"/restapi/v1.0/account/{accountId}/call-log/{callLogId}":
get:
description: Get Account Call Log Record by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/CallLogInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/callLogId"
"/restapi/v1.0/account/{accountId}/department/{departmentId}/members":
get:
description: Get Department Members
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of extensions belonging to a given department
items:
"$ref": "#/definitions/Department.Response.ExtensionInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- type: integer
description: Indicates the page number to retrieve. Only positive number values
are allowed. Default value is '1'
name: page
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '100' by default
name: perPage
in: query
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/departmentId"
"/restapi/v1.0/account/{accountId}/device":
get:
description: Get Account Device List
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of extension records
items:
"$ref": "#/definitions/DeviceInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- "$ref": "#/parameters/accountId"
"/restapi/v1.0/account/{accountId}/device/{deviceId}":
get:
description: Get Device by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/DeviceInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/deviceId"
"/restapi/v1.0/account/{accountId}/extension":
get:
description: Get Extension List
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of extensions with extension information
items:
"$ref": "#/definitions/ExtensionInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- type: integer
description: Indicates the page number to retrieve. Only positive number values
are allowed. Default value is '1'
name: page
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '100' by default.
name: perPage
in: query
- type: string
description: Extension current state. Multiple values are supported. If 'Unassigned'
is specified, then extensions without extensionNumber are returned. If not
specified, then all extensions are returned
enum:
- Enabled
- Disabled
- NotActivated
- Unassigned
name: status
in: query
- type: string
description: Extension type. Multiple values are supported
enum:
- User
- FaxUser
- VirtualUser
- DigitalUser
- Department
- Announcement
- Voicemail
- SharedLinesGroup
- PagingOnlyGroup
- IvrMenu
- ApplicationExtension
- ParkLocation
name: type
in: query
parameters:
- "$ref": "#/parameters/accountId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}":
get:
description: Get Extension Info by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/ExtensionInfo"
put:
description: Update Extension by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/ExtensionInfo"
parameters:
- name: body
in: body
schema:
type: object
enum:
- "$ref": "#/definitions/ExtensionInfo.Request.StatusInfo"
- "$ref": "#/definitions/ExtensionInfo.Request.ContactInfo"
- "$ref": "#/definitions/ExtensionInfo.Request.PasswordPIN"
- "$ref": "#/definitions/ExtensionInfo.Request.PartnerId"
- "$ref": "#/definitions/ExtensionInfo.Request.Provision"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/active-calls":
get:
description: Get Extension Active (Recent) Calls
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of call log records
items:
"$ref": "#/definitions/CallLogRecord"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- type: string
description: The direction for the result records. It is allowed to specify
more than one direction. If not specified, both inbound and outbound records
are returned. Multiple values are accepted
enum:
- Inbound
- Outbound
name: direction
in: query
- type: string
description: Call type of a record. It is allowed to specify more than one
type. If not specified, all call types are returned. Multiple values are
accepted
enum:
- Voice
- Fax
name: type
in: query
- type: integer
description: Indicates the page number to retrieve. Only positive number values
are allowed. Default value is '1'
name: page
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '100' by default
name: perPage
in: query
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/address-book-sync":
get:
description: Contacts Synchronization
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of contacts with synchronization information
items:
"$ref": "#/definitions/PersonalContactInfo"
syncInfo:
"$ref": "#/definitions/SyncInfo"
nextPageId:
type: integer
description: Internal identifier of the next page, if any
nextPageUri:
type: string
description: URL of the next page, if any
parameters:
- type: string
description: Type of synchronization. The default value is 'FSync'
enum:
- FSync
- ISync
name: syncType
in: query
- type: string
description: Value of syncToken property of the last sync request response
name: syncToken
in: query
- type: integer
description: Number of records per page to be returned. The max number of
records is 250, which is also the default. For FSync — if the number of
records exceeds the parameter value (either specified or default), all of
the pages can be retrieved in several requests. For ISync — if the number
of records exceeds the page size, the number of incoming changes to this
number is limited
name: perPage
in: query
- type: integer
description: Internal identifier of a page. It can be obtained from the 'nextPageId'
parameter passed in response body
name: pageId
in: query
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/address-book/contact":
post:
description: Create New Contact
responses:
default:
description: OK
schema:
"$ref": "#/definitions/PersonalContactInfo"
parameters:
- name: body
in: body
schema:
"$ref": "#/definitions/PersonalContactInfo"
get:
description: Get Contact List
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of personal contacts from the extension address
book
items:
"$ref": "#/definitions/PersonalContactInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- type: string
description: If specified, only contacts whose First name or Last name start
with the mentioned substring are returned. Case-insensitive
name: startsWith
in: query
- type: string
description: Sorts results by the specified property. The default is 'First
Name'
enum:
- FirstName
- LastName
- Company
name: sortBy
in: query
- type: integer
description: Indicates the page number to retrieve. Only positive number values
are allowed. Default value is '1'
name: page
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '100' by default
name: perPage
in: query
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/address-book/contact/{contactId}":
delete:
description: Delete Contact by ID
responses:
default:
description: OK
get:
description: Get Contact by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/PersonalContactInfo"
put:
description: Update Contact by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/PersonalContactInfo"
parameters:
- name: body
in: body
schema:
"$ref": "#/definitions/PersonalContactInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
- "$ref": "#/parameters/contactId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/address-book/group":
get:
description: Get Contact Group List
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of groups
items:
"$ref": "#/definitions/GroupInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/answering-rule/{answeringRuleId}":
get:
description: Get Custom Answering Rule by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/AnsweringRuleInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
- "$ref": "#/parameters/answeringRuleId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/blocked-number":
post:
description: Add New Blocked Number
responses:
default:
description: OK
schema:
"$ref": "#/definitions/BlockedNumberInfo"
parameters:
- name: body
in: body
schema:
"$ref": "#/definitions/BlockedNumberInfo"
get:
description: Get Blocked Number List
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of blocked phone numbers
items:
"$ref": "#/definitions/BlockedNumberInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/blocked-number/{blockedNumberId}":
delete:
description: Delete Blocked Number by ID
responses:
default:
description: OK
get:
description: Get Blocked Number by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/BlockedNumberInfo"
put:
description: Update Blocked Number Label
responses:
default:
description: OK
schema:
"$ref": "#/definitions/BlockedNumberInfo"
parameters:
- name: body
in: body
schema:
"$ref": "#/definitions/BlockedNumberInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
- "$ref": "#/parameters/blockedNumberId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/business-hours":
get:
description: Get User Hours Setting
responses:
default:
description: OK
schema:
type: object
properties:
uri:
type: string
description: Canonical URI of a business-hours resource
schedule:
"$ref": "#/definitions/BusinessHour.ScheduleInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/call-log":
delete:
description: Delete Extension Call Log
responses:
default:
description: OK
parameters:
- type: string
description: The end datetime for records deletion in ISO 8601 format including
timezone, for example 2016-03-10T18:07:52.534Z. The default value is current
time
format: date-time
name: dateTo
in: query
get:
description: Get Extension Call Log
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of call log records
items:
"$ref": "#/definitions/CallLogRecord"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- type: string
description: Extension number of a user. If specified, returns call log for
a particular extension only. Cannot be specified together with the phoneNumber
filter
name: extensionNumber
in: query
- type: string
description: Phone number of a caller/call recipient. If specified, returns
all calls (both incoming and outcoming) with the mentioned phone number.
Cannot be specified together with the extensionNumber filter
name: phoneNumber
in: query
- type: string
description: The direction for the result records. It is allowed to specify
more than one direction. If not specified, both inbound and outbound records
are returned. Multiple values are accepted
enum:
- Inbound
- Outbound
name: direction
in: query
- type: string
description: Call type of a record. It is allowed to specify more than one
type. If not specified, all call types are returned. Multiple values are
accepted
enum:
- Voice
- Fax
name: type
in: query
- type: string
description: The default value is 'Simple' for both account and extension
call log
enum:
- Simple
- Detailed
name: view
in: query
- type: boolean
description: "'True' if only recorded calls have to be returned"
name: withRecording
in: query
- type: string
description: The end datetime for resulting records in ISO 8601 format including
timezone, for example 2016-03-10T18:07:52.534Z. The default value is current
time
format: date-time
name: dateTo
in: query
- type: string
description: The start datetime for resulting records in ISO 8601 format including
timezone, for example 2016-03-10T18:07:52.534Z. The default value is dateTo
minus 24 hours
format: date-time
name: dateFrom
in: query
- type: integer
description: Indicates the page number to retrieve. Only positive number values
are allowed. Default value is '1'
name: page
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '100' by default
name: perPage
in: query
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/call-log-sync":
get:
description: Call Log Synchronization
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of call log records with synchronization information.
For ISync the total number of returned records is limited to 250;
this includes both new records and the old ones, specified by the
recordCount parameter
items:
"$ref": "#/definitions/CallLogRecord"
syncInfo:
"$ref": "#/definitions/SyncInfo"
parameters:
- type: string
description: Type of synchronization. 'FSync' is a default value
enum:
- FSync
- ISync
name: syncType
in: query
- type: string
description: Value of syncToken property of last sync request response
name: syncToken
in: query
- type: string
description: The start datetime for resulting records in ISO 8601 format including
timezone, for example 2016-03-10T18:07:52.534Z. The default value is the
current moment
format: date-time
name: dateFrom
in: query
- type: integer
description: For FSync the parameter is mandatory, it limits the number of
records to be returned in response. For ISync it specifies with how many
records to extend sync Frame to the past, the maximum number of records
is 250
name: recordCount
in: query
- type: string
description: Type of calls to be returned. The default value is 'All'
enum:
- Missed
- All
name: statusGroup
in: query
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/call-log/{callLogId}":
get:
description: Get Extension Call Log Record by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/CallLogInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
- "$ref": "#/parameters/callLogId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/company-pager":
post:
description: Create and Send Pager Message
responses:
default:
description: OK
schema:
"$ref": "#/definitions/MessageInfo"
parameters:
- name: body
in: body
schema:
type: object
properties:
from:
"$ref": "#/definitions/CallerInfo"
replyOn:
type: integer
description: Internal identifier of a message this message replies to
text:
type: string
description: Text of a pager message. Max length is 1024 symbols (2-byte
UTF-16 encoded). If a character is encoded in 4 bytes in UTF-16 it
is treated as 2 characters, thus restricting the maximum message length
to 512 symbols
to:
type: array
description: Optional if replyOn parameter is specified. Receiver of
a pager message. The extensionNumber property must be filled
items:
"$ref": "#/definitions/CallerInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/conferencing":
get:
description: Get Conferencing info
responses:
default:
description: OK
schema:
"$ref": "#/definitions/ConferencingInfo"
parameters:
- type: string
description: Internal identifier of a country. If not specified, the response
is returned for the brand country
name: countryId
in: query
put:
description: Update Conferencing info
responses:
default:
description: OK
schema:
"$ref": "#/definitions/ConferencingInfo"
parameters:
- name: body
in: body
schema:
type: object
properties:
phoneNumbers:
type: array
description: Multiple dial-in phone numbers to connect to audio conference
service, relevant for user's brand. Each number is given with the
country and location information, in order to let the user choose
the less expensive way to connect to a conference. The first number
in the list is the primary conference number, that is default and
domestic
items:
"$ref": "#/definitions/Conferencing.Request.PhoneNumber"
allowJoinBeforeHost:
type: boolean
description: Determines if host user allows conference participants
to join before the host
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/device":
get:
description: Get Extension Device List
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of extension devices
items:
"$ref": "#/definitions/DeviceInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/fax":
post:
description: Create and Send Fax Message
responses:
default:
description: OK
schema:
"$ref": "#/definitions/MessageInfo"
parameters:
- name: body
in: body
schema:
type: object
properties:
to:
type: array
description: Recipient information. Phone number property is mandatory.
Optional for resend fax request
items:
"$ref": "#/definitions/CallerInfo"
resolution:
type: string
description: Fax resolution
enum:
- High
- Low
sendTime:
type: string
description: The datetime to send fax at, in ISO 8601 format including
timezone, for example 2016-03-10T18:07:52.534Z. If time is not specified,
the fax will be send immediately
format: date-time
coverIndex:
type: integer
description: Optional. Cover page index. If not specified, the default
cover page which is configured in "Outbound Fax Settings" is attached.
See also 'Available Cover Pages' table below
coverPageText:
type: string
description: Optional. Cover page text, entered by the fax sender and
printed on the cover page. Maximum length is limited to 1024 symbols
originalMessageId:
type: string
description: Internal identifier of the original fax message which needs
to be resent. Mandatory for resend fax request
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/forwarding-number":
post:
description: Add New Forwarding Number
responses:
default:
description: OK
schema:
"$ref": "#/definitions/ForwardingNumberInfo"
parameters:
- name: body
in: body
schema:
type: object
properties:
phoneNumber:
type: string
description: Forwarding/Call flip phone number
label:
type: string
description: Forwarding/Call flip number title
get:
description: Get Forwarding Numbers
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of forwarding phone numbers
items:
"$ref": "#/definitions/ForwardingNumberInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- type: integer
description: Indicates the page number to retrieve. Only positive number values
are allowed. Default value is '1'
name: page
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '100' by default
name: perPage
in: query
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/grant":
get:
description: Get Extension Grants
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of extension grants with the data
items:
"$ref": "#/definitions/GrantInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- type: integer
description: Indicates the page number to retrieve. Only positive number values
are allowed. Default value is '1'
name: page
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '100' by default
name: perPage
in: query
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/message-store":
get:
description: Get Message List
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of records with message information
items:
"$ref": "#/definitions/MessageInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- type: string
description: Specifies the availability status for the resulting messages.
Default value is 'Alive'. Multiple values are accepted
enum:
- Alive
- Deleted
- Purged
name: availability
in: query
- type: integer
description: Specifies the conversation identifier for the resulting messages
format: int64
name: conversationId
in: query
- type: string
description: The start datetime for resulting messages in ISO 8601 format
including timezone, for example 2016-03-10T18:07:52.534Z. The default value
is dateTo minus 24 hours
format: date-time
name: dateFrom
in: query
- type: string
description: The end datetime for resulting messages in ISO 8601 format including
timezone, for example 2016-03-10T18:07:52.534Z. The default value is current
time
format: date-time
name: dateTo
in: query
- type: string
description: The direction for the resulting messages. If not specified, both
inbound and outbound messages are returned. Multiple values are accepted
enum:
- Inbound
- Outbound
name: direction
in: query
- type: boolean
description: If 'True', then the latest messages per every conversation ID
are returned
name: distinctConversations
in: query
- type: string
description: The type of the resulting messages. If not specified, all messages
without message type filtering are returned. Multiple values are accepted
enum:
- Fax
- SMS
- VoiceMail
- Pager
- Text
name: messageType
in: query
- type: string
description: The read status for the resulting messages. Multiple values are
accepted
enum:
- Read
- Unread
name: readStatus
in: query
- type: integer
description: Indicates the page number to retrieve. Only positive number values
are allowed. Default value is '1'
name: page
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '100' by default
name: perPage
in: query
- type: string
description: The phone number. If specified, messages are returned for this
particular phone number only
name: phoneNumber
in: query
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/message-store/{messageId}":
delete:
description: Delete Message by ID
responses:
default:
description: OK
parameters:
- type: boolean
description: If the value is 'True', then the message is purged immediately
with all the attachments. The default value is 'False'
name: purge
in: query
- type: integer
description: Internal identifier of a message thread
format: int64
name: conversationId
in: query
get:
description: Get Message by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/MessageInfo"
put:
description: Update Message by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/MessageInfo"
parameters:
- name: body
in: body
schema:
type: object
properties:
readStatus:
type: string
description: Read status of a message to be changed. Multiple values
are accepted
enum:
- Read
- Unread
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
- "$ref": "#/parameters/messageId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/message-store/{messageId}/content/{attachmentId}":
get:
description: Get Message Attachment
responses:
default:
description: OK
schema:
type: string
format: binary
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
- "$ref": "#/parameters/messageId"
- "$ref": "#/parameters/attachmentId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/message-sync":
get:
description: Message Synchronization
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of message records with synchronization information
items:
"$ref": "#/definitions/MessageInfo"
syncInfo:
"$ref": "#/definitions/SyncInfo"
parameters:
- type: integer
description: Conversation identifier for the resulting messages. Meaningful
for SMS and Pager messages only.
format: int64
name: conversationId
in: query
- type: string
description: The start datetime for resulting messages in ISO 8601 format
including timezone, for example 2016-03-10T18:07:52.534Z. The default value
is dateTo minus 24 hours
format: date-time
name: dateFrom
in: query
- type: string
description: The end datetime for resulting messages in ISO 8601 format including
timezone, for example 2016-03-10T18:07:52.534Z. The default value is current
time
format: date-time
name: dateTo
in: query
- type: string
description: Direction for the resulting messages. If not specified, both
inbound and outbound messages are returned. Multiple values are accepted
enum:
- Inbound
- Outbound
name: direction
in: query
- type: boolean
description: If 'True', then the latest messages per every conversation ID
are returned
name: distinctConversations
in: query
- type: string
description: Type for the resulting messages. If not specified, all types
of messages are returned. Multiple values are accepted
enum:
- Fax
- SMS
- VoiceMail
- Pager
- Text
name: messageType
in: query
- type: integer
description: Limits the number of records to be returned (works in combination
with dateFrom and dateTo if specified)
name: recordCount
in: query
- type: string
description: Value of syncToken property of last sync request response
name: syncToken
in: query
- type: string
description: Type of message synchronization
enum:
- FSync
- ISync
name: syncType
in: query
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/phone-number":
get:
description: Get Extension Phone Numbers
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of phone numbers
items:
"$ref": "#/definitions/PhoneNumberInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- type: string
description: Usage type of the phone number
enum:
- MainCompanyNumber
- AdditionalCompanyNumber
- CompanyNumber
- DirectNumber
- CompanyFaxNumber
- ForwardedNumber
name: usageType
in: query
- type: integer
description: Indicates the page number to retrieve. Only positive number values
are allowed. Default value is '1'
name: page
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '100' by default
name: perPage
in: query
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/presence":
get:
description: Get Extension Presence
responses:
default:
description: OK
schema:
"$ref": "#/definitions/PresenceInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/profile-image":
get:
description: Get Profile Image
responses:
default:
description: OK
schema:
type: string
format: binary
put:
description: Update Profile Image
responses:
default:
description: OK
parameters:
- name: body
in: body
schema:
type: string
format: binary
post:
description: Update Profile Image (same as PUT)
responses:
default:
description: OK
parameters:
- name: body
in: body
schema:
type: string
format: binary
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/profile-image/{scaleSize}":
get:
description: Get Scaled Profile Image
responses:
default:
description: OK
schema:
type: string
format: binary
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
- "$ref": "#/parameters/scaleSize"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/ringout":
post:
description: Initiate RingOut Call
responses:
default:
description: OK
schema:
"$ref": "#/definitions/RingOutInfo"
parameters:
- name: body
in: body
schema:
type: object
properties:
from:
"$ref": "#/definitions/RingOut.Request.From"
to:
"$ref": "#/definitions/RingOut.Request.To"
callerId:
"$ref": "#/definitions/RingOut.Request.To"
playPrompt:
type: boolean
description: The audio prompt that the calling party hears when the
call is connected
country:
"$ref": "#/definitions/RingOut.Request.CountryInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/ringout/{ringoutId}":
delete:
description: Cancel RingOut Call
responses:
default:
description: OK
get:
description: Get RingOut Call Status
responses:
default:
description: OK
schema:
"$ref": "#/definitions/RingOutInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
- "$ref": "#/parameters/ringoutId"
"/restapi/v1.0/account/{accountId}/extension/{extensionId}/sms":
post:
description: Create and Send SMS Message
responses:
default:
description: OK
schema:
"$ref": "#/definitions/MessageInfo"
parameters:
- name: body
in: body
schema:
type: object
properties:
from:
"$ref": "#/definitions/CallerInfo"
to:
type: array
description: Receiver of an SMS message. The phoneNumber property must
be filled
items:
"$ref": "#/definitions/CallerInfo"
text:
type: string
description: Text of a message. Max length is 1000 symbols (2-byte UTF-16
encoded). If a character is encoded in 4 bytes in UTF-16 it is treated
as 2 characters, thus restricting the maximum message length to 500
symbols
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/extensionId"
"/restapi/v1.0/account/{accountId}/order":
post:
description: Create New Order
responses:
default:
description: OK
schema:
type: object
properties:
devices:
type: array
description: List of the ordered devices
items:
"$ref": "#/definitions/DeviceInfo"
parameters:
- name: body
in: body
schema:
type: object
properties:
devices:
type: array
description: List of devices to order
items:
"$ref": "#/definitions/DeviceInfo"
parameters:
- "$ref": "#/parameters/accountId"
"/restapi/v1.0/account/{accountId}/order/{orderId}":
get:
description: Get Order by ID
responses:
default:
description: OK
schema:
type: object
properties:
id:
type: string
description: Identifier of a device
uri:
type: string
description: Canonical URI of an order resource
devices:
type: array
description: List of the ordered devices
items:
"$ref": "#/definitions/DeviceInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/orderId"
"/restapi/v1.0/account/{accountId}/phone-number":
get:
description: Get Account Phone Numbers
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of account phone numbers
items:
"$ref": "#/definitions/PhoneNumberInfo"
paging:
"$ref": "#/definitions/PagingInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
parameters:
- type: integer
description: Indicates the page number to retrieve. Only positive number values
are allowed. Default value is '1'
name: page
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '100' by default
name: perPage
in: query
- type: string
description: Usage type of the phone number
enum:
- MainCompanyNumber
- AdditionalCompanyNumber
- CompanyNumber
- DirectNumber
- CompanyFaxNumber
- ForwardedNumber
name: usageType
in: query
parameters:
- "$ref": "#/parameters/accountId"
"/restapi/v1.0/account/{accountId}/phone-number/{phoneNumberId}":
get:
description: Get Phone Number by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/PhoneNumberInfo"
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/phoneNumberId"
"/restapi/v1.0/account/{accountId}/recording/{recordingId}":
get:
description: Get Call Recording Metadata
responses:
default:
description: OK
schema:
type: object
properties:
id:
type: integer
description: Internal identifier of the call recording
contentUri:
type: string
description: Link to the call recording binary content
contentType:
type: string
description: Call recording file format. Supported format is audio/x-wav
duration:
type: integer
description: Recorded call duration
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/recordingId"
"/restapi/v1.0/account/{accountId}/recording/{recordingId}/content":
get:
description: Get Call Recording Content
responses:
default:
description: OK
schema:
type: string
format: binary
parameters:
- "$ref": "#/parameters/accountId"
- "$ref": "#/parameters/recordingId"
"/restapi/v1.0/account/{accountId}/service-info":
get:
description: Get Account Service Info
responses:
default:
description: OK
schema:
type: object
properties:
uri:
type: string
description: Canonical URI of the account Service Info resource
servicePlanName:
type: string
description: Account Service Plan name
serviceFeatures:
type: array
description: Service features information, see Service Feature List
items:
"$ref": "#/definitions/ServiceFeatureInfo"
limits:
type: array
description: Limits which are effective for the account
items:
"$ref": "#/definitions/AccountLimits"
parameters:
- "$ref": "#/parameters/accountId"
"/restapi/v1.0/client-info/custom-data/{customDataKey}":
put:
description: Update Custom Data by Key
responses:
default:
description: OK
schema:
type: object
properties:
id:
type: string
description: Custom data access key
uri:
type: string
description: Link to the custom data
value:
type: string
description: Description of custom data
lastModifiedTime:
type: string
description: Time of the last change in custom data
attachment:
"$ref": "#/definitions/AttachmentInfo"
parameters:
- name: body
in: body
schema:
type: object
properties:
id:
type: string
description: Custom data access key. Optional. If specified, must match
the custom key in the URL
value:
type: string
description: Description of custom data. Mandatory for create, if there
is no attachment specified. Maximum length is limited to 256 symbols
parameters:
- "$ref": "#/parameters/customDataKey"
"/restapi/v1.0/dictionary/country":
get:
description: Get Country List
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of countries with the country data
items:
"$ref": "#/definitions/FullCountryInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- type: boolean
description: Specifies whether login with the phone numbers of this country
is enabled or not
name: loginAllowed
in: query
- type: boolean
description: Specifies if RingCentral sells phone numbers of this country
name: numberSelling
in: query
- type: integer
description: Indicates the page number to retrieve. Only positive number values
are allowed. Default value is '1'
name: page
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '100' by default
name: perPage
in: query
"/restapi/v1.0/dictionary/country/{countryId}":
get:
description: Get Country by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/FullCountryInfo"
parameters:
- "$ref": "#/parameters/countryId"
"/restapi/v1.0/dictionary/language":
get:
description: Get Supported Language List
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: Language data
items:
"$ref": "#/definitions/LanguageInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
"/restapi/v1.0/dictionary/language/{languageId}":
get:
description: Get Language by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/LanguageInfo"
parameters:
- "$ref": "#/parameters/languageId"
"/restapi/v1.0/dictionary/location":
get:
description: Get Location List
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of locations
items:
"$ref": "#/definitions/LocationInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- type: string
description: Sorts results by the specified property. The default value is
'City'
enum:
- Npa
- City
name: orderBy
in: query
- type: integer
description: Indicates the page number to retrieve. Only positive number values
are allowed. Default value is '1'.
name: page
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '100' by default.
name: perPage
in: query
- type: string
description: Internal identifier of a state
name: stateId
in: query
- type: boolean
description: Specifies if nxx codes are returned
name: withNxx
in: query
"/restapi/v1.0/dictionary/state":
get:
description: Get State/Province List
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of states
items:
"$ref": "#/definitions/StateInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- type: integer
description: Internal identifier of a country
name: countryId
in: query
- type: integer
description: Indicates the page number to retrieve. Only positive number values
are allowed. Default value is '1'.
name: page
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '100' by default
name: perPage
in: query
- type: boolean
description: If 'True', the list of states with phone numbers available for
buying is returned. The default value is 'False'
name: withPhoneNumbers
in: query
"/restapi/v1.0/dictionary/state/{stateId}":
get:
description: Get State/Province by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/StateInfo"
parameters:
- "$ref": "#/parameters/stateId"
"/restapi/v1.0/dictionary/timezone":
get:
description: Get Time Zone List
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: List of timezones
items:
"$ref": "#/definitions/TimezoneInfo"
navigation:
"$ref": "#/definitions/NavigationInfo"
paging:
"$ref": "#/definitions/PagingInfo"
parameters:
- type: string
description: Indicates the page number to retrieve. Only positive number values
are allowed. Default value is '1'
name: page
in: query
- type: string
description: Indicates the page size (number of items). If not specified,
the value is '100' by default
name: perPage
in: query
"/restapi/v1.0/dictionary/timezone/{timezoneId}":
get:
description: Get Time Zone by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/TimezoneInfo"
parameters:
- "$ref": "#/parameters/timezoneId"
"/restapi/v1.0/number-parser/parse":
post:
description: Parse Phone Number
responses:
default:
description: OK
schema:
type: object
properties:
uri:
type: string
description: Canonical URI of a resource
homeCountry:
type: array
description: Information on a user home country
items:
"$ref": "#/definitions/ParsePhoneNumber.CountryInfo"
phoneNumbers:
type: array
description: Parsed phone numbers data
items:
"$ref": "#/definitions/ParsePhoneNumber.PhoneNumberInfo"
originalString:
type: string
description: One of the numbers to be parsed, passed as a string in
response
areaCode:
type: string
description: Area code of the location (3-digit usually), according
to the NANP number format, that can be summarized as NPA-NXX-xxxx
and covers Canada, the United States, parts of the Caribbean Sea,
and some Atlantic and Pacific islands. See North American Numbering
Plan for details
formattedNational:
type: string
description: Domestic format of a phone number
formattedInternational:
type: string
description: International format of a phone number
dialable:
type: string
description: Dialing format of a phone number
e164:
type: string
description: E.164 (11-digits) format of a phone number
special:
type: boolean
description: '"True" if the number is in a special format (for example
N11 code)'
normalized:
type: string
description: E.164 (11-digits) format of a phone number without the
plus sign ('+')
country:
type: array
description: Information on a country the phone number belongs to
items:
"$ref": "#/definitions/ParsePhoneNumber.CountryInfo"
parameters:
- type: string
description: Internal identifier of a home country. The default value is ISO
code (ISO 3166) of the user's home country or brand country, if the user
is undefined
name: homeCountry
in: query
- type: boolean
description: The default value is "False". If "True", the numbers that are
closer to the home country are given higher priority
name: nationalAsPriority
in: query
- name: body
in: body
schema:
type: object
properties:
originalStrings:
type: array
description: Phone numbers passed in a string. The maximum value of
phone numbers is limited to 64. The maximum number of symbols in each
phone number in a string is 64
items:
type: string
"/restapi/v1.0/number-pool/lookup":
post:
description: Look up Phone Number
responses:
default:
description: OK
schema:
type: object
properties:
uri:
type: string
description: Canonical URI of the phone numbers resource
records:
type: array
description: List of phone numbers filtered by the specified criteria
items:
"$ref": "#/definitions/LookUpPhoneNumber.PhoneNumberInfo"
parameters:
- type: integer
description: Area code of the location
name: areaCode
in: query
- type: string
description: Two-letter country code, complying with the ISO standard
name: countryCode
in: query
- type: string
description: Internal identifier of a country; '1'- the US; '39' - Canada;
'224' - the UK. The default value is '1'
name: countryId
in: query
- type: string
description: A string of digits (one and more) that should not appear among
the last four digits (line part) of the phone numbers that will be returned.
It is possible to specify several exclude parameters. If specified, it is
taken into account in all returned phone numbers both in the phone numbers
satisfying to parameters of lookup and in alternative phone numbers (in
case when extendedSearch is specified)
name: exclude
in: query
- type: boolean
description: If the value is 'False', then the returned numbers exactly correspond
to the specified NXX, NPA and LINE or countryCode, areaCode and numberPattern
parameters. If the value is 'True', then the resulting numbers are ranked
and returned with the rank attribute values (1-10). The default value is
'False'
name: extendedSearch
in: query
- type: string
description: LINE pattern for vanity or wildcard search. Digits, Latin characters
and asterisks are allowed (usually 4 characters)
name: line
in: query
- type: string
description: Phone number pattern (for wildcard or vanity search). For NANP
countries (US, Canada) is concatenation of nxx (the first three digits)
and line. If the first three characters are specified as not digits (e.g.
5** or CAT) then parameter extendedSearch will be ignored.
name: numberPattern
in: query
- type: string
description: NXX pattern for vanity or wildcard search. Digits, Latin characters
and asterisks are allowed (usually 3 characters)
name: nxx
in: query
- type: string
description: Area code (mandatory). For example, 800, 844, 855, 866, 877,
888 for North America; and 647 for Canada
name: npa
in: query
- type: string
description: Payment type. Default is 'Local' (it should correlate with the
npa provided)
enum:
- TollFree
- Local
name: paymentType
in: query
- type: integer
description: Indicates the page size (number of items). If not specified,
the value is '10' by default
name: perPage
in: query
- type: boolean
description: Specifies if SMS activation is available for the number. If specified,
it is taken into account in all returned phone numbers both in the phone
numbers satisfying to parameters of lookup and in alternative phone numbers
(in case when extendedSearch is specified). If not specified, the value
is null.
name: smsEnabled
in: query
"/restapi/v1.0/number-pool/reserve":
post:
description: Reserve Phone Number
responses:
default:
description: OK
schema:
type: object
properties:
records:
type: array
description: Phone numbers to be reserved/un-reserved
items:
"$ref": "#/definitions/ReservePhoneNumber.Response.ReserveRecord"
parameters:
- name: body
in: body
schema:
type: object
properties:
records:
type: array
description: Phone numbers to be reserved/un-reserved
items:
"$ref": "#/definitions/ReservePhoneNumber.Request.ReserveRecord"
"/restapi/v1.0/subscription":
post:
description: Create New Subscription
responses:
default:
description: OK
schema:
"$ref": "#/definitions/SubscriptionInfo"
parameters:
- type: boolean
description: If 'True' then aggregated presence status is returned in a notification
payload in the 'presenceStatus' field
name: aggregated
in: query
- name: body
in: body
schema:
type: object
properties:
eventFilters:
type: array
description: Mandatory. Collection of URIs to API resources (see Event
Types for details). For APNS transport type only message event filter
is available
items:
type: string
deliveryMode:
"$ref": "#/definitions/Subscription.Request.DeliveryMode"
"/restapi/v1.0/subscription/{subscriptionId}":
delete:
description: Cancel Subscription by ID
responses:
default:
description: OK
get:
description: Get Subscription by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/SubscriptionInfo"
put:
description: Update/Renew Subscription by ID
responses:
default:
description: OK
schema:
"$ref": "#/definitions/SubscriptionInfo"
parameters:
- type: boolean
description: If 'True' then aggregated presence status is returned in a notification
payload
name: aggregated
in: query
- name: body
in: body
schema:
type: object
properties:
eventFilters:
type: array
description: Collection of URIs to API resources (see Event Types).
Mandatory field
items:
type: string
parameters:
- "$ref": "#/parameters/subscriptionId"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment