# Webhook

Необходимо сообщить менеджеру адрес вашего сервера, который будет принимать статусы SMS

Метод отправки JSON-документа: **`POST`**

К примеру, в php JSON-документ будет доступен через функцию **`file_get_contents("php://input")`** или переменную **`$GLOBALS['HTTP_RAW_POST_DATA']`**

Система отправляет JSON-документ серверу клиента следующего содержания:

```json
[
    {
        "id_sms": "ID SMS в системе для проверки статуса",
        "time": "2011-01-01 12:57:46",
        "state": "Статус"
        },
    {
        "id_sms": "ID SMS в системе для проверки статуса",
        "time": "2011-01-01 12:57:46",
        "state": "Статус"
    }
]

```

### Расшифровка параметров

<table><thead><tr><th width="153.33333333333331">Параметр</th><th width="152">Тип данных</th><th>Описание</th></tr></thead><tbody><tr><td>id_sms</td><td>Int</td><td>Номер SMS сообщения, полученный в ответном JSON-документа в процессе отправки SMS сообщения</td></tr><tr><td>time</td><td>String</td><td>Время изменения статуса</td></tr><tr><td>state</td><td>String</td><td><p>Последний статус сообщения:</p><ul><li>«send» - статус сообщения не получен. В этом случае передается пустой time (time="")</li><li>«not_deliver» - сообщение не было доставлено. Конечный статус (не меняется со временем)</li><li>«expired» - абонент находился не в сети в те моменты, когда делалась попытка доставки. Конечный статус (не меняется со временем)</li><li>«deliver» - сообщение доставлено.</li><li>«read» - сообщение прочитано. Конечный статус (не меняется со временем</li><li>«partly_deliver» - сообщение было отправлено, но статус так и не был получен</li></ul></td></tr></tbody></table>

### Возвращаемый ответ сервера клиента в JSON-документе

{% hint style="danger" %}
Если сервер клиента не передаст **id\_sms**, то статус будет считаться не полученным клиентом. При этом будет сделано 5 попыток доставить статус.
{% endhint %}

```json
[
    {
        "id_sms":3234
    },
    {
        "id_sms":3235
    }
]
```


---

# 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://apidocs.webcom.mobi/ru2/type/specifikaciya-json/zapros-statusa-sms/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.
