{"openapi":"3.1.0","info":{"title":"Wildberries Prices (BYOK) API","version":"0.1.0","description":"Wildberries Prices (BYOK) lets an AI assistant read your own Wildberries Prices data through the Wildberries Prices API with a key you supply (Wildberries API token with the Prices and Discounts category (read-only is enough)). Read-only: 7 tools (list_goods_prices, get_size_prices, list_quarantine_goods, get_processed_upload_state, get_processed_upload_details, get_unprocessed_upload_state,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-wildberries-prices.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-wildberries-prices/docs"},"termsOfService":"https://connectorbay.com/byok-wildberries-prices/terms"},"servers":[{"url":"https://byok-wildberries-prices.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-wildberries-prices/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/list_goods_prices":{"post":{"operationId":"list_goods_prices","summary":"List your products with price, discount, club discount and discounted price per size (page with limit and offset, 1000 m","description":"List your products with price, discount, club discount and discounted price per size (page with limit and offset, 1000 maximum). Use for \"What are the current prices and discounts of my Wildberries products\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"description":"Rows per page (1 to 1000).","maximum":1000,"minimum":1,"title":"Limit","type":"integer"},"offset":{"anyOf":[{"maximum":1000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many rows to skip (0 for the first page).","title":"Offset"},"nm_id":{"anyOf":[{"maximum":2000000000,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Only this Wildberries article number (nmID).","title":"Nm Id"}},"required":["limit"],"title":"list_goods_pricesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_size_prices":{"post":{"operationId":"get_size_prices","summary":"List the per-size prices and discounts of one product article. Use for \"What does each size of Wildberries article 12345","description":"List the per-size prices and discounts of one product article. Use for \"What does each size of Wildberries article 12345678 cost\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"description":"Rows per page (1 to 1000).","maximum":1000,"minimum":1,"title":"Limit","type":"integer"},"nm_id":{"description":"Wildberries article number (nmID).","maximum":2000000000,"minimum":1,"title":"Nm Id","type":"integer"},"offset":{"anyOf":[{"maximum":1000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many rows to skip (0 for the first page).","title":"Offset"}},"required":["limit","nm_id"],"title":"get_size_pricesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_quarantine_goods":{"post":{"operationId":"list_quarantine_goods","summary":"List products whose price change was held in quarantine, with old and new price and discount. Use for \"Which of my Wildb","description":"List products whose price change was held in quarantine, with old and new price and discount. Use for \"Which of my Wildberries price changes are in quarantine\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"description":"Rows per page (1 to 1000).","maximum":1000,"minimum":1,"title":"Limit","type":"integer"},"offset":{"anyOf":[{"maximum":1000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many rows to skip (0 for the first page).","title":"Offset"}},"required":["limit"],"title":"list_quarantine_goodsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_processed_upload_state":{"post":{"operationId":"get_processed_upload_state","summary":"Get the state of a processed price upload task: status, dates and how many goods succeeded. Use for \"Did Wildberries pri","description":"Get the state of a processed price upload task: status, dates and how many goods succeeded. Use for \"Did Wildberries price upload 123456 finish\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"upload_id":{"description":"Id of a price upload task, as returned when the upload was created.","maximum":2000000000,"minimum":1,"title":"Upload Id","type":"integer"}},"required":["upload_id"],"title":"get_processed_upload_stateArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_processed_upload_details":{"post":{"operationId":"get_processed_upload_details","summary":"List per-product results of a processed price upload task, with status and error text. Use for \"Which products failed in","description":"List per-product results of a processed price upload task, with status and error text. Use for \"Which products failed in Wildberries price upload 123456\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"upload_id":{"description":"Id of a price upload task, as returned when the upload was created.","maximum":2000000000,"minimum":1,"title":"Upload Id","type":"integer"},"limit":{"description":"Rows per page (1 to 1000).","maximum":1000,"minimum":1,"title":"Limit","type":"integer"},"offset":{"anyOf":[{"maximum":1000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many rows to skip (0 for the first page).","title":"Offset"}},"required":["upload_id","limit"],"title":"get_processed_upload_detailsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_unprocessed_upload_state":{"post":{"operationId":"get_unprocessed_upload_state","summary":"Get the state of a price upload task that is still waiting to be processed. Use for \"Is Wildberries price upload 123456 ","description":"Get the state of a price upload task that is still waiting to be processed. Use for \"Is Wildberries price upload 123456 still waiting\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"upload_id":{"description":"Id of a price upload task, as returned when the upload was created.","maximum":2000000000,"minimum":1,"title":"Upload Id","type":"integer"}},"required":["upload_id"],"title":"get_unprocessed_upload_stateArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_unprocessed_upload_details":{"post":{"operationId":"get_unprocessed_upload_details","summary":"List per-product entries of a price upload task still waiting to be processed. Use for \"What is queued in Wildberries pr","description":"List per-product entries of a price upload task still waiting to be processed. Use for \"What is queued in Wildberries price upload 123456\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"upload_id":{"description":"Id of a price upload task, as returned when the upload was created.","maximum":2000000000,"minimum":1,"title":"Upload Id","type":"integer"},"limit":{"description":"Rows per page (1 to 1000).","maximum":1000,"minimum":1,"title":"Limit","type":"integer"},"offset":{"anyOf":[{"maximum":1000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many rows to skip (0 for the first page).","title":"Offset"}},"required":["upload_id","limit"],"title":"get_unprocessed_upload_detailsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}