Все категории

Главная страница » Служба поддержки » Открытые API-сервисы

ApiOpenStep.jpg

Конвенция об общем вызове

   1. Конечная точка API:
         http://www.sunsky-api.com
         URL API выборки: http://www.sunsky-api.com/openapi/category!getChildren.do
   2. Общие параметры: 
       ключ: АНИ ключ вы получили от Sunsky Open API платформы. 
       Подпись: подпись для параметров, она генерируется с использованием параметров параметров , которые вы получили от платформы SUNSKY Open API.
   Внимание: параметры должны быть отсортированы по имени перед генерацией подписи.
   3. Формат результата 
       Возвращаемое значение форматируется в JSON. 
       (a) Пример успешного результата: 
           {результат: «успех», данные: [{«id»: 1032, «код»: «003», «gmtCreated»: «01/31/2013 00:00», «имя» : «N Style Phone», «parentId»: 408, «status»: 1}]} 
       (b) Failed Result Example: 
           {result: «error», messages: [«Запись, вы выходите, не существует». ]}
   4. Контроль частоты домена 
       SUNSKY ограничит частоту стороны API, если массовые вызовы перегружают серверы. 
       Пожалуйста, обратитесь к этому, чтобы получить информацию о частотном управлении: http://www.sunsky-api.com/admin/apiAccessControl!list.do
   Внимание: все параметры и возвращаемые значения чувствительны к регистру.

Интерфейс 1: Получить дочерние объекты категории, заказ в параметрах

    (a) URL: /openapi/category!getChildren.do 
    (b) Параметры: 
          Если вы не передадите какой-либо параметр, этот API вернет все категории. 
          Вы можете указать ниже, чтобы отфильтровать категории, которые вы хотите получить: 
          * parentId: идентификатор категории, для которых вы хотите получить свои прямые дочерние категории, необязательно; 
          * gmtModifiedStart: Получить категории, измененные с момента «gmtModifiedStart», в формате MM / dd / yyyy HH: mm: ss (т.е. 10/31/2013 01:23:20), необязательно; 
    (c) Результат: 
           Сводка: 
           * Если вы не передадите параметр parentId, возвращает массив всех категорий;
           * Если вы укажете «0» для parentId, возвращается массив из верхних категорий; 
           * Если вы укажете другой номер для parentId, возвращается массив прямых дочерних категорий; 
           * Если вы укажете дату для gmtModifiedStart, тогда массив категорий, когда-либо измененных с момента обращения «gmtModifiedStart»; 
           Поля: 
           * id: уникальный идентификатор категории; 
           * код: код категории. Дети категории отсортированные по коду; 
           * имя: полное название категории; 
           * shortName: краткое название категории, может быть пустым; 
           * hsCode: код HS для продуктов в категории, может быть пустым. Если код HS пуст, проверьте код HS родительской категории;
           * статус: статус категории. См. Приложение А; 
           * parentId Идентификатор родительской категории; 
           * gmtModified: время изменения в формате MM / dd / yyyy HH: mm: ss (т.е. 10/31/2013 01:23:20);
      Подсказка: как получить измененные категории?
            (1) Перед вызовом API getChildren загрузите ранее сохраненное время T0 из db / file; 
(2) Вызовите API getChildren с помощью gmtModifiedStart = T0, он вернет категории, которые когда-либо менялись с T0; (3) Обновите локальный db в категории товаров, возвращаемых API getChildren; (4) Обновить T0 до max gmtModified среди каталогов, возвращаемых API getChildren, затем сохранить T0 в db / файл; (5) Увеличьте номер страницы и повторите шаг 2 ~ 4, пока API getChildren не вернет данных;

Интерфейс 2: Поиск продуктов

    (a) URL: /openapi/product!search.do 
    (b) Параметры: 
           * categoryId: идентификатор категории, вы можете искать искать в продуктах внутри (включая его подкатегории), необязательно; 
           * pageSize: размер массива возвращаемых продуктов, по умолчанию - 40, max - 100; 
           * страница: номер страницы, по умолчанию - 1; 
           * gmtModifiedStart: для извлечения продуктов, когда-либо измененных с «gmtModifiedStart», в формате MM / dd / yyyy HH: mm: ss (т.е. 10/31/2013 01:22:31), необязательно; 
           * статус: статус продуктов, которые вы хотите получить, см. Приложение B, необязательно;
           * brandName: фирменное наименование продуктов, которые вы хотите получить, т.е. iPartsBuy, Xiaomi, Huawei, Meizu, факультативно; 
    (c) Результат: 
           Сводка: 
           * Этот API возвращает продукты, которые соответствуют указанным вами условиям. 
           Поля: 
           * всего: общий номер продукта соответствует указанным вами условиям. 
           * pageCount: общий номер страницы, рассчитанный по общему и pageSize. 
           * результат: массив содержит записи продуктов, обратитесь к интерфейсу «openapi / product! detail.do », чтобы получить подробную информацию.
      Подсказка: как получить измененный продукт?
            (1) Перед вызовом API поиска загрузите ранее сохраненное время T0 из db / file; 
(2) Вызовите API поиск с помощью gmtModifiedStart = T0, он вернет продукты, которые когда-либо менялись с T0;
(3) Обновите локальный db данные продукта, возвращаемые API поиска;
(4) Обновить T0 до max gmtModified среди продуктов, возвращаемых API поиска, а затем сохранить T0 в db / файл;
(5) Увеличьте номер страницы и повторите шаг 2 ~ 4, пока API поиска не вернет данных;

Интерфейс 3: получить информацию о указанном продукте

    (a) URL: /openapi/product!detail.do 
    (b) Параметры: 
           * itemNo: элемент # продукта, который вы хотите получить.     
    (c) Результат: 
           Сводка: 
           * Этот API возвращает полную информацию о указанном продукте. 
           Поля: 
           * id: уникальный идентификатор продукта; 
           * categoryId: Идентификатор категории продукта; 
           * itemNo: номер товара; 
           * groupItemNo: базовый элемент продукта. Если продукт НЕ мультимодельный, элемент # группы совпадает с номером #; 
           * имя: название продукта; 
           * штрих-код: штрих-код продукта;
           * описание: подробное описание продукта; 
           * leadTime: описание времени выполнения. т.е. «Доставка в тот же день по закам до 6 вечера (GMT + 8)», «1 ~ 3 дня», «2-5 дней»; 
           * gmtListed: время, когда продукт был указан в формате MM / dd / yyyy HH: mm: ss (т.е. 10/31/2013 01:23:20). Продукты, чье время, средства за последние 90 дней, являются новыми прибывшими; 
           * gmtModified: время изменения в формате MM / dd / yyyy HH: mm: ss (т.е. 10/31/2013 01:23:20); 
           * склад: склад доставки товар. т.е. CN, HK или RU; 
           * склад: если склад является складом за рубежом (НЕ CN), это поле дает текущее количество запасов;
           * moq: минимальное количество заказа, по умолчанию 1; 
           * brandName: если продукт заклеймен, он содержит фирменное наименование, например «Huawei»; 
           * modelLabel: если продукт является мультимодельным, он иногда критерий классификации (например, цвет, размер ...). 
           * modelList: если продукт является мультимодельным, это массив моделей. 
                        Каждый элемент в массиве - это пара ключ-значение, ключ - это элемент #, значение - описание модели. 
                        т.е. [{key: 'S-MPH-001', value: 'White'}, {key: 'S-MPH-002', value: 'Black'}] 
           * optionList: похожие объекты для списков. 
                       {
                              дисплей: «текст» или «изображение»,
                                     itemNo: «S-MPH-0002», 
                                     ключевые слова: «Пластиковый корпус для S7» 
                              }] 
                       } 
           * цена: текущая цена; 
           * priceList: оптовые цены на цену, в зависимости от количества покупки. 
                        Каждый элемент в массиве - это пара ключ-значение, ключ - это количество, значение - соответствующая цена. 
                        т.е. [{key: 2, value: '2.98'}, {key: 10, value: '2.49'}] 
           * Зазор: Является ли продукт в оформлении? 
           * orgЦена: если продукт находится в разрешении или в продвижении по службе, это поле хранит первоначальную цену;
           * priceExpired: если продукт находится в продвижении по службе, это поле хранит дату истечения срока действия в формате MM / dd / yyyy HH: mm (т.е. 10/31/2013 00:00). Он может быть нулевым; 
           * статус: статус продукта. См. Приложение B; 
           * единица веса: удельная масса продукта; 
           * packQty: количество продуктов в чехле; 
           * packWeight: вес продукта в корпусе, в единицах «кг»; 
           * packLength & packWidth & packHeight: кубаж в корпусе, в единицах «мм»; 
           * содержит батарею: содержит ли аккумулятор батарею? правда или ложь; 
           * giftItemNo: Если в продукте есть бесплатный подарок, в этом поле есть элемент подарка #;
           * бренды: если этот продукт является своего рода аксессуаром, в этом поле перечислены модели марок, с которыми он совместим. Это поле НЕ возвращается '/openapi/product!search.do'. 
                     Например: [{brand: {name: "Apple"}, модели: [{name: "iPhone"}, {name: "iPad"}]}] 
           * params: ключевые параметры для продукта. Это поле НЕ возвращается '/openapi/product!search.do'. 
                     Например: [{name: «Connectivity», значения: [«WIFI», «3G», «GPS»]}]

Интерфейс 4: Загрузите изображения

    (a) URL: /openapi/product!getImages.do 
    (b) Параметры: 
           * itemNo: элемент # продукта, который вы хотите получить.     
           * размер: размер изображений, которые вы предпочитаете, в пикселях, необязательно. 
                   Максимальный размер - 800, некоторые старые - 500. 
           * watermark: текст водяного знака, необязательный. 
    (c) Результат: 
           Сводка: 
           * Если itemNo не существует, код ответа равен 404, в противном случае возвращается почтовый поток.

Интерфейс 5: Получить список изменений

    (a) URL: /openapi/product!getImageChangeList.do 
    (b) Параметры: 
           * pageSize: размер массива измененного списка, установленный по умолчанию 40, max - 100; 
           * страница: номер страницы, по умолчанию - 1; 
           «gmtModifiedStart», в формате MM / dd / yyyy HH: mm: ss (т.е. 10/30/2016 11:14:01); 
    (c) Результат: 
           Сводка: 
           * всего: общее количество элементов соответствует указанным вами условиям. 
           * pageCount: общий номер страницы, рассчитанный по общему и pageSize. 
           * result: массив содержит номер элемента и время, когда его изображение были обновлены.т.е. [{"itemNo": "S-MPH-001", "gmtModified": "10/31/2016 01:04:22"}]
     Повторно загрузите изображения продуктов, номер которых указан в списке изменений.
      Подсказка: как получить измененные изображения?
            (1) Перед вызовом API-списка изменений загрузите ранее сохраненное время T0 из db / file; 
(2) Вызовите API-список изменений с помощью gmtModifiedStart = T0, он вернет элементы, чьи изображения когда-либо менялись с T0;
(3) Повторно загрузите изображения, номер позиции которого указан в списке изменений;
(4) Обновите T0 до max gmtModified среди элементов, возвращаемых API-списком изменений, затем сохранитьните T0 в db / файл;
(5) Увеличьте номер страницы и повторите шаг 2 ~ 4, пока API-список изменений не вернет данных;

Интерфейс 6: Получить список стран для доставки

    (a) URL: /openapi/order!getCountries.do 
    (b) Параметры: 
           НЕТ. 
    (c) Результат: 
           Резюме: 
           * Получите список стран для доставки, включая страны / провинции, если они существуют. 
           Поля: 
           * id: уникальный идентификатор страны; 
           * код: код страны, соответствует ISO 3166; 
           * имя: название страны; 
           * shipToState: стоимость доставки cucaluated на основе штата? Возможно, дешевле. истина / ложь; 
           * stateList: дополнительный государственный / провинциальный список страны, поля, как показано ниже: 
                   ** код: код состояния / провинция;
                   ** имя: название штата / провинция;

Интерфейс 7: Получите цены и стоимость доставки товаров

    (a) URL: /openapi/order!getPricesAndFreights.do 
    (b) Параметры: 
           * countryId: уникальный идентификатор страны; 
           * состояние: код состояния адреса доставки, см. '/openapi/order!getCountries.do', необязательный; 
           * Предметы. #. itemNo, пункты. #. qty: Список товаров для расчета цен и стоимости доставки. 
                   ** # является целым числом, чтобы отличать элементы, то есть items.1.itemNo, items.2.itemNo ... 
                   ** itemNo: элемент # продукта; 
                   ** Кол-во: количество для предмета; 
    (c) Результат: 
           Краткое описание: 
           * Получите цены и стоимость доставки товаров. 
           Поля:
           * priceList: цены на предметы, поля, как 
                   показано ниже: ** productId: уникальный идентификатор продукта; 
                   ** itemNo: элемент № продукта; 
                   ** Кол-во: количество для предмета; 
                   ** цена: окончательная цена за единицу товара; 
                   ** orgЦена: оригинальная цена за единицу товара, конечная цена может быть дешевле; 
                   ** сумма: Конечная сумма промежуточного итогога за товар; 
                   ** orgAmount: первоначальная сумма промежуточного итогога для предмета, конечная сумма может быть дешевле; 
           * freightList: стоимость доставки для товаров, поля, как показано ниже:
                   ** id: идентификатор Unqiue пути доставки; 
                   ** название: название пути доставки; 
                   ** logo: URL-адрес логотипа пути доставки; 
                   ** описание: описание пути доставки; 
                   ** веб-сайт: веб-сайт пути доставки; 
                   ** transitTime: описание времени доставки для товаров; 
                   ** shippingCost: стоимость доставки для товаров;

Интерфейс 8: Создать заказ

    (a) URL: /openapi/order!createOrder.do 
    (b) Параметры: 
           * siteNumber: у вас есть номер заказа или другой дополнительный ссылочный номер для заказа SUNSKY, необязательный. Максимальная длина: 32 символа. 
           * useBalanceOnly: если установлено значение true, у вас должен быть достаточный баланс на веб-сайте SUNSKY, в противном случае исключение из «INSUFFICENT_BALANCE». 
                   Если установлено значение «ложь», заказ будет предоставлен с помощью метода оплаты банковского перевода, если у вас недостаточно баланса. По умолчанию свое значение false, необязательно; 
           * Купон: можно использовать код купона; 
           * deliveryAddress.countryId: уникальный идентификатор страны;
           * deliveryAddress.state: код состояния адреса доставки, см. '/openapi/order!getCountries.do. 
                   Если для страны нет информации о состоянии, введите ее вручную. Максимальная длина: 40 символов; 
           * доставкаAddress.city: город адрес доставки. Максимальная длина: 40 символов; 
           * доставкаAddress.company: название компании, адрес доставки, необязательно. Максимальная длина: 100 символов; 
           * доставкаAddress.address: адрес улицы адрес доставки. Максимальная длина: 100 символов; 
           * доставкаAddress.address2: адресная строка 2 адреса доставки, необязательно. Максимальная длина: 100 символов;
           * deliveryAddress.postcode: почтовый индекс / почтовый индекс почтового адреса. Максимальная длина: 20 символов; 
           * доставкаAddress.receiver: полное имя получателя. Максимальная длина: 32 символа; 
           * доставкаAddress.telephone: контактный телефон приемника, опционально, но рекоменду. Максимальная длина: 20 символов; 
           * deliveryAddress.shippingWayId: уникальный идентификатор пути доставки. 
                   Вы можете получить список путей доставки, вызвав '/openapi/order!getPricesAndFreights.do', и получить свойство id из результата 'freightList'; 
           * доставкаAddress.shipment: drop - dropshipping; оптом - покупайте для себя, необязательно.По умолчанию установлено значение «оптовая торговля»; 
           * Предметы. #. itemNo, пункты. #. qty: Список элементов для создания заказа. 
                   ** # является целым числом, чтобы отличать элементы, то есть items.1.itemNo, items.2.itemNo ... 
                   ** itemNo: элемент # продукта; 
                   ** Кол-во: количество для предмета; 
    (c) Результат: 
           Краткое описание: 
           * Создайте заказ SUNSKY с элементами и информацией о адресе доставки. 
           * Пожалуйста, свяжитесь с SUNSKY, чтобы подтвердить свою учетную запись на сайте, чтобы создать заказ. 
           Поля: 
           * номер: номер для заказа; 
           * статус: статус заказа.См. Приложение С; 
           * сумма: промежуточная сумма предметов; 
           * shippingCost: стоимость доставки заказа; 
           * totalAmount: общая сумма заказа. totalAmount = сумма + ShippingCost; 
           * siteNumber: см. '/openapi/order!createOrder.do'; 
           * packStatus: 0-Подготовка; 1-упаковка; 2 - в основном упаковка; 3-упакованные и готовые к отправке; 
* trackingNumber: номер отслеживания заказа; * gmtCreated: Созданное время заказа в формате «MM / dd / yyyy HH: mm» (т.е. 31.10.2013 05:01); * gmtPaid: оплаченное время заказа, в формате «MM / dd / yyyy HH: mm» (т.е. 10/31/2013 05:01); * gmtShipped: отправленное время заказа, в формате «MM / dd / yyyy HH: mm» (т.е. 10/31/2013 05:01); * доставкаAddress. *: адрес доставки адрес. См. '/Openapi/order!createOrder.do'; Дополнительные Feilds: ** shippingWay.id: уникальный идентификатор пути доставки; ** shippingWay.name: название пути доставки; * detailList: массив элементов заказа, поля, как показано ниже: ** productId: уникальный идентификатор продукта; ** itemNo: элемент № продукта; ** название: название продукта; ** Кол-во: количество для предмета; ** цена: окончательная цена за единицу товара; ** сумма: Конечная сумма промежуточного итогога за товар; ** проверено: 0 - не готово к упаковке; 1-Ready для упаковки; ** delayToShip: 0-Normal; 1-Задержка отправки;

Интерфейс 9: Заказы на поиск

    (a) URL: /openapi/order!getOrderList.do 
    (b) Параметры: 
           * pageSize: размер массива возвращенных заказов, по умолчанию - 40, max - 100;
           * страница: номер страницы, по умолчанию - 1;
           * статус: статус заказа, необязательный. См. Приложение C;
           * siteNumber: Необязательно. См. '/Openapi/order!createOrder.do';
           * gmtCreatedStart: для получения заказов, созданных после (включая) «gmtCreatedStart», в формате MM / dd / yyyy (т.е. 10/31/2013), необязательно;
           * gmtCreatedEnd: для получения заказов, созданных до (включая) 'gmtCreatedEnd', в формате MM / dd / yyyy (т.е. 10/31/2013), необязательно;      
    (c) Результат:
           Резюме: 
           * Этот API возвращает заказы, которые соответствуют указанным вами условиям.
           Поля:
           * всего: общий номер заказа соответствует указанным вами условиям.
           * pageCount: общий номер заказа, рассчитанный по сумме и pageSize.
           * result: массив содержит записи заказов, см. «/openapi/order!createOrder.do», чтобы получить детали. 
                     «DetailList» НЕ возвращается этим интерфейсом, пожалуйста, используйте «/openapi/order!getOrderDetails.do», чтобы получить информацию о товарах.


Интерфейс 10: выбор данных заказа

    (a) URL: /openapi/order!getOrderDetails.do 
    (b) Параметры: 
           * номер: номер заказа SUNSKY;      
    (c) Результат:
           Резюме: 
           * Этот API возвращает полную информацию о указанном порядке.
           Поля:
           * См. '/Openapi/order!createOrder.do';


Интерфейс 11: Проверьте баланс на SUNSKY

    (a) URL: /openapi/order!getBalance.do 
    (b) Параметры: 
           НИКТО      
    (c) Результат:
           Резюме: 
           * Этот API возвращает ваш баланс на SUNSKY.
           Поля:
           Просто строка содержит сумму вашего баланса, то есть «1200.00».


Интерфейс 12: получите историю баланса

    (a) URL: /openapi/order!getBillList.do 
    (b) Параметры: 
           * pageSize: размер массива возвращенных векселей, по умолчанию - 40, max - 100;
           * страница: номер страницы, по умолчанию - 1;
           * gmtCreatedStart: для получения счетов, созданных после (включая) «gmtCreatedStart», в формате MM / dd / yyyy (т.е. 10/31/2013), необязательно;
           * gmtCreatedEnd: для извлечения счетов, созданных до (включая) «gmtCreatedEnd», в формате MM / dd / yyyy (т.е. 10/31/2013), необязательно;      
    (c) Результат:
           Резюме: 
           * Этот API возвращает счета, которые соответствуют указанным вами условиям.
           Поля:
           * всего: общий номер счета соответствует указанным вами условиям.
           * pageCount: общий номер счета, рассчитанный по сумме и pageSize.
           * result: массив содержит счета. Поля, как показано ниже:
                     * txType: prepay / createOrder / payForOrder / cancelOrder;
                     * refId: порядок #, связанный с векселем, если txType - createOrder / payForOrder / cancelOrder;
                     * сумма: сумма, измененная после сделки;
                     * остаток: сумма остатка на SUNSKY после транзакции;
                     * gmtCreated: созданное время счета в формате «MM / dd / yyyy HH: mm» (т.е. 31.10.2013 05:01);


Интерфейс 13: получите горячие позиции

    (a) URL: /openapi/stats!getHotItems.do 
    (b) Параметры: 
           * countryId: уникальный идентификатор страны;     
    (c) Результат:
           Резюме: 
           * Этот API возвращает список горячих позиций в указанной стране.
           Поля:
           * itemNo: Пункт № продукта.


Интерфейс 14: Получить список купонов

    (a) URL: /openapi/coupon!getList.do 
    (b) Параметры: 
           * pageSize: размер массива возвращаемых купонов, по умолчанию - 40, max - 100;
           * страница: номер страницы, по умолчанию - 1;   
    (c) Результат:
           Резюме: 
           * Этот API возвращает купоны, которые соответствуют указанным вами условиям.
           Поля:
           * всего: общий номер купона соответствует указанным вами условиям.
           * pageCount: общий номер купона, рассчитанный по сумме и pageSize.
           * result: массив содержит купоны. Поля, как показано ниже:
                     * код: код купона;
                     * описание: описание купона, чтобы объяснить, как использовать купон;
                     * startTime: время начала купона в формате «MM / dd / yyyy HH: mm» (т.е. 31.10.2013 05:01);
                     * endTime: время окончания купона в формате «MM / dd / yyyy HH: mm» (т.е. 31.10.2013 05:01);
                     * personLimit: время, когда один человек может использовать купон;
                     * Кол-во: количество товара, которое купон можно использовать для скидки;
                     * discountType: 
                                   1 - фиксированная дисконтированная сумма; 
                                   2 - скидка в процентах; 
                                   3 - фиксированная цена;
                     * скидка: согласно разному типу discountType, соответствующее значение означает: 
                                   1 - дисконтированная сумма (строка); 
                                   2 - процент (строка) после дисконтирования, 90 означает 10% OFF; 
                                   3 - окончательная цена (строка);
                     * targetType: 
                                   1 - категория; 
                                   2 - продукт; 
                                   3 - пороговое значение заказа; 
                                   4 - Бренд;
                     * target: согласно другому типу targetType, соответствующее значение, как показано ниже:
                                   1 - Категория json list (строка), т.е. [{id: 'category id', name: 'Category name'}]
                                   2 - Список продуктов json (строка), то есть [{id: 'product id', name: 'Product name', itemNo: 'Item #'}]
                                   3 - порог суммы заказа (строка), т.е. 200;
                                   4 - Список брендов json (строка), т. Е. [{Name: 'HAWEEL'}];
Приложение A: Статус категории
    0 - Недействительный
    1 - Действителен
    2 - Удалено

Приложение B: Статус продукта

    0 - Недействительный
    1 - Действителен
    2 - Удалено
    3 - Отсутствует

Приложение C: Статус заказа

    1 - Неоплаченная 
    2 - Платная 
    3 - Отправляется 
    4 - Отменена 
    5 - Поставляется

Приложение D: Пример кода (Java, PHP)

    OpenApiService.zip
Контакт SUNSKY
Менеджер по продажам: Ms. Jenny
+86-13410791281
Больше