# Webhooks

## GET /pbx/webhook

> Retorna um webhook

```json
{"openapi":"3.0.0","info":{"title":"API pública do Voice","version":"1.0"},"tags":[],"servers":[{"url":"v1"}],"security":[{"basic":[]}],"components":{"securitySchemes":{"basic":{"type":"http","scheme":"basic"}},"schemas":{"ResponseWebhookControllerDto":{"type":"object","properties":{"_id":{"type":"string","description":"ID do webhook"},"url":{"type":"string","description":"URL que vai ser acionada neste webhook"},"token":{"type":"string","description":"Token que será enviado no cabeçalho X-Voice-token caso o cliente queira autenticar as requisições"},"events":{"description":"Lista de eventos que serão enviados","type":"array","items":{"type":"string"}},"verify_ssl":{"type":"boolean","description":"Realiza (true) ou não (false) a verificação SSL"}},"required":["_id","url","token","events","verify_ssl"]}}},"paths":{"/pbx/webhook":{"get":{"operationId":"WebhooksController_getWebhook","summary":"Retorna um webhook","parameters":[{"name":"id","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"default":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResponseWebhookControllerDto"}}}}},"tags":["Webhooks"]}}}}
```

## POST /pbx/webhook

> Cadastro de webhook

```json
{"openapi":"3.0.0","info":{"title":"API pública do Voice","version":"1.0"},"tags":[],"servers":[{"url":"v1"}],"security":[{"basic":[]}],"components":{"securitySchemes":{"basic":{"type":"http","scheme":"basic"}},"schemas":{"CreateWebhookDto":{"type":"object","properties":{"url":{"type":"string","description":"URL que vai ser acionada neste webhook"},"token":{"type":"string","description":"Token que será enviado no cabeçalho X-Voice-token caso o cliente queira autenticar as requisições"},"events":{"description":"Lista de eventos que serão enviados","type":"array","items":{"type":"string"}},"verify_ssl":{"type":"boolean","description":"Realiza (true) ou não (false) a verificação SSL"}},"required":["url","token","events","verify_ssl"]},"ResponseWebhookControllerDto":{"type":"object","properties":{"_id":{"type":"string","description":"ID do webhook"},"url":{"type":"string","description":"URL que vai ser acionada neste webhook"},"token":{"type":"string","description":"Token que será enviado no cabeçalho X-Voice-token caso o cliente queira autenticar as requisições"},"events":{"description":"Lista de eventos que serão enviados","type":"array","items":{"type":"string"}},"verify_ssl":{"type":"boolean","description":"Realiza (true) ou não (false) a verificação SSL"}},"required":["_id","url","token","events","verify_ssl"]}}},"paths":{"/pbx/webhook":{"post":{"operationId":"WebhooksController_createWebhook","summary":"Cadastro de webhook","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWebhookDto"}}}},"responses":{"default":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResponseWebhookControllerDto"}}}}},"tags":["Webhooks"]}}}}
```

## PUT /pbx/webhook

> Atualiza um webhook

```json
{"openapi":"3.0.0","info":{"title":"API pública do Voice","version":"1.0"},"tags":[],"servers":[{"url":"v1"}],"security":[{"basic":[]}],"components":{"securitySchemes":{"basic":{"type":"http","scheme":"basic"}},"schemas":{"CreateWebhookDto":{"type":"object","properties":{"url":{"type":"string","description":"URL que vai ser acionada neste webhook"},"token":{"type":"string","description":"Token que será enviado no cabeçalho X-Voice-token caso o cliente queira autenticar as requisições"},"events":{"description":"Lista de eventos que serão enviados","type":"array","items":{"type":"string"}},"verify_ssl":{"type":"boolean","description":"Realiza (true) ou não (false) a verificação SSL"}},"required":["url","token","events","verify_ssl"]},"ResponseWebhookControllerDto":{"type":"object","properties":{"_id":{"type":"string","description":"ID do webhook"},"url":{"type":"string","description":"URL que vai ser acionada neste webhook"},"token":{"type":"string","description":"Token que será enviado no cabeçalho X-Voice-token caso o cliente queira autenticar as requisições"},"events":{"description":"Lista de eventos que serão enviados","type":"array","items":{"type":"string"}},"verify_ssl":{"type":"boolean","description":"Realiza (true) ou não (false) a verificação SSL"}},"required":["_id","url","token","events","verify_ssl"]}}},"paths":{"/pbx/webhook":{"put":{"operationId":"WebhooksController_updateWebhook","summary":"Atualiza um webhook","parameters":[{"name":"id","required":true,"in":"query","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWebhookDto"}}}},"responses":{"default":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResponseWebhookControllerDto"}}}}},"tags":["Webhooks"]}}}}
```

## DELETE /pbx/webhook

> Deleta um webhook

```json
{"openapi":"3.0.0","info":{"title":"API pública do Voice","version":"1.0"},"tags":[],"servers":[{"url":"v1"}],"security":[{"basic":[]}],"components":{"securitySchemes":{"basic":{"type":"http","scheme":"basic"}},"schemas":{"RemoveCommonResponse":{"type":"object","properties":{"count":{"type":"number","description":"Quantidade de registros deletados"}},"required":["count"]}}},"paths":{"/pbx/webhook":{"delete":{"operationId":"WebhooksController_deleteWebhook","summary":"Deleta um webhook","parameters":[{"name":"id","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"default":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RemoveCommonResponse"}}}}},"tags":["Webhooks"]}}}}
```

## GET /pbx/webhook/paginated

> Retorna lista de webhooks paginada

```json
{"openapi":"3.0.0","info":{"title":"API pública do Voice","version":"1.0"},"tags":[],"servers":[{"url":"v1"}],"security":[{"basic":[]}],"components":{"securitySchemes":{"basic":{"type":"http","scheme":"basic"}},"schemas":{"ResponseWebhookPaginatedControllerDto":{"type":"object","properties":{"items":{"description":"Lista de Webhooks","type":"array","items":{"$ref":"#/components/schemas/ResponseWebhookControllerDto"}},"meta":{"description":"Propriedades da paginação","allOf":[{"$ref":"#/components/schemas/Meta"}]}},"required":["items","meta"]},"ResponseWebhookControllerDto":{"type":"object","properties":{"_id":{"type":"string","description":"ID do webhook"},"url":{"type":"string","description":"URL que vai ser acionada neste webhook"},"token":{"type":"string","description":"Token que será enviado no cabeçalho X-Voice-token caso o cliente queira autenticar as requisições"},"events":{"description":"Lista de eventos que serão enviados","type":"array","items":{"type":"string"}},"verify_ssl":{"type":"boolean","description":"Realiza (true) ou não (false) a verificação SSL"}},"required":["_id","url","token","events","verify_ssl"]},"Meta":{"type":"object","properties":{"totalItems":{"type":"number","description":"Total de itens"},"itemCount":{"type":"number","description":"Quantidade de itens"},"itemsPerPage":{"type":"number","description":"Quantidade de itens por páginas"},"totalPages":{"type":"number","description":"Total de páginas"},"currentPage":{"type":"number","description":"Página atual"}},"required":["totalItems","itemCount","itemsPerPage","totalPages","currentPage"]}}},"paths":{"/pbx/webhook/paginated":{"get":{"operationId":"WebhooksController_getWebhooksPaginated","summary":"Retorna lista de webhooks paginada","parameters":[{"name":"limit","required":false,"in":"query","schema":{"type":"string"}},{"name":"page","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"default":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResponseWebhookPaginatedControllerDto"}}}}},"tags":["Webhooks"]}}}}
```


---

# 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.fortics.com.br/voice-api-reference/reference/webhooks.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.
