Table of Contents |
---|
...
Configuration object
Code Block | ||
---|---|---|
| ||
{ "name": "<name><webhook_configuration_name>", "description": "<description><webhook_configuration_description>", "hooks": [ { "type": "event<webhook_createdtype>", "method": "POST", "endpoint": "<external_endpoint_url>", "origin": { "method": "POST", "endpoint": "https://<some url>gql.doo.net", "body":"{<this is body as enclosed JSON string>}" "<graphql_query>" }, "endpoint": "<hook_endpoint>" } } ], ], "authentication": { "grant_type": "client_credentials", "endpoint": "<oauth_endpoint><external_oauth_endpoint_url>", "credentials": { "client_id": "<client_id>doo", "client_secret": "<client<external_client_secret>" }, "header_format": "Authorization", "header_value_format": "Bearer %ACCESS_TOKEN%" } } |
Parameters
Parameter | Required | Description |
---|---|---|
<name> | Yes | Webhook configuration name<description> |
| No | Webhook configuration detailed description |
<hook_endpoint> | Yes | Your server URL where you want to receive the webhook Can be separate for each hook type |
<oauth_endpoint> | Yes | Your server OAuth endpoint URL |
<client_id> | No | Client Id for your OAuth endpoint |
<client_secret> | No | Client Secret for your OAuth endpoint description |
| Yes | Webhook type name from Supported resources and webhook types without |
| Yes | External API endpoint where doo sends the webhook payload for the specified webhook type. See Webhook request |
| Yes | GraphQL query which specifies the webhook payload structure. |
| Yes, if | External authorization OAuth API endpoint where doo can retrieve See Webhook request |
| Yes, if | A valid OAuth Client Secret pre-shared with doo. |
Example
Code Block | ||
---|---|---|
| ||
{ "name": "Test webhook", "description": "Event creation and updates webhook subscription", "hooks": [ { "type": "event_created", "method": "POST", "endpoint": "https://company.com/receive-doo-webhooks", "origin": { "method": "POST", "endpoint": "https://gql.doo.net", "body": "{\"operationName\":null,\"variables\":{\"eventId\":\"%EVENT_ID%\"},\"query\":\"query ($eventId: ID!) {event(id: $eventId) { id title }}\"}" } }, { "type": "event_updated", "method": "POST", "endpoint": "https://company.com/receive-doo-webhooks", "origin": { "method": "POST", "endpoint": "https://gql.doo.net", "body": "{\"operationName\":null,\"variables\":{\"eventId\":\"%EVENT_ID%\"},\"query\":\"query ($eventId: ID!) {event(id: $eventId) { id title }}\"}" } } ], "authentication": { "grant_type": "client_credentials", "endpoint": "https://company.com/authorize-doo-webhooks", "credentials": { "client_id": "doo", "client_secret": "super-strong-secret" }, "header_format": "Authorization", "header_value_format": "Bearer %ACCESS_TOKEN%" } } |