# The webhook object

A webhook object is returned as part of the response body of each successful list, retrieve, create or update API call to the `/api/webhooks` endpoint.

## Fields

| Field                                    | Type      | Description                                                                                                                                                                                                          |
| ---------------------------------------- | --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **type**                                 | `string`  | `webhooks`                                                                                                                                                                                                           |
| **id**                                   | `string`  | The webhook unique identifier                                                                                                                                                                                        |
| links.**self**                           | `string`  | The webhook endpoint URL                                                                                                                                                                                             |
| attributes.**name**                      | `string`  | Unique name for the webhook.                                                                                                                                                                                         |
| attributes.**topic**                     | `string`  | The identifier of the resource/event that will trigger the webhook.                                                                                                                                                  |
| attributes.**callback\_url**             | `string`  | URI where the webhook subscription should send the POST request when the event occurs.                                                                                                                               |
| attributes.**include\_resources**        | `array`   | List of related resources that should be included in the webhook body.                                                                                                                                               |
| attributes.**\_disable**                 | `boolean` | Send this attribute if you want to mark this resource as disabled.                                                                                                                                                   |
| attributes.**\_enable**                  | `boolean` | Send this attribute if you want to mark this resource as enabled.                                                                                                                                                    |
| attributes.**disabled\_at**              | `string`  | Time at which this resource was disabled.                                                                                                                                                                            |
| attributes.**circuit\_state**            | `string`  | The circuit breaker state, by default it is 'closed'. It can become 'open' once the number of consecutive failures overlaps the specified threshold, in such case no further calls to the failing callback are made. |
| attributes.**circuit\_failure\_count**   | `integer` | The number of consecutive failures recorded by the circuit breaker associated to this resource, will be reset on first successful call to callback.                                                                  |
| attributes.**\_reset\_circuit**          | `boolean` | Send this attribute if you want to reset the circuit breaker associated to this resource to 'closed' state and zero failures count. Cannot be passed by sales channels.                                              |
| attributes.**shared\_secret**            | `string`  | The shared secret used to sign the external request payload.                                                                                                                                                         |
| attributes.**created\_at**               | `string`  | Time at which the resource was created.                                                                                                                                                                              |
| attributes.**updated\_at**               | `string`  | Time at which the resource was last updated.                                                                                                                                                                         |
| attributes.**reference**                 | `string`  | A string that you can use to add any external identifier to the resource. This can be useful for integrating the resource to an external system, like an ERP, a marketing tool, a CRM, or whatever.                  |
| attributes.**reference\_origin**         | `string`  | Any identifier of the third party system that defines the reference code.                                                                                                                                            |
| attributes.**metadata**                  | `object`  | Set of key-value pairs that you can attach to the resource. This can be useful for storing additional information about the resource in a structured format.                                                         |
| relationships.**last\_event\_callbacks** | `array`   | The last associated event callbacks.                                                                                                                                                                                 |
| relationships.**event\_stores**          | `array`   | The associated event stores.                                                                                                                                                                                         |
| meta.**mode**                            | `string`  | The resource environment (can be one of `test` or `live`)                                                                                                                                                            |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.commercelayer.io/core-api-reference/webhooks/object.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
