{"openapi":"3.1.0","info":{"title":"Anymarket (BYOK) API","version":"0.1.0","description":"Anymarket (BYOK) lets an AI assistant read your own Anymarket data through the Anymarket API with a key you supply (Anymarket gumgaToken (security token provided by Anymarket)). Read-only: 9 tools (list_products, get_product, list_product_skus, list_brands, list_categories, list_variation_types, list_stock_locations, list_stocks, list_campaigns). The BYOK key travels with each request, is used...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-anymarket.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-anymarket/docs"},"termsOfService":"https://connectorbay.com/byok-anymarket/terms"},"servers":[{"url":"https://byok-anymarket.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-anymarket/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_products":{"post":{"operationId":"list_products","summary":"List products of your Anymarket catalog with title, category, brand, model, type, active flag and price factor. Filter b","description":"List products of your Anymarket catalog with title, category, brand, model, type, active flag and price factor. Filter by SKU code, external id or category id. Use for \"Which products are in my Anymarket catalog\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"offset":{"anyOf":[{"maximum":1000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Position to start from, for paging (0 for the first page).","title":"Offset"},"limit":{"anyOf":[{"maximum":100,"minimum":5,"type":"integer"},{"type":"null"}],"default":20,"description":"How many records to return (5 to 100).","title":"Limit"},"sku":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only products that contain this partner SKU code.","title":"Sku"},"external_id":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only products with this external id (used by some marketplaces).","title":"External Id"},"category_id":{"anyOf":[{"maxLength":20,"type":"string"},{"type":"null"}],"default":null,"description":"Only products in this Anymarket category id.","title":"Category Id"}},"title":"list_productsArguments","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_product":{"post":{"operationId":"get_product","summary":"Get one Anymarket product by id with description, dimensions, category, brand, price settings and its SKUs. Use for \"Sho","description":"Get one Anymarket product by id with description, dimensions, category, brand, price settings and its SKUs. Use for \"Show Anymarket product 1001 with its SKUs\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"id":{"description":"Anymarket product id.","minimum":1,"title":"Id","type":"integer"}},"required":["id"],"title":"get_productArguments","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_product_skus":{"post":{"operationId":"list_product_skus","summary":"List all SKUs of one product with partner code, EAN, stock amount, cost price, selling price, warehouse id and active fl","description":"List all SKUs of one product with partner code, EAN, stock amount, cost price, selling price, warehouse id and active flag. Use for \"What SKUs and prices does Anymarket product 1001 have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"product_id":{"description":"Anymarket product id.","minimum":1,"title":"Product Id","type":"integer"}},"required":["product_id"],"title":"list_product_skusArguments","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_brands":{"post":{"operationId":"list_brands","summary":"List brands registered in Anymarket with id, name, short name and partner id; filter by name. Use for \"Which brands exis","description":"List brands registered in Anymarket with id, name, short name and partner id; filter by name. Use for \"Which brands exist in my Anymarket account\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":100,"minimum":5,"type":"integer"},{"type":"null"}],"default":20,"description":"How many records to return (5 to 100).","title":"Limit"},"sort":{"anyOf":[{"maxLength":60,"type":"string"},{"type":"null"}],"default":null,"description":"Attribute name to sort by.","title":"Sort"},"name":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only brands whose name matches this text.","title":"Name"},"partner_id":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only the brand with this partner id.","title":"Partner Id"}},"title":"list_brandsArguments","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_categories":{"post":{"operationId":"list_categories","summary":"List the top-level product categories of Anymarket with path, partner id, price factor and the scope where prices are de","description":"List the top-level product categories of Anymarket with path, partner id, price factor and the scope where prices are defined. Use for \"What are my top-level Anymarket categories\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_categoriesArguments","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_variation_types":{"post":{"operationId":"list_variation_types","summary":"List variation types such as size or colour with their values, partner id and the visual variation flag. Use for \"Which ","description":"List variation types such as size or colour with their values, partner id and the visual variation flag. Use for \"Which variation types and values are defined in Anymarket\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"offset":{"anyOf":[{"maximum":1000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Position to start from, for paging (0 for the first page).","title":"Offset"},"limit":{"anyOf":[{"maximum":100,"minimum":5,"type":"integer"},{"type":"null"}],"default":20,"description":"How many records to return (5 to 100).","title":"Limit"},"sort":{"anyOf":[{"maxLength":60,"type":"string"},{"type":"null"}],"default":null,"description":"Attribute name to sort by.","title":"Sort"},"partner_id":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only the variation type with this partner id.","title":"Partner Id"}},"title":"list_variation_typesArguments","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_stock_locations":{"post":{"operationId":"list_stock_locations","summary":"List warehouses (stock locations) with name, whether virtual, whether default and zip code. Use for \"Which warehouses do","description":"List warehouses (stock locations) with name, whether virtual, whether default and zip code. Use for \"Which warehouses does my Anymarket account use\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_stock_locationsArguments","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_stocks":{"post":{"operationId":"list_stocks","summary":"List stock levels per SKU and warehouse: amount, reserved, available, cost price, active flag and last update. Filter by","description":"List stock levels per SKU and warehouse: amount, reserved, available, cost price, active flag and last update. Filter by SKU id, SKU code or warehouse. Use for \"How much stock is available for each SKU in Anymarket\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"offset":{"anyOf":[{"maximum":1000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Position to start from, for paging (0 for the first page).","title":"Offset"},"limit":{"anyOf":[{"maximum":100,"minimum":5,"type":"integer"},{"type":"null"}],"default":20,"description":"How many records to return (5 to 100).","title":"Limit"},"sort":{"anyOf":[{"maxLength":60,"type":"string"},{"type":"null"}],"default":null,"description":"Attribute name to sort by.","title":"Sort"},"sort_direction":{"anyOf":[{"enum":["ASC","DESC"],"type":"string"},{"type":"null"}],"default":null,"description":"Sort direction: ASC or DESC.","title":"Sort Direction"},"id_sku":{"anyOf":[{"maxLength":20,"type":"string"},{"type":"null"}],"default":null,"description":"Only this Anymarket SKU id.","title":"Id Sku"},"id_stock_local":{"anyOf":[{"maxLength":20,"type":"string"},{"type":"null"}],"default":null,"description":"Only this warehouse id.","title":"Id Stock Local"},"sku":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only this partner SKU code.","title":"Sku"},"has_reservation":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True for only stocks that have reservations.","title":"Has Reservation"}},"title":"list_stocksArguments","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_campaigns":{"post":{"operationId":"list_campaigns","summary":"List marketplace campaigns with title, dates, marketplace, status and product count; filter by status. Use for \"Which ma","description":"List marketplace campaigns with title, dates, marketplace, status and product count; filter by status. Use for \"Which marketplace campaigns are active in Anymarket\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"status":{"anyOf":[{"enum":["SCHEDULED","ACTIVE","FINALIZED"],"type":"string"},{"type":"null"}],"default":null,"description":"Campaign status: SCHEDULED, ACTIVE or FINALIZED.","title":"Status"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"How many records to return (up to 100).","title":"Limit"},"offset":{"anyOf":[{"maximum":1000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Position to start from, for paging (0 for the first page).","title":"Offset"}},"title":"list_campaignsArguments","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}}}}