API :: Warehouse. Получение/изменение данных о точках продаж

В системе реализован программный интерфейс для получения, добавления и изменения данных о магазинах. Данные выгружаются по http протоколу. Формат на выбор - xml или json.

Пример запроса на получение данных

Пример запроса на получение данных об остатках товаров:

http://mycompany.virtpos.ru/api/warehouse?apikey=MySecret&format=xml

Параметры запроса

Параметры, которые не отмечены как get only, могут быть переданы как get- или как post-параметры.

  • apikey - Секретный ключ для доступа к данным. Обязательный параметр.
  • format (get only) - формат, в котором сервер отдаст данные. Может принимать значения «xml» или «json». Необязательный параметр.
  • id (get only) - код магазина, для которого надо вернуть данные. Если не указан, то возвращаются данные обо всех магазинах.
  • external_id (get only) - код магазина во внешней системе учета (например, в 1С)
  • fields - список дополнительных полей, которые будут добавлены в ответ сервера. Имена полей разделены символом «:». Необязательный параметр. Поддерживаются следующие поля:
    • organisation_name - название организации

Ответ сервера

В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info

Пример ответа сервера

Ниже приведен пример ответа сервера в формате XML

<?xml version="1.0" encoding="UTF-8"?>
<root>
	<success>1</success>
	<type>warehouse</type>
	<count>2</count>
	<warehouses>
		<warehouse>
			<id>1</id>
			<number/>
			<name>Мой магазин</name>
			<address>Москва, Ленинский проспект дом 1</address>
			<phone/>
			<open_time>09:00:00</open_time>
			<close_time>21:00:00</close_time>
			<flag24hours>1</flag24hours>
			<lat>55.72718100000000</lat>
			<lon>37.60998200000000</lon>
			<minusale>1</minusale>
                        <show_in_shop>1</show_in_shop>
			<location_id>1</location_id>
			<location_name>Москва</location_name>
			<external_id/>
			<created_date>2015-01-27 14:36:00</created_date>
			<last_update_date>2015-01-27 14:36:00</last_update_date>
		</warehouse>
		<warehouse>
			<id>2</id>
			<number/>
			<name>ТРК Мега Белая Дача</name>
			<address>
			Московская обл., г. Котельники, 1-й Покровский пр-д, д. 5
			</address>
			<phone/>
			<open_time>09:00:00</open_time>
			<close_time>21:00:00</close_time>
			<flag24hours>0</flag24hours>
			<lat>55.65825600000000</lat>
			<lon>37.84508900000000</lon>
			<minusale>1</minusale>
                        <show_in_shop>1</show_in_shop>
			<location_id>1</location_id>
			<location_name>Москва</location_name>
			<external_id/>
			<created_date>2015-06-25 19:38:56</created_date>
			<last_update_date>2015-06-25 19:48:41</last_update_date>
		</warehouse>
	</warehouses>
</root>

Пример запроса на добавление/изменение данных

Пример запроса на получение данных о точке продаж:

https://mycompany.myvirtualpos.ru/api/warehouse/update?apikey=MySecret&create_if_not_exist=0&external_id=666

Параметры запроса

Параметры, которые не отмечены как get only, могут быть переданы как get- или как post-параметры.

  • apikey - Секретный ключ для доступа к данным. Обязательный параметр.
  • format (get only) - формат, в котором сервер отдаст данные. Может принимать значения «xml» или «json». Необязательный параметр.
  • id (get only) - код магазина, данные которого надо обновить
  • external_id (get only) - код магазина во внешней системе учета, например, в 1С, данные которого надо обновить
  • create_if_not_exist (get only) - Если истина, то при неудачном поиске магазин будет добавлен в систему.
  • location_name (get only) - Название территории. Если значение указано, то происходит проверка, есть ли территория с таким именем в справочнике. Если нет, то она будет добавлена. Параметр игнорируется, если указан location_id
  • Также в качестве параметров могут быть переданы все поля для магазина (name, address, phone и т.д.)

Ответ сервера

В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info.

Также возвращается id записи, которая была обновлена или добавлена. Флаг isnew равен «1», если запись была создана, и «0» если обновлена.

Пример ответа сервера

<?xml version="1.0" encoding="UTF-8"?>
<root>
	<success>1</success>
	<id>11</id>
	<isnew>1</isnew>
</root>