API Taobao Поиск
Состояние API
- Состояние за 24 ч
- 98%
- Среднее время за 24 ч
- 10.54 s
- Стабильно / норма
- Доступно
- Ограничено
- Почти недоступно
Последние 24 часа
Последние 30 дней
Ищите карточки товаров на Taobao и Tmall по ключевому слову: цена и место отправки, а также число продаж, рейтинг, магазин и купоны или скидки, если они есть. Простой поиск по ключевому слову надёжнее всего и поддерживает пагинацию через page, по 20 записей на страницу, хотя в большинстве записей нет числа продаж и названия магазина. Пагинация недоступна при использовании диапазона цен, popular, price_desc или tmall_only, а при последних трёх вариантах за запрос возвращается не более 10 записей. Наличие, подлинность и доставка не подтверждаются.
Возможность «Поиск Taobao» находит карточки товаров Taobao и Tmall по keyword и возвращает для каждого товара название, цену и валюту, число продаж, рейтинг, место отправки, название магазина, главное изображение и наличие. Используйте её, чтобы понять, что продаётся в категории и по какой цене: для исследования товаров, отслеживания цен конкурентов и анализа категорий.
Ограничьте цену параметрами min_price и max_price, задайте порядок через sort (по релевантности, популярности или цене от высокой к низкой) и оставьте только карточки товаров Tmall с помощью tmall_only. tmall_only принимает булево значение true или false; строковое значение отклоняется без списания средств. Прежде чем сравнивать значения rating, проверьте rating_scale в той же записи: максимальное значение на разных платформах разное.
Цена: $13.5 за 1 000 запросов ($0.0135 за вызов). Неудачные вызовы и пустые результаты не оплачиваются. Синхронный режим. Для долгих задач добавьте в тело запроса "mode": "async", получите job_id и опрашивайте статус.
Промпт для ИИ
Помогите мне написать скрипт для сбора данных через эндпоинт EveryInfra Taobao Поиск (taobao/search).
Как работает эндпоинт:
- Запрос: POST https://api.everyinfra.com/api/v1/social с заголовком Authorization: Bearer <API key>. Читайте ключ из переменной окружения EVERYINFRA_API_KEY и никогда не прописывайте его в коде.
- В теле запроса укажите platform: taobao и action: search, а параметры передайте в params.
- Обязательные параметры:
- keyword: Поисковый запрос для поиска товаров на Taobao или Tmall в действии search. Точный поиск по названию магазина не выполняется.
- Необязательные параметры:
- max_price: Максимальная цена товара для действия search, задаётся вместе с min_price. Не управляет лимитами остатков SKU. Дробные значения могут округляться вверх до целого. Поиск с диапазоном цен не поддерживает пагинацию.
- min_price: Минимальная цена товара для действия search. Это не фильтр по оценке в отзывах и не параметр стоимости API; к shop, product_detail, reviews и questions он не применяется.
- page: Номер страницы при поиске товаров: от 1 до 50, по 20 результатов на странице. Для страницы 1 параметр можно не указывать; каждая страница оплачивается как один вызов.
- sort: Для поиска товаров используйте relevance (по умолчанию), popular или price_desc. При сортировке по умолчанию и relevance доступно до 20 результатов, при popular и price_desc до 10, без пагинации. (допустимые значения: popular / price_desc / relevance)
- tmall_only: При логическом значении true оставляет в поиске только товары Tmall и ограничивает запрос 10 результатами без пагинации.
- limit: Максимальное число записей в этом вызове, целое число от 1 до 20. Если параметр не указан, применяется значение по умолчанию; вызов может вернуть меньше записей. (по умолчанию: 20)
- Возвращает список записей. Основные поля каждой записи: id, url, title, price (Цена числом без символа валюты), currency, sold_count (Продано единиц), rating, rating_scale, location, shop_name (Название магазина), image_url, stock (Остаток); всего полей: 41, полный список: https://api.everyinfra.com/api/v1/social/catalog?platform=taobao.
- Пример тела запроса:
{
"platform": "taobao",
"action": "search",
"params": {
"keyword": "便携咖啡秤"
}
}
- Цена: $13.5 за 1 000 запросов; неудачные и пустые результаты не оплачиваются.
- Для десятков или сотен целей добавьте в тело запроса "mode": "async": вы сразу получите job_id и сможете опрашивать GET https://api.everyinfra.com/api/v1/jobs/{job_id}, чтобы получить результат.
- При ответе 422 исправьте запрос, используя предложенные в ошибке имена параметров и допустимые значения; при ответе 429 или 503 подождите указанное в Retry-After время и повторите попытку.
Прежде чем писать код, спросите меня, какие цели мне нужны, сколько их будет, какие поля мне нужны и в каком формате вывести результат; затем согласуйте со мной план и примерную стоимость.Параметры запроса
| Имя | Расположение | Тип | Обязательный | По умолчанию | Описание |
|---|---|---|---|---|---|
Authorization | header | string | Да | - | Укажите Bearer, а после него — ваш API-ключ. Создайте ключ в консоли; никогда не указывайте его в URL и не храните в репозитории кода. |
platform | body | string | Да | taobao | Идентификатор платформы, фиксированное значение. |
action | body | string | Да | search | Идентификатор возможности, фиксированное значение. |
keyword | body.params | string | Да | - | Поисковый запрос для поиска товаров на Taobao или Tmall в действии search. Точный поиск по названию магазина не выполняется. |
max_price | body.params | number | Нет | - | Максимальная цена товара для действия search, задаётся вместе с min_price. Не управляет лимитами остатков SKU. Дробные значения могут округляться вверх до целого. Поиск с диапазоном цен не поддерживает пагинацию. |
min_price | body.params | number | Нет | - | Минимальная цена товара для действия search. Это не фильтр по оценке в отзывах и не параметр стоимости API; к shop, product_detail, reviews и questions он не применяется. Дробные значения могут округляться вниз до целого. Поиск с диапазоном цен не поддерживает пагинацию. |
page | body.params | integer | Нет | - | Номер страницы при поиске товаров: от 1 до 50, по 20 результатов на странице. Для страницы 1 параметр можно не указывать; каждая страница оплачивается как один вызов. Пагинация доступна только для простого поиска по ключевому слову (без min_price, max_price и tmall_only, а sort не указан или равен relevance). Такой поиск надёжнее, хотя у большинства записей нет данных о продажах и названия магазина. Запрос со страницей больше 1 и любым из этих фильтров отклоняется до списания средств, поэтому для пагинации уберите эти фильтры. limit задаёт только количество результатов на этой странице, поэтому при пагинации оставляйте его равным 20. Ранжирование обновляется в реальном времени, поэтому на соседних страницах иногда повторяются несколько товаров; при объединении страниц удаляйте дубликаты по id. |
sort | body.params | string (enum) | Нет | - | Для поиска товаров используйте relevance (по умолчанию), popular или price_desc. При сортировке по умолчанию и relevance доступно до 20 результатов, при popular и price_desc до 10, без пагинации. Запросы сверх соответствующего лимита отклоняются до списания средств; price_asc не поддерживается. Reviews и questions не принимают sort. Shop принимает его без ошибки, но пока он ни на что не влияет.Допустимые значенияpopularprice_descrelevance |
tmall_only | body.params | boolean | Нет | - | При логическом значении true оставляет в поиске только товары Tmall и ограничивает запрос 10 результатами без пагинации. Передавайте только логическое значение JSON: строки вроде "false" и запросы сверх этого лимита отклоняются до списания средств. |
limit | body.params | integer (1–20) | Нет | 20 | Максимальное число записей в этом вызове, целое число от 1 до 20. Если параметр не указан, применяется значение по умолчанию; вызов может вернуть меньше записей. При значениях выше максимума эндпоинт возвращает ошибку 422 до списания средств. |
Примеры кода
curl -X POST 'https://api.everyinfra.com/api/v1/social' \
-H "Authorization: Bearer $EVERYINFRA_API_KEY" \
-H 'Content-Type: application/json' \
--data-raw '{
"platform": "taobao",
"action": "search",
"params": {
"keyword": "便携咖啡秤"
}
}'Спецификация OpenAPI (JSON)Примеры читают ключ из переменной окружения EVERYINFRA_API_KEY; скопированный код никогда не содержит ваш ключ.
Пример ответа
Получено October 24, 2026 at 18:28 (UTC) вызовом этого API с параметрами из примера кода выше. results и count — реальный ответ этого вызова, из которого удалены персональные данные (имена, никнеймы, аватары, ссылки на профили, контакты); в списке оставлены первые 2. id, billing и quota меняются при каждом вызове, поэтому показана только их структура.
{
"id": "req_…",
"platform": "taobao",
"action": "search",
"results": [
{
"id": "•••",
"url": "https://item.taobao.com/item.htm?id=1036557039587",
"title": "手冲电子称豆盘咖啡称重展示盘咖啡豆粉秤豆碟茶叶茶则茶器便携",
"price": 59.8,
"currency": "CNY",
"location": "浙江 杭州",
"shop_name": "好货严选工厂",
"image_url": "https://g.search.alicdn.com/img/bao/uploaded/i4/i2/2206584264218/O1CN01sCMEZhb10YE1chua_!!2206584264218-0-C2M.jpg",
"stock": 438,
"shop_id": "2206584264218",
"sold_text": "1000+",
"original_price": 59.8,
"discount_type": "特价秒杀",
"seller_credit_level": 20,
"seller_positive_rate": 100,
"shop_score_description": 4.74,
"shop_score_service": 4.8,
"shop_score_delivery": 4.82,
"subtitle": "",
"search_rank": 1,
"images": [
"https://img.alicdn.com/imgextra/i4/3937219703/O1CN01VRbcrW2LY2B5R9Jq9_!!3937219703-0-C2M.jpg",
"https://img.alicdn.com/imgextra/i3/3937219703/O1CN01Bs0puN2LY2B58j8Nm_!!3937219703-0-C2M.jpg",
"https://img.alicdn.com/imgextra/i4/3937219703/O1CN010vTDpb2LY2B5NXjqG_!!3937219703-0-C2M.jpg"
],
"discount_rate": 100,
"spu_id": "8995243647",
"platform": "taobao"
},
{
"id": "•••",
"url": "https://item.taobao.com/item.htm?id=803310769271",
"title": "Bincoo咖啡电子秤意式专用咖啡豆称重智能手冲迷你便携秤咖啡器具",
"price": 88,
"currency": "CNY",
"shop_name": "bincoo旗舰店",
"image_url": "https://g.search1.alicdn.com/img/bao/uploaded/i4/i3/4249388314/O1CN013agzRw2BHrr0rcgBA_!!0-item_pic.jpg",
"stock": 1267,
"shop_id": "4249388314",
"sold_text": "1000+",
"original_price": 128,
"discount_type": "优惠价",
"seller_credit_level": 16,
"seller_positive_rate": 100,
"shop_score_description": 4.9,
"shop_score_service": 4.92,
"shop_score_delivery": 4.93,
"subtitle": "",
"search_rank": 2,
"images": [
"https://img.alicdn.com/imgextra/i1/4249388314/O1CN01ZKqJQV2BHrqxP8GFJ_!!4249388314.jpg",
"https://img.alicdn.com/imgextra/i2/4249388314/O1CN01tX38az2BHrqz5tjuQ_!!4249388314.jpg",
"https://img.alicdn.com/imgextra/i1/4249388314/O1CN01Jddc8c2BHrqyzT1fk_!!4249388314.jpg"
],
"discount_rate": 68.75,
"spu_id": "7410827142",
"platform": "taobao"
}
],
"count": 10,
"billing": {
"charged": …,
"charged_usd": …,
"balance_after_usd": …,
…
},
"quota": { … }
}Поля ответа
Бизнес-данные находятся в results. В таблице перечислены поля, которые может содержать запись; значения, которые платформа не показывает, никогда не выдумываются.
| Поле | Значение |
|---|---|
id | Уникальный ID записи на платформе. Уникален только в пределах одной платформы; на разных платформах ID могут повторяться. |
url | Ссылка на запись на платформе. |
title | Заголовок. null, если на платформе нет заголовков (например, у текстовых постов). |
price | Цена числом без символа валюты; см. currency. В product_detail цены (включая price в каждой записи skus) в основном пересчитаны из долларов США и могут отличаться от цены на странице Taobao примерно на 1–4% в большую или меньшую сторону; ориентируйтесь на цену на странице. |
currency | Код валюты цены (например, CNY, USD). Если price есть, а currency равно null, не делайте предположений о валюте. |
sold_count | Продано единиц. |
rating | Рейтинг. Шкала зависит от платформы: rating_scale в той же записи задаёт максимум (обычно 5; у Booking, Douban, iQIYI и NAVER — 10). Перед сравнением между платформами пересчитайте значения с учётом rating_scale, иначе результат сравнения может оказаться обратным. |
rating_scale | Максимальное значение rating в той же записи: 5 для пятизвёздочных шкал, 10 для десятибалльных. Поле присутствует, только если у записи есть рейтинг. |
location | Описание местоположения передаётся как есть; формат зависит от платформы. |
shop_name | Название магазина. |
image_url | Ссылка на изображение. Возможности с несколькими изображениями могут возвращать массив image_urls. |
stock | Остаток. |
shop_id | ID магазина. |
sold_text | Число продаж в отображаемом виде (search), например 100k+; значения с + или в единицах по 10 тыс. округлены для отображения и не являются точными продажами. |
original_price | Исходная (зачёркнутая) цена. В shop это единственная цена: зачёркнутое значение, которое показывает карточка товара, а не цена продажи, и оно может быть заметно выше неё; цену продажи получайте через product_detail. |
coupon_price | Цена с учётом купона: ниже price, если купон применим; в остальных случаях поле отсутствует. |
discount_type | Тип скидки или акции в исходной формулировке (например, флеш-распродажа). |
is_tmall | Относится ли магазин к Tmall, а не к обычным магазинам Taobao; для этих типов магазинов действуют разные требования к допуску продавцов и гарантии для покупателей. |
brand | Бренд. |
category_id | ID категории. |
seller_credit_level | Уровень кредитного рейтинга продавца (число; чем выше, тем лучше). |
seller_positive_rate | Доля положительных отзывов о продавце (search) в процентах: 100 означает 100%. |
shop_score_description | Оценка магазина за соответствие товара описанию по 5-балльной шкале. |
shop_score_service | Оценка магазина за обслуживание по 5-балльной шкале. |
shop_score_delivery | Оценка магазина за доставку по 5-балльной шкале. |
subtitle | Подзаголовок товара (search): короткая строка с ключевым преимуществом товара. |
search_rank | Позиция в этой поисковой выдаче (search), начиная с 1; при пагинации нумерация продолжается, поэтому на странице 3 первой будет позиция 41. |
free_shipping | Бесплатна ли доставка. |
selling_points | Теги с преимуществами товара. |
review_tags | Теги отзывов, у каждого есть tag (метка) и count (сколько раз упоминался; может отсутствовать). |
images | Ссылки на изображения: в product_detail это фотографии товара, в reviews это фотографии покупателя (поле отсутствует, если в отзыве их нет). |
discount_rate | Трактуется так же, как на самой платформе |
spu_id | Трактуется так же, как на самой платформе |
category_path | Путь категорий (хлебные крошки). |
review_count | Количество отзывов для возможностей по товарам и компаниям. null означает, что значение не раскрыто, а не 0. |
latest_review | Трактуется так же, как на самой платформе |
seller_type | Код типа продавца (product_detail). |
shop_opened_at | Дата открытия магазина в исходном виде (product_detail). |
shop_age_years | Трактуется так же, как на самой платформе |
shop_item_count | Число товаров в продаже в магазине (product_detail, search, shop). |
shop_score_vs_industry | Трактуется так же, как на самой платформе |
platform | Идентификатор исходной платформы. Совпадает со значением platform в запросе (например, xiaohongshu, tiktok). |
FAQ
Можно ли получить больше результатов постранично?
Да, с помощью page: страницы с 1 по 50, по 20 результатов на каждой, и каждая страница оплачивается как один вызов API. Без параметра возвращается страница 1. Пагинация работает только для простого поиска по ключевому слову, то есть без min_price, max_price и tmall_only, а sort не передан или равен relevance. Это более надёжный способ поиска, хотя в большинстве записей нет данных о продажах и названия магазина. Поиск с диапазоном цен или sort=popular может вернуть данные о продажах, но выдаёт не более 10 или 20 результатов и не поддерживает пагинацию, поэтому параметр page со значением больше 1 в таком запросе отклоняется без списания средств. Ранжирование обновляется в реальном времени, поэтому на соседних страницах иногда повторяется несколько товаров; при объединении страниц удаляйте дубликаты по id.
Какие варианты сортировки поддерживает sort?
relevance (по умолчанию), popular и price_desc, при котором первыми идут самые дорогие товары; сортировки от дешёвых к дорогим сейчас нет. Сортировка по популярности или цене возвращает не более 10 результатов за вызов API и не поддерживает пагинацию. Чтобы получить больше результатов, выполните простой поиск по ключевому слову без sort и листайте страницы с помощью page.
Как работают фильтры по цене?
min_price и max_price задают границы цены товара, и можно передать только один из них. Они применяются только к поиску товаров, а не к рейтингам или стоимости вызовов. price возвращается без символа валюты; валюту смотрите в currency.
Ошибки и оплата
- 401
- Ключ отсутствует или недействителен.
- 402
- Недостаточно средств на балансе. Сначала пополните баланс.
- 422
- Недопустимое имя или значение параметра. Исправьте запрос по подсказкам в сообщении об ошибке. Без списания.
- 429
- Достигнут лимит запросов в минуту. Подождите указанное в Retry-After время, затем повторите попытку.
- 503
- Не удалось выполнить. Зарезервированная сумма возвращается на баланс. Если результат неизвестен, проверьте его перед повторной попыткой.
- 200 (пусто)
- Нет данных. Без списания.