Sendbird Messages API
Operations for sending and managing messages.
Operations for sending and managing messages.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/sendbird-messages-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Sendbird Platform Messages API
description: The Sendbird Platform API provides server-side access to manage users, channels, messages, and moderation for in-app chat applications built on Sendbird. Supports group channels, open channels, direct messages, push notifications, and webhooks for real-time communication features.
version: 3.0.0
termsOfService: https://sendbird.com/terms-of-service/
contact:
name: Sendbird Support
url: https://sendbird.com/contact-us/
license:
name: Proprietary
url: https://sendbird.com/terms-of-service/
servers:
- url: https://api-{application_id}.sendbird.com/v3
description: Sendbird Platform API (replace {application_id} with your app ID)
variables:
application_id:
default: YOUR_APP_ID
description: Your Sendbird application ID
security:
- apiTokenAuth: []
tags:
- name: Messages
description: Operations for sending and managing messages.
paths:
/group_channels/{channel_url}/messages:
get:
operationId: listMessages
summary: List Messages
description: Retrieves messages from a specific group channel.
tags:
- Messages
parameters:
- $ref: '#/components/parameters/channel_url'
- name: message_ts
in: query
description: Unix timestamp to fetch messages around.
schema:
type: integer
- name: prev_limit
in: query
description: Number of messages to retrieve before message_ts.
schema:
type: integer
default: 15
maximum: 200
- name: next_limit
in: query
description: Number of messages to retrieve after message_ts.
schema:
type: integer
default: 0
maximum: 200
- name: include
in: query
description: Whether to include the message at message_ts.
schema:
type: boolean
default: false
responses:
'200':
description: A list of messages.
content:
application/json:
schema:
type: object
properties:
messages:
type: array
items:
$ref: '#/components/schemas/Message'
'400':
$ref: '#/components/responses/BadRequest'
'404':
$ref: '#/components/responses/NotFound'
post:
operationId: sendMessage
summary: Send a Message
description: Sends a message to a specific group channel.
tags:
- Messages
parameters:
- $ref: '#/components/parameters/channel_url'
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- message_type
- user_id
properties:
message_type:
type: string
description: Type of message.
enum:
- MESG
- FILE
- ADMM
user_id:
type: string
description: ID of the user sending the message.
message:
type: string
description: Text content of the message.
data:
type: string
description: Custom data string.
custom_type:
type: string
description: Custom type for message categorization.
mention_type:
type: string
enum:
- users
- channel
description: Type of mention.
mentioned_user_ids:
type: array
items:
type: string
description: IDs of mentioned users.
responses:
'200':
description: Message sent successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/Message'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
components:
responses:
Unauthorized:
description: Unauthorized. API token is missing or invalid.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
BadRequest:
description: Bad request.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
NotFound:
description: Not found. The requested resource does not exist.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
schemas:
User:
type: object
properties:
user_id:
type: string
description: Unique identifier of the user.
nickname:
type: string
description: Display nickname.
profile_url:
type: string
description: Profile image URL.
is_online:
type: boolean
description: Whether the user is currently online.
is_active:
type: boolean
description: Whether the user account is active.
last_seen_at:
type: integer
description: Unix timestamp of last activity.
access_token:
type: string
description: Access token for the user (returned when issue_access_token is true).
metadata:
type: object
description: Custom metadata.
additionalProperties:
type: string
created_at:
type: integer
description: Unix timestamp when the user was created.
Error:
type: object
properties:
error:
type: boolean
description: Indicates an error occurred.
code:
type: integer
description: Sendbird error code.
message:
type: string
description: Human-readable error message.
Message:
type: object
properties:
message_id:
type: integer
description: Unique ID of the message.
type:
type: string
description: Message type.
enum:
- MESG
- FILE
- ADMM
message:
type: string
description: Text content of the message.
user:
$ref: '#/components/schemas/User'
channel_url:
type: string
description: URL of the channel containing this message.
created_at:
type: integer
description: Unix timestamp when the message was created.
updated_at:
type: integer
description: Unix timestamp when the message was last updated.
custom_type:
type: string
description: Custom type for message categorization.
data:
type: string
description: Custom data string.
mention_type:
type: string
description: Mention type.
mentioned_users:
type: array
items:
$ref: '#/components/schemas/User'
description: Mentioned users.
parameters:
channel_url:
name: channel_url
in: path
required: true
description: URL of the channel.
schema:
type: string
securitySchemes:
apiTokenAuth:
type: apiKey
in: header
name: Api-Token
description: Sendbird API token obtained from the Sendbird Dashboard.