Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

doc:dev:api:supplier [01.09.2017 14:30]
mzubkov [Параметры запроса]
doc:dev:api:supplier [02.06.2018 10:42]
Строка 1: Строка 1:
-====== API :: Supplier. Получение/​изменение данных о поставщиках ====== 
- 
-В системе реализован программный интерфейс для получения,​ добавления и изменения данных о поставщиках. Данные выгружаются по HTTP протоколу. Формат на выбор - XML или JSON. 
- 
- 
-===== Пример запроса на получение данных ===== 
- 
-Пример запроса на получение данных о поставщиках:​ 
- 
- ​http://​mycompany.virtpos.ru/​api/​supplier?​apikey=MySecret&​format=xml 
- 
-==== Параметры запроса ==== 
-Параметры,​ которые не отмечены как **get only**, могут быть переданы как get- или как post-параметры. 
-  * **apikey** - Секретный ключ для доступа к данным. Обязательный параметр. 
- 
-  * **format** (get only) - формат,​ в котором сервер отдаст данные. Может принимать значения "​xml"​ или "​json"​. Необязательный параметр. 
- 
-  * **id** - идентификатор поставщика,​ для которого надо вернуть данные. Если не указан,​ то возвращаются данные обо всех поставщиках. 
- 
-  * **external_id** - код поставщика во внешней системе учета (например,​ в 1С). Если не указан,​ то возвращаются данные обо всех поставщиках. 
- 
-  * **type_id** - идентификатор типа поставщика. Необязательное поле. Если указан,​ возвращаются поставщики только этого типа. 
- 
- 
-==== Ответ сервера ==== 
- 
-В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info 
- 
- 
- 
-==== Пример ответа сервера ==== 
- 
-Ниже приведен пример ответа сервера в формате XML 
- 
-<file xml> 
-<?xml version="​1.0"​ encoding="​UTF-8"?>​ 
-<​root>​ 
- <​success>​1</​success>​ 
- <​type>​supplier</​type>​ 
- <​count>​2</​count>​ 
- <​suppliers>​ 
- <​supplier>​ 
- <​id>​1</​id>​ 
- <​name>​Мой поставщик</​name>​ 
- <​legal_name>​Юридическое название</​legal_name>​ 
- <​inn>​1234567890123</​inn>​ 
- <​kpp>​111</​kpp>​ 
- <​address>​Адрес</​address>​ 
- <​phone>​3252355236443</​phone>​ 
- <​email>​test@test.com</​email>​ 
- <​www>​http://​test.com</​www>​ 
- <​created_date>​2015-01-27 14:​36:​36</​created_date>​ 
- <​created_by>​1</​created_by>​ 
- <​last_update_date>​2017-05-25 20:​26:​22</​last_update_date>​ 
- <​last_update_by>​2</​last_update_by>​ 
- <​attribute1/>​ 
- <​attribute2/>​ 
- <​attribute3/>​ 
- <​attribute4/>​ 
- <​attribute5/>​ 
- <​attribute6/>​ 
- <​attribute7/>​ 
- <​attribute8/>​ 
- <​attribute9/>​ 
- <​attribute10/>​ 
- <​attribute11/>​ 
- <​attribute12/>​ 
- <​attribute13/>​ 
- <​attribute14/>​ 
- <​attribute15/>​ 
- <​type_id>​1</​type_id>​ 
- <​code>​Код контрагента</​code>​ 
- <​OKPO>​123456</​OKPO>​ 
- <​OKONH>​1234567890</​OKONH>​ 
- <​corraccount>​123456</​corraccount>​ 
- <​bankaccount>​123456</​bankaccount>​ 
- <​BIK>​123456789</​BIK>​ 
- <​status>​Статус</​status>​ 
- <​delivaddress>​Факт. адрес</​delivaddress>​ 
- <​external_id>​212</​external_id>​ 
- <​type_name>​Внешний поставщик</​type_name>​ 
- </​supplier>​ 
- <​supplier>​ 
- <​id>​2</​id>​ 
- <​name>​Поставщик алкоголя</​name>​ 
- <​legal_name/>​ 
- <​inn/>​ 
- <​kpp/>​ 
- <​address/>​ 
- <​phone/>​ 
- <​email/>​ 
- <​www/>​ 
- <​created_date>​2016-09-14 17:​12:​19</​created_date>​ 
- <​created_by>​2</​created_by>​ 
- <​last_update_date>​2016-09-14 17:​12:​19</​last_update_date>​ 
- <​last_update_by>​2</​last_update_by>​ 
- <​attribute1/>​ 
- <​attribute2/>​ 
- <​attribute3/>​ 
- <​attribute4/>​ 
- <​attribute5/>​ 
- <​attribute6/>​ 
- <​attribute7/>​ 
- <​attribute8/>​ 
- <​attribute9/>​ 
- <​attribute10/>​ 
- <​attribute11/>​ 
- <​attribute12/>​ 
- <​attribute13/>​ 
- <​attribute14/>​ 
- <​attribute15/>​ 
- <​type_id>​1</​type_id>​ 
- <​code/>​ 
- <​OKPO/>​ 
- <​OKONH/>​ 
- <​corraccount/>​ 
- <​bankaccount/>​ 
- <​BIK/>​ 
- <​status/>​ 
- <​delivaddress/>​ 
- <​external_id/>​ 
- <​type_name>​Внешний поставщик</​type_name>​ 
- </​supplier>​ 
- </​suppliers>​ 
-</​root>​ 
-</​file>​ 
- 
- 
-==== Структура ответа сервера ==== 
- 
- 
- 
- 
-  * **id** – ID поставщика - //int NOT NULL, первичный ключ// 
- 
-  * **name** - Название - //​varchar(255) NOT NULL, обязательно//​ 
- 
-  * **legal_name** - Юридическое название - //​varchar(255) DEFAULT NULL// 
- 
-  * **inn** - ИНН - //​varchar(255) DEFAULT NULL// 
- 
-  * **kpp** - КПП - //​varchar(255) DEFAULT NULL// 
- 
-  * **address** - Адрес - //​varchar(255) DEFAULT NULL// 
- 
-  * **phone** - Телефон - //​varchar(255) DEFAULT NULL// 
- 
-  * **email** - Адрес электронной почты - //​varchar(255) DEFAULT NULL, валидный e-mail адрес//​ 
- 
-  * **www** - WWW - //​varchar(255) DEFAULT NULL, валидный URL// 
- 
-  * **type_id** - Тип контрагента (1 - Внешний поставщик,​ 2 - Внутренний поставщик,​ 3 - Банк) - //int NOT NULL DEFAULT '​1'//​ 
- 
-  * **type_name** - наименование типа контрагента - //​varchar(255) DEFAULT NULL// 
- 
-  * **code** - Код контрагента - //​varchar(255) DEFAULT NULL// 
- 
-  * **OKPO** - ОКПО - //​varchar(30) DEFAULT NULL// 
- 
-  * **OKONH** - ОКОНХ - //​varchar(255) DEFAULT NULL// 
- 
-  * **bank_name** - Наименование банка, обслуживающего организацию - //​varchar(255) DEFAULT NULL// 
- 
-  * **corraccount** - Номер счета банка, обслуживающего организацию - //​varchar(255) DEFAULT NULL// 
- 
-  * **bankaccount** - Номер счета организации в банке, обслуживающем организацию - //​varchar(255) DEFAULT NULL// 
- 
-  * **BIK** - БИК - //char(9) DEFAULT NULL, 9 символов ровно//​ 
- 
-  * **status** - Статус - //​varchar(255) DEFAULT NULL// 
- 
-  * **delivaddress** - Факт. адрес - //​varchar(255) DEFAULT NULL// 
- 
-  * **external_id** - Идентификатор во внешней системе - //​varchar(255) DEFAULT NULL// 
- 
-  * **created_date** - Дата создания - //datetime DEFAULT NULL// 
- 
-  * **created_by** - Кем создано - //int DEFAULT NULL// 
- 
-  * **last_update_date** - Дата изменения - //datetime DEFAULT NULL// 
- 
-  * **last_update_by** - Кем изменено - //int DEFAULT NULL// 
- 
-===== Пример запроса на добавление/​изменение данных ===== 
- 
-Пример запроса на получение данных о поставщике:​ 
- 
- ​http://​mycompany.virtpos.ru/​api/​supplier/​update?​apikey=MySecret&​create_if_not_exist=0&​external_id=777 
- 
-==== Параметры запроса ==== 
- 
-  * **apikey** - Секретный ключ для доступа к данным. Обязательный параметр. 
- 
-  * **format** - формат,​ в котором сервер отдаст данные. Может принимать значения "​xml"​ или "​json"​. Необязательный параметр. 
- 
-  * **id** - идентификатор поставщика,​ данные которого надо обновить 
- 
-  * **external_id** - код поставщика во внешней системе учета (например,​ в 1С) 
- 
-  * **create_if_not_exist** - Если истина,​ то при неудачном поиске поставщик будет добавлен в систему. 
-  
-  * Также в качестве параметров могут быть переданы все поля для поставщика (name, address, phone и т.д.) 
- 
-==== Ответ сервера ==== 
- 
-В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info. 
- 
-Также возвращается id записи,​ которая была обновлена или добавлена. Флаг isnew равен "​1",​ если запись была создана,​ и "​0"​ если обновлена. 
- 
- 
-==== Пример ответа сервера ==== 
-<file xml> 
-<?xml version="​1.0"​ encoding="​UTF-8"?>​ 
-<​root>​ 
- <​success>​1</​success>​ 
- <​id>​11</​id>​ 
- <​isnew>​1</​isnew>​ 
-</​root>​ 
-</​file>​ 
- 
-