Описание API мерчантов
ОБЩИЕ СВЕДЕНИЯ
1. API мерчантов "располагается" по адресу:
http://shopxml.com/API/script_name.php
где script_name.php - название конкретного файла-интерфеса. К примеру:
http://shopxml.com/API/orders.php
http://shopxml.com/API/orders_process.php
2. При обращении к любому интерфейсу нет разницы, каким способом вы передаете данные,
GET или POST, если это не оговорено отдельно. Однако, помните, что в любом случае не стоит
передавать слишком длинные строки методом GET, и с этой т.з. POST предпочтительней.
3. При обращении к любому интерфейсу есть 2 обязательные переменные, которые необходимо
передавать ВСЕГДА. Помните об этом, т.к. в описании конкретных интерфейсов они повторно
упоминаться не будут, а будут упоминаться только специфические для данного интерфейса
переменные. Эти 2 общие переменные следующие:
api_id - ID товарной базы
api_key - специальный ключ (пароль) для данной базы, установленный нашими
администраторами
Пример: http://shopxml.com/API/orders.php?api_id=56&api_key=354dsg43652
4. При передаче переменных не забывайте их урл-кодировать.
Кодировать, разумеется, следует как имя параметра, так и его значение.
Параметры могут быть массивами. В этом случае в имени параметра присутствуют квадратные
скобки []. К примеру, так: status[43]=3, или так: order[]=214. В урл-закодированном виде
это будет выглядеть так status%5B43%5D=3, order%5B%5D=214.
5. При обращении к любому интерфейсу могут возникнуть ошибки. Таблица возможных ошибок
приведена снизу этой страницы. В случае возникновения ошибки
ВСЕГДА в ответе от нашего сервера будет строка вида:
error|error_id|error_name|error_data
Т.е. строка из 4-х полей, разделеннах символом | (вертикальная черта), где:
error - ключевое слово - признак ошибки
error_id - ID возникшей ошибки - целое число
error_name - название возникшей ошибки - строка
error_data - дополнительная информация об ошибке, у каждой ошибки может быть своя,
специфическая именно для нее, в специфическом для нее формате. Но как правило для большинства
ошибок (простых ошибок) будет пустая, т.к. для них пояснения не требуются
Т.е. получив ответ от любого интерфейса всегда первым делом проверяйте, не ошибка ли это.
Если ошибки нет, то формат ответа зависит от конкретного интерфеса, но, как правило, это XML.
Вообще, интерфейсы условно разделяются на информационные (только отдающие информацию из
нашей базы) и управляющие (меняющие информацию на сервере). И если для вторых часто возможны
индивидуальные ошибки, то для первых, как правило, их не будет, т.к. просто некорректные
данные из запроса будут либо преобразованы к корректным значениям, либо взяты "как есть",
если это возможно. К примеру, если вы укажете некорректный статус заказа для поиска
заказов по базе, то вы не получите ни одного заказа в ответе. Так что будьте бдительны :)
6. Некоторые интерфейсы предназначены для работы с заказами. У заказов есть весьма
существенный атрибут "статус" (status), который кодируется целым числом. Вам придется
при необходимости указывать это число, поэтому ознакомьтесь
с табличкой статусов снизу данной страницы.
7. При описании XML-я используются следующие обозначения:
- Если название поля приводится в угловых скобках <field_name>, то значит
данное поле в xml-е представлено в виде вложенного тега.
- Если название поля приводится просто, без всяких угловых скобок, т.е. в виде
field_name, то значит данное поле в xml-е представлено в виде атрибута у
главного тега.
- Если поле помечено звездочкой *, то значит оно опционально, т.е. может
отсутствовать.
поля, не помеченные звездочкой присутствуют всегда, но, тем не менее,
некоторые из них могут быть пустыми.
8. При передаваемых параметров квадратные скобки после названия параметра (status[]) означают,
что данный параметр - массив. Т.е. может быть передано много таких переменных. К примеру:
status[25]=3&status[35]=5&status[37]=3
Индекс массива (в скобках) не всегда обязателен, тогда передается так:
order[]=21&order[]=33&order[]=34
Скобки не забывайте урл-кодировать при передаче.
СПЕЦИФИКАЦИЯ API
1. Экспорт базы заказов (orders.php).
Чтобы получить выборку заказов вы должны вызвать файл:
orders.php
Параметры вызова (все необязательны):
start - целое число, позиция, начиная с которой возвращать результат
(нумерация начинается с 0). Т.е. если, к примеру, вашему запросу соответствует 20 заказов,
а вы передали start=10, то вам вернет 10 последних заказов
portion - целое число, количество заказов, которое возвращать.
Т.е. если, к примеру, вашему запросу соответствует 20 заказов, а вы передали portion=10,
то вам вернет 10 первых результатов. А если вы передали start=10 и portion=10,
то 10 последних.
Однако, пользуясь этими параметрами, помните, что система "живая", и пока вы тянете
информацию о какой-то порции, могут придти еще заказы. Так что не допускайте логических
ошибок.
Лучше при необходимости пользуйтесь парой параметров portion и min_id (который будет
описан ниже). Это удобно, так как результаты всегде сортируются в порядке возрастания ID заказа,
т.е. в данном случае min_id всегда может удобно заменить start.
end_time - целое число. unix timestamp. Время, до которого (включительно)
выбирать заказы. Если не указано, то все.
start_time - целое число. unix timestamp. Время, начиная с которого (включительно)
выбирать заказы. Если не указано, то все. Может быть ОТРИЦАТЕЛЬНЫМ. Тогда считается вниз от
end_time. К примеру, не указав end_time и указав start_time=-86400, вы получите заказы за последние
86400 секунд, т.е. за сутки.
id - ID конкретного заказа
min_id - минимальный ID заказа (включительно), который может попасть в выборку
max_id - максимальный ID заказа (включительно), который может попасть в выборку
email - емайл заказчика - точное соответсвие
name - имя заказчика. Поиск по началам shipping и billing first_name и last_name (т.е. в сумме по 4-м полям)
zip - зип-код. Поиск по началам shipping и billing zip-кодов (т.е. по 2-м полям)
status - ID статуса заказа (если не указан, то любой)
cc4 - 4 последних цифры кредитки - точное соответствие
testmode - 0-реальные заказы (по умолчанию), 1-тестовые заказы, 2-любые заказы
shipping_details - поиск по способу доставки (точное соответствие)
Возврат:
В ответе вам вернет в XML полную информацию о заказах, соответствующих запросу:
<orders> - внешний контейнер
count - число заказов в данном ответе
<order> - заказ (повторяется для каждого заказа)
ID - ID заказа
time - время заказа в виде UNIX_TIMESTAMP
time_str - время заказа в виде человекопонятной строки
price - полная цена заказа (включает продукты, налоги, доставку), заплаченная покупателем (т.е. с учетом скидки)
price_prd - цена только продуктов в заказе
price_tax - налоги
price_ship - стоимость доставки заказа
discount - полная скидка, полученная покупателем
discount_prd - часть скидки, пришедшаяся на продукты
discount_tax - часть скидки, пришедшаяся на налоги
discount_ship - часть скидки, пришедшаяся на стоимость доставки заказа
status - статус заказа - число
status_str - статус заказа - человекопонятное определение
boxes - количество коробок, в которых был отправлен заказ (это должен быть оооочень большой заказ, чтобы количество коробок превысило 1)
testmode - 1, если заказ тестовый
num_comments - число админских коментариев к данному заказу
<products> - список продуктов
quantity - количество продуктов в заказе
weight - общий вес продуктов в корзине
<product>* - продукт (для каждой позиции в заказе)
ID - ID продукта (продукты с аттрибутами, если клались несколько раз, то будут повторяться)
<name> - название
quantity - количество для данной позиции в заказе
weight - полный вес данной позиции в заказе (т.е. с учетом количества)
price_one_wo_attr* - стоимость одного продукта в этой позиции без учета стоимости аттрибутов (если продукт имеет аттрибуты)
price_one - стоимость одного продукта в этой позиции
price - стоимость позиции (т.е. с учетом количества)
tax* - сумма налога для данной позиции (если не 0)
price_full - полная стоимость позиции (с учетом налогов)
<attributes> - строка с перечислением выбранных опций для аттрибутов
<model> - модель продукта
<email> - email заказчика
<comment> - комментарий заказчика к заказу
<shipping_details> - выбранный вид доставки (строка в человекочитаемом виде)
<payment_details> - детали произведенной оплаты (строка в человекочитаемом виде)
<shipping_info> - шиппинг-информация для заказа (которая писалась админами)
<site_url> - урл партнерского сайта, с которого был сделан заказ
<site_name> - название партнерского сайта, с которого был сделан заказ
<shipping_address> - адрес доставки
<first_name> - first name
<last_name> - last name
<company> - company name
<address1> - address line 1
<address2> - address line 2
<city> - city
<state> - state/province (полное название)
<zip> - zip/postal code
<country> - country (полное название)
<tel> - telephone
<fax> - fax
<billing_address> - биллинг-адрес покупателя (плательщика)
<first_name> - first name
<last_name> - last name
<company> - company name
<address1> - address line 1
<address2> - address line 2
<city> - city
<state> - state/province (полное название)
<zip> - zip/postal code
<country> - country (полное название)
<tel> - telephone
<fax> - fax
2. Смена статусов заказов и их информации о доставке (orders_process.php).
Чтобы сменить статус заказов и их информацию о доставке, вы должны вызвать файл:
orders_process.php
Параметры вызова:
status[] - массив статусов, которые следует уставновить заказам.
Индекс в массиве - ID заказа, значение - статус, которые необходимо установить данному заказу.
Например: status[44]=2&status[45]=3
shipping_info[] - массив информации о доставке, которую следует уставновить заказам.
Индекс в массиве - ID заказа, значение - информация (строка, может быть пустой), которую
необходимо установить данному заказу.
shipping_info_mail - установить в 1, если информацию о доставке (только не пустую)
следует разослать заказчикам
Хотя бы один из параметров status и shipping_info обязан присутствовать!
Возврат:
В ответе, если не возникло ошибки (для данного интерфейса возможны специфические ошибки),
вам вернет в XML информацию об операции:
<orders> - внешний контейнер
<orders_wrong> - перечисленные через запятую ошибочные ID заказов
из вашего запроса - т.е. из ключей массивов status и shipping_info
(к примеру, если такого заказа нет в базе)
<statuses_wrong> - перечисленные через запятую ID заказов
из вашего запроса, для которых вы указали некорректный статус
<statuses_not_changed> - перечисленные через запятую ID заказов
из вашего запроса, для которых вы указали статус, совпадающий с тем, что у них уже имелся
Все операции для заказов, в которых не было ошибки, успешно выполняются.
3. Список производителей (manufacturers.php).
Чтобы получить список производителей, вы должны вызвать файл:
manufacturers.php
Параметры вызова (все необязательные):
id - id производителя. Чтобы выбрать несколько, можно указать несколько id
через запятую или передать этот параметр в формате массива (id[])
name - название. Выберет все, названия которых включают
в себя переданную в данном параметре строку.
exc_field[] - поля, которые следует исключить из выборки. Возможно исключить
следующие поля:
name
description
image
Возврат:
В ответе, вам вернет в XML информацию об найденных объектах (производителях):
<objects> - внешний контейнер
<manufacturer> - Производитель (повторяется для каждого)
id - уникальный идентификатор. Целое число.
<name> - название
<description>* - описание
url* - веб-адрес сайта производителя
<image>* - картинка
src - урл картинки
width - ширина картинки в пикселах
height - высота картинки в пикселах
size - размер файла картинки (в байтах)
4. Список категорий продуктов (categories.php).
Чтобы получить список категорий, вы должны вызвать файл:
categories.php
Параметры вызова (все необязательные):
id - id категории. Чтобы выбрать несколько, можно указать несколько id
через запятую или передать этот параметр в формате массива (id[])
parID - id родительской категории. Несколько указывать нельзя.
active - 0(только неативные) или 1(только активные). Передавайте
только если хотите фильтровать по этому параметру.
name - название. Выберет все, названия которых включают
в себя переданную в данном параметре строку.
exc_field[] - поля, которые следует исключить из выборки. Возможно исключить
следующие поля:
name
title
comment
description
meta_title
meta_keywords
meta_description
image
Возврат:
В ответе, вам вернет в XML информацию об найденных объектах (категориях):
<objects> - внешний контейнер
<category> - Категория (повторяется для каждой)
id - уникальный идентификатор. Целое число.
parID - идентификатор родительской категории. Целое число.
Если 0 - то категория верхнего уровня
active - флаг активности. 0 или 1.
priority - приоритет. Целое число (0-255). Чем меньше - тем выше приоритет.
<name> - название
<title>* - длинное название (заголовок).
<comment>* - краткое описание
<description>* - полное описание
<meta_title>* - текст для тега TITLE в html-е
<meta_keywords>* - ключевые слова для вставки в мета-теги
<meta_description>* - описание для вставки в мета-теги
<image>* - картинка
src - урл картинки
width - ширина картинки в пикселах
height - высота картинки в пикселах
size - размер файла картинки (в байтах)
5. Список продуктов (products.php).
Чтобы получить список продуктов, вы должны вызвать файл:
products.php
Параметры вызова (все необязательные):
id - id продукта. Чтобы выбрать несколько, можно указать несколько id
через запятую или передать этот параметр в формате массива (id[])
catID - id категории продукта. Чтобы выбрать несколько, можно указать несколько id
через запятую или передать этот параметр в формате массива (catID[])
active - 0(только неативные) или 1(только активные). Передавайте
только если хотите фильтровать по этому параметру.
in_stock - 0(только отсутствующие) или 1(только присутствующие). Передавайте
только если хотите фильтровать по этому параметру.
in_new - 0(только не новые) или 1(только новые). Передавайте
только если хотите фильтровать по этому параметру.
price_type - 0(только простые), или 1(только Special), или 2(только Featured). Передавайте
только если хотите фильтровать по этому параметру.
min_price - минимальная цена.
max_price - максимальная цена.
have_image - 0(только без картинки), или 1(только с картинкой). Передавайте
только если хотите фильтровать по этому параметру. Проверяет только по первой картинке!
have_attributes - 0(только без аттрибутов), или 1(только с аттрибутами). Передавайте
только если хотите фильтровать по этому параметру.
name - название. Выберет все, названия которых включают
в себя переданную в данном параметре строку.
keyword - ключевое слово. Выберет все, названия или описание которых включают
в себя переданную в данном параметре строку.
exc_field[] - поля, которые следует исключить из выборки. Возможно исключить
следующие поля:
name
comment
description
model
measure
dimensions
image1 - image6
document1 - document3
meta_title
meta_keywords
meta_description
attributes
add_fields - все дополнительные поля сразу
Возврат:
В ответе, вам вернет в XML информацию об найденных объектах (продуктах):
<objects> - внешний контейнер
<product> - Продукт (повторяется для каждого)
id - уникальный идентификатор. Целое число.
active - флаг активности. 0 или 1.
priority - приоритет. Целое число (0-255). Чем меньше - тем выше приоритет.
categories - список категорий через запятую, в которых лежит данный товар.
<name> - название продукта
<comment>* - краткое описание продукта
<description>* - полное описание продукта
time_available - врямя в юникс-таймстампе (т.е. в секундах от начала 1970 года) когда товар станет доступен
date_available - дата в формате YYYY-MM-DD, когда товар станет доступен (time_available в другом формате)
in_stock - наличие. 0 или 1.
is_new - указатель, что продукт новый. 0 или 1.
price - цена продукта (основная).
opt1 - минимальное количество для мелкого опта (если 0, то опта нет).
price1 - цена продукта для мелкого опта.
opt2 - минимальное количество для крупного опта (если 0, то опта нет).
price2 - цена продукта для крупного опта.
price_type* - тип товара. 0 или отсутствует - обычный товар, 1 - Special (скидки), 2 - Featured (сезонный товар).
spec_time1* - нижняя граница времени в юникс-таймстампе, когда этот товар имеет указанный специальный тип.
Если 0 - то без ограничений с этой стороны
spec_date1* - нижняя граница времени в формате YYYY-MM-DD, когда этот товар имеет указанный специальный тип. Аналог spec_time1.
spec_time2* - верхняя граница времени в юникс-таймстампе, когда этот товар имеет указанный специальный тип.
Если 0 - то без ограничений с этой стороны
spec_date2* - верхняя граница времени в формате YYYY-MM-DD, когда этот товар имеет указанный специальный тип. Аналог spec_time2.
spec_price* - основная цена на этот период. Если 0, то равна основной
spec_price1* - мелкооптовая цена на этот период. Если 0, то этого опта нет.
spec_price2* - крупнооптовая цена на этот период. Если 0, то этого опта нет.
quantity - количество на складе. 1000000 означает отсутствие ограничения.
num_choosed - сколько уже куплено таких продуктов. Для использования в топе.
mnfID - ID производителя. 0 - производительне определен.
<code>* - внутренний код продукта
<model>* - модель продукта
url* - веб-адрес официальной страницы продукта
weight - вес продукта
<measure>* - единицы измерения (напр. мешки, килограммы, ...)
<dimensions>* - размеры
<meta_title>* - текст для тега TITLE в html-е
<meta_keywords>* - ключевые слова для вставки в мета-теги
<meta_description>* - описание для вставки в мета-теги
<image1>* - картинка.
Внимание:
картинок может быть до 6 штук. Вместо 1 тогда будут цифры от 1 до 6
(image1, image2,..., image6). Причем не обязательно подряд (т.е. могут наличествовать
1 и 6, а остальных не быть вовсе). 1 - маленькая картинка, 2 - средняя,
3 - большая, 4-6 - дополнительные
src - урл картинки
width - ширина картинки в пикселах
height - высота картинки в пикселах
size - размер файла картинки (в байтах)
<document1>* - дополнительные документы к продукту (например, инструкции, схемы, ...).
Внимание:
документов может быть до 3 штук. Вместо 1 тогда будут цифры от 1 до 3
(document1, document2, document3). Причем не обязательно подряд (т.е. может наличествовать
только 3, а 1-го и 2-го не быть вовсе).
name - название документа
src - урл документа
size - размер файла документа (в байтах)
<attributes>* - аттрибуты товара, доступные для выбора покупателем
<attribute> - аттрибут (их может быть много)
id - идентификатор аттрибута - целое число всегда больше 0
type - тип аттрибута - целое число от 0 до 2.
Существует 3 типа аттрибутов:
0 - обязательный для выбора покупателем аттрибут,
1 - опциональный аттрибут - т.е. не обязательный,
2 - аттрибут множественного выбора
<name> - название аттрибута
<description>* - описание аттрибута
<options>* - опции данного аттрибута
<option> - опция (их может быть много)
id - идентификатор опции - целое число от 0(включительно) и выше
<name> - название опции
price* - стоимость опции (может отсутствовать, тогда 0).
Может быть положительной и отрицательной - добавляется к стоимости товара
weight* - вес опции (может отсутствовать, тогда 0).
Может быть положительной и отрицательной - добавляется к весу товара
<question>* - дополнительный вопрос, который задается
покупателю при выборе этой опции
<additional_fields>* - дополнительные поля
<additional_field> - дополнительное поле (повторяется для каждого)
id - идентификатор (код) поля - строка
type - тип поля. Возможные значения: text (текст до 65К), checkbox (да/нет),
select - одно значение из многиx, multiple - любое количество значений из многих
name - название поля
<value> - значение поля (может повторяться в случае multiple)
id - идентификатор значения - целое число. Присутствует только если type= select или multiple
value - значение
6. Удаление производителя (manufacturer_delete.php).
Чтобы удалить производителя, вы должны вызвать файл:
manufacturer_delete.php
Параметры вызова:
id - id производителя
Возврат:
В ответе, если не возникло ошибки, вам вернет в XML статус операции:
<status> - 1 если операция успешна
7. Удаление категории (category_delete.php).
Чтобы удалить категорию, вы должны вызвать файл:
category_delete.php
Параметры вызова:
id - id категории
Возврат:
В ответе, если не возникло ошибки, вам вернет в XML статус операции:
<status> - 1 если операция успешна
8. Удаление продукта (product_delete.php).
Чтобы удалить продукт, вы должны вызвать файл:
product_delete.php
Параметры вызова:
id - id продукта
Возврат:
В ответе, если не возникло ошибки, вам вернет в XML статус операции:
<status> - 1 если операция успешна
9. Создание нового производителя/редактирование старого (manufacturer_edit.php).
Чтобы создать нового или отредактировать старого производителя, вы должны вызвать файл:
manufacturer_edit.php
Параметры вызова (не обязательны, если не указано персонально):
id - id производителя - передавать только в случае редактирования старого. Для создания нового не передавать или передать 0.
name - название (обязательно при создании нового), до 255 символов
url - урл сайта производителя, до 100 символов
description - описание, до 65К символов
image - файл картинки, переданный методом POST аналогично тому, как это делает браузер (<input type=file name=image>),
или строка, содержащая адрес (урл) картинки в интернете
Возврат:
В ответе, если не возникло ошибки, вам вернет в XML id нового/старого производителя:
<id> - id производителя, целое число
10. Создание новой категории/редактирование старой (category_edit.php).
Чтобы создать новую или отредактировать старую категорию, вы должны вызвать файл:
category_edit.php
Параметры вызова (не обязательны, если не указано персонально):
id - id категории - передавать только в случае редактирования старой. Для создания новой не передавать или передать 0.
name - название (обязательно при создании нового), до 100 символов
title - длинное название, до 100 символов
active - флаг активности - 0 или 1. Для новой по умолчанию 1.
priority - приоритет. Число 0-255.
comment - краткое описание, до 255 символов
description - описание, до 65К символов
meta_title - заголовок для вставки в мета-теги, до 255 символов
meta_keywords - ключевые слова для вставки в мета-теги, до 65К символов
meta_description - описание для вставки в мета-теги, до 65К символов
image - файл картинки, переданный методом POST аналогично тому, как это делает браузер (<input type=file name=image>),
или строка, содержащая адрес (урл) картинки в интернете
Возврат:
В ответе, если не возникло ошибки, вам вернет в XML id новой/старой категории:
<id> - id категории, целое число
11. Создание нового продукта/редактирование старого (product_edit.php).
Чтобы создать новый или отредактировать старый продукт, вы должны вызвать файл:
product_edit.php
Параметры вызова (не обязательны, если не указано персонально):
id - id продукта - передавать только в случае редактирования старого. Для создания нового не передавать или передать 0.
categories - список категорий через запятую (обязательно при создании нового),
к которым следует привязать данный товар. Может быть передан в виде массива (categories[])
categories_delete - список категорий через запятую,
от которых следует отвязать данный товар. Может быть передан в виде массива (categories_delete[])
name - название (обязательно при создании нового), до 255 символов
active - флаг активности - 0 или 1. Для нового по умолчанию 1.
priority - приоритет. Число 0-255.
time_available - врямя в юникс-таймстампе (т.е. в секундах от начала 1970 года) когда товар станет доступен
date_available - дата в формате YYYY-MM-DD, когда товар станет доступен (вместо time_available - то же в другом формате)
in_stock - наличие. 0 или 1. По умолчанию 1.
is_new - указатель, что продукт новый. 0 или 1.
price - цена продукта основная (обязательно при создании нового).
opt1 - минимальное количество для мелкого опта (если 0, то опта нет).
price1 - цена продукта для мелкого опта.
opt2 - минимальное количество для крупного опта (если 0, то опта нет).
price2 - цена продукта для крупного опта.
price_type - тип товара. 0 - обычный товар, 1 - Special (скидки), 2 - Featured (сезонный товар).
spec_time1 - нижняя граница времени в юникс-таймстампе, когда этот товар имеет указанный специальный тип.
Если 0 - то без ограничений с этой стороны
spec_date1 - нижняя граница времени в формате YYYY-MM-DD, когда этот товар имеет указанный специальный тип (вместо spec_time1 - то же в другом формате)
spec_time2 - верхняя граница времени в юникс-таймстампе, когда этот товар имеет указанный специальный тип.
Если 0 - то без ограничений с этой стороны
spec_date2 - верхняя граница времени в формате YYYY-MM-DD, когда этот товар имеет указанный специальный тип (вместо spec_time2 - то же в другом формате)
spec_price - основная цена на этот период. Если 0, то равна основной
spec_price1 - мелкооптовая цена на этот период. Если 0, то этого опта нет.
spec_price2 - крупнооптовая цена на этот период. Если 0, то этого опта нет.
quantity - количество на складе. 1000000 означает отсутствие ограничения. По умолчанию 1000000.
num_choosed - сколько уже куплено таких продуктов.
mnfID - ID производителя. 0 - производительне определен.
code - внутренний код продукта. До 16 символов.
model - модель продукта. До 50 символов.
url - веб-адрес официальной страницы продукта. До 255 символов.
weight - вес продукта
measure - единицы измерения (напр. мешки, килограммы, ...). До 50 символов.
dimensions - размеры. До 100 символов.
comment - краткое описание, до 255 символов
description - описание, до 65К символов
meta_title - заголовок для вставки в мета-теги, до 255 символов
meta_keywords - ключевые слова для вставки в мета-теги, до 65К символов
meta_description - описание для вставки в мета-теги, до 65К символов
imageN - файл картинки, переданный методом POST аналогично тому, как это делает браузер (<input type=file name=image1>),
или строка, содержащая адрес (урл) картинки в интернете. Здесь N -
это номер картинки 1-6. 1,2,3 - малая, средняя и большая картинки, 4,5,6 - дополнительные.
Естественно можно передавать сразу несколько: image1=...&image2=...
documentN - файл дополнительного документа, переданный методом POST аналогично тому, как это делает браузер (<input type=file name=document1>),
или строка, содержащая адрес (урл) файла в интернете. Здесь N -
это номер документа 1-3.
Естественно можно передавать сразу несколько: document1=...&document2=...
document_nameN - название соответствующего дополнительного документа. До 50-ти символов.
Здесь N - это номер документа 1-3.
Естественно можно передавать сразу несколько: document_name1=...&document_name2=...
addition_field_name - дополнительное поле. Здесь название параметра условно.
На самом деле следует передавать непосредственно название (ID) дополнительного поля.
К примеру, add_field_type=.
В качестве занчаения передается:
0 или 1 - если тип этого поля checkbox,
строка - если тип этого поля text,
id - целое число, ID соответствующей опции, если тип этого поля select,
id - список через запятую ID опций (целые числа), если тип этого поля multiple,
Возврат:
В ответе, если не возникло ошибки, вам вернет в XML id нового/старого продукта:
<id> - id продукта, целое число
Таблица кодов ошибок (пропущенные номера зарезервированы на будущее)
| Код ошибки (ID) |
Название ошибки |
Пояснение |
| 1 | Store ID incorrect | | | 2 | API-key for this store has not been setted | | | 3 | API-key incorrect | | | 4 | Store is deactivated | | | 10 | Incorrect format of input parameter | Если у переданного параметра недопустимый формат или не передан обязательный параметр. В дополнительной информации будет указано название некорректного параметра |
|
Таблица статусов заказа
| Код статуса |
Название |
| 1 | Pending | | 2 | Shipped | | 3 | Cancelled | | 4 | Deleted | | 5 | Possible fraud | | 6 | Fraud | | 7 | Delayed |
|
|