Create a webhook subscription Run in API Explorer

Add MCP server to your AI tool

Allow AI tools and LLMs to interact with the API documentation portal through MCP.

MCP server URL

https://apidocs.plannrcrm.com/mcp

Standard setup for AI tools providing an mcp.json file

mcp.json
{
  "PlannrCRM MCP server": {
    "url": "https://apidocs.plannrcrm.com/mcp"
  }
}

Close
POST /api/v2/webhook-subscriptions

Headers

  • X-PLANNR-ACCOUNT-UUID string
application/json

Body

  • url string(uri) Required

    The URL of the webhook you would like Plannr to send events to.

  • events array[string] Required

    The events the webhook subscription is subscribed to.

    Values are account.created, account.updated, account.deleted, account.annual-review-date-occurred, circle.created, circle.updated, circle.deleted, plan.created, plan.updated, plan.deleted, case.created, case.updated, case.deleted, task.created, task.updated, task.deleted, task.completed, fact-find.completed, fact-find.completed-v3, form-submission.completed, bank-account.created, bank-account.updated, bank-account.deleted, bank-statement.created, bank-statement.updated, bank-statement.deleted, bank-transaction.created, bank-transaction.updated, bank-transaction.deleted, provider-statement.created, provider-statement.updated, provider-statement.deleted, transaction.created, transaction.updated, transaction.deleted, transaction.reconciled, transaction.unreconciled, statement.lock-status, conversation.message.created, conversation.message.updated, conversation.message.deleted, client-portal-document.uploaded, client-portal-document.updated, or client-portal-document.deleted.

Responses

  • 201 application/json
    Hide response attributes Show response attributes object
    • uuid string
    • created_at string
    • updated_at string
    • signing_secret string
    • url string
    • events array[string]
    • last_outgoing_webhook_call_at string
  • 422 application/json

    Validation error

    Hide response attributes Show response attributes object
    • message string Required

      A human-readable description of the error.

    • errors object

      Validation messages keyed by the field that failed.

      Hide errors attribute Show errors attribute object
      • * array[string] Additional properties
POST /api/v2/webhook-subscriptions
curl \
 --request POST 'https://api.plannrcrm.com/api/v2/webhook-subscriptions' \
 --header "Authorization: Bearer $ACCESS_TOKEN" \
 --header "Content-Type: application/json" \
 --header "X-PLANNR-ACCOUNT-UUID: {YOUR_PLANNR_ACCOUNT_UUID}" \
 --data '{"url":"https://api.example.com/webhooks","events":["account.deleted","circle.created"]}'
Request examples
# Headers
X-PLANNR-ACCOUNT-UUID: {YOUR_PLANNR_ACCOUNT_UUID}

# Payload
{
  "url": "https://api.example.com/webhooks",
  "events": [
    "account.deleted",
    "circle.created"
  ]
}
Response examples (201)
[
  {
    "uuid": "4ca22565-970b-4c35-985d-61e9f6e41048",
    "created_at": "2026-07-31T13:51:35+01:00",
    "updated_at": "2026-07-31T13:51:35+01:00",
    "signing_secret": "kvTLvuVlzt45dgYOpnukvawMEIjqkZvRKRXKMSppiQslMsuB8pAUStNPXkvu",
    "url": "https://api.example.com/webhooks",
    "events": [
      "account.deleted",
      "circle.created"
    ],
    "last_outgoing_webhook_call_at": "2026-07-31T13:51:35+01:00"
  }
]
Response examples (422)
{
  "message": "The given data was invalid.",
  "errors": {
    "field": [
      "The field is invalid."
    ]
  }
}