# Добавление/редактирование/удаление абонентов базы

Спецификация для добавления/редактирования/удаления абонентов базы: XML

{% tabs %}
{% tab title="XML" %}
Метод отправки **`POST`**

Кодировка XML-документов: **`UTF-8`**

Обязательный заголовок: **`Content-type: text/xml; charset=utf-8;`**

Адрес для запроса: **`https://my3.webcom.mobi/xml/phones.php`**

### Параметры запроса на отправку сообщения <a href="#parametry-zaprosa-na-otpravku-soobsheniya-2" id="parametry-zaprosa-na-otpravku-soobsheniya-2"></a>

<table><thead><tr><th width="176">Параметр</th><th width="110.66666666666666">Тип</th><th>Описание</th></tr></thead><tbody><tr><td><p>request</p><p><mark style="color:blue;">.security</mark></p><p><mark style="color:blue;">.login</mark></p><p><mark style="color:orange;">[value]</mark>*</p></td><td>String</td><td>Ваш логин в системе</td></tr><tr><td><p>request</p><p><mark style="color:blue;">.security</mark></p><p><mark style="color:blue;">.password</mark></p><p><mark style="color:orange;">[value]</mark>*</p></td><td>String</td><td>Ваш пароль в системе</td></tr><tr><td><p>request</p><p><mark style="color:blue;">.security</mark></p><p><mark style="color:blue;">.token</mark></p><p><mark style="color:orange;">[value]</mark>*</p></td><td>String</td><td>Вместо логина и пароля можно использовать секретный ключ. Для его получения обратитесь к менеджеру</td></tr><tr><td><p>request</p><p><mark style="color:blue;">.base</mark></p><p><mark style="color:green;">[id_base]</mark>*</p></td><td>Int</td><td>Номер базы в системе</td></tr><tr><td><p>response</p><p><mark style="color:blue;">.phones</mark></p><p><mark style="color:green;">.phone</mark></p><p><mark style="color:orange;">[phone]</mark>*</p></td><td>Int</td><td><p>Номер телефона абонента. </p><p><em>Если абонент с таким номером уже существует, то он будет о</em>тредактирован</p></td></tr><tr><td><p>response</p><p><mark style="color:blue;">.phones</mark></p><p><mark style="color:green;">.phone</mark></p><p><mark style="color:orange;">[region]</mark></p></td><td>String</td><td><p>Регион. </p><p><em>Если не задано определяется автоматиче</em>ски</p></td></tr><tr><td><p>response</p><p><mark style="color:blue;">.phones</mark></p><p><mark style="color:green;">.phone</mark></p><p><mark style="color:orange;">[operator]</mark></p></td><td>String</td><td><p>Оператор. </p><p><em>Если не задано определяется автоматически.</em></p></td></tr><tr><td><p>response</p><p><mark style="color:blue;">.phones</mark></p><p><mark style="color:green;">.phone</mark></p><p><mark style="color:orange;">[name]</mark></p></td><td>String</td><td>Имя абонента</td></tr><tr><td><p>response</p><p><mark style="color:blue;">.phones</mark></p><p><mark style="color:green;">.phone</mark></p><p><mark style="color:orange;">[surname]</mark></p></td><td>String</td><td>Фамилия абонента</td></tr><tr><td><p>response</p><p><mark style="color:blue;">.phones</mark></p><p><mark style="color:green;">.phone</mark></p><p><mark style="color:orange;">[patronymic]</mark></p></td><td>String</td><td>Отчество абонента</td></tr><tr><td><p>response</p><p><mark style="color:blue;">.phones</mark></p><p><mark style="color:green;">.phone</mark></p><p><mark style="color:orange;">[date_birth]</mark></p></td><td>Date</td><td>Дата рождения</td></tr><tr><td><p>response</p><p><mark style="color:blue;">.phones</mark></p><p><mark style="color:green;">.phone</mark></p><p><mark style="color:orange;">[male]</mark></p></td><td>String</td><td><p>Пол:</p><ul><li>«f»- женский</li><li>«m» - мужской </li></ul></td></tr><tr><td><p>response</p><p><mark style="color:blue;">.phones</mark></p><p><mark style="color:green;">.phone</mark></p><p><mark style="color:orange;">[addition_1]</mark></p></td><td>String</td><td>Первое дополнительное поле</td></tr><tr><td><p>response</p><p><mark style="color:blue;">.phones</mark></p><p><mark style="color:green;">.phone</mark></p><p><mark style="color:orange;">[addition_2]</mark></p></td><td>String</td><td>Второе дополнительное поле</td></tr><tr><td><p>sponse</p><p><mark style="color:blue;">.phones</mark></p><p><mark style="color:green;">.phone</mark></p><p><mark style="color:orange;">[number_phone]</mark></p></td><td>Int</td><td>Порядковый номер телефона в системе</td></tr><tr><td><p>sponse</p><p><mark style="color:blue;">.phones</mark></p><p><mark style="color:green;">.phone</mark></p><p><mark style="color:orange;">[action]</mark></p></td><td>String</td><td>В случае необходимости удаления "delete"</td></tr></tbody></table>

\*- обязательный параметр

### В случае получения правильного XML-документа

```xml
<?xml version="1.0" encoding="utf-8" ?>
<response>
     <base id_base="1234">
          <phone phone="79612242243" number_phone="1"/>insert</phone>
          <phone phone="79612242244" number_phone="2" />edit</phone>
          <phone phone="79612242243" number_phone="5"/>delete</phone>
          <phone phone="79612242244" number_phone="6" />not_found</phone>
     </base>
     …
</response>
```

<table><thead><tr><th width="190.66666666666666">Параметр</th><th width="124">Тип</th><th>Описание</th></tr></thead><tbody><tr><td><p>response</p><p><mark style="color:blue;">.base</mark></p><p><mark style="color:green;">[id_base]</mark></p></td><td>Int</td><td>Номер базы в системе</td></tr><tr><td><p>response</p><p><mark style="color:blue;">.phones</mark></p><p><mark style="color:green;">.phone</mark></p></td><td>String</td><td>Выполненное действие</td></tr><tr><td><p>response</p><p><mark style="color:blue;">.phones</mark></p><p><mark style="color:green;">.phone</mark></p><p><mark style="color:orange;">[phone]</mark></p></td><td>Int</td><td>Номер телефона абонента</td></tr><tr><td><p>response</p><p><mark style="color:blue;">.phones</mark></p><p><mark style="color:green;">.phone</mark></p><p><mark style="color:orange;">[number_phone]</mark></p></td><td>Int</td><td>Порядковый номер телефона в систем</td></tr></tbody></table>

### &#x20;В случае возникновения ошибки в отправленном XML-документе

```xml
<?xml version="1.0" encoding="utf-8"?>
<response>
     <error>Текст ошибки</error>
</response>
```

<table><thead><tr><th width="197.66666666666666">Параметр</th><th width="121">Тип</th><th>Описание</th></tr></thead><tbody><tr><td><p>response</p><p><mark style="color:blue;">.error</mark></p></td><td>String</td><td><p>Текст ошибки может принимать следующие значения:</p><ul><li>Неправильный формат XML документа </li><li>Ваш аккаунт заблокирован</li><li>Неправильный логин или пароль</li><li>POST данные отсутствуют</li></ul></td></tr></tbody></table>

### &#x20;Пример XML запроса

```xml
<?xml  version="1.0" encoding="utf-8" ?>
<request>
     <security>
          <login value="логин" />
          <password value="пароль" />
     </security>
     <base id_base="1234">
          <phone phone="79612242243" region="Новосибирск" operator="Вымпелком" name="Константин" surname="Ермолаев" patronymic="Александрович" date_birth="1984-08-21" male="мужской" addition_1="Первое дополнительное поле" addition_2="второе" number_phone="1"/>
          <phone phone="79612242244" region="Новосибирск" operator="Вымпелком" name="Константин" surname="Ермолаев" patronymic="Александрович" date_birth="1984-08-21" male="мужской" addition_1="Первое дополнительное поле" addition_2="второе" number_phone="2" />
          …
          <phone phone="79612242243" action="delete" number_phone="5"/>
          <phone phone="79612242244" action="delete" number_phone="6"/>
     </base>
</request>
```

{% endtab %}
{% endtabs %}
