Skip to main content

Introduction

How your systems connect to Kudos CRM — REST API with a scoped access token, outbound webhooks, and producer webhooks.

Built-in integrations (Slack, Gmail, Stripe, and more) are managed in Settings → Integrations; the REST API, tokens, and webhooks below cover everything else.

The Kudos CRM integrations directory — connect Slack, Gmail, Outlook, Stripe, Zapier and more.

info

Two ways to integrate — pick the one that matches your goal.

  • Connect your own tools to your CRM data (scripts, jobs, Zapier/Make, internal apps) → use the REST API with a personal access token, and subscribe to outbound webhooks to react to CRM events. No partner onboarding.
  • Integrate your product as an event producer (your system emits domain events the CRM mirrors) → that's the producer webhook integration documented on this page and the ones that follow.

Kudos CRM ingests signed webhook events from external systems and mirrors them into its sales, support, and revenue domains. This guide is for engineers integrating their product as a producer — your system emits events, Kudos CRM consumes them.

The integration follows widely-recognised SaaS webhook conventions: HMAC-SHA256 signing with a Stripe-compatible header, idempotent event delivery, a closed event catalog, secret rotation with overlap, and a Bearer-authenticated pull channel for reconciliation. If you have ever integrated with Stripe, GitHub, Twilio, or Plaid, the model will feel familiar.

What you ship​

To complete an integration you implement three surfaces:

Outbound webhooks

Sign and POST events to https://crm.example/v1/ingest/webhooks/{source_id}/events. Required for every event in the catalog you want mirrored into the CRM.

Pull-channel REST

Expose Bearer-authenticated GET /v1/sync/manifest, /v1/sync/tenants, /v1/sync/events endpoints so the CRM can walk current state during reconciliation.

Reverse-channel inbox

Expose Bearer + HMAC-authenticated POST /v1/integrations/crm/... endpoints to receive sales-led overrides (assignments, CSM notes, discount intents) pushed by CRM operators.

Why three surfaces, not just webhooks​

Webhooks alone are not a correctness guarantee. Any consumer outage longer than the producer's retry window leaves silent gaps. The pull channel is the reconciliation backstop — Kudos CRM walks your /v1/sync/* endpoints nightly (and on demand) to detect drift and replay missed events. The reverse channel exists so a CRM operator can push narrow sales-led data back into your system without us holding a write-token to your production database.

Both forward and reverse channels are independently authenticated and independently versioned. A failure on one does not affect the other.

Roles​

SystemRoleOwns
Your productProducerDomain events, current-state snapshots, reverse-channel inbox
Kudos CRMConsumerSource registration, signing-secret minting, event ingest, drift reporting

Read this next​

Compatibility statement​

The wire contract on this site is major-version stable. Kudos CRM honours the value of the X-Kudos-Schema-Version header on every request. Within a major version, only additive changes ship: new event types, new fields on the envelope or payload, new optional headers. We never rename, repurpose, or remove fields without a major version bump. The schema major in production at the time of writing is 1.

When a major version bumps, the previous version stays accepted for at least 180 days so producers have a generous migration window.

Status​

tip

Production: ingest, retries, pull channel, reverse channel, rotation overlap are GA.
Beta: drift-report dismissal API, bulk reprocess.