How to get real work out of an AI assistant connected to Sortd: prompts that land, permission setups that stay safe, workflows that combine the tools — and, for agent runners that can host an endpoint, the push-driven patterns that beat polling.
Not connected yet? Start at Connect your AI — two minutes, OAuth, no code.
The assistant sees Sortd through scope-gated tools, so a good prompt names the place (board and list) and the action — the model resolves ids itself via list_boards/list_tasks. Straight from live sessions:
Three habits that make prompts reliable: name boards and lists by their visible names (the model matches them — ids are for code); say what must not happen ("do not complete them", "don't send, just draft") — the tools are separate, so the model can honour it precisely; and for anything destructive, ask it to list what it plans to change first.
drafts.write but no send scope, and the assistant can prepare every reply while you keep the send button. Escalate to email.reply (thread-bound, structurally can't reach outsiders) only when a workflow has earned it.A chat assistant can't receive a webhook: it's a client with no public URL, which is why chat-side automation polls on a schedule. But agent runners and workflow platforms host endpoints — and then Sortd can push to them the moment something happens. The pattern is always the same three steps:
webhooks.manage; the response shows the signing secret once:
curl -X POST "https://api.sortd.com/v2/webhooks/subscriptions" \
-H "Authorization: Bearer sk_live_…" \
-H "Content-Type: application/json" \
-d '{"target_url":"https://YOUR-ENDPOINT",
"events":["thread.reply_received","task.created","task.assigned"]}'
x-sortd-signature (HMAC-SHA256, verification samples), then let the workflow call the Sortd API back with an API key, or hand the event to an agent step.Add a Webhook trigger node (method POST) and copy its production URL — that's your target_url. Verify the signature in a Code node (Node.js crypto, constant-time compare), then branch: an HTTP Request node calls the Sortd API back (Authorization: Bearer sk_live_…), or an AI Agent node reasons over the event payload first — "a reply arrived on a tasked thread; decide whether to bump the task and draft a response".
Create a Custom webhook trigger and use its URL as the target_url. Add a verification step over the raw body, then route into HTTP modules calling the Sortd API — or into Make's AI modules for classification/drafting decisions before the write-back.
An HTTP / Webhook trigger gives you the endpoint; each event runs your Node/Python steps with the raw body available for signature verification. Ideal when the "workflow" is really code — the same handler patterns as the webhooks guide, without hosting anything.
Simplest of all: Sortd's Zapier app has native triggers — no endpoint, no subscription call, no signature handling. Pick the trigger, wire the action. Choose Zapier when its triggers cover your events; choose a webhook subscription when you need the full event list or custom filtering.
Any service you run — an Express/Flask handler, a serverless function, a LangGraph-style agent service — can be the target_url. The webhooks guide has the exact verification code (Express and Flask); from there, trigger an agent run with the event as context, and let it call Sortd back through the API or its own MCP connection.
Choosing: assistants pull; servers push. An hourly triage is a perfect pull (schedule it); "react the moment a reply lands" is a push — use a runner from this page. Event list and delivery contract (signing, retries, replay, the delivery log): the webhooks guide.
Next: the MCP tool catalog for everything an assistant can do, or Automate for the schedule recipes.
Platform trigger names verified September 2026 — vendors rename UI periodically; the subscribe/verify/act pattern is unchanged when they do.