---
title: "Get a webhook"
method: GET
path: "/v1/projects/{project_id}/webhooks/{webhook_id}"
tags: ["Webhooks"]
---

# Get a webhook

`GET /v1/projects/{project_id}/webhooks/{webhook_id}`

Get a webhook as specified by the webhook ID.

## Response `200`

A successful response.

- Webhook — Represents a destination for receiving callbacks from the Conversation API.
  - `app_id` string — The app that this webhook belongs to.
  - `client_credentials` ClientCredentials — Optional. Used for OAuth2 authentication.
    - `client_id` string, required — The Client ID that will be used in the OAuth2 Client Credentials flow.
    - `client_secret` string, password, required — The Client Secret that will be used in the OAuth2 Client Credentials flow.
    - `endpoint` string, required — The endpoint that will be used in the OAuth2 Client Credentials flow. Expected to return a JSON with an access token and `expires_in` value (in seconds). The `expires_in` value, which must be a minimum of 30 seconds and a maximum of 3600 seconds, is how long Sinch will save the access token before asking for a new one.
    - `scope` string — Optional. Space-separated string per RFC 6749. Used to limit the access granted by the token. Max length: 1024 characters. If blank or omitted, this is not included in the token request.
    - `response_type` string — Optional. When granting `client_credentials`, this is generally omitted. If you do provide a value, it will be forwarded to your OAuth provider as-is. Max length: 64 characters.
    - `token_request_type` 'BASIC' | 'FORM' — Optional. Controls how `client_id` and `client_secret` are sent to the token endpoint. Either `BASIC` or `FORM`. If not set or unrecognized, `BASIC` is used by default.
  - `id` string — The ID of the webhook.
  - `secret` string, password — Optional secret be used to sign contents of webhooks sent by the Conversation API. You can then use the secret to verify the signature.
  - `target` string, required — The target url where events should be sent to. Maximum URL length is 742. The conversation-api.*.sinch.com subdomains are forbidden.
  - `target_type` 'DISMISS' | 'HTTP'
  - `triggers` WebhookTrigger[] — An array of triggers that should trigger the webhook and result in an event being sent to the target url. Refer to the list of [Webhook Triggers](https://developers.sinch.com/docs/conversation/callbacks/#webhook-triggers) for a complete list.

## Other responses

- `400` — Malformed request. See [common error responses](https://developers.sinch.com/docs/conversation/api-reference/#common-error-responses) for more information.
- `401` — Incorrect credentials. See [common error responses](https://developers.sinch.com/docs/conversation/api-reference/#common-error-responses) for more information.
- `403` — Correct credentials but you don't have access to the requested resource. See [common error responses](https://developers.sinch.com/docs/conversation/api-reference/#common-error-responses) for more information.
- `500` — Correct credentials but you don't have access to the requested resource. See [common error responses](https://developers.sinch.com/docs/conversation/api-reference/#common-error-responses) for more information.
- `501` — Something went wrong on our end, try again with exponential back-off. See [common error responses](https://developers.sinch.com/docs/conversation/api-reference/#common-error-responses) for more information.

---

[API](https://skmtc.net/sinch/apis/conversation-api-sinch.md) · [All operations](https://skmtc.net/sinch/apis/conversation-api-sinch/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/sinch/conversation-api-sinch/revisions/bdb3e0c48bf7/schema)
