Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

RingCentral Devices API

The Devices API from RingCentral — 8 operation(s) for devices.

RingCentral Devices API is one of 88 APIs that RingCentral publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Devices. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and an API reference.

This API exposes 10 operations across 8 paths, and defines 62 schemas. It is described by OpenAPI 3.0.3, at version 1.0.58-20240529-47eda8bd.

Requests are made against 4 base URLs: https://platform.ringcentral.com, https://media.ringcentral.com, https://platform.devtest.ringcentral.com, https://platform.devtest.ringcentral.com.

10 operations 8 paths 62 schemas 2 DELETE3 GET3 POST2 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.3
API Version
1.0.58-20240529-47eda8bd
Servers
https://platform.ringcentral.com
https://media.ringcentral.com
https://platform.devtest.ringcentral.com
https://platform.devtest.ringcentral.com
Authentication
OAuth 2.0
Terms of Service
Resource Areas
1

Authentication & Security 1

RingCentral Devices API declares 1 security scheme for authenticating requests. It supports OAuth 2.0 (OAuth2) using the authorizationCode flow. By default, every request must be authenticated.

Paths & Operations 10

Across 8 paths, the API surfaces 10 operations — 2 DELETE, 3 GET, 3 POST, 2 PUT. Each is listed below with its method, path, parameters, and response codes.

Devices 10
POST
/restapi/v2/accounts/{accountId}/device-inventory
Add Phone to Inventory
addDeviceToInventory 1 param body → 201400403429404500503
DELETE
/restapi/v2/accounts/{accountId}/device-inventory
Delete Device from Inventory
deleteDeviceFromInventory 1 param body → 200400403429500503
DELETE
/restapi/v2/accounts/{accountId}/devices/{deviceId}
Remove phone line
removeLineJWSPublic 2 params body → 200204400404500
POST
/restapi/v2/accounts/{accountId}/devices/bulk-add
Add BYOD Devices
bulkAddDevicesV2 1 param body → 200400403429404500503
POST
/restapi/v2/accounts/{accountId}/extensions/{extensionId}/devices/{deviceId}/replace
Swap Devices
replaceDevicesJWSPublic 3 params body → 204400
GET
/restapi/v1.0/account/{accountId}/device/{deviceId}
Get Device
readDevice 3 params → 200
PUT
/restapi/v1.0/account/{accountId}/device/{deviceId}
Update Device
updateDevice 3 params body → 200
GET
/restapi/v1.0/account/{accountId}/device/{deviceId}/sip-info
Get Device SIP Info
readDeviceSipInfo 2 params → 200
PUT
/restapi/v1.0/account/{accountId}/device/{deviceId}/emergency
Update Device Emergency Info
updateDeviceEmergency 2 params body → 200
GET
/restapi/v1.0/account/{accountId}/extension/{extensionId}/device
List Extension Devices
listExtensionDevices 8 params → 200

Schemas 62

The contract defines 62 schemas that model the data the API accepts and returns. The most detailed are DeviceResource (22 properties), EmergencyServiceAddressResource (22 properties), ShippingAddressInfo (19 properties), CommonEmergencyLocationAddressInfoDefault (13 properties). Each schema is shown below with its type and property counts.

BillingStatementInfo
object
Billing information. Returned for device update request if prestatement query parameter is set to 'true'
8 properties
ExtensionInfoIntId
object
This attribute can be omitted for unassigned devices
4 properties
OutboundProxyInfo
object
3 properties
PhoneLinesInfo
object
4 properties
EmergencyAddress
object
3 properties
DeviceProvisioningExtensionInfo
object
Information on the extension, to which the phone number is assigned. Returned only for the request of Account phone number list
4 properties
ApiErrorWithParameter
The error model with additional attributes which can be used for HTTP 400/409 This is a deprecated model: "ApiError" model can be used instead with arbitrary a…
ShippingAddressInfo
object
Shipping address for the order. If it coincides with the Emergency Service Address, then can be omitted. By default, the same value as the emergencyServiceAddr…
19 properties
DeleteDeviceFromInventoryResponse
object
1 property 1 required
BulkAddDevicesResponse
object
1 property 1 required
ApiError
object
Generalized API error structure suitable for any error type
2 properties 2 required
EnumeratedPagingModel
object
6 properties 1 required
ApiErrorResponseModel
object
Standard error response model which is returned in case of any unsuccessful operation
1 property 1 required
PhoneNumberDefinitionTollType
object
To use as selection criteria when a number to be selected from the number pool.
1 property 1 required
PageNavigationUri
object
1 property
DeviceResource
object
22 properties
PhoneLineTypeEnum
string
The type of phone line
AddDeviceToInventoryRequest
object
3 properties 2 required
GetExtensionDevicesResponse
object
4 properties 3 required
ShippingInfo
object
Shipping information, according to which devices (in case of HardPhone) or e911 stickers (in case of SoftPhone and OtherPhone) will be delivered to the customer
5 properties
DeviceFeatureEnum
string
Device feature
DeviceUpdatePhoneLinesInfo
object
Information on phone lines added to a device
1 property
PageNavigationModel
object
Links to other pages of the current result set
4 properties
DeviceEmergencyLocationInfo
object
Company emergency response location details
3 properties
ShippingStatus
string
Order item shipping status. It is set to Initial when the order is submitted. Then it is changed to Accepted when a distributor starts processing the order. Fi…
PhoneNumberInfoIntId
object
Phone number information
10 properties
AddonInfo
object
3 properties
BulkAddDevicesItem
LinePoolingEnum
string
Pooling type of device: - Host - device with a standalone paid phone line which can be linked to soft phone client instance; - Guest - device with a linked pho…
ModelInfo
object
HardPhone model information
6 properties
RemoveLineResponse
object
4 properties 3 required
RemoveLineRequest
object
1 property 1 required
ParameterizedErrorResponseModel
object
Standard error response which may include parameterized errors
1 property 1 required
PhoneNumberDefinitionPreferredAreaCode
object
To use as selection hint when a "toll" number to be selected from the number pool.
1 property 1 required
ShippingMethodIdModel
object
Devices shipping method. It is required if devices are ordered. Availability of different shipping methods depends on package definition.
1 property 1 required
DeleteDeviceFromInventoryRequest
object
1 property 1 required
PhoneNumberCountryInfo
object
Brief information on a phone number country
3 properties
DeviceEmergencyInfo
object
Device emergency settings
7 properties
BillingStatementFees
object
3 properties
EmergencyServiceAddressResourceRequest
object
Address for emergency cases. The same emergency address is assigned to all numbers of a single device. If the emergency address is also specified in emergency…
9 properties
AddDeviceToInventoryResponse
object
2 properties 2 required
BillingStatementCharges
object
4 properties
PhoneNumberDefinitionNumberId
object
To be used to assign a number by ID
1 property 1 required
UpdateDevicePhoneInfo
object
1 property
BulkAddDevicesSuccessItem
object
4 properties 4 required
DeviceDefinition
object
3 properties 3 required
PhoneNumberE164
string
Phone number in e.164 format (with '+' prefix)
CommonEmergencyLocationAddressInfoDefault
object
13 properties
PhoneNumberTollType
string
Indicates if a number is toll or toll-free
PhoneNumberDefinitionDirectNumberWithReservationId
object
To be used for direct number assignment in case number pool is not supported
2 properties 1 required
PostalAddress
object
Postal address/location
6 properties 4 required
DeviceUpdateExtensionInfo
object
Information on extension that the device is assigned to
1 property
SipInfoResource
object
5 properties
EmergencyServiceAddressResource
object
Address for emergency cases. The same emergency address is assigned to all the numbers of one device
22 properties
DeviceSiteInfo
object
Site data
2 properties
BulkOperationExtensionReference
object
Information about an extension this device is assigned to
1 property 1 required
ShippingMethodInfo
SwapDeviceRequest
object
Swap device request
1 property
BulkAddDevicesRequest
object
1 property 1 required
BulkAddDevicesErrorItem
object
2 properties 2 required
SiteBasicInfo
object
2 properties 2 required
AccountDeviceUpdate
object
6 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

ringcentral-devices-api-openapi.yml Raw ↑

Other APIs RingCentral publishes across the network.

RingCentral SMS API
RingCentral Team Messaging API
RingCentral Video API
RingCentral Fax API
RingCentral Data API
RingCentral Audio and Video AI API
RingCentral Call Log API
RingCentral Call Analytics API
RingCentral Presence API
RingCentral Voicemail API
RingCentral Provisioning API
RingCentral Webhooks and Subscriptions API