yandex-market-api skill
A skill for the Yandex Market Partner API: the official OpenAPI spec, endpoint lookup and a guide to common integration mistakes
- 0 ★ on the repository
- Last commit
Broad access
Why this level
- Following the skill, the agent can change prices, stocks and order statuses in the live store
- The API has no sandbox
- It requires the seller cabinet Api-Key
Install
- Works in
- Services
In your terminal, with SkillFoxx CLI
npx skillfoxx add skills/yandex-market-apiDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- Following the skill, the agent can change prices, stocks and order statuses in the live store
- The API has no sandbox
- It requires the seller cabinet Api-Key
This is third-party code. Review the repository files before installing.
What it does
The skill teaches an agent to work with the Yandex Market Partner API for sellers: catalog, prices, stocks, orders, shipments, returns, reports and buyer chats. It bundles the full spec from Market's official repository and a Python script that lists sections, searches operations by Russian or English keywords and prints the parameters of a given operation. SKILL.md explains businessId versus campaignId, how warehouse groups decide which stocks API version to use, the FBY, FBS, DBS and Express models, cursor pagination and error codes, including 420 for rate limits. The agent is told to ask for confirmation before changing prices, stocks or order statuses.
Who it is for. For Yandex Market sellers and developers building integrations with the seller cabinet.
Good fit when
- You need the right API method and want to avoid deprecated ones
- An integration returns 403 or 404 because businessId and campaignId are mixed up
- You need to update stocks on Market and pick the right method version
- You need to prepare a request for reports, orders or reviews
Not a fit when
- You sell on Ozon or Wildberries rather than Market
- You want a ready MCP server that calls the API without hand-built requests
Example request
Find the method for sending stocks to Market for an FBS store and build the request without sending itLimitations
You need an Api-Key from the seller cabinet. The API has no sandbox, so mutating calls hit the live store. Rate limits are not in the spec, only in Market's docs. The spec is a snapshot in the repository and ages until the author refreshes it; the rebuild script the README mentions is not part of the repository. No license is specified. The README has no install steps, so the skill is installed by copying the folder.
How to disable. Delete the yandex-market-api folder from the agent's skills directory.
FAQ
How is campaignId different from the store number?
They are different IDs. Per the skill, campaignId comes from GET /v2/campaigns or the API section of the cabinet, while the store number shown in the UI does not work in requests.
Will the agent read the whole spec?
No. The file is large, so the skill tells the agent to find operations with the script and read only those.
Discussion
No questions or reviews yet.
Related
All Yandex Market toolsAn auto-updating Claude Code Skill reference for all 165 Yandex Market Partner API methods, built from the official OpenAPI spec
A Yandex Market Partner API MCP server for sellers: orders, returns, listings, prices, reports, reviews and chats
An MCP server and CLI for the Yandex Market Partner API: 131 actions across orders, prices, stock, shipments and reviews via a search-and-execute pattern
A1 Yandex Merchants MCP
A1 Яндекс Товары MCP
An MCP server that updates prices, discounts and product visibility in Yandex Merchants one item at a time, without rebuilding the YML feed
MCP servers for Wildberries, Ozon, Yandex Market and Avito seller accounts via official APIs with write confirmation
Marketplace seller skills on top of marketplaces-mcp-ru
seller-skills-ru
Six task-shaped skills instead of raw API methods: stock reconciliation, sales export, listings, unit economics, ads and supplier prices
README in short
The README briefly lists the contents: SKILL.md as the entry point, the Partner API spec from Market's official repository with added section and placement model tags, a flat index of methods and a lookup script. It notes that the spec is rebuilt by an external script that needs Node.js. There are no install instructions for the skill.
README badge
Original SKILL.md
---
name: yandex-market-api
description: 'Use for seller integrations with Yandex Market (Яндекс Маркет): catalog, prices, stocks, orders, warehouses, returns, reports, and buyer communication. Triggers include "Yandex Market API", "API Яндекс Маркета", "остатки на Маркете", businessId, campaignId, and api.partner.market.yandex.ru.'
---
# Yandex Market Partner API
This skill helps you call the Yandex Market Partner API (`https://api.partner.market.yandex.ru`). It bundles the full OpenAPI 3.0 spec from the **official repository** (`github.com/yandex-market/yandex-market-partner-api`) — 155 paths / 165 operations.
The spec is ~1.4 MB. Don't read it whole — use the helpers described below to pull only what you need.
## Authentication — Api-Key header
The primary (and recommended) auth is a single header:
```http
Api-Key: <ключ>
```
The user creates keys in the seller cabinet: **иконка аккаунта → Настройки → API и модули → Авторизация через Api-Key**. Each key gets an access scope at creation (read-only / full / по разделам) — a read-only key gets `403` on mutating methods.
The spec also lists an **OAuth** scheme (scope `market:partner-api`) for apps acting on behalf of sellers — Yandex has been phasing it out in favor of Api-Key; only go there if the user explicitly builds a multi-seller app, and check the current official docs (`yandex.ru/dev/market/partner-api/doc/`) for the flow.
There is no sandbox host — this is the live cabinet. Test orders exist as a feature (`fake` order flags), but mutating calls hit the real store.
## businessId vs campaignId — the #1 source of confusion
Two different identifiers route every request:
- **`businessId`** — the cabinet («бизнес»). Paths like `/v2/businesses/{businessId}/...` operate on the shared catalog: offer-mappings (карточки), prices for all stores, promos, feedback, Q&A.
- **`campaignId`** — one store = one placement model inside the cabinet. Paths like `/v2/campaigns/{campaignId}/...` operate per-store: orders, stocks, store prices, shipments, outlets.
Get both from `GET /v2/campaigns` (each campaign carries its `business.id`). **`campaignId` is NOT the «номер магазина» shown in the cabinet UI** — the cabinet shows it under Настройки → API и модули → «Идентификатор кампании». Passing a shop number where a campaignId is expected yields 404/403.