Stream through Squiid

Chat, activity feeds and video with prebuilt UI components. Stream is on the Squiid roadmap.

Roadmap Provisioned Provisioned. Squiid creates the project or account for you and keeps the provider keys.

What Stream is

Stream sells complete product features rather than transport. Its Chat API covers channels, threads, reactions, typing indicators, read state, file attachments, search and moderation, with UI kits for React, React Native, iOS and Android that render a working messenger out of the box. Feeds provides activity streams with follow relationships and ranking, and Video adds calls and livestreams with the same component approach. Server-side SDKs handle user management, channel creation and moderation actions, while client SDKs handle presence and sync.

For an AI-coded app this is a decision about scope. Building chat properly means unread counts, pagination in two directions, offline queueing, moderation and push integration, which is weeks of work an agent will approximate rather than finish. Using Stream turns that into configuration plus styling, which is a reasonable trade when chat supports the product rather than being the product. Moderation is the part teams forget until the first abusive message, and having flagging and automated filters already present is worth something.

Why connect it through Squiid

Stream is on the Squiid roadmap. When it is connected, Squiid will provision the app, hold the API key and secret, and route server-side calls through https://api.squiid.io/v1/stream/... with Authorization: Bearer $SQUIID_API_KEY, with official SDKs working by base URL swap (gateway convention). Monthly active users and plan cost will bill at Stream's listed price on your single Squiid invoice. User tokens for the client are generated server side through the gateway, so the secret never reaches a browser bundle. Pricing by monthly active users means cost tracks product usage rather than message volume.

  • One account, one key, one bill, one dashboard. Stream sits beside every other service your project uses, on the same invoice and the same credit balance.
  • Key custody. Squiid holds the Stream credentials. Your code carries SQUIID_API_KEY, so STREAM_API_KEY, STREAM_API_SECRET, STREAM_APP_ID never land in a repository, a preview deployment or an agent’s context.
  • Metering you can see. Every call is counted per service and per day, so you know what Stream costs before the month ends.
  • Pause on zero. When prepaid credits run out the gateway stops authorizing usage instead of running up a bill you did not fund.
  • One rotation. Rotating the Squiid key cuts off every agent, worker and deployment at once, with no provider key to hunt down.

What you get

  • A provisioned Stream app with the secret held by Squiid
  • Chat with threads, reactions and moderation
  • Prebuilt UI components for web and mobile
  • Activity feeds and video on the same account
  • Stream list pricing, no markup

How to connect Stream

One variable replaces the provider credentials this service would normally need. Requests go to the gateway and the official SDKs work by pointing their base URL at it (gateway convention).

# .env
# replaces STREAM_API_KEY, STREAM_API_SECRET, STREAM_APP_ID
SQUIID_API_KEY=sq_live_xxxxxxxxxxxxxxxxxxxxxxxx

# every request: https://api.squiid.io/v1/stream/...
# header:       Authorization: Bearer $SQUIID_API_KEY
01

Add it in your dashboard

Open the Squiid catalog, add Stream and fund credits. Squiid provisions the project and keeps the provider keys.

02

Put the one key in your env

Add SQUIID_API_KEY to .env and delete STREAM_API_KEY, STREAM_API_SECRET, STREAM_APP_ID. Nothing else from Stream needs to exist in your project.

03

Point your agent at it

Claude Code, Cursor and Codex read the same variable and call https://api.squiid.io/v1/stream/. Agents generate a user token on the server and drop in the React chat components, which is far less code than building a messenger.

Pricing through Squiid

Stream charges by monthly active users and features enabled on plan tiers, at the provider's listed price. Squiid passes that through at par: one dollar of prepaid credit is one dollar of Stream usage, with no markup and no per-request margin.

Stream has no subscription attached on Squiid today. If a plan is required for a feature you need, it passes through at the provider’s listed price with no Squiid fee.

Squiid adds no markup to provider prices. There is a free plan at $0 a month with a 15% fee when you top up credits, Solo at $19.97 a month with a top-up fee that starts at 8% and falls to 3.5% as your spend grows, Team from $29.97 a seat a month with the same ladder one point lower, and Custom with a rate of 3% or less. Credits are prepaid, so Stream usage stops when the balance reaches zero rather than producing an invoice you did not fund. Auto top-up with a cap keeps production running without handing anyone an open-ended card.

If you leave

Export: channels, keys and delivery configuration are re-created in your own Stream account from the documented setup. Squiid never owns your code, your schema or your domain, and the gateway speaks Stream's own API, so the client change is a base URL. The handover page lists what happens for every provider in the catalogue.

Works with every coding agent

Stream through Squiid is just an HTTP call with a bearer token, so every agentic coding tool can use it with the single key already in your environment:

Vibe coding a feature on Stream usually means asking for it in plain language and letting the agent write the integration. Because the key is Squiid’s rather than the provider’s, it can do that without ever holding a credential that could be leaked, logged or committed.

Related services

Questions people ask

Is Stream available on Squiid?

Not yet. It is on the roadmap as a provisioned service.

Do I have to use their UI components?

No. The APIs work headless if you want your own interface, but the components are why most teams pick it.

How are user tokens issued?

Your server generates them through the gateway with SQUIID_API_KEY, so the Stream secret stays in Squiid's custody.

How will it be billed?

By monthly active users and enabled features at Stream's listed price on one Squiid invoice.

Stream or building chat on Supabase Realtime?

Realtime gives you the transport. Stream gives you the product features. Build it yourself only if chat is your differentiator.

Connect Stream with one key.

Stream provides chat messaging, activity feeds and video calling as APIs with ready-made React, iOS and Android components, including moderation and threads. Planned for Squiid.