Vaquill AI · AsyncAPI Specification
Vaquill Ai Webhooks
Version
View Spec
View on GitHub
LegalStatutesRegulationsLegal ResearchLawComplianceLegal TechnologyGovernment DataMCPIndiaContractsAsyncAPIEvents
AsyncAPI Specification
generated: '2026-10-07'
method: searched
source: https://www.vaquill.ai/docs/api-guide/alerts
name: Vaquill law-change alert webhooks
description: Board watches deliver law-change notifications by email (every plan) or webhook (Business plan) when a corpus refresh completes.
No AsyncAPI document is published; this catalog is read from the alerts guide.
asyncapi_published: false
subscription:
create: create_watch_api_v1_watches_post
update: update_watch_api_v1_watches__watch_id__patch
delete: delete_watch_api_v1_watches__watch_id__delete
list: list_watches_api_v1_watches_get
test: test_watch_api_v1_watches__watch_id__test_post
channels:
- email
- webhook
- both
plan_gate: Webhook delivery requires the Business plan; creating or repointing a watch whose channel is webhook or both returns 403 on any other
plan.
uniqueness: one watch per (board, channel, scope); duplicates answer 409
caps: 3 watches outside Business, 100 on Business (429 beyond)
events:
- name: board.updated
description: A watched board (corpusType/state pair) changed in a corpus refresh; the payload carries a changes[] list of added, amended and
removed sections inside the watch scope, plus a scope field so a receiver can tell which watch fired.
- name: board.test
description: One-off delivery fired by POST /watches/{watchId}/test; not persisted to delivery history.
change_types:
- added
- amended
- removed
delivery:
method: POST
headers:
X-Vaquill-Event: board.updated | board.test
X-Vaquill-Signature: sha256=<hex>, present only when webhookSecret is set
signature:
algorithm: HMAC-SHA256 over the delivery body
header: X-Vaquill-Signature
secret: webhookSecret set on the watch; stored encrypted, never returned
outbound_auth:
field: webhookAuth
schemes:
- 'bearer (Authorization: Bearer <secret>)'
- 'basic (Authorization: Basic <secret>)'
- 'header (<headerName>: <secret>)'
- none
note: headerName cannot be Authorization, a transport header, or X-Vaquill-*; rejected with 400 at registration
dedup: deliveryId is stable per watch per refresh event, even across internal retries
retries: Internal retries occur (deliveryId is stable across them); the retry schedule and backoff are not published.
history: GET /watches/{watchId}/deliveries returns attempt number, status code, success and error, newest first; attempts are retained 90 days
(docs/api-guide/data-privacy)
polling_backstop: GET /watches/{watchId}/changes (cursor in meta.cursor) returns the same filtered changes without a delivery
renumbering: If a section is renumbered its act_id changes; renumbering emits a removed event carrying the OLD act_id, so the watch fires once
on the way out.
workspace_api: 'The Workspace API has no webhooks: outbound webhooks were cut and polling GET /v1/operations/{operationId} is the only completion
signal (docs/workspace-api/authentication).'
payload:
content_type: application/json
fields:
- event
- corpusType
- state
- boardLabel
- rowsAdded
- rowsUpdated
- rowsDeleted
- refreshLogId
- changes[] {changeKind, actId, citation, title, ...}
- changesOverflowCount
- deliveryId
- firedAt
- scope
note: changes is capped at 10 items; changesOverflowCount is the true count beyond that. changeKind is added, amended or removed.
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/vaquill-ai-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.