Как использовать extensionId в RingCentral API с RingOut
Я могу RingOut успешно запросить:
https://platform.ringcentral.com/restapi/v1.0/account/~/extension/~/ring-out
Но когда я хочу добавить идентификатор расширения, я получаю CMN-102
ошибка (Resource for parameter [extensionId] is not found
) см. пример запроса ниже:
https://platform.ringcentral.com/restapi/v1.0/account/~/extension/279580017/ring-out
Я уверен, что у меня есть правильный идентификатор, так как я хватаю extensionId
из запроса ниже успешно:
https://platform.ringcentral.com/restapi/v1.0/account/~/extension
Если кто-то сталкивался с этим или может указать на возможные ловушки, я был бы очень признателен за некоторые советы.
1 ответ
Из вашего поста и полученной вами ошибки я предполагаю, что вы пытаетесь выполнить RingOut с extensionId
это не авторизовало ваше приложение. Попытка сделать это приведет к полученной вами ошибке. Вот больше информации об этом.
RingOut ExtensionId Scope
API RingOut поддерживает только использование extensionId
параметр пути для расширения авторизующего пользователя. Из-за этого все, что вам когда-либо нужно вызывать, это следующая конечная точка для RingOut:
POST /restapi/v1.0/account/~/extension/~/ring-out
Если вы хотите использовать явное extensionId
, это должен быть extensionId, возвращаемый в следующей конечной точке:
GET /restapi/v1.0/account/~/extension/~
Если вы вызываете конечную точку с путем extensionId
параметр, который не авторизовал используемый токен доступа, тогда вы получите:
Несоответствующая ошибка ExtensionId
Если вы пытаетесь выполнить RingOut с путем extensionId
значение, которое не является авторизующим пользователем, вы получите статус HTTP 404
ошибка со следующим телом:
HTTP/1.1 404 Not Found
{
"errorCode": "CMN-102",
"message": "Resource for parameter [extensionId] is not found",
"errors": [
{
"errorCode": "CMN-102",
"message": "Resource for parameter [extensionId] is not found",
"parameterName": "extensionId"
}
],
"parameterName": "extensionId"
}
Как выполнить RingOut для многих пользователей
Чтобы выполнить RingOut для многих пользователей в настоящее время, вам необходимо выполнить одно из следующих действий:
- Каждый пользователь должен будет выполнить авторизацию в вашем приложении, либо через всплывающее окно входа в систему с помощью кода авторизации OAuth 2.0, либо с помощью неявного предоставления.
- альтернативно, вы можете запросить у них пароли для выполнения авторизации с предоставлением паролей OAuth 2.0.
На наших учетных записях GitHub доступно несколько демонстрационных приложений OAuth 2.0:
Запрос об улучшении
Если вам нужна возможность вызывать RingOut для любого пользователя без активного сеанса, сообщите нам об этом, и мы сможем рассмотреть его как расширение возможностей. Лучший способ - войти в наше Сообщество с помощью своей учетной записи RingCentral и разместить запрос здесь: