Relm · AsyncAPI Specification

Relmcrm Com Webhooks

Version

View Spec View on GitHub CRMSalesContactsDealsSales PipelineAutomationWebhookMCPA2AAI AgentsAgent-NativeUnited Arab EmiratesAsyncAPIEvents

AsyncAPI Specification

Raw ↑
generated: '2026-09-19'
method: searched
source: >-
  https://relmcrm.com/docs (Webhooks section, with the HMAC verification sample) + https://relmcrm.com/llms.txt
  (Objects: Webhooks) + openapi/_original/relmcrm-com-openapi.json (Webhooks tag: createWebhook, listWebhooks,
  getWebhook, updateWebhook, deleteWebhook, listDeliveries; WebhookInput / Webhook schemas; AutomationInput
  trigger_event enum) + relm_create_webhook tool description in mcp/relmcrm-com-mcp-tools-list.json
checked: '2026-09-19'
summary: >-
  Relm has a real, customer-registerable webhook surface — five CRM events, HMAC-SHA256 signed deliveries with
  a timestamped signature header, a documented retry schedule with dead-lettering after six attempts, and a
  deliveries endpoint for inspection — but ships NO AsyncAPI document and no OpenAPI webhooks/callbacks block.
  This file is the webhook catalog captured from the docs; a Webhooks pointer is emitted, an AsyncAPI pointer is
  not.
asyncapi:
  present: false
  probed:
  - {url: https://relmcrm.com/asyncapi.json, status: 404}
  - {url: https://relmcrm.com/asyncapi.yaml, status: 404}
  openapi_webhooks_block: false
  openapi_callbacks: false
webhooks:
  customer_registerable: true
  register: POST /v1/webhooks (createWebhook) / relm_create_webhook — body {url, events[], description, enabled}
  manage: [listWebhooks, getWebhook, updateWebhook (If-Match; enabled true/false pauses delivery), deleteWebhook, listDeliveries]
  secret: whsec_... returned ONLY on create; store it — it cannot be re-read
  subscription_filter: events[] is a subset of the five events, or ["*"] for all
  target_rules:
    live: must be public https; private, loopback and link-local hosts are rejected and re-checked at delivery (privacy policy)
    test: test-mode keys may point at localhost
  scope: per workspace and mode (test and live subscriptions are separate)
events:
- {name: contact.created, object: contact}
- {name: contact.updated, object: contact}
- {name: deal.created, object: deal}
- {name: deal.updated, object: deal}
- {name: deal.stage_changed, object: deal}
events_note: >-
  The same five names are the AutomationInput.trigger_event enum in the OpenAPI, so automations and webhooks
  subscribe to one event vocabulary. No company.* or activity.* events are published. POST /v1/batch is
  "event-silent" — bulk writes do not fire webhooks or automations.
delivery:
  method: POST
  content_type: application/json
  headers:
  - {name: Relm-Event, meaning: the event name}
  - {name: Relm-Delivery, meaning: delivery id}
  - {name: Relm-Signature, meaning: 't=<unix>,v1=<hmac>'}
  signature:
    algorithm: HMAC-SHA256
    signed_payload: '<t>.<raw body>'
    key: the subscription's whsec_ secret
    verification: recompute the HMAC and compare to v1 in constant time (docs ship a Node crypto.timingSafeEqual sample)
  retries:
    trigger: non-2xx response or timeout
    schedule: [1m, 5m, 30m, 2h, 6h]
    max_attempts: 6
    dead_letter: after 6 attempts
  inspection: GET /v1/webhooks/{id}/deliveries (listDeliveries) / relm_get_webhook view=deliveries
  payload_schema_published: false
  payload_note: The docs describe the delivery as "a JSON POST" but publish no payload schema or example body; nothing is invented here.
streaming:
  present: false
  note: MCP capabilities declare no resources/prompts and the A2A card declares streaming false and pushNotifications false; there is no SSE or WebSocket surface.

Work with this as data

Every AsyncAPI spec here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for asyncapi

4 MCP tools reach this
  • find_asyncapisBrowse and filter every AsyncAPI spec in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This AsyncAPI spec
curl "https://apis.io/api/v1/asyncapis/relmcrm-com-webhooks"
All asyncapi
curl "https://apis.io/api/v1/asyncapis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.