Currencyid яндекс маркет: Список цен. Партнерский API Яндекс Маркета для модели FBS. Руководство разработчика

Список цен. Партнерский API Яндекс Маркета для модели FBS. Руководство разработчика

Внимание. Маркет постепенно перестает поддерживать XML. Поэтому мы рекомендуем переходить на JSON. Сейчас XML можно использовать, если добавить в запрос Content-Type: application/xml. Без этого будут ошибки.

  1. Описание
  2. Входные данные
  3. Выходные данные
  4. Описание ошибок
  5. Ограничения
  6. Примеры
GET /campaigns/{campaignId}/offer-prices

Возвращает список цен, установленных вами на товары любым способом: например, через партнерский API или в файле с каталогом. Подробнее о способах управления ценами см. в разделе Как передать цены Справки Маркета для моделей FBY, FBY+ и FBS.

URL ресурса:

https://api.partner.market.yandex.ru/v2/campaigns/{campaignId}/offer-prices.json

Параметр

Тип

Значение

Обязательные

campaignId

Int64

Идентификатор кампании.

Чтобы узнать идентификатор, войдите в личный кабинет, в меню слева выберите Настройки → Настройки API и скопируйте из поля Номер кампании число после дефиса. Например, если указано значение «11-213856», то идентификатор кампании — 213856.

Необязательные

page_tokenString

Идентификатор страницы c ценами.

Если параметр не указан, возвращается самая старая страница.

Рекомендуется передавать значение выходного параметра next-page-token, полученное при последнем запросе.

limit

Int32

Количество записей о ценах в выходных данных.

Минимальное значение: 1.

Максимальное значение: 2000.

Значение по умолчанию: 500.

Используется вместе с параметром page_token.

Структура выходных данных приведена ниже. Порядок следования параметров не гарантируется.

{
  "errors":
  [
    {
      "code": "{enum}",
      "message": "{string}"
    },
    ...
  ],
  "result":
  {
    "offers":
    [
      {
        "marketSku": {int64},
        "price":
        {
          "currencyId": "{enum}",
          "discountBase": {double},
          "value": {double},
          "vat": {int32}
        },
        "updatedAt": "{date}"
      },
      ...
    ],
    "paging":
    {
      "prevPageToken": "{string}",
      "nextPageToken": "{string}"
    },
    "total": {int32}
  },
  "status": "{enum}"
}

Описание параметров:

Параметры, вложенные в response

errors

Список ошибок.

Возвращается, если параметр status=»ERROR».

result

Результат работы метода.

Возвращается, если параметр status=»OK».

statusEnum

Статус ответа.

Возможные значения:

Параметры, вложенные в errors

codeEnum

Код ошибки.

Возможные значения:

  • LIMIT_EXCEEDED — превышено индивидуальное ограничение для количества товаров, о которых можно получать информацию.

  • REQUEST_LIMIT_EXCEEDED — в параметре запроса limit или pageSize передано значение больше 2000.

messageString

Описание ошибки.

Параметры, вложенные в result

offers

Список предложений с ценами, измененными через API.

paging

Информация о страницах результатов.

totalInt32

Количество всех цен магазина, измененных через API.

Параметры, вложенные в offers

marketSkuInt64

Поле устарело, временно поддерживается, но в будущем будет отключено.

SKU на Маркете.

Узнать SKU на Маркете, соответствующий товару, можно с помощью запроса GET /campaigns/{campaignId}/offer-mapping-entries.

Обязательный параметр.

idString

Идентификатор предложения из прайс-листа.

Параметр выводится, если в прайс-листе задан уникальный идентификатор.

Параметр доступен начиная с версии 2.0 партнерского API.

price

Информация о цене на товар.

updatedAtDate

Дата и время последнего обновления цены на товар.

Формат даты и времени: ISO 8601 со смещением относительно UTC. Например, 2017-11-21T00:42:42+03:00.

Параметры, вложенные в price

currencyIdEnum

Валюта, в которой указана цена на товар.

Возможно только значение RUR — российский рубль.

discountBaseDouble

Цена на товар без скидки.

valueDouble

Цена на товар.

vatInt32

Идентификатор ставки НДС, применяемой для товара:

Если параметр не указан, используется ставка НДС, установленная в личном кабинете магазина.

Параметры, вложенные в paging

prevPageTokenString

Идентификатор предыдущей страницы результатов.

nextPageTokenString

Идентификатор следующей страницы результатов.

В случае ошибки сервер возвращает HTTP-код ответа и краткое описание ошибки.

Ошибки, содержащие характерные для данного запроса краткие описания:

Описание

Пояснение

Способ возможного решения

Ошибка 400 Bad Request

Page number must be positive: 'page'

Номер страницы должен быть положительным числом.

Проверьте корректность передаваемого номера страницы.

Page size is too big: 'pageSize'. Max page size is 'maxPageSize'

Указан слишком большой размер страницы.

Проверьте корректность передаваемого размера страницы.

Page size must be positive: 'pageSize'

Размер страницы должен быть положительным числом.

Проверьте корректность передаваемого размера страницы.

Количество товаров, о которых можно получить информацию в течение суток, определяется по формуле:

(количество товаров партнера) * 25

Примечание. Общее количество товаров считается по данным за последние семь дней (не включая сегодня) и не может быть выше 2 миллионов.

Пример запроса:

curl -i \
-H 'Authorization: OAuth oauth_token="<токен>", oauth_client_id="<идентификатор>"' \ 
'https://api.partner.market.yandex.ru/v2'\
'/campaigns/10001/offer-prices.json'\
'?limit=2'

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

HTTP/1.1 200 OK
Date: Fri, 20 Mar 2020 15:38:10 GMT
Content-Type: application/json;charset=utf-8
...
{
  "result": 
  {
    "offers": 
    [
      {
        "marketSku": 3457345293,
        "price": 
        {
          "currencyId": "RUR",
          "value": 1500.00,
          "vat": 7
        },
        "updatedAt": "2020-02-11T13:13:01+03:00"
      },
      {
        "marketSku": 5490875940,
        "price": 
        {
          "currencyId": "RUR",
          "discountBase": 900. 00,
          "value": 820.00,
          "vat": 7
        },
        "updatedAt": "2020-02-11T13:13:01+03:00"
      }
    ],
    "total": 4
  },
  "status": "OK"
}

YML — Маркетплейс Маркета. Справка

  1. Файлы для обновления каталога и файлы для управления размещением
  2. Заголовок
  3. Корневой элемент <yml_catalog>
  4. Элемент <shop>
  5. Элемент <categories>
  6. Элемент <offers>
  7. Параметры доставки и самовывоза
  8. Примеры готовых файлов

 

Эта статья — о структуре YML-файлов. Чтобы узнать, как задать конкретный параметр товара, найдите его в справочнике.

YML (Yandex Market Language) — собственный стандарт Яндекса, основанный на XML. В YML-файлах можно целиком описать каталог магазина в формате, удобном для автоматической генерации.

В этом руководстве описаны все необходимые элементы YML-файлов.

Совет.

Если вы пользуетесь популярной CMS, возможно, для нее есть готовый модуль, который умеет генерировать YML-файлы. Список готовых модулей

С помощью YML-файлов можно решать две задачи:

  • добавлять товары в каталог и обновлять информацию о них;

  • управлять размещением товаров в магазинах.

YML-файлы, решающие разные задачи, отличаются набором обязательных элементов.

Нужен в любом YML-файле.

Пишется так:

                <?xml version="1.0" encoding="UTF-8"?>
            

Заголовок занимает первую строку и начинается с нулевого символа. Подойдут кодировки UTF-8 и Windows-1251.

Нужен в любом YML-файле.

В любом XML-документе есть корневой элемент. Формат YML в качестве корневого использует элемент <yml_catalog> с атрибутом date.

В атрибуте укажите дату и время момента, на который актуальны данные в файле. Загружаемая версия каталога должна быть не старше 10 дней.

Дату и время нужно указать согласно стандарту RFC 3339, вот так:

                <yml_catalog date="2022-05-22T14:37+03:00">
            

Обязательно указывайте часовой пояс. Он отсчитывается от UTC — например, красноярское время записывается так:

                <yml_catalog date="2022-05-22T15:08+07:00">
            

Дату и время в будущем указывать нельзя.

Если файл долго генерируется, указывайте в атрибуте момент начала генерации. Если указывать время завершения генерации, можно потерять изменения, внесенные вручную. Допустим, магазин начал генерировать файл в 12:00. В 12:05 вы через личный кабинет изменили цену товара. В 12:10 магазин сформировал файл, и его скачал Маркет. Если в файле будет стоять время 12:10, Маркет заменит внесенную вами цену на неактуальную из файла. Если же в нем будет стоять 12:00, ваше изменение будет считаться более поздним и никуда не денется.

«}}»>

Внимание. Если вы передаете с помощью YML остатки или цены, атрибут date нужно указывать обязательно.

Нужен в любом YML-файле.

В элемент <yml_catalog> в единственном экземпляре входит элемент <shop> без атрибутов. Он описывает магазин, для которого вы готовите файл.

В него вложены:

ЭлементТип данныхСмысл
<name>

Текст:

<name>BestSeller</name>

Название вашего магазина
<company>

Текст:

<company>Tne Best inc. </company>

Название вашей компании
<url>

Текст:

<url>http://best.seller.ru</url>

Адрес сайта магазина, записанный согласно стандарту RFC 3986
<platform>

Текст:

<platform>uCoz</platform>

Название системы управления контентом
<categories>Содержит вложенные элементы <category>Список категорий товаров, продаваемых в магазине
<offers>Содержит вложенные элементы <offer>Список предложений — товаров, продающихся в магазине, с ценами

Нужен только в YML-файле, управляющем товарами

Вложен в элемент <shop>, не имеет атрибутов. Содержит сколько угодно элементов <category>, каждый из которых описывает одну из категорий доступных в магазине товаров.

Лучше всего пользоваться деревом категорий Маркета — оно включает практически все.

Если брать категории из дерева неудобно, указывайте свои. Делайте их понятными и логичными:

НеправильноХорошо
Товары → Склад_1Игрушки → Конструкторы
Одежда → Женская одежда → Верхняя одежда → ПлатьяТовары для детей → Одежда → Детские комбинезоны

Каждой категории нужно присвоить уникальный идентификатор — целое положительное число длиной до 18 цифр — и записать его в атрибут id. Запись числа не должна начинаться с нуля — например, 055 не подойдет.

Чтобы вложить одну категорию в другую, используйте атрибут parentId.

Получится так:

<categories>
    <category>Книги</category>
    <category parentId="1">Детективы</category>
    <category parentId="1">Боевики</category>
    <category>Видео</category>
    <category parentId="4">Комедии</category>
    <category>Принтеры</category>
    <category>Оргтехника</category>
</categories>               
            

Нужен в любом YML-файле. Содержимое вложенных элементов <offer> зависит от задачи, которую решает YML-файл.

Не имеет атрибутов. Содержит сколько угодно элементов <offer>, каждый из которых описывает один товар в магазине. У <offer> есть обязательный атрибут id, который содержит ваш SKU товара. Что такое SKU

Примечание. Элемент <shop-sku> устарел, его лучше не использовать. Если он есть, значение вашего SKU берется из него, а не из атрибута id элемента <offer>.

Внутри <offer> нужно указать характеристики товара (название, описание, производителя и так далее) или параметры размещения (цену, скидки, остатки и так далее).

Посмотрите справочник.

Он подскажет, какие параметры обязательны и как их задать в YML-файле.

Если YML-файл предназначен для добавления товаров, смотрите таблицу с характеристиками. Если для управления размещением — таблицу с параметрами размещения.

Если магазин работает по модели DBS, в YML-файле можно задать, описывающие параметры доставки и самовывоза. Их нужно разместить:

  • перед <offers>, чтобы задать параметры для всего магазина;

  • внутри <offer>, если нужно переопределить параметры для конкретного товара.

Чтобы Маркет учитывал параметры, заданные в YML-файле, нужно включить опцию Использовать данные из прайс-листа в личном кабинете. Инструкция

Нужны только в YML-файле, управляющем размещением.

Добавьте в файл <delivery>false</delivery>, если магазин не доставляет товары, и <pickup>false</pickup>, если в магазине недоступен самовывоз.

Нужен только в YML-файле, управляющем размещением.

Не имеет атрибутов. Содержит до пяти элементов <option>, каждый из которых описывает один из способов курьерской доставки (например, обычная, ускоренная и так далее).

Может быть вложен в <shop> и в <offer>.

Внутри <shop> элемент <delivery-options> определяет способы доставки, которые магазин предлагает по умолчанию.

Внутри <offer> элемент <delivery-options> указывает, что для конкретного товара действуют не общие условия доставки, а специальные.

Параметры способа доставки <option> задаются атрибутами:

  • cost — не используется. Задайте любое число, чтобы файл прошел техническую проверку.

  • days — срок в рабочих днях, целое число или интервал, записанный через дефис. Для доставки в день заказа укажите 0, для доставки на следующий день — 1. Максимальное значение — 60. На Маркете нельзя продавать товары с неизвестным сроком доставки. Если поле days оставить пустым, то товар будет скрыт с витрины.

  • order-before — до которого часа можно оформить доставку этим способом, чтобы срок начал отсчитываться с сегодняшнего дня. Целое число от 0 до 24. Это необязательный атрибут, значение по умолчанию — 13.

Получится так:

<delivery-options>
    <option cost="123" days="4" order-before="18"/>
</delivery-options>        
                

Здесь указано, что покупатель может оформить доставку в течение 4 дней. Если он оформляет заказ после 18:00, срок начнет отсчитываться со следующего дня.

Способы доставки должны отличаться друг от друга и ценой, и сроками.

Нужен только в YML-файле, управляющем размещением.

Не имеет атрибутов. Содержит до пяти элементов <option>, каждый из которых описывает один из способов самовывоза.

Может быть вложен в <shop> и в <offer>.

Внутри <shop> элемент <pickup-options> определяет способы самовывоза, которые магазин предлагает по умолчанию.

Внутри <offer> элемент <pickup-options> указывает, что для конкретного товара действуют не общие условия самовывоза, а специальные.

Параметры способа самовывоза задаются атрибутами:

  • cost — не используется. Задайте любое число, чтобы файл прошел техническую проверку.

  • days — срок в рабочих днях, целое число или интервал, записанный через дефис. Для самовывоза в день заказа укажите 0, для самовывоза на следующий день — 1. Максимальное значение — 60. На Маркете нельзя продавать товары с неизвестным сроком самовывоза. Если поле days оставить пустым, то товар будет скрыт с витрины.

  • order-before — до которого часа можно оформить самовывоз этим способом, чтобы срок начал отсчитываться с сегодняшнего дня. Целое число от 0 до 24. Это необязательный атрибут, значение по умолчанию — 13.

Получится так:

<pickup-options>
    <option cost="123" days="2" order-before="18"/>
</pickup-options>        
                

Здесь указано, что товар приедет на пункт выдачи в течение двух дней. Если покупатель оформляет заказ с самовывозом после 18:00, срок начнет отсчитываться со следующего дня.

Для управления товарамиСкачать
Для управления размещениемСкачать

go-yandex-market/yandex-market.

go at master · румянцева/go-yandex-market · GitHub

пакет ямаркет
импорт (
«кодировка/xml»
)
// Каталог описывает всю запись каталога.
// https://yandex.ru/support/partnermarket/yml/about-yml.xml
тип Структура каталога {
XMLName xml.Name `xml:»yml_catalog»`
Строка даты `xml:»date,attr»`
Магазин Магазин `xml:»магазин»`
}
// Магазин описывает обычный объект магазина.
// https://yandex.ru/support/partnermarket/yml/about-yml.xml
Тип

Структура магазина {
Строка имени `xml:»имя»`
Строка компании `xml:»company»`
Строка URL `xml:»url»`
Платформа *string `xml:»platform»`
Агентство *строка `xml:»агентство»`
Электронная почта *string `xml:»email»`
Валюты [] Валюта `xml:»currencies>currency»`
Категории []Категория `xml:»categories>category»`
DeliveryOptions []DeliveryOption `xml:»варианты доставки»`
CPA bool `xml:»cpa»`
Предложения []BookData `xml:»offers>offer»`
}
// Валюта описывает список поддерживаемых валют
// https://yandex. ru/support/partnermarket/currencies.xml
тип Денежная структура {
//XMLName xml.Name `xml:»currency»`
Строка идентификатора `xml:»id,attr»`
Строка оценки `xml:»rate,attr»`
Плюс *строка `xml:»plus,attr»`
}
// Категория описывает категорию магазина
// https://yandex.ru/support/partnermarket/categories.xml
тип Структура категории {
XMLName xml. Name `xml:»category»`
Строка идентификатора `xml:»id,attr»`
Строка заголовка `xml:»,innerxml»`
ParentID *string `xml:»parentId,attr»`
}
// DeliveryOption описывает время доставки.
// https://yandex.ru/support/partnermarket/elements/delivery-options.xml
тип DeliveryOption struct {
Стоимость int32
Дней строка
Заказ Перед *uint8
}
// Предложение описывает простое типичное предложение.
// https://yandex.ru/support/partnermarket/offers.xml
тип Структура предложения {
Идентификационная строка
Строка URL-адреса
Тип *строка
Ставка *uint16
CBid *uint16
Комиссия *uint16
Цена *Цена
Старая цена *Цена
Код валюты строка
Строка идентификатора категории
Строка категории
Строка изображения
Варианты доставки [] Вариант доставки
Транспортировочный ящик
Подборщик
Сохранить логическое значение
Доступное логическое значение
}
// Цена представляет данные о цене
тип Цена структура {
Значение uint32
Из логического
}
// BookData представляет типичные данные книги
// https://yandex. ru/support/partnermarket/export/books.xml
тип BookData struct {
Строка имени `xml:»имя»`
Строка авторизации `xml:»автор»`
Строка идентификатора `xml:»id,attr»`
Строка URL `xml:»url»`
Строка ISBN `xml:»isbn»`
Строка изображения `xml:»picture»`
Строка издателя `xml:»publisher»`
Строка описания `xml:»описание»`
Строка идентификатора категории `xml:»categoryId»`
}

Обезличенные данные Яндекс.

Метрики | Документы ClickHouse

数据集由两个表组成,包含关于Яндекс.Метрика的посещений( hits_v1 )和visit( visits_v1 ).文件 准备 的 分区。 除 此 之外, 一 扩展版 扩展版 的 Хит 表 1 //datasets.clickhouse.com/hits/partitions/hits_100m_obfuscated_v1.tar.xz。

 curl -O https://datasets.clickhouse.com/hits/partitions/hits_v1.tar 
tar xvf hits_v1.tar -C /var /lib/clickhouse # путь к каталогу данных ClickHouse
# проверить права доступа к распакованным данным, исправить при необходимости
sudo service clickhouse-server перезапуск
clickhouse-client --query «ВЫБЕРИТЕ СЧЕТ(*) ИЗ наборов данных.hits_v1»
 curl -O https://datasets.clickhouse.com/visits/partitions/visits_v1.tar 
tar xvf visits_v1.tar -C /var/lib/clickhouse # путь к каталогу данных ClickHouse
# проверить права доступа к распакованным данным, исправить при необходимости
sudo service clickhouse-server restart
clickhouse-client --query "SELECT COUNT(*) FROM datasets. visits_v1"
 curl https://datasets.clickhouse.com/hits/tsv/hits_v1.tsv.xz | unxz --threads=`nproc` > hits_v1.tsv 
# теперь создайте таблицу
clickhouse-client --query "СОЗДАТЬ БАЗУ ДАННЫХ, ЕСЛИ НЕ СУЩЕСТВУЕТ наборов данных"
clickhouse-client --query "СОЗДАТЬ ТАБЛИЦУ datasets.hits_v1 ( WatchID UInt64, JavaEnable UInt8, Title String, GoodEvent Int16, EventTime DateTime, EventDate Дата, CounterID UInt32, ClientIP UInt32, ClientIP6 FixedString(16), RegionID UInt32, UserID UInt64, CounterClass Int8, OS UInt8, UserAgent UInt8, URL String, Referer String, URLDomain String, RefererDomain String, Refresh UInt8, IsRobot UInt8, RefererCategories Array( UInt16), Массив URLCategories (UInt16), Массив URLRegions (UInt32), Массив RefererRegions (UInt32), ResolutionWidth UInt16, ResolutionHeight UInt16, ResolutionDepth UInt8, FlashMajor UInt8, FlashMinor UInt8, FlashMinor2 String, NetMajor UInt8, NetMinor UInt8, UserAgentString Fixed UInt16, UserAgentMajor UInt16, UserAgentMajor UInt16 (2), CookieEnable UInt8, JavascriptEnable UInt8, IsMobile UInt8, MobilePhone UInt8, MobilePhoneModel String, Params String, IPNetworkID Uint32, traficsourceid int8, searchengineid uint16, searchphrase string, avengineid uint8, isartifical uint8, windowclientwidth uint16, windowclientHeight uint16, uint -int16, silvereversition32 uintversion3, silversharintersion3, silverynversion3, silverynversion3, silveryntersion3, silveryntersion3, sirewlightrion3, silveryntersion3, SilveryNversion3. IsDownload UInt8, IsNotBounce UInt8, FUniqID UInt64, HID UInt32, IsOldCounter UInt8, IsEvent UInt8, IsParameter UInt8, DontCountHits UInt8, WithHash UInt8, HitColor FixedString(1), UTCEventTime DateTime, Age UInt8, Sex UInt8, Income UInt8, Interests UInt16, Robotness UInt8 , GeneralInterests Array(UInt16), RemoteIP UInt32, RemoteIP6 FixedString(16), WindowName Int32, OpenerName Int32, HistoryLength Int16, BrowserLanguage FixedString(2), BrowserCountry FixedString(2), SocialNetwork String, SocialAction String, HTTPError UInt16, SendTiming Int32, DNSTiming Int32, ConnectTiming Int 32, ResponseStartTiming Int32, ResponseEndTiming Int32, FetchTiming Int32, RedirectTiming Int32, DOMInteractiveTiming Int32, DOMContentLoadedTiming Int32, DOMCompleteTiming Int32, LoadEventStartTiming Int32, LoadEventEndTiming Int32, NSToDOMContentLoadedTiming Int32, FirstPaintTiming Int32, RedirectCount Int8, SocialSourceNetworkID UInt8, SocialSourcePage String, ParamPrice Int64, ParamOrderID String, ParamCurrency FixedString(3), ParamCurrencyID UInt16, GoalsReached Array(UInt32), OpenstatServiceName String, OpenstatCampaignID String, OpenstatAdID String, OpenstatSourceID String, UTMSource String, UTMMedium String, UTMCampaign String, UTMContent String, UTMTerm String, FromTag String, HasGCLID UInt8, Referer6Hashnt8, Referer , URLHash UInt64, CLID UInt32, YCLID UInt64, ShareService String, ShareURL String, ShareTitle String, ParsedParams Nested(Key1 String, Key2 String, Key3 String, Key4 String, Key5 String, ValueDouble Float64), IslandID FixedString(16), R equestNum UInt32, RequestTry UInt8) ENGINE = MergeTree() PARTITION BY toYYYYMM(EventDate) ORDER BY (CounterID, EventDate, intHash42(UserID)) SAMPLE BY intHash42(UserID) SETTINGS index_granularity = 8192"
# импорт данных
cat hits_v1.

This entry was posted in Популярное