For Agents
Send messages, manage channels, moderate content, and run chat campaigns through Stream's chat infrastructure. Supports per-user JWT tokens, blocklists, and reactions across 171 endpoints.
Get started with Stream API in minutes using your preferred integration method.
# Add to your MCP client config (Claude Desktop, Cursor, Windsurf)
{
"jentic": {
"url": "https://api.jentic.com/mcp",
"auth": "oauth"
}
}
# Then ask your agent:
"send a chat message in a stream channel"
# → Jentic returns the GET /events tool with parameter schema, agent executes.What an agent can do with Stream API API.
Create and update chat channels with custom roles, members, and metadata
Send messages with attachments, reactions, threads, and read receipts
Issue per-user JWT tokens to scope chat access to a single user session
Run blocklist checks and AI moderation on inbound messages before delivery
GET STARTED
Use for: I need to send a chat message to a channel, Create a new chat channel with two members, Issue a JWT token for the user I am acting on behalf of, List all channels a given user is a member of
Not supported: Does not handle email delivery, SMS, voice calls, or video conferencing — use for chat messaging and in-app community features only.
The Stream API powers in-app chat, channels, messages, reactions, threads, moderation, and activity feeds for consumer and SaaS products. It exposes 171 endpoints covering channel CRUD, message send and update, member roles, push notifications, blocklists, campaigns, and AI-assisted moderation. Stream issues short-lived JWT tokens per user so each client only sees the channels they belong to, and supports a global edge network for low-latency delivery worldwide.
Launch and stop chat campaigns to broadcast messages to channel segments
Query channels by member, custom field, or last message timestamp
Manage push notification settings and devices per user
Patterns agents use Stream API API for, with concrete tasks.
★ In-App Chat for Consumer Products
Embed direct messaging and group chat into mobile or web apps with channels, threads, reactions, typing indicators, and read state. Stream handles message storage, fan-out, and delivery so product teams ship a working chat experience in days instead of building real-time infrastructure from scratch. The API issues per-user JWT tokens so each client only accesses its own channels.
Create a messaging channel between users alice and bob, issue a JWT for alice, then send the message 'Hi from the agent' on her behalf.
Community and Support Channels
Run public community channels, support rooms, or moderated group chats with role-based permissions, blocklists, and AI moderation. The Stream API exposes blocklist CRUD and campaign endpoints so moderation teams can enforce content rules and broadcast announcements across many channels at once.
Add the term 'spam-domain.example' to the global blocklist and confirm the moderation rule is active for all channels.
Customer Engagement Campaigns
Send targeted in-chat campaigns to user segments using the campaigns endpoints. Marketing or lifecycle teams query users by attribute, schedule the campaign, and Stream delivers messages through the existing chat channel without the user installing anything new. Useful for re-engagement, product announcements, and onboarding nudges.
Start campaign id 'camp_welcome_2026' and verify it transitioned to status 'running'.
AI Agent Chat Workflows
AI agents act as a participant in Stream channels — reading recent messages, generating a response, and posting back through the same channel. Through Jentic the agent searches for the send-message operation, loads the schema, and executes with a JWT scoped to the agent user, so the raw Stream secret never enters the agent's context.
Read the last 20 messages in channel 'support-123', generate a reply, and post it as user 'agent-bot'.
171 endpoints — the stream api powers in-app chat, channels, messages, reactions, threads, moderation, and activity feeds for consumer and saas products.
METHOD
PATH
DESCRIPTION
/channels
Query channels by filter and sort
/app
Get app settings and configuration
/blocklists
Create a blocklist of banned words
/campaigns/{id}/start
Start a chat campaign
/campaigns/{id}/stop
Stop a running campaign
/blocklists
List all blocklists in the app
/channels
Query channels by filter and sort
/app
Get app settings and configuration
/blocklists
Create a blocklist of banned words
/campaigns/{id}/start
Start a chat campaign
/campaigns/{id}/stop
Stop a running campaign
Three things that make agents converge on Jentic-routed access.
Credential isolation
Stream's app secret and per-user JWT signing key are stored encrypted in the Jentic vault. Agents receive a short-lived user-scoped JWT at execution time — the master secret never enters the agent's context.
Intent-based discovery
Agents search by intent (e.g. 'send a chat message' or 'add to blocklist') and Jentic returns the matching Stream operation with its full input schema, so the agent can call the correct endpoint without browsing Stream's docs.
Time to first call
Direct Stream integration including JWT signing, webhook setup, and moderation wiring: 3-7 days. Through Jentic: under 1 hour — search, load, execute.
Alternatives and complements available in the Jentic catalogue.
Twilio Conversations
Twilio Conversations offers chat, SMS, and voice on one platform; Stream is chat-only with deeper engagement features
Choose Twilio if the workflow also needs SMS or voice; choose Stream when chat depth (reactions, threads, moderation) matters more
Sendbird
Sendbird is a comparable chat-as-a-service vendor with similar channel and moderation primitives
Use Sendbird when the customer already has Sendbird credentials or needs its specific moderation tooling; otherwise Stream's campaign endpoints are richer
Pusher
Pusher provides lower-level pub/sub channels often used alongside chat for presence and live cursors
Pair Pusher with Stream when the product needs custom realtime events outside chat semantics
Specific to using Stream API API through Jentic.
What authentication does the Stream API use?
Stream uses an apiKey scheme — a per-user JWT passed in the Authorization header, plus a server-side api_key query parameter and Stream-Auth-Type header. Through Jentic these credentials live in the encrypted vault and never enter the agent's context, so the agent only receives a scoped token at execution time.
Can I send a chat message with the Stream API?
Yes. The send-message operation under the channels resource accepts a channel id and a message body and returns the persisted message with id, created_at, and reactions. The spec exposes channel querying via POST /channels and channel-scoped message endpoints under the same resource.
What are the rate limits for the Stream API?
Stream applies per-app rate limits that vary by endpoint family — channel and message reads have higher limits than campaign or moderation writes. Specific quotas depend on the plan; production apps should implement exponential backoff on 429 responses and check the X-Ratelimit-Remaining header.
How do I moderate messages with the Stream API through Jentic?
Search Jentic for 'add a word to the chat blocklist'. Jentic returns the POST /blocklists operation with its schema; load it, supply the blocklist name and words, and execute. Stream then applies the rule across all channels in the app.
Can the Stream API run chat campaigns?
Yes. POST /campaigns/{id}/start launches a configured campaign and POST /campaigns/{id}/stop halts it. POST /campaigns/query lists campaigns with filters so you can find one by status or creation date before transitioning state.
Does Stream support push notifications?
Yes. The API exposes device registration and push provider configuration so registered devices receive a push when a message arrives in a channel they belong to. Notification templates can be customised per channel type.
/blocklists
List all blocklists in the app