RingCentral Text API
Conversational AI text processing APIs
Conversational AI text processing APIs
openapi: 3.0.3
info:
title: RingCentral Adaptive Cards Text API
description: RingCentral API specification
version: 1.0.58-20240529-47eda8bd
contact:
name: RingCentral Developers Support
url: https://developers.ringcentral.com/support
termsOfService: https://www.ringcentral.com/legal/apilitos.html
license:
name: RingCentral API License Agreement
url: https://www.ringcentral.com/legal/apilitos.html
servers:
- url: https://platform.ringcentral.com
description: Production API entry point
- url: https://media.ringcentral.com
description: Production Media entry point
- url: https://platform.devtest.ringcentral.com
description: Developer sandbox API entry point
- url: https://platform.devtest.ringcentral.com
description: Developer sandbox Media entry point
security:
- OAuth2: []
tags:
- name: Text
description: Conversational AI text processing APIs
paths:
/ai/text/v1/async/summarize:
post:
tags:
- Text
summary: Conversational Summarization
description: 'Returns Conversational Summarization to the webhook URI for segmented transcript of audios
with start, end, speakerId, text(alphanumeric and punctuations).
'
operationId: caiSummarize
parameters:
- $ref: '#/components/parameters/Webhook'
requestBody:
$ref: '#/components/requestBodies/SummaryRequest'
responses:
'202':
description: Task accepted for processing.
content:
application/json:
schema:
$ref: '#/components/schemas/CaiAsyncApiResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/CaiErrorResponse'
callbacks:
requestProcessed:
'{$request.query.webhook}':
post:
parameters:
- $ref: '#/components/parameters/CallbackRequestId'
requestBody:
$ref: '#/components/requestBodies/SummaryCallbackRequest'
responses:
'200':
description: Callback successfully accepted
x-throttling-group: Heavy
x-app-permission: AI
/ai/text/v1/async/punctuate:
post:
tags:
- Text
summary: Smart Punctuation
description: Returns Smart Punctuation to the provided webhook URI.
operationId: caiPunctuate
parameters:
- $ref: '#/components/parameters/Webhook'
requestBody:
$ref: '#/components/requestBodies/PunctuateRequest'
responses:
'202':
description: Task accepted for processing.
content:
application/json:
schema:
$ref: '#/components/schemas/CaiAsyncApiResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/CaiErrorResponse'
callbacks:
requestProcessed:
'{$request.query.webhook}':
post:
parameters:
- $ref: '#/components/parameters/CallbackRequestId'
requestBody:
$ref: '#/components/requestBodies/PunctuateCallbackRequest'
responses:
'200':
description: Callback successfully accepted
x-throttling-group: Heavy
x-app-permission: AI
components:
schemas:
SummaryApiOutput:
type: object
properties:
status:
type: string
enum:
- Success
- Fail
response:
$ref: '#/components/schemas/SummaryApiResponse'
SummaryApiResponse:
oneOf:
- $ref: '#/components/schemas/SummaryOutput'
- $ref: '#/components/schemas/CaiErrorResponse'
CaiErrorCodeResponse:
required:
- errorCode
- message
type: object
properties:
errorCode:
type: string
enum:
- CAI-101
- CAI-102
- CAI-103
- CAI-104
- CAI-105
- CAI-106
- CAI-107
- CAI-108
- CAI-109
- CAI-110
message:
type: string
description: Helpful description of the errorCode
parameterName:
type: string
description: Name of parameter if specified in the message
CaiAsyncApiResponse:
type: object
properties:
jobId:
type: string
SummaryUnit:
required:
- text
- speakerId
- start
- end
type: object
properties:
speakerId:
type: string
example: JohnDoe
text:
type: string
example: Hello! This is John.
start:
type: number
format: float
example: 0.3
end:
type: number
format: float
example: 5.1
CaiErrorResponse:
type: object
properties:
errors:
type: array
items:
$ref: '#/components/schemas/CaiErrorCodeResponse'
SummaryOutputUnit:
type: object
properties:
name:
type: string
example: AbstractiveShort
enum:
- Extractive
- AbstractiveLong
- AbstractiveShort
- All
values:
type: array
description: Summary output units sorted by their occurrence in the conversation
items:
$ref: '#/components/schemas/SummaryTimingsUnit'
PunctuateApiResponse:
oneOf:
- $ref: '#/components/schemas/PunctuateOutput'
- $ref: '#/components/schemas/CaiErrorResponse'
PunctuateInput:
required:
- texts
type: object
properties:
texts:
type: array
items:
type: string
SummaryTimingsUnit:
required:
- value
type: object
properties:
confidence:
type: number
format: float
example: 0.97
value:
type: string
example: This meeting is focussed on rise of on demand marketplaces, online marketplaces and regulated services
start:
type: number
format: float
example: 0.3
end:
type: number
format: float
example: 3600.1
PunctuateApiOutput:
type: object
properties:
status:
type: string
enum:
- Success
- Fail
response:
$ref: '#/components/schemas/PunctuateApiResponse'
PunctuateOutput:
required:
- texts
type: object
properties:
texts:
type: array
items:
type: string
SummaryOutput:
type: object
properties:
summaries:
type: array
items:
$ref: '#/components/schemas/SummaryOutputUnit'
SummaryInput:
required:
- summaryType
- utterances
type: object
properties:
summaryType:
type: string
description: Type of summary to be computed
example: AbstractiveShort
enum:
- Extractive
- AbstractiveShort
- AbstractiveLong
- AbstractiveAll
- All
utterances:
type: array
items:
$ref: '#/components/schemas/SummaryUnit'
requestBodies:
PunctuateCallbackRequest:
description: Punctuate Callback Output
content:
application/json:
schema:
allOf:
- type: object
properties:
jobId:
type: string
creationTime:
type: string
format: date-time
completionTime:
type: string
format: date-time
expirationTime:
type: string
format: date-time
- $ref: '#/components/schemas/PunctuateApiOutput'
required: true
PunctuateRequest:
description: Punctuation API Input Format
content:
application/json:
schema:
$ref: '#/components/schemas/PunctuateInput'
required: true
SummaryRequest:
description: Summary Input Format
content:
application/json:
schema:
$ref: '#/components/schemas/SummaryInput'
required: true
SummaryCallbackRequest:
description: Summary Callback Output
content:
application/json:
schema:
allOf:
- type: object
properties:
jobId:
type: string
creationTime:
type: string
format: date-time
completionTime:
type: string
format: date-time
expirationTime:
type: string
format: date-time
- $ref: '#/components/schemas/SummaryApiOutput'
required: true
parameters:
CallbackRequestId:
name: RCRequestId
deprecated: true
in: header
description: 'Input RequestId corresponding to this response.\
DEPRECATED. "jobId" body attribute should be used for tracking.
'
required: true
style: simple
explode: false
schema:
type: string
Webhook:
name: webhook
in: query
description: The webhook URI to which the job response will be returned
required: true
style: form
explode: true
schema:
type: string
format: uri
securitySchemes:
OAuth2:
type: oauth2
flows:
authorizationCode:
authorizationUrl: https://platform.ringcentral.com/restapi/oauth/authorize
tokenUrl: https://platform.ringcentral.com/restapi/oauth/token
refreshUrl: https://platform.ringcentral.com/restapi/oauth/token
scopes: {}
x-tagGroups:
- name: Voice
popular: true
tags:
- Business Hours
- Call Blocking
- Call Control
- Call Forwarding
- Call Handling Rules
- Interaction Rules
- State-based Rules
- Call Flip
- Call Log
- Call History
- Call Log Export
- Call Monitoring Groups
- Call Queues
- Call Recordings
- Call Recording Settings
- Device SIP Registration
- Greetings
- IVR
- RingOut
- Verification Calls
- name: SMS and Fax
popular: true
tags:
- Fax
- Message Exports
- Message Store
- Pager Messages
- SMS
- High Volume SMS
- SMS Log Export
- SMS Templates
- Voicemail Broadcasting
- name: Social Messaging
popular: true
tags:
- Identities
- Contents
- name: Team Messaging
popular: true
tags:
- Adaptive Cards
- Bots
- Calendar Events
- Chats
- Conversations
- Compliance Exports
- Contacts
- Incoming Webhooks
- Notes
- Posts
- Profile
- Tasks
- Teams
- name: Video
popular: true
tags:
- Bridge Management
- Delegation Management
- Meetings History
- Meeting Recordings
- RCM Meetings (Legacy)
- RCM Webinars (Legacy)
- name: Webinar
popular: true
tags:
- Webinars and Sessions
- Invitees
- Historical Webinars
- Historical Recordings
- Registration Management
- Registrants
- Webinar Analytics
- Webinar Subscriptions
- name: Analytics
popular: true
tags:
- Business Analytics
- name: Artificial Intelligence
popular: true
tags:
- Insights
- Audio
- Text
- Status
- name: Authentication
tags:
- OAuth 2.0 / OpenID Connect
- Interoperability
- name: Account
tags:
- Company
- Custom Fields
- Features
- Licenses
- Tax Locations
- Cost Centers
- Multi-Site
- Phone Numbers
- Presence
- Regional Settings
- User Permissions
- User Settings
- Audit Trail
- Calling Rates
- Appearance Customization
- Account Integrations
- name: Provisioning
tags:
- Automatic Location Updates
- Devices
- Extensions
- Paging Only Groups
- Park Locations
- Phone Lines
- SCIM
- Shared Lines
- Group Call Pickup
- Delegated Lines Groups
- Directed Call Pickup
- IVR Apps
- Video Configuration
- Number Porting
- SMB
- Account Federation
- Integrations
- Enterprise Portal API
- Push to Talk Provisioning
- BYOC
- name: Address Book
tags:
- External Contacts
- Internal Contacts
- Hybrid Directory Contacts
- Overlay Contacts
- External Shared Directory
- name: Roles and Permissions
tags:
- Permissions
- Role Management
- Site Administration
- User Groups
- name: Events & Notifications
tags:
- Subscriptions
- name: User Integrations
tags:
- Token Management
- Calendar Management
- Calendar Event Management
- Calendar Presence Link
- Cloud Personal Contacts
- Cloud Shared Contacts
- Cloud Directory
- Deprecated Calendar API
- name: Rooms
tags:
- Rooms Client API
- Rooms Management API
- name: App Management
tags:
- App Gallery
- App Rating Review
- Bot Provisioning
- name: Workflow Builder
tags:
- Flows
- Flow Editor
- Flow Log
- Flow Templates
- name: Utilities
tags:
- API Info
- Application Settings
- Async Tasks
- User Notifications
- Client Versions
- End-to-End Encryption