API Reference: Organizations
API reference for organization management and user administration endpoints.
Outbound webhooks notify your own systems when events happen inside ProcessMind. Every delivery is a JSON POST signed with your webhook secret: the X-ProcessMind-Signature header contains sha256=<hex>, an HMAC-SHA256 of the raw request body. Verify the signature against the exact bytes you received (before parsing the JSON) and reject deliveries whose signature does not match. Each body also carries a deliveryId you can use to deduplicate at-least-once deliveries.
Endpoint: GET /v1/tenant/{tenantId}/webhooks
Auth: Tenant-scoped API key · read scope
Parameters:
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | Format: uuid |
| limit | integer | query | No | Maximum number of items to return |
| offset | integer | query | No | Number of items to skip |
Response (200):
List of webhooks
[
{
"id": "00000000-0000-0000-0000-000000000000",
"url": "string",
"events": [
"process.created"
],
"description": "string",
"isActive": true,
"createdAt": "2024-03-15T16:30:00Z"
}
] Errors:
Endpoint: POST /v1/tenant/{tenantId}/webhooks
Auth: Tenant-scoped API key · write scope
Parameters:
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | Format: uuid |
Request Body:
{
"url": "string",
"events": [
"process.created"
],
"description": "string"
} | Field | Type | Required | Description |
|---|---|---|---|
| url | string | Yes | Public https endpoint that receives signed POST deliveries (no private/loopback addresses) |
| events | process.created | process.updated | process.deleted | mapping.created | data.ready | simulation.completed | webhook.test[] | Yes | Events that trigger a delivery to this webhook |
| description | string | No | Optional description Max length: 500 |
Response (201):
Created webhook (includes the signing secret)
{
"id": "00000000-0000-0000-0000-000000000000",
"url": "string",
"events": [
"process.created"
],
"description": "string",
"isActive": true,
"createdAt": "2024-03-15T16:30:00Z",
"secret": "string"
} | Field | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | Format: uuid |
| url | string | Yes | Format: uri |
| events | process.created | process.updated | process.deleted | mapping.created | data.ready | simulation.completed | webhook.test[] | Yes | |
| description | string | Yes | Max length: 500 |
| isActive | boolean | Yes | Default: true |
| createdAt | string | Yes | Format: date-time |
| secret | string | Yes | Signing secret; only returned here, at creation |
Errors:
Endpoint: GET /v1/tenant/{tenantId}/webhooks/{webhookId}
Auth: Tenant-scoped API key · read scope
Parameters:
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | Format: uuid |
| webhookId | string | path | Yes | Format: uuid |
Response (200):
Webhook
{
"id": "00000000-0000-0000-0000-000000000000",
"url": "string",
"events": [
"process.created"
],
"description": "string",
"isActive": true,
"createdAt": "2024-03-15T16:30:00Z"
} | Field | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | Format: uuid |
| url | string | Yes | Format: uri |
| events | process.created | process.updated | process.deleted | mapping.created | data.ready | simulation.completed | webhook.test[] | Yes | |
| description | string | Yes | Max length: 500 |
| isActive | boolean | Yes | Default: true |
| createdAt | string | Yes | Format: date-time |
Errors:
Endpoint: PUT /v1/tenant/{tenantId}/webhooks/{webhookId}
Auth: Tenant-scoped API key · write scope
Parameters:
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | Format: uuid |
| webhookId | string | path | Yes | Format: uuid |
Request Body:
{
"url": "string",
"events": [
"process.created"
],
"description": "string",
"isActive": true
} | Field | Type | Required | Description |
|---|---|---|---|
| url | string | No | Public https endpoint that receives signed POST deliveries |
| events | process.created | process.updated | process.deleted | mapping.created | data.ready | simulation.completed | webhook.test[] | No | Events that trigger a delivery to this webhook |
| description | string | No | Optional description Max length: 500 |
| isActive | boolean | No | Whether the webhook is enabled |
Response (200):
Updated webhook
{
"id": "00000000-0000-0000-0000-000000000000",
"url": "string",
"events": [
"process.created"
],
"description": "string",
"isActive": true,
"createdAt": "2024-03-15T16:30:00Z"
} | Field | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | Format: uuid |
| url | string | Yes | Format: uri |
| events | process.created | process.updated | process.deleted | mapping.created | data.ready | simulation.completed | webhook.test[] | Yes | |
| description | string | Yes | Max length: 500 |
| isActive | boolean | Yes | Default: true |
| createdAt | string | Yes | Format: date-time |
Errors:
Endpoint: DELETE /v1/tenant/{tenantId}/webhooks/{webhookId}
Auth: Tenant-scoped API key · write scope
Parameters:
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | Format: uuid |
| webhookId | string | path | Yes | Format: uuid |
Response (200):
Webhook deleted
{
"deleted": true
} | Field | Type | Required | Description |
|---|---|---|---|
| deleted | boolean | Yes |
Errors:
Endpoint: POST /v1/tenant/{tenantId}/webhooks/{webhookId}/test
Auth: Tenant-scoped API key · write scope
Parameters:
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| tenantId | string | path | Yes | Format: uuid |
| webhookId | string | path | Yes | Format: uuid |
Response (200):
Test delivery triggered
{
"message": "string"
} | Field | Type | Required | Description |
|---|---|---|---|
| message | string | Yes |
Errors:
Get instant access with no credit card and no waiting. Turn the way your organization works into clear, connected process designs.
Build your process architecture, define ownership and controls, and align roles and responsibilities across every level.
Start your free trial and create one reliable foundation for governing, managing, and continuously improving your processes.
We use cookies to improve your experience, personalize content, and analyze traffic. Anonymous page measurement happens without them; analytics consent adds an identifier that links your visits. By clicking "Accept All," you consent to our use of cookies.