Glip Team Integration with Ring central

Hi guys, Today I’m going to write in this article to integrate Glip team SDKs using ring central APIs.

In order to create Glip team using ring central java sdks then we need to follow the below constraints.

  • First we need to create one application in your ring central developer’s portal.
  • And we need to give the Glip permission to the newly created application.
  • We need to place the team member’s email addresses when we are going to run the Glip application using ring central java sdk.

We need to give Glip app permission to your application from your developer account. In this article I will show you to do Glip team integration using java ring central SDKs.

Step1. In order to do this, we need to create application in our development account.

If you observe here I have given the Glip permission in Permissions Needed section so that our application is authorized to integrate Glip Java SDKs.

Now, we are done with creation of SMSIntegration application.

Step2. Now create a maven java project in your local Spring tool suite as shown below.

Step3. We need to ring central maven dependencies to your maven application to get ring central packages.

Step4. Now, we are going to create java class to write our integration logic.

Step5. You can get the RINGCENTRAL_CLIENTID and RINGCENTRAL_CLIENTSECRET from your dev account where you have created the GlipIntegration application.

Step6. As you can see the post method will return the GlipTeamInfo object and which has the below properties.

Step7. Below are the properties with details.

  • id – Internal identifier of a team
  • type – Type of a chat Enum Team
  • _public – Team access level
  • name – Team name
  • description – Team description
  • status – Team status, Enum: Active, Archived
  • creationTime – Team creation datetime in ISO 8601 format
  • lastModifiedTime – Team last change datetime in ISO 8601 format

Step8. Now if you run your application and you are able to see the details. As my account is not associated with company that’s why we received the below response. If your account is associated with company then you will receive the valid response with above fields from ring central.

Step9. Now we have completed the Glip team integration with java sdks.

Step10. I hope you people are enjoyed the this article . Thanks for reading !

SMS Integration with Ring central

Hi guys, Today I’m going to write in this article to integrate SMS APIS using ring central APIs.

In order to send SMS using ring central APIs then we need to follow the below constraints.

  • We can send a new text message using ring central
  • We can send SMS messages simultaneously to different recipients up to 50 requests per minute and this limitation is relevant for all client applications.
  • Sending and receiving SMS is available for Toll-Free Numbers within the USA.
  • You can send up to 10 attachments in one MMS message; the size of all attachments linked is limited to 1500000.

We need to give SMS app permission to your application from your developer account. In this article I will show you to do SMS integration using java ring central SDKs.

Step1. In order to do this, we need to create application in our development account.

If you observe here I have given the SMS, and Read Messages permissions in Permissions Needed section so that our application is authorized to integrate SMSs.

Now, we are done with creation of SMSIntegration application.

Step2. Now create a maven java project in your local Spring tool suite as shown below.

Step3. We need to ring central maven dependencies to your maven application to get ring central packages.

    <dependency>
        <groupId>com.ringcentral</groupId>
        <artifactId>ringcentral</artifactId>
        <version>1.0.0-beta10</version>
    </dependency>

Step4. Now, we are going to create java class to write our integration logic.

Step5. You can get the RINGCENTRAL_CLIENTID and RINGCENTRAL_CLIENTSECRET from your dev account where you have created the SMSIntegration application.

Step6.

Message status. Different message types may have different allowed status values.For outbound faxes the aggregated message status is returned: If status for at least one recipient is ‘Queued’, then ‘Queued’ value is returned If status for at least one recipient is ‘SendingFailed’, then ‘SendingFailed’ value is returned In other cases Sent status is returned

Step7. We have different message statuses as described below.

  • Queued
  • Sent
  • Delivered
  • DeliveryFailed
  • SendingFailed
  • Received

Step8. Now if you run your application and you are able to see the current message status.

Step9. As you have seen message status as Sent which means we have successfully integrated the SMS integration using ringcentral java sdk.

Step10. I hope you people are enjoyed the this article . Thanks for reading !

Authorization in Ringcentral

Hi Guys,

Today I’m will write this article about what ring central is made to access their APIs. Ringcentral is come up with OAuth authentication rule to get access ringcentral apis.

So, first of all let me explain the OAuth authentication.

OAuth

OAuth combines Authentication and Authorization to allow more sophisticated scope and validity control.

OAuth is a bit of a strange beast. OAuth is not technically an authentication method, but a method of both authentication and authorization. When OAuth is used solely for authentication, it is what is referred to as “pseudo-authentication.”

In this approach, the user logs into a system. That system will then request authentication, usually in the form of a token. The user will then forward this request to an authentication server, which will either reject or allow this authentication. From here, the token is provided to the user, and then to the requester. Such a token can then be checked at any time independently of the user by the requester for validation, and can be used over time with strictly limited scope and age of validity.

This is fundamentally a much more secure and powerful system than the other approaches, largely because it allows for the soft establishment of scope (that is, what systems the key allows the user to authenticate to) and validity (meaning the key doesn’t have to be purposely revoked by the system, it will automatically become deprecated in time).

In Ringcentral, they have provided three api calls to for the authentication process.

  1. Authorization
  2. Get Token
  3. Revoke Token

Authorization Code Flow

First step as you need to create a application using ring central developer account. We need to authorize your application with ring central so that it will gain the client id to get authorization token. To do so while you click on the authorize button and at the background ringcentral will make a api call to get client id and client secret which will be useful to call token service.

GET /restapi/oauth/authorize

Get Token

OAuth 1.0 and 1.0a, were much more complicated than OAuth 2.0. The biggest change in the latest version is that it’s no longer required to sign each call with a keyed hash. The most common implementations of OAuth use one or both of these tokens instead:

  • access token: sent like an API key, it allows the application to access a user’s data; optionally, access tokens can expire.
  • refresh token: optionally part of an OAuth flow, refresh tokens retrieve a new access token if they have expired. OAuth2 combines Authentication and Authorization to allow more sophisticated scope and validity control.

OAuth 2.0 is the best choice for identifying personal user accounts and granting proper permissions. In this method, the user logs into a system. That system will then request authentication, usually in the form of a token. The user will then forward this request to an authentication server, which will either reject or allow this authentication. From here, the token is provided to the user, and then to the requester. Such a token can then be checked at any time independently of the user by the requester for validation and can be used over time with strictly limited scope and age of validity.

Revoke Token

Revokes access/refresh token. Requests to this endpoint must be authenticated with HTTP Basic scheme using client ID and client secret as login and password, correspondingly.

The server will respond wih a 200 status code on successful revocation. You can use curl to make a revoke request on your server. If you have access to a local installation of your authorization server, you can test revoking a token with a request like that shown below, for a Confidential client.
Request:

POST /restapi/oauth/revoke HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Authorization: Basic M2ZmYjNlMThkZDU4ZDE1YTk2NTIwYmFmNzUzZjBiNzk6MzI5OWQ0NTg5NGU1Njg5ODllOTY1ZTFiMTk5MGU2OTI

token=U0pDMDFQMDFKV1MwMXwJ_W7L1fG4eGXBW9Pp-otywzriCw

Response:

HTTP/1.1 200 OK

Thank you for reading!

Ringcentral Authentication Process

OAuth 2.0

Authorization

Authorization Code Flow

Returns link to a login page location.

Usage Plan Group

Auth

GET /restapi/oauth/authorize

Request Headers

Client app may pass localization language code value in Accept-Language header. But if any of these parameters localeId or ui_locales is specified, the header value is overwritten.

Query Parameters

ParameterDescription
response_typestringMust be set to code
redirect_uristringThis is a callback URI which determines where the response is sent. The value of this parameter must exactly match one of the URIs you have provided for your app upon registration
client_idstringIdentifier (key) of a client application
statestringClient state. Returned back to the client at the end of the flow
brand_idstringBrand identifier. If it is not provided in request, server will try to determine brand from client app profile. The default value is 1210 – RingCentral US
displaystringStyle of login form. The default value is page. The popup and touch values are featured for mobile applicationspage
popup
touch
mobile
promptstringSpecifies which login form will be displayed. Space-separated set of the following values: login – official RingCentral login form, sso – Single Sign-On login form, consent – form to show the requested scope and prompt user for consent. Either login or sso (or both) must be specified. The default value is login&sso
localeIdstringLocalization code of a language. Overwrites Accept-Language header value
ui_localesstringLocalization code of a language. Overwrites localeId parameter value
ui_optionsstringUser interface options datahide_logo hide_tos hide_remember_me external_popup old_ui

Response Body

Link to a login page location.

Example

Request

GET /restapi/oauth/authorize?client_id=A50F55593E224b381E81D6A969391D0e49E27FB9A1C3
&redirect_uri=https%3A%2F%2Fclient%2Eexample%2Ecom%2Foauthredirect&response_type=code&state=ABC123&prompt=login

Response

HTTP/1.1 302 Found

Location:
https://service.ringcentral.com/mobile/loginDispatcher?session=2008293087662283621&clientId=A50F55593E224b381E81D6A969391D0e49E27FB9A1C3
&state=ABC123&brandId=1210&appUrlScheme=https%3A%2F%2Fmyapp%2Eexample%2Ecom%2Foauthredirect&localeId=en_US&display=page&prompt=login&hideNavigationBar=true  

Implicit Grant Type Flow

Returns login page location. And upon successful login – access token embedded in a link redirecting to a client web application. Please note: Access token obtained via this request expires in an hour and can be refreshed by sending this request repeatedly.

Request Headers

Client app may pass localization language code value in Accept-Language header. But if any of these parameters localeId or ui_locales is specified, the header value is overwritten.

Query Parameters

ParameterDescription
response_typestringMust be set to token
redirect_uristringThis is a callback URI which determines where the response is sent. The value of this parameter must exactly match one of the URIs you have provided for your app upon registration
client_idstringIdentifier (key) of a client application
statestringClient state. Returned back to the client at the end of the flow
brand_idstringBrand identifier. If it is not provided in request, server will try to determine brand from client app profile. The default value is 1210 – RingCentral US
displaystringStyle of login form. The default value is page. The popup and touch values are featured for mobile applicationspage
popup
touch
mobile
promptstringSpecifies which login form will be displayed. Space-separated set of the following values: login – official RingCentral login form, sso – Single Sign-On login form, consent – form to show the requested scope and prompt user for consent. Either login or sso (or both) must be specified. Please note: The value must be set to none for all requests except for the first one
ui_localesstringLocalization code of a language. Overwrites localeId parameter value
localeIdstringLocalization code of a language. Overwrites Accept-Language header value
ui_optionsstringUser interface options datahide_logo hide_tos hide_remember_me external_popup old_ui

Response Body

Link to a login page location.
After successful user login the browser will pass the hash fragment with access token directly to the application redirect URI.

Example

Request

GET https://api.ringcentral.com/restapi/oauth/authorize?response_type=token&client_id=9oQlL98tTQGhpdqq5KB60Q&state=xyz&prompt=login%20consent&
redirect_uri=http%3A%2F%2Fmyapp%2Eexample%2Ecom%2Foauthredirect HTTP/1.1

Response

HTTP/1.1 302 Found

Location:
https://service.ringcentral.com/mobile/loginDispatcher?session=2008293087662283621&clientId=9oQlL98tTQGhpdqq5KB60Q&state=xyz
&brandId=1210&appUrlScheme=http%3A%2F%2Fmyapp%2Eexample%2Ecom%2Foauthredirect&localeId=en_US&display=page&prompt=login%20consent&hideNavigationBar=true

Callback Request

http://myapp.example.com/oauthredirect#access_token=tuyt43gjhg6u54uiy6iuyhh3k45jh34k5hO6884534jk5h

OAuth 2.0

Get Token

This endpoint enables client applications to get access tokens for making API requests. Requests to this endpoint must be authenticated with HTTP Basic scheme using the client ID and client secret as login and password, correspondingly.

Authorization Code Flow

Each time you call token endpoint using this flow a new client session starts. It is associated with the issued token pair: access token and refresh token, returned in response to this request. To continue the session you can refresh the obtained access token and refresh token as many times as you need, using Refresh Token flow or the same flow.

To start another client session you should call token endpoint using this flow again. Please consider that only 5 simultaneously active sessions per extension per application are supported. Thus if you exceed the number of sessions started per extension per application, the oldest one is ended.

Usage Plan Group

Auth

POST /restapi/oauth/token

Form Data Parameters

ParameterDescription
grant_typestringMust be set to authorization_code for authorization code flow
codestringAuthorization code
redirect_uristringThis is a callback URI which determines where the response is sent. The value of this parameter must exactly match one of the URIs you have provided for your app upon registrationURI
access_token_ttlintegerAccess 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_ttlintegerRefresh token lifetime in seconds. The maximum allowed value is 7 days. If the value is not specified or exceeds the maximum value, then by default the maximum value is applied

Response Body

ParameterDescription
access_tokenstringAccess token to pass to subsequent API requests
expires_inintegerIssued access token TTL (time to live), in seconds
refresh_tokenstringRefresh token to get a new access token, when the issued one expires
refresh_token_expires_inintegerIssued refresh token TTL (time to live), in seconds
scopestringList of permissions allowed with this access token, white-space separated
token_typestringType of token. The only possible value supported is Bearer. This value should be used when specifying access token in Authorization header of subsequent API requests
owner_idstringExtension identifier
endpoint_idstringUnique 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

Example

Request

POST /restapi/oauth/token 

code=U0pDMDFQMDRQQVMwMnxBQUFGTVUyYURGYi0wUEhEZ2VLeGFiamFvZlNMQlZ5TExBUHBlZVpTSVlhWk
xYajg5aDA3UVJmZ3VHdTNOTk05YkR0MEw0RkhnMlRPdTZuMTJSdEYwUkZyZHBSNWtLUzlzc1V8eW1OWVhRf
FdnUW5QcExvYVhrN3lqY3p5NEJwWHc&grant_type=authorization_code&redirect_uri=https://www.example.com/myapp

Response

HTTP/1.1 200 OK
Content-Type: application/json

{
  "access_token" : "U1BCMDFUMDRKV1MwMXxzLFSvXdw5PHMsVLEn_MrtcyxUsw",
  "token_type" : "bearer",
  "expires_in" : 7199,
  "refresh_token" : "U1BCMDFUMDRKV1MwMXxzLFL4ec6A0XMsUv9wLriecyxS_w",
  "refresh_token_expires_in" : 604799,
  "scope" : "AccountInfo CallLog ExtensionInfo Messages SMS",
  "owner_id" : "256440016"
}

Password Flow

Each time you call token endpoint using this flow a new client session starts. It is associated with the issued token pair: access token and refresh token, returned in response to this request. To continue the session you can refresh the obtained access token and refresh token as many times as you need, using Refresh Token flow or the same flow.

To start another client session you should call token endpoint using this flow again. Please consider that only 5 simultaneously active sessions per extension per application are supported. Thus if you exceed the number of sessions started per extension per application, the oldest one is ended.

Usage Plan Group

Auth

POST /restapi/oauth/token

Request Headers

The Content-Type header should be specified as application/x-www-form-urlencoded. Please note: Request body should be encoded appropriately. For example email john+doe@example.com as username parameter should be specified so – john%2Bdoe%40example.com.

Form Data Parameters

ParameterDescription
grant_typestringMust 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_ttlintegerAccess 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_ttlintegerRefresh 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
usernamestringPhone number in E.164 format (including the following format <phone number>*<ext. number>) or an email address linked to account or extension. Please note: You cannot use one and the same email address for authorization on different extensions (even if they are assigned to different accounts)
extensionstringExtension short number. Please note: If company number is specified as username, and extension number is not provided neither in username nor in extension attributes, then the server attempts to authenticate the client as a main company administrator. If a username is provided in a new format – with extension specified via asterisk (for example 18001234567*123) then extension attribute is ignored
passwordstringUser password
endpoint_idstringUnique 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

Response Body

ParameterDescription
access_tokenstringAccess token to pass to subsequent API requests
expires_inintegerIssued access token TTL (time to live), in seconds
refresh_tokenstringRefresh token to get a new access token, when the issued one expires
refresh_token_expires_inintegerIssued refresh token TTL (time to live), in seconds
scopestringList of permissions allowed with this access token, white-space separated
token_typestringType of token. The only possible value supported is Bearer. This value should be used when specifying access token in Authorization header of subsequent API requests
owner_idstringExtension identifier

Example 1: Phone number as a username

Request

POST /restapi/oauth/token HTTP/1.1
Accept: application/json
Content-Type: application/x-www-form-urlencoded
Authorization: Basic cmVsLWFsbC1wZXJtaXNzaWXFjMmpRZmlQcnlkSUkweE92QQ==

grant_type=password&username=18559100010*123&password=121212

Response

HTTP/1.1 200 OK
Content-Type: application/json

{
  "access_token" : "U1BCMDFUMDRKV1MwMXxzLFSvXdw5PHMsVLEn_MrtcyxUsw",
  "token_type" : "bearer",
  "expires_in" : 7199,
  "refresh_token" : "U1BCMDFUMDRKV1MwMXxzLFL4ec6A0XMsUv9wLriecyxS_w",
  "refresh_token_expires_in" : 604799,
  "owner_id" : "256440016"
}            

Example 2: Email address as a username

Request

POST /restapi/oauth/token HTTP/1.1
Accept: application/json
Content-Type: application/x-www-form-urlencoded
Authorization: Basic cmVsLWFsbC1wZXJtaXNzaWXFjMmpRZmlQcnlkSUkweE92QQ==
 
grant_type=password&username=john%2Bdoe%40example.com&password=121212

Response

HTTP/1.1 200 OK
Content-Type: application/json

{
  "access_token" : "U1BCMDFUMDRKV1MwMXxzLFSvXdw5PHMsVLEn_MrtcyxUsw",
  "token_type" : "bearer",
  "expires_in" : 7199,
  "refresh_token" : "U1BCMDFUMDRKV1MwMXxzLFL4ec6A0XMsUv9wLriecyxS_w",
  "refresh_token_expires_in" : 604799,
  "owner_id" : "256440016"
}

Refresh Token Flow

Each time you call token endpoint using this flow, you continue current client session, and receive a new token pair: access token and refresh token in response to this request. The old token pair immediately becomes inactive.

Usage Plan Group

Auth

POST /restapi/oauth/token

Form Data Parameters

ParameterDescription
refresh_tokenstringPreviously issued refresh token
grant_typestringMust hold refresh_token value
endpoint_idstringUnique identifier of a client application. If not specified, the previously specified or auto-generated value is used by default

Response Body

ParameterDescription
access_tokenstringAccess token to pass to subsequent API requests
expires_inintegerIssued access token TTL (time to live), in seconds
refresh_tokenstringRefresh token to get a new access token, when the issued one expires
refresh_token_expires_inintegerIssued refresh token TTL (time to live), in seconds
scopestringList of permissions allowed with this access token, white-space separated
token_typestringType of token. The only possible value supported is Bearer. This value should be used when specifying access token in Authorization header of subsequent API requests
owner_idstringExtension identifier

Example

Request

 POST /restapi/oauth/token HTTP/1.1
 Accept: application/json
 Content-Type: application/x-www-form-urlencoded
 Authorization: Basic cmVsLWFsbC1wZXJtaXNzaWXFjMmpRZmlQcnlkSUkweE92QQ==

 refresh_token=BCMDFUMDRKV1MwMXx5d5dwzLFL4ec6U1A0XMsUv935527jghj48&grant_type=refresh_token

Response

HTTP/1.1 200 OK
Content-Type: application/json

{
  "access_token" : "U1BCMDFUMDRKV1MwMXxzLFSvXdw5PHMsVLEn_MrtcyxUsw",
  "token_type" : "bearer",
  "expires_in" : 7199,
  "refresh_token" : "U1BCMDFUMDRKV1MwMXxzLFL4ec6A0XMsUv9wLriecyxS_w",
  "refresh_token_expires_in" : 6048799,
  "scope" : "AccountInfo CallLog ExtensionInfo Messages SMS" 
}

OAuth 2.0

Revoke Token

Revokes access/refresh token. Requests to this endpoint must be authenticated with HTTP Basic scheme using client ID and client secret as login and password, correspondingly.

Usage Plan Group

Auth

/restapi/oauth/revoke

Form Data Parameters

ParameterDescription
tokenstringActive access or refresh token to be revoked

Response Body

None

Example

Request

POST /restapi/oauth/revoke HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Authorization: Basic M2ZmYjNlMThkZDU4ZDE1YTk2NTIwYmFmNzUzZjBiNzk6MzI5OWQ0NTg5NGU1Njg5ODllOTY1ZTFiMTk5MGU2OTI

token=U0pDMDFQMDFKV1MwMXwJ_W7L1fG4eGXBW9Pp-otywzriCw

Response

HTTP/1.1 200 OK

Ringcentral Meetings API

Meeting Configuration

Get Meeting Service Info

Returns information on dial-in numbers for meetings, support and international dial-in numbers URIs and meeting account information.

Get Assistants

Returns assistants information.
Get Assisted Users

Returns assisted users information.

Meeting Management

Get Scheduled Meetings

Returns a list of meetings for a particular extension. The list of meetings does not include meetings of ‘Instant’ type.

Create Meetings

Creates a new meeting.

Get Meeting Info

Returns a particular meetings details by ID.

Update Meeting

Modifies a particular meeting.

Delete Meeting

Deletes a scheduled meeting.

End Meeting

Ends a meetings which is in progress.

Meeting Recordings

Get Account Meeting Recordings List

Returns the list of meeting recordings for the current account.

Get User Meeting Recordings List

Returns the list of meetings recordings for the current user.

RingCentral API Reference

Welcome to the RingCentral API. This reference is not only an authoritative reference to all of RingCentral’s APIs, but also a way for anyone to interact with the API in real time, using real data, without using any code.

The RingCentral API Reference is generated from the RingCentral API Swagger specification and is based on the Open API Specification.

First time using the RingCentral API?

If you are a new RingCentral Developer, the best way to get started quickly is to try out one of our many Quick Start Guides which are available in a number of programming language. Try one of them below:

Using “Try it Out”

The RingCentral API Reference allows anyone to interact with the RingCentral API in real time using their own account data. This is an excellent way to take the API out for a test drive, and a useful tool for developers troubleshooting a particular API issue they are having.

Step 1. Sign-in or Sign-up

To begin, click the “Sign in to try it out” button at any time to create a developer account. When you are done, continue to the next step.

Step 2. Create and/or Select an App

The RingCentral API Reference allows you to send API requests on behalf of any app you have created. If you have not already created an app, click the button below to create an app with all permission enabled.

Step 3. Input Your Request Parameters

When looking at any endpoint within the RingCentral API, you can enter a variety of request parameters into their corresponding form elements. When you are ready, click the “Try it out” button to initate the API request.

Step 4. Observe Output

Finally, you may observe the raw output of the API call’s response on the right hand side of the screen. This provides developers with the ability to see the exact error message if one occurred, or to see the raw response for a successful request.

Getting Help

If at any time you have a question or experience difficulty, people are there to help. We recommend visiting ing the RingCentral Developer Forums first, as you will find the greatest number of people there to help. If you prefer to reach out to us privately, contact RingCentral Technical Support.

RingCentral Call Management API – Part 2

Call Queues

Get Call Queues

Returns call queue group list

Get Call Queue Members

Returns call queue group members.

Assign Multiple Call Queue Members

Updates a call queue group.


Call Routing

Create IVR Prompts

Creates an IVR prompt.

Get IVR Prompt List

Returns the list of IVR prompts.

Get IVR Prompt

Returns an IVR prompt by ID.

Delete IVR Prompt

Deletes an IVR prompt by ID.

Update IVR Prompt

Updates an IVR prompt by ID

Get IVR Prompt Content

Returns media content of an IVR prompt by ID.

Create IVR Menu

Creates a company IVR menu.

Get IVR Menu

Returns a company IVR menu by ID.

Update IVR Menu

Updates a company IVR menu by ID.

Rule Management

Get Call Handling Rules

Returns the extension answering rules.

Create Call Handling Rule

Creates a custom answering rule for a particular caller ID.

Get Call Handling Rule

Returns an answering rule by ID.

Update Call Handling Rule

Updates a custom answering rule for a particular caller ID.

Delete Call Handling Rule

Deletes a custom answering rule by a particular ID.

Create Company Call Handling Rule

Creates a company answering rule for a particular caller ID.

Get Company Call Handling Rule List

Returns a list of company answering rules.

Get Company Call Handling Rule

Returns a company answering rule by ID.

Update Company Call Handling Rule

Updates a company answering rule.

Delete Company Call Handling Rule

Deletes a company custom answering rule by a particular ID.

Get Standard Greeting List

Returns the list of predefined standard greetings. Custom greetings recorded by user are not returned in response to this request. See Get Extension Custom Greetings.

Get Standard Greeting

Returns a standard greeting by ID.

Create Company Greeting

Creates a custom company greeting.

Create Custom User Greeting

Creates custom greeting for an extension user.

Get Custom Greeting

Returns a custom user greeting by ID.

Get Call Recording Settings

Returns call recording settings.

Update Call Recording Settings

Updates current call recording settings.

Get Call Recording Extension List

Returns the list of extensions to be recorded.

Update Call Recording Extension List

Creates or updates the list of extensions to be recorded.

Get Call Recording Custom Greeting List

Returns call recording custom greetings.

Delete Call Recording Custom Greeting List

Deletes call recording custom greetings.

Delete Call Recording Custom Greeting

Deletes call recording custom greeting(s).

Thanks for reading! In the next blog I will going to write how to use these APIs.

RingCentral Call management API

Ringcentral call management API has divided into 7 API categories as listed below.

  • Business hours
  • Call Blocking
  • Call Forwarding
  • Call Monitoring Groups
  • Call Queues
  • Call Routing
  • Rule Management

Business Hours 

Get User Business Hours

Returns the user hours when the call handling rules are applied. Please note: If user hours are set to ‘Custom hours’ then a particular schedule is returned; however if set to ’24 hours/7 days a week’ an empty schedule is returned.

Update User Business Hours

Updates the extension user hours when answering rules are to be applied.

Get Company Business Hours

Returns company hours when answering rules are to be applied.

Update Company Business Hours

Updates company hours when answering rules are to be applied.

Call Blocking

Call Blocking

Returns the current caller blocking settings of a user.
Update Caller Blocking Settings

Updates the current caller blocking settings of a user.
Get Blocked/Allowed Phone Numbers

Returns the lists of blocked and allowed phone numbers.
Add Blocked/Allowed Number

Updates either blocked or allowed phone number list with a new phone number.
Get Blocked/Allowed Number

Returns blocked or allowed phone number(s) by their ID(s). Batch request is supported.
Delete Blocked/Allowed Number

Deletes blocked or allowed phone number(s) by their ID(s). Batch request is supported.
Update Blocked/Allowed Number

Updates blocked or allowed phone number(s) by their ID(s). Batch request is supported.

Call Forwarding

Get Forwarding Number List

Returns the list of extension phone numbers used for call forwarding and call flip. The returned list contains all the extension phone numbers used for call forwarding and call flip.


Create Forwarding Number

Adds a new forwarding number to the forwarding number list.

Get Forwarding Number

Returns a specific forwarding number.

Update Forwarding Number

Updates the existing forwarding number from the forwarding number list.

Delete Forwarding Number

Deletes a forwarding number from the forwarding number list by its ID.

Call Monitoring Groups

Create Call Monitoring Group

Creates a new call monitoring group.

Get Call Monitoring Groups List

Returns call monitoring groups that can be filtered by some extension.

Updates Call Monitoring Group

Updates call monitoring group name by ID.

Delete Call Monitoring Group

Remove infromation about the given call monitoring group.

Get Call Monitoring Group Member List

Returns call monitoring group members.

Update Call Monitoring Group List

Updates call monitoring groups.

Thanks for reading!

RingCentral Glip API-Part2

Glip Compliance Exports

Create Data Export Task

Creates a task for Glip data export and returns a link at which the exported data will be available in future once the task is implemented. The exported data can be downloaded by calling Get Data Export Task method with the specific task ID.

Get Data Export Task

Returns the links for downloading Glip data exported within the specified task. If the export task is still in progress, then only the task status will be returned. If the data is ready for downloading, then the list of URLs will be returned.

Glip Profile

Get Person

Returns a user or multiple users by their ID(s). Batch request is supported.

Get Company Info

Returns information about one or more companies by their IDs.

Get Preferences

Returns information about user preferences.

Glip Webhooks

Create Webhook in Group

Creates a new webhook
Get Webhooks in Group

Returns webhooks which are available for the current user by group ID.

Get Webhooks

Returns a list of all webhooks associated with the current account.
Get Webhook

Returns webhooks(s) with the specified id(s).

Delete Webhook

Deletes the webhook by ID.
Activate Webhook

Activates webhook by ID.
Suspend Webhook

Suspends webhook by ID.

Notes

Create Note

Creates a new note in the specified chat.
Get Chat Notes

Returns the list of notes created in the specified chat.
Get Note

Returns the specified note(s). It is possible to fetch up to 50 notes per request.
Update Note

Edits a note. Notes can be edited by any user if posted to a chat the user belongs to.
Delete Note

Deletes the specified note.
Lock Note

Locks a note providing the user with the unique write access for 5 hours.
Unlock Note

Unlocks a note letting other users edit this note. Once the note is locked (by another user) it cannot be unlocked during 5 hours since the lock datetime.
Publish Note

Publishes a note making it visible to other users.

Posts
Get Post

Returns information about the specified post.

Update Post

Updates a specific post within a chat.
Delete Post

Deletes the specified post from the chat.
Get Posts

Returns a list of posts from the specified chat.
Create Post

Creates a post within the specified chat. Attachments are supported.

Tasks

Get Chat Tasks

Returns the list of tasks of the specified chat.
Create Task

Creates a task in the specified chat.
Get Task

Returns information about the specified task(s) by ID(s).
Patch Task

Updates the specified task by ID.
Delete Task

Deletes the specified task.
Complete Task

Completes a task in the specified chat.

Teams

Get Teams

Returns the list of teams where the user is a member (both archived and active) combined with a list of public teams that can be joined by the current user. All records in response are sorted by creation time of a chat in ascending order.
Create Team

Creates a team, and adds a list of people to the team.
Get Team

Returns information about the specified team.
Update Team

Updates the name and description of the specified team.
Delete Team

Deletes the specified team.
Join Team

Adds the current user to the specified team.
Leave Team

Removes the current user from the specified team.
Add Team Members

Adds members to the specified team.
Remove Team Members

Removes members from the specified team.
Archive Team

Changes the status of the specified team to ‘Archived’.
Unarchive Team

Changes the status of the specified team to ‘Active’.
Get Everyone Chat

Returns information about Everyone chat.
Update Everyone Сhat

Updates Everyone chat information.

Thanks for reading!

RingCentral Glip API

In this article I’m going write the RingCentral Glip API. The RingCentral’s team has categorized the Glip API as listed below.

  • Calendar Events
  • Chats
  • Conversations
  • Glip Compliance Exports
  • Glip Profile
  • Glip Webhooks
  • Notes
  • Posts
  • Tasks
  • Teams

Calendar Events

The Calendar Events is divided into 7 APIs

  • Get User Event List
  • Create Event
  • Get Event
  • Update Event
  • Delete Event
  • Create Event By Group Id
  • Get Group Events

Get User Events List

Returns all calendar events created by the current user.
Create Event

Creates a new calendar event.

Get Event

Returns the specified calendar event(s) by ID(s).

Update Event

Updates the specified calendar event.

Delete Event

Deletes the specified calendar event.

Create Event by Group ID

Creates a new calendar event within the specified group.

Get Group Events

Returns a list of calendar events available for the current user within the specified group. Users can only see their personal tasks and public tasks.

Chats

Get Chats

Returns the list of chats where the user is a member and also public teams that can be joined. All records in response are sorted by creation time of a chat in ascending order.

Get Chat

Returns information about a chat by ID.
Get Recent Chats

Returns recent chats where the user is a member. All records in response are sorted by the lastModifiedTime in descending order (the latest changed chat is displayed first on page)

Get Favorite Chats

Returns a list of the current user’s favorite chats.
Add Chat to Favorites

Adds the specified chat to the users’s list of favorites.

Remove Chat from Favorites

Removes the specified chat from the users’s list of favorites.
Mark Chat as Read

Sets the specified chat status to ‘Read’ for the current user.
Mark Chat as Unread

Sets the specified chat status to ‘Unread’ for the current user.

Conversations

Get Conversations

Returns the list of conversations where the user is a member. All records in response are sorted by creation time of a chat in ascending order.

Create/Open Conversation

Creates a new conversation or opens the existing one. If the conversation already exists, then its ID will be returned in response. A conversation is an adhoc discussion between a particular set of users, not featuring any specific name or description. If you add a person to the existing conversation, it creates a whole new conversation.

Get Conversation

Returns information about the specified conversation, including the list of conversation participants. A conversation is an adhoc discussion between a particular set of users, not featuring any specific name or description. If you add a person to the existing conversation, it creates a whole new conversation.

Thanks for reading. In the next blog I will remaining Glip APIs.

Ring central Messaging API

In this blog I’m going to write the list of ring central messaging APIs which is useful to you business to integrate messaging functionality with your team or teams.

The messaging APIs is divided into 5 categories as shown below.

  • Fax
  • Messaging Exports
  • Message Store
  • Pager Messages
  • SMS

Fax

In the fax api, we have two APIs as described below.

  • CreateFaxMessage
  • Get Fax Cover Page List

Create Fax Message

Creates and sends/resends a new fax message. Resend can be done if sending failed.

Get Fax Cover Page List

Returns fax cover pages available for the current extension.

Message Exports

Create Message Store Report

Creates a task to collect all account messages for a specified time interval.

Get Message Store Report Task

Returns the current status of a task on report creation.

Get Message Store Report Archive

Returns the created report with message data not including attachments.

Get Message Store Report Archive Content

Returns one of the report archives with message contents in application/zip format.

Message Store

Message Store APIs is divided into the following categories.

  • Get Message List
  • Delete Conversation
  • Get Message
  • Update Message(s)
  • Delete Message
  • Get Message Content
  • Sync Messages
  • Get Message Store Configuration
  • Update Message Store Configuration

Pager Messages

Create Internal Text Message

Creates and sends an internal text message.

SMS 

Send SMS

Creates and sends a new text message. You can send SMS messages simultaneously to different recipients up to 50 requests per minute; this limitation is relevant for all client applications. Sending and receiving SMS is available for Toll-Free Numbers within the USA. You can send up to 10 attachments in one MMS message; the size of all attachments linked is limited to 1500000 bytes.

Thanks for reading !

Design a site like this with WordPress.com
Get started