Channels

Where your bot listens. Web chat, API, Slack, webhooks.

A channel is an entry point for messages. Enable as many as you need per deployment.

Web chat

An embeddable widget for your site. You configure:

  • Domain whitelist (origins allowed to load the widget)
  • Theme (colors, position, greeting message)
  • Auth (anonymous, signed user payload, or JWT)

Drop the snippet on your site:

<script src="https://cdn.shipclaw.com/widget.js"
  data-bot="<bot-slug>"
  data-tenant="<tenant-slug>"></script>

API

A REST endpoint for programmatic access. Each deployment exposes:

POST https://<slug>.shipclaw.app/v1/messages
Authorization: Bearer <api-key>
{ "session": "...", "content": "..." }

API keys live in Settings β†’ API Keys.

Slack

Install the ShipClaw Slack app, pick a channel, choose the bot. The bot listens for @-mentions and DMs. OAuth happens once per workspace, so you don't have to ship secrets per tenant.

Webhook

A POST URL that calls your bot. Useful for chaining external services that aren't in the skill catalog.

POST https://<slug>.shipclaw.app/v1/webhook
{ "event": "...", "payload": { ... } }

The webhook trigger block in the builder receives the parsed payload.

Auth per channel

Each channel has its own auth model:

ChannelAuth
Web chatAnonymous, signed user, or JWT
APIBearer token
SlackOAuth, per workspace
WebhookSigned secret