RingCentral Message Store API

The Message Store API from RingCentral — 5 operation(s) for message store.

OpenAPI Specification

ringcentral-message-store-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: RingCentral Adaptive Cards Message Store 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: Message Store
paths:
  /restapi/v1.0/account/{accountId}/extension/{extensionId}/message-store/{messageId}/content/{attachmentId}:
    get:
      tags:
      - Message Store
      summary: Get Message Attachment Content
      description: 'Returns media content of a message attachment.

        The content is typically an audio file (`audio/mpeg` or `audio/wav`) for voicemails,

        TIFF or PDF for faxes and image/audio/video for MMS.


        **This API must be called via media API entry point, e.g. https://media.ringcentral.com**

        '
      operationId: readMessageContent
      parameters:
      - $ref: '#/components/parameters/AccountId'
      - $ref: '#/components/parameters/ExtensionId'
      - name: messageId
        in: path
        required: true
        schema:
          type: string
      - name: attachmentId
        in: path
        required: true
        schema:
          type: string
      - $ref: '#/components/parameters/ContentDisposition'
      - $ref: '#/components/parameters/ContentDispositionFilename'
      responses:
        '200':
          description: Successful response
          content:
            audio/*:
              schema:
                type: string
                format: binary
            image/*:
              schema:
                type: string
                format: binary
            video/*:
              schema:
                type: string
                format: binary
            application/pdf:
              schema:
                type: string
                format: binary
      x-media-api: true
      x-availability: High
      x-throttling-group: Medium
      x-app-permission: ReadMessages
  /restapi/v1.0/account/{accountId}/message-store-configuration:
    get:
      tags:
      - Message Store
      summary: Get Message Store Configuration
      description: Returns message store settings.
      operationId: readMessageStoreConfiguration
      parameters:
      - $ref: '#/components/parameters/AccountId'
      responses:
        '200':
          description: Message store configuration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MessageStoreConfiguration'
      x-feature: AccountAdministration
      x-availability: Limited
      x-throttling-group: Light
      x-user-permission: AccountAdministration
      x-app-permission: EditAccounts
    put:
      tags:
      - Message Store
      summary: Update Message Store Configuration
      description: Updates message store settings.
      operationId: updateMessageStoreConfiguration
      parameters:
      - $ref: '#/components/parameters/AccountId'
      requestBody:
        description: JSON body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MessageStoreConfiguration'
        required: true
      responses:
        '200':
          description: Updated message store configuration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MessageStoreConfiguration'
      x-feature: AccountAdministration
      x-availability: Limited
      x-throttling-group: Light
      x-user-permission: AccountAdministration
      x-app-permission: EditAccounts
  /restapi/v1.0/account/{accountId}/extension/{extensionId}/message-sync:
    get:
      tags:
      - Message Store
      summary: Sync Messages
      description: Synchronizes messages.
      operationId: syncMessages
      parameters:
      - $ref: '#/components/parameters/AccountId'
      - $ref: '#/components/parameters/ExtensionId'
      - name: conversationId
        in: query
        description: 'Conversation identifier for the resulting messages. Meaningful

          for SMS and Pager messages only.

          '
        schema:
          type: integer
          format: int64
      - name: dateFrom
        in: query
        description: 'The start date/time for resulting messages in ISO 8601 format

          including timezone, for example 2016-03-10T18:07:52.534Z. The default value

          is dateTo minus 24 hours

          '
        schema:
          type: string
          format: date-time
      - name: dateTo
        in: query
        description: 'The end date/time for resulting messages in ISO 8601 format including

          timezone, for example 2016-03-10T18:07:52.534Z. The default value is current

          time

          '
        schema:
          type: string
          format: date-time
      - name: direction
        in: query
        description: 'Direction for the resulting messages. If not specified, both

          inbound and outbound messages are returned. Multiple values are accepted

          '
        style: form
        explode: true
        schema:
          type: array
          items:
            $ref: '#/components/schemas/MessageDirectionEnum'
      - name: distinctConversations
        in: query
        description: 'If `true`, then the latest messages per every conversation ID

          are returned

          '
        schema:
          type: boolean
      - name: messageType
        in: query
        description: 'Type for the resulting messages. If not specified, all types

          of messages are returned. Multiple values are accepted

          '
        style: form
        explode: true
        schema:
          type: array
          items:
            $ref: '#/components/schemas/MessageTypeEnum'
      - name: recordCount
        in: query
        description: 'Limits the number of records to be returned (works in combination

          with dateFrom and dateTo if specified)

          '
        schema:
          type: integer
          format: int32
      - name: syncToken
        in: query
        description: A `syncToken` value from the previous sync response (for `ISync` mode only, mandatory)
        schema:
          type: string
      - name: syncType
        in: query
        description: Type of message synchronization
        schema:
          $ref: '#/components/schemas/SyncTypeEnum'
      - name: voicemailOwner
        in: query
        description: 'This query parameter will filter voicemail messages based on its owner.

          This parameter should be controlled by the ''SharedVoicemail'' feature.

          If the feature is disabled this filter shouldn''t be applied.

          '
        schema:
          type: array
          items:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetMessageSyncResponse'
      x-feature: ReadMessages
      x-availability: High
      x-throttling-group: Light
      x-app-permission: ReadMessages
      x-user-permission: ReadMessages
  /restapi/v1.0/account/{accountId}/extension/{extensionId}/message-store:
    get:
      tags:
      - Message Store
      summary: List Messages
      description: Returns a list of messages from an extension mailbox.
      operationId: listMessages
      parameters:
      - $ref: '#/components/parameters/AccountId'
      - $ref: '#/components/parameters/ExtensionId'
      - name: availability
        in: query
        description: 'Specifies the availability status for resulting messages.

          Multiple values are accepted

          '
        style: form
        explode: true
        schema:
          type: array
          items:
            $ref: '#/components/schemas/MessageAvailabilityEnum'
      - name: conversationId
        in: query
        description: Specifies a conversation identifier for the resulting messages
        schema:
          type: string
      - name: dateFrom
        in: query
        description: 'Start date/time for resulting messages in ISO 8601 format

          including timezone, for example 2016-03-10T18:07:52.534Z. The default value

          is dateTo minus 24 hours

          '
        schema:
          type: string
          format: date-time
      - name: dateTo
        in: query
        description: 'End date/time for resulting messages in ISO 8601 format including

          timezone, for example 2016-03-10T18:07:52.534Z. The default value is current

          time

          '
        schema:
          type: string
          format: date-time
      - name: direction
        in: query
        description: 'Direction for resulting messages. If not specified, both

          inbound and outbound messages are returned. Multiple values are accepted

          '
        style: form
        explode: true
        schema:
          type: array
          items:
            $ref: '#/components/schemas/MessageDirectionEnum'
      - name: distinctConversations
        in: query
        description: 'If `true`, then the latest messages per every conversation ID

          are returned

          '
        schema:
          type: boolean
      - name: messageType
        in: query
        description: 'Type of resulting messages. If not specified, all messages

          without message type filtering are returned. Multiple values are accepted

          '
        style: form
        explode: true
        schema:
          type: array
          items:
            $ref: '#/components/schemas/MessageTypeEnum'
      - name: readStatus
        in: query
        description: 'Read status for resulting messages. Multiple values are

          accepted

          '
        style: form
        explode: true
        schema:
          type: array
          items:
            $ref: '#/components/schemas/MessageReadStatusEnum'
      - name: page
        in: query
        description: 'Indicates a page number to retrieve. Only positive number values

          are accepted

          '
        schema:
          type: integer
          format: int32
          default: 1
      - name: perPage
        in: query
        description: Indicates a page size (number of items)
        schema:
          type: integer
          format: int32
          default: 100
      - name: phoneNumber
        in: query
        description: 'Phone number. If specified, messages are returned for this

          particular phone number only

          '
        schema:
          type: string
      responses:
        '200':
          description: Message list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetMessageList'
      x-feature: ReadMessages
      x-availability: High
      x-throttling-group: Light
      x-app-permission: ReadMessages
      x-user-permission: ReadMessages
      x-notifications:
      - $ref: '#/components/schemas/InboundMessageEvent'
      - $ref: '#/components/schemas/InstantMessageEvent'
      - $ref: '#/components/schemas/MessageEvent'
    delete:
      tags:
      - Message Store
      summary: Delete Conversation
      description: 'Deletes conversation(s) by conversation ID(s). Batch request is

        supported, max number of IDs passed as query/path parameters is 50. Alternative

        syntax is supported - user conversations can be deleted by passing multiple

        IDs in request body as an array of string, max number of conversation IDs

        passed in request body is 100. In this case asterisk is used in the path instead

        of IDs

        '
      operationId: deleteMessageByFilter
      parameters:
      - $ref: '#/components/parameters/AccountId'
      - $ref: '#/components/parameters/ExtensionId'
      - name: conversationId
        in: query
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: dateTo
        in: query
        description: 'Messages received earlier then the date specified will be deleted.

          The default value is current date/time

          '
        schema:
          type: string
          format: date-time
      - name: type
        in: query
        description: Type of messages to be deleted
        schema:
          type: string
          default: All
          enum:
          - Fax
          - SMS
          - VoiceMail
          - Pager
          - Text
          - All
      responses:
        '204':
          description: No content
      x-feature: EditMessages
      x-availability: Limited
      x-throttling-group: Medium
      x-app-permission: EditMessages
      x-user-permission: EditMessages
  /restapi/v1.0/account/{accountId}/extension/{extensionId}/message-store/{messageId}:
    parameters:
    - $ref: '#/components/parameters/AccountId'
    - $ref: '#/components/parameters/ExtensionId'
    - name: messageId
      in: path
      description: Internal identifier of a message (or multiple messages in case of bulk operation)
      required: true
      schema:
        type: array
        minItems: 1
        items:
          type: string
          example: '8930983240'
    get:
      tags:
      - Message Store
      summary: Get Message(s)
      description: 'Returns an individual message record or multiple records by the given message ID(s).

        The length of inbound messages is unlimited. Bulk syntax is supported.

        '
      operationId: readMessage
      responses:
        '200':
          description: Successful response (single message)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetMessageInfoResponse'
        '207':
          description: Successful response (multiple messages via bulk syntax)
          content:
            application/vnd.ringcentral.multipart+json:
              schema:
                $ref: '#/components/schemas/GetMessageMultiResponse'
            multipart/mixed:
              schema:
                type: string
      x-feature: ReadMessages
      x-availability: High
      x-throttling-group: Light
      x-app-permission: ReadMessages
      x-user-permission: ReadMessages
      x-notifications:
      - $ref: '#/components/schemas/VoicemailMessageEvent'
    put:
      tags:
      - Message Store
      summary: Update Message(s)
      description: 'Updates message(s) by their ID(s). Currently, only the `readStatus`

        can be updated using this method.


        Bulk syntax is supported, max number of IDs passed as query/path

        parameters is 50. Alternative bulk syntax is also supported - user messages can be updated

        by passing multiple IDs in request body as an array of string, max number

        of IDs passed in the body is 1000. In this case asterisk is used in the

        path instead of IDs.

        '
      operationId: updateMessage
      requestBody:
        description: Request body (different formats for regular and bulk syntax)
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateMessageRequest'
          application/vnd.ringcentral.multipart+json:
            schema:
              $ref: '#/components/schemas/UpdateMessageBulkRequest'
          multipart/mixed:
            schema:
              type: string
        required: true
      responses:
        '200':
          description: Successful response (single message)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetMessageInfoResponse'
        '207':
          description: Successful response (multiple messages via bulk syntax)
          content:
            application/vnd.ringcentral.multipart+json:
              schema:
                $ref: '#/components/schemas/GetMessageMultiResponse'
            multipart/mixed:
              schema:
                type: string
      x-feature: EditMessages
      x-availability: Limited
      x-throttling-group: Medium
      x-app-permission: EditMessages
      x-user-permission: EditMessages
    patch:
      tags:
      - Message Store
      summary: Patch Message(s)
      description: 'Patches message(s) by ID(s). Currently, only updating the `readStatus` and

        restoring deleted messages are supported through this method.


        For changing status of a message send `readStatus` set to either ''Read'' or ''Unread'' in request.

        It is possible to restore a message and its attachments (if message status is ''Deleted'') by sending

        `availability` attribute set to ''Alive'' in request body. If a message is already in ''Purged'' state

        then its attachments cannot be restored and the message itself is about to be physically deleted.


        Bulk syntax (both traditional and alternative one) is supported.

        '
      operationId: patchMessage
      requestBody:
        description: Request body (different formats for regular and bulk syntax)
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchMessageRequest'
          application/vnd.ringcentral.multipart+json:
            schema:
              $ref: '#/components/schemas/PatchMessageBulkRequest'
          multipart/mixed:
            schema:
              type: string
        required: true
      responses:
        '200':
          description: Successful response (single message)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetMessageInfoResponse'
        '207':
          description: Successful response (multiple messages via bulk syntax)
          content:
            application/vnd.ringcentral.multipart+json:
              schema:
                $ref: '#/components/schemas/GetMessageMultiResponse'
            multipart/mixed:
              schema:
                type: string
      x-availability: Limited
      x-throttling-group: Medium
      x-app-permission: EditMessages
      x-user-permission: EditMessages
    delete:
      tags:
      - Message Store
      summary: Delete Message
      description: 'Deletes message(s) by the given message ID(s). The first call of

        this method transfers the message to the ''Delete'' status. The second call

        transfers the deleted message to the ''Purged'' status. If it is required to

        make the message ''Purged'' immediately (from the first call), then set the

        query parameter purge to `true`.

        '
      operationId: deleteMessage
      parameters:
      - name: purge
        in: query
        description: 'If the value is `true`, then the message is purged immediately

          with all the attachments

          '
        schema:
          type: boolean
          default: false
      requestBody:
        required: false
        description: Request body (only supported with alternative bulk syntax when `messageId` is set to '*' in the path)
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteMessageBulkRequest'
      responses:
        '204':
          description: No content
      x-feature: EditMessages
      x-availability: Limited
      x-throttling-group: Medium
      x-app-permission: EditMessages
      x-user-permission: EditMessages
components:
  schemas:
    MessageDirectionEnum:
      type: string
      enum:
      - Inbound
      - Outbound
      description: 'Text message direction. Note that for some message types not all

        directions are allowed. For example voicemail messages can

        be only inbound

        '
    MessageEventBody:
      type: object
      properties:
        extensionId:
          type: string
          description: Internal identifier of an extension
        lastUpdated:
          type: string
          description: 'Date/time when the message was last modified in ISO 8601 format

            including timezone, for example 2016-03-10T18:07:52.534Z

            '
          format: date-time
        changes:
          type: array
          description: Message Changes
          items:
            $ref: '#/components/schemas/MessageChanges'
        ownerId:
          type: string
          description: Internal identifier of a subscription owner extension
      description: Notification payload body
    MultipartRequestEntryBase:
      type: object
      properties:
        resourceId:
          type: string
          description: Internal identifier of a resource (required when alternative syntax with '*' is used)
          example: '1724099032020'
    MessageAttachmentTypeEnum:
      type: string
      description: Type of message attachment
      enum:
      - AudioRecording
      - AudioTranscription
      - Text
      - SourceDocument
      - RenderedDocument
      - MmsAttachment
    MessagingNavigationInfo:
      type: object
      properties:
        firstPage:
          $ref: '#/components/schemas/MessagingNavigationInfoURI'
        nextPage:
          $ref: '#/components/schemas/MessagingNavigationInfoURI'
        previousPage:
          $ref: '#/components/schemas/MessagingNavigationInfoURI'
        lastPage:
          $ref: '#/components/schemas/MessagingNavigationInfoURI'
      description: Information on navigation
    NotificationRecipientInfo:
      type: object
      properties:
        phoneNumber:
          type: string
          description: Phone number in E.164 (with '+' sign) format
        extensionNumber:
          type: string
          description: Extension number
        target:
          type: boolean
          description: 'True specifies that message is sent exactly to this recipient.

            Returned in to field for group MMS. Useful if one extension has several

            phone numbers''

            '
        location:
          type: string
          description: 'Contains party location (city, state) if one can be determined

            from phoneNumber. This property is filled only when phoneNumber is not

            empty and server can calculate location information from it (for example,

            this information is unavailable for US toll-free numbers)

            '
        name:
          type: string
          description: 'Symbolic name associated with a caller/callee. If the phone

            does not belong to the known extension, only the location is returned,

            the name is not determined then

            '
    SyncTypeEnum:
      type: string
      enum:
      - FSync
      - ISync
      description: "Type of message synchronization request:\n  - FSync -- full sync\n  - ISync -- incremental sync\n"
    ConversationInfo:
      type: object
      properties:
        id:
          type: string
          description: Internal identifier of a conversation
        uri:
          type: string
          format: uri
          description: Deprecated. Link to a conversation resource
      description: SMS and Pager only. Information about a conversation the message belongs to
    InstantMessageEventBody:
      type: object
      properties:
        id:
          type: string
          description: Internal identifier of a message
        to:
          type: array
          description: Message receiver(s) information
          items:
            $ref: '#/components/schemas/NotificationRecipientInfo'
        from:
          $ref: '#/components/schemas/SenderInfo'
        type:
          type: string
          description: Type of message. The default value is 'SMS'
        creationTime:
          type: string
          description: 'Message creation date/time in ISO 8601 format including timezone,

            for example 2016-03-10T18:07:52.534Z

            '
          format: date-time
        lastModifiedTime:
          type: string
          description: 'Date/time when the message was modified in ISO 8601 format including

            timezone, for example 2016-03-10T18:07:52.534Z

            '
          format: date-time
        readStatus:
          $ref: '#/components/schemas/MessageReadStatusEnum'
        priority:
          $ref: '#/components/schemas/MessagePriorityEnum'
        attachments:
          type: array
          description: Message attachment data
          items:
            $ref: '#/components/schemas/MessageAttachmentInfo'
        direction:
          $ref: '#/components/schemas/MessageDirectionEnum'
        availability:
          $ref: '#/components/schemas/MessageAvailabilityEnum'
        subject:
          type: string
          description: 'Message subject. It replicates message text which is also returned

            as an attachment

            '
        messageStatus:
          $ref: '#/components/schemas/MessageStatusEnum'
        conversationId:
          type: string
          description: 'Deprecated. Identifier of a conversation the message belongs

            to

            '
        conversation:
          $ref: '#/components/schemas/ConversationInfo'
        ownerId:
          type: string
          description: Internal identifier of a subscription owner extension
      description: Notification payload body
    MessageChanges:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/MessageTypeEnum'
        newCount:
          type: integer
          format: int32
          description: Number of new messages. Can be omitted if the value is zero
        updatedCount:
          type: integer
          format: int32
          description: Number of updated messages. Can be omitted if the value is zero
        newMessageIds:
          description: Identifiers of the new messages, applicable for all message types
          type: array
          items:
            type: integer
            format: int64
    PatchMessageBulkRequest:
      type: array
      minItems: 1
      items:
        allOf:
        - $ref: '#/components/schemas/MultipartRequestEntryBase'
        - type: object
          required:
          - body
          properties:
            body:
              $ref: '#/components/schemas/PatchMessageRequest'
    GetMessageSyncResponse:
      required:
      - records
      - syncInfo
      type: object
      properties:
        uri:
          type: string
          format: uri
          description: Link to the message sync resource
        records:
          type: array
          description: List of message records with synchronization information
          items:
            $ref: '#/components/schemas/GetMessageInfoResponse'
        syncInfo:
          $ref: '#/components/schemas/SyncInfoMessages'
    MessageStoreCallerInfoResponseFrom:
      type: object
      properties:
        extensionNumber:
          type: string
          description: 'Extension short number (usually 3 or 4 digits). This property

            is filled when parties communicate by means of short internal numbers,

            for example when calling to other extension or sending/receiving Company

            Pager message

            '
        extensionId:
          type: string
          description: Internal identifier of an extension
        location:
          type: string
          description: 'Contains party location (city, state) if one can be determined

            from phoneNumber. This property is filled only when phoneNumber is not

            empty and server can calculate location information from it (for example,

            this information is unavailable for US toll-free numbers)

            '
        name:
          type: string
          description: 'Symbolic name associated with a party. If the phone does not

            belong to the known extension, only the location is returned, the name

            is not determined then

            '
        phoneNumber:
          type: string
          description: 'Phone number of a party. Usually it is a plain number including

            country and area code like 18661234567. But sometimes it could be returned

            from database with some formatting applied, for example (866)123-4567.

            This property is filled in all cases where parties communicate by means

            of global phone numbers, for example when calling to direct numbers or

            sending/receiving SMS

            '
      description: Sender information
    InstantMessageEvent:
      type: object
      properties:
        uuid:
          type: string
          description: Universally unique identifier of a notification
        event:
          type: string
          description: Event filter URI
        timestamp:
          type: string
          description: 'Date/time of sending a notification in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)

            format including timezone, for example *2016-03-10T18:07:52.534Z*

            '
        subscriptionId:
          type: string
          description: Internal identifier of a subscription
        body:
          $ref: '#/components/schemas/InstantMessageEventBody'
    UpdateMessageBulkRequest:
      type: array
      minItems: 1
      items:
        allOf:
        - $ref: '#/components/schemas/MultipartRequestEntryBase'
        - type: object
          required:
          - body
          properties:
            body:
              $ref: '#/components/schemas/UpdateMessageRequest'
    AlertInfo:
      type: object
      properties:
        title:
          type: string
          description: Title of a message
        body:
          type: string
          description: Message Description
      description: Alert information
    SenderInfo:
      type: object
      properties:
        phoneNumber:
          type: string
          description: Phone number in E.164 (with '+' sign) format
        extensionNumber:
          type: string
          description: Extension number
        location:
          type: string
          description: 'Contains party location (city, state) if one can be determined

            from phoneNumber. This property is filled only when phoneNumber is not

            empty and server can calculate location information from it (for example,

            this information is unavailable for US toll-free numbers)

            '
        name:
          type: string
          description: 'Symbolic name associated with a caller/callee. If the phone

            does not belong to the known extension, only the location is returned,

            the name is not determined then

            '
      description: Extension Type. For GCM transport type '_from' property should be used || Message sender information
    MessagingNavigationInfoURI:
      type: object
      properties:
        uri:
          type: string
          format: uri
      description: Canonical URI for the corresponding page of the list
    MultipartResponseEntryBase:
      type: object
      required:
      - resourceId
      - status
      properties:
        resourceId:
          type: string
          description: Internal identifier of a resource
          example: '1724099032020'
        status:
          type: integer
          format: int32
          description: HTTP status code of an operation on given resource
          example: 200
    MessageStoreConfiguration:
      type: object
      properties:
        retentionPeriod:
          maximum: 90
          minimum: 7
          type: integer
          format: int32
          description: 'Retention policy setting, specifying how long to keep messages;

            the supported value range is 7-90 days. Currently, the retention period is supported for `Fax` and `Voicemail` messages only.

            SMS messages are stored with no time limits

            '
    VoicemailMessageEvent:
      type: object
      properties:
        uuid:
          type: string
          description: Universally unique identifier of a notification
        event:
          type: string
          description: Event filter URI
        timestamp:
          type: string
          description: Date/time of sendi

# --- truncated at 32 KB (55 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/ringcentral/refs/heads/main/openapi/ringcentral-message-store-api-openapi.yml