RingCentral API密钥

时间:2016-07-29 23:28:02

标签: oauth-2.0 ringcentral

我正在构建一个应用程序需要使用RingCentral API。它只是服务器(没有UI),它需要能够发送SMS消息。我在服务器上存储了名称和号码,不需要访问RingCentral API的任何其他功能。有没有办法为RingCentral获取正常的API密钥(就像使用Google API时那样),在这种情况下使用OAuth似乎有点麻烦。

2 个答案:

答案 0 :(得分:0)

RingCentral支持以下OAuth 2.0流程,其中包含指向API文档的链接。

目前不支持静态API密钥。

仅私有应用程序支持密码授予(仅供贵组织使用),因此,如果要创建公共应用程序(供其他组织使用),则需要使用授权代码或隐式授权流程。 / p>

RingCentral JavaScript SDK支持所有3个流程。 Other SDKs支持授权码和密码授予。

由于您拥有私有Server-only (No UI)应用,因此您可以通过使用密码授权而不刷新令牌来减少身份验证过程。这样,您可以在每个请求上传递密码,而不会生成太多的刷新令牌,这可能会增加您的应用程序的生产问题。为此,请执行以下操作:

  1. 使用密码授予
  2. 在OAuth令牌请求中将refresh_token_ttl设置为-1,因此不会生成刷新令牌

答案 1 :(得分:0)

如果您使用的是 private Server-only (No UI)平台类型,它将使用Password flowRefresh Access Token
Password flow类型的应用程序使用Oauth grant_type作为密码,这不那么麻烦,并且在生成access_token时或多或少是简单的方法
您只需要在Oauth调用https://platform.devtest.ringcentral.com/restapi/oauth/token中传递以下标头:

"Accept":"application/json“
"Content-Type":"application/x-www-form-urlencoded“
"Authorization",:"Basic <ClientID:ClientSecret in base 64> 

在体内,我们需要通过以下方式传递参数:

username=<account phone number>&password=<account password>&extension=<your extension>&grant_type=password

这很容易,而且比您想象的要麻烦。
如果您不需要生成refresh_token并希望通过access_token获得更简单的响应,则可以在正文中传递refresh_token_ttl=0参数。
RingCentral中没有所谓的普通API密钥。您将始终拥有客户端ID和机密