# Webhook

Este serviço tem como intuito permitir cadastrar na Hub2b uma URL para ser notificado da **criação, aprovação e cancelamento** de pedidos.

Mesmo com a notificação do Webhook, sugerimos a criação de um serviço de contingência que liste todos os pedidos de determinado status e data, e avalie as atualizações, pois o Webhook irá fazer apenas 2 tentativas de notificação, caso ocorra algum erro a informação será descartada.

Para adicionar ele basta adicionar esta integração **pela plataforma**, ou se utiliza nossa API basta enviar para [/Setup/integration](https://rest.hub2b.com.br/Setup/integration) o seguinte body de exemplo:

```
{
    "system": "ERPOrdersNotification",
    "idTenant": 2302,
    "responsibilities": [
        {
            "type": "Orders",
            "flow": "HubTo"
        }
    ],
    "apiKeys": [
        {
            "key": "URL_ERPOrdersNotification",
            "value": "https://minhaUrlNotification.net/"
        },
        {
            "key": "authToken_ERPOrdersNotification",
            "value": "Bearer dslfkskdjhfjkhsakdhkjsdavsdn64567sdvjdf"
        },
        {
            "key": "AuthKey_ERPOrdersNotification",
            "value": "ApiKey"
        },
        {
            "key": "HUB_ID_ERPOrdersNotification",
            "value": "2032"
        }
    ]
}
```

Assim que for adicionada a integração, será feita uma requisição de testes igual a esta:

```
curl --location --request POST 'https://minhaUrlNotification.net/' \
--header 'ApiKey: Bearer dslfkskdjhfjkhsakdhkjsdavsdn64567sdvjdf' \
--header 'Content-Type: application/json' \
--data-raw '{	
	"IdTenant": 2032,
	"IdOrder": "0",
	"OrderStatus": "Approved"
}'
```

Caso tenha sucesso, a integração foi adicionada com êxito. Serão notificados nessa URL os eventos de criação, aprovação e cancelamento de pedidos. Os status possíveis são:

**Pending** - Criação

**Approved** - Aprovação

**Canceled** - Cancelamento

Serão feitas no máximo 2 tentativas de notificação, onde o IdOrder é o código do pedido a ser consultado na Hub2b.

Caso precise efetuar alguma liberação para que o servidor da Hub2b possa notificar o servidor de destino, todas nossas notificações utilizam o User-Agent="hub2b", então pode ser feita essa liberação pelo User-Agent.


---

# 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://developershub2b.gitbook.io/hub2b-api/api-para-seller-erp-ecommerce/pedido/webhook.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.
