Learn · Automation

Zapier kanban automation, the webhook way.

You can automate a Novum OS board from Zapier today using two built-in pieces: Webhooks by Zapier (Catch Hook) as the trigger — the board POSTs signed events with the changed fields already inline — and Custom Request actions writing back through the REST API with a bearer token. Honest up front: we don’t have a native Zapier app yet; this is the webhook path, and it works now.

What you'll build

A Zap that wakes the moment a card moves into a column you care about — Ready to publish, say — then does the rest of the job: posts to your CMS or social scheduler, logs to a spreadsheet, pings a channel, and moves the card along so the board reflects reality. Because the event payload carries the change (card_id, from_column_id, to_column_id), most Zaps skip the “fetch the record to see what happened” step entirely.

Step 1 — mint a token

Workspace Settings → Agents → Connect an agent gives the Zap its own identity on the board (first agent free on every plan), or Settings → Integrations for a personal token. Copy the nov_ bearer token — it is shown once.

Step 2 — create the Catch Hook trigger

New Zap → trigger app Webhooks by Zapier → event Catch Hook. Zapier shows a unique hooks.zapier.com/hooks/catch/… URL — copy it. (If you want to verify our HMAC signature inside the Zap, choose Catch Raw Hook instead, which preserves the raw request body the signature is computed over, and check it in a Code step.)

Step 3 — subscribe the board to the hook

terminal
curl -X POST https://novumos.app/v1/webhooks \
  -H "Authorization: Bearer nov_YOUR_TOKEN" \
  -H "X-Board-Version: 2026-06-19" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://hooks.zapier.com/hooks/catch/123456/abcdef/",
    "events": ["card.moved"],
    "filters": { "board_id": "YOUR_BOARD_ID" }
  }'

Subscribe only to the events the Zap handles — subscriptions filter by event type and board, so a busy workspace doesn’t burn Zap tasks on events you ignore. Deliveries are signed, retried with exponential backoff on failure, and carry a stable event_id for dedupe.

Step 4 — test, then act on the payload

Move a card on the board; Zapier catches a card.moved event and shows its fields in the test step. From there it is ordinary Zap-building: add a Filter (e.g. data__to_column_id equals your publish column), then whatever actions your pipeline needs, mapping fields straight from the event data.

Step 5 — write back with a Custom Request

Zap action
Action: Webhooks by Zapier → Custom Request

Method   POST
URL      https://novumos.app/v1/cards/{{card_id}}:move
Headers  Authorization: Bearer nov_YOUR_TOKEN
         X-Board-Version: 2026-06-19
         Content-Type: application/json
Data     { "column_id": "REVIEW_COLUMN_ID" }

The same shape drives any endpoint: PATCH /v1/cards/… to update fields, POST /v1/cards to create, POST /v1/comments to comment. The interactive API reference is at novumos.app/docs.

No rate-limit anxiety

A Zapier pipeline against a rate-limited board API inherits the worst of both worlds: task-metered pricing on one side and a requests-per-second wall on the other. Novum OS removes the second one — integration tokens get standard rate limits sized for pipelines, with no per-call metering and no AI-credit meters, so a burst of ten Zap runs doesn’t queue behind a 3-per-second ceiling. (If that ceiling is why you’re reading this, we wrote up the math.) And when a workflow outgrows fire-and-forget Zaps, the board itself offers durable work-queue semantics — claim, heartbeat, complete — no extra infrastructure.

Quick answers

Is there a native Novum OS app in the Zapier directory?

Not yet, as of July 2026 — a native app is a roadmap candidate. This guide uses the webhook path instead: Webhooks by Zapier catches the board’s signed events, and Custom Request actions call the REST API directly. It works today and covers everything the eventual native app would.

Do I need a paid Zapier plan for this?

Yes — Webhooks by Zapier is one of Zapier’s premium built-in apps, available on Zapier’s Professional plan and above per Zapier’s documentation as of July 2026. On the Novum OS side nothing extra is required: webhooks and the full REST API are included on the free tier.

Is the trigger instant or polled?

Instant. Catch Hook is a real webhook receiver, so the Zap wakes when the board POSTs the event — versus Zapier’s polling triggers, which on lower plans check for new data as infrequently as every 15 minutes. And because the payload already contains the changed fields, most Zaps need no follow-up fetch step.

How should a Zap handle duplicate events?

Delivery is at-least-once by design, and every payload carries a stable event_id. If your action is not naturally idempotent, add a Filter or a small Storage/Code step keyed on event_id before the write-back. Writes like "move card X to column Y" are safely repeatable as-is.

Wire a Zap to a real board — free tier, no card, webhooks and API included.

Create account