Formality · AsyncAPI Specification
Formality Webhooks
Version
View Spec
View on GitHub
CompanyAi MlLegalContract ManagementDocument-ManagementAsset IntelligenceComplianceSoftware-as-a-ServiceAsyncAPIEvents
AsyncAPI Specification
generated: '2026-08-17'
method: searched
source: https://help.formality.com/setup-permissions/user-management
docs: https://help.formality.com/setup-permissions/user-management
spec_type: none
asyncapi_published: false
note: >-
Formality documents a real, signed webhook surface but publishes NO AsyncAPI
document, so this file carries the webhook catalogue and apis.yml gets a Webhooks
pointer only — no AsyncAPI pointer. The webhook is documented in the "Webhook de
téléchargement de documents" section of the French user-management help page; there
is no dedicated webhook reference page and no English version was found. Formality
also advertises webhooks on its marketing FAQ: "An API and webhooks are also
available for your in-house tools."
delivery:
style: http-post-callback
subscriber_configured: true
configured_in: Workspace Settings > Security (admin only)
endpoint_owner: customer
test_tooling:
available: true
control: '"Tester le webhook" button'
note: Validates that the configured endpoint is reachable.
security:
signing: HMAC-SHA256
signature_header: undocumented
secret_distribution: undocumented
replay_protection: undocumented
note: >-
Payloads are stated to be signed with HMAC-SHA256, which is the single strongest
piece of event-surface engineering Formality publishes. The header carrying the
signature, the shared-secret provisioning mechanism and any timestamp/nonce
replay window are all undocumented, so a consumer cannot actually implement
verification from the published docs alone.
scope:
domain: document access + signature audit events
purpose: security / audit trail
note: >-
This is an AUDIT webhook, not a contract-lifecycle webhook. It reports who
touched a document, not that an agreement changed state. There is no documented
event for agreement created/updated, deadline reached, obligation triggered,
extraction completed or workflow approved — which is the event set an
integrator would most expect from a CLM platform.
events:
- event: document_viewed
documented_as: consultation de document
trigger: A user views a document.
- event: document_downloaded
documented_as: téléchargement de document
trigger: A user downloads a document.
- event: document_bulk_downloaded
documented_as: téléchargement groupé
trigger: A user performs a bulk download.
- event: document_signed
documented_as: signature de document
trigger: A document is signed.
payload:
documented_fields:
- name: timestamp
documented_as: horodatage
- name: user
documented_as: utilisateur
- name: ip_address
documented_as: adresse IP
- name: event_type
documented_as: type d'événement
- name: file
documented_as: informations du fichier
schema_published: false
example_published: false
field_types_published: false
note: >-
Field NAMES above are our English renderings of the French prose list; the
literal JSON keys, their types and an example payload are not published. No
schema was fabricated for this reason.
retries:
documented: false
delivery_guarantees:
documented: false
event_count: 4
gaps_worth_raising_with_provider:
- Publish the JSON payload schema and an example event.
- Name the HMAC signature header and document the replay window.
- Document retry/backoff and delivery guarantees.
- Consider contract-lifecycle events (agreement state change, deadline, extraction complete).
- Publish an AsyncAPI document for the event surface.
- Provide an English version of the webhook documentation.
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.
Call it yourself
curl for this page
This AsyncAPI spec
curl "https://apis.io/api/v1/asyncapis/formality-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.