{"openapi":"3.1.0","info":{"title":"Inventory Planner (BYOK) API","version":"0.1.0","description":"Inventory Planner (BYOK) lets an AI assistant read your own Inventory Planner data through the Inventory Planner API with a key you supply (Inventory Planner API key). Read-only: 6 tools (list_variants, get_variant, list_variant_vendors, list_stock_orders, get_stock_order, list_stock_order_items). The BYOK key travels with each request, is used for that one call only and is never stored, logged...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-inventory-planner.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-inventory-planner/docs"},"termsOfService":"https://connectorbay.com/byok-inventory-planner/terms"},"servers":[{"url":"https://byok-inventory-planner.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-inventory-planner/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_variants":{"post":{"operationId":"list_variants","summary":"List variants (SKUs) with lead time, review period, current replenishment quantity and forecast days to sell out (oos). ","description":"List variants (SKUs) with lead time, review period, current replenishment quantity and forecast days to sell out (oos). Can filter and sort on those metrics. Use for \"Which SKUs need the biggest replenishment in Inventory Planner\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sku":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only the variant with this exact SKU.","title":"Sku"},"replenishment_gt":{"anyOf":[{"type":"number"},{"type":"null"}],"default":null,"description":"Only variants whose replenishment number is greater than this.","title":"Replenishment Gt"},"oos_lt":{"anyOf":[{"type":"number"},{"type":"null"}],"default":null,"description":"Only variants forecast to sell out in fewer days than this.","title":"Oos Lt"},"replenishment_sort":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":null,"description":"Sort by replenishment: desc (largest first) or asc.","title":"Replenishment Sort"},"oos_sort":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":null,"description":"Sort by days to sell out: asc (soonest first) or desc.","title":"Oos Sort"},"removed":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True to include removed variants, which are hidden by default.","title":"Removed"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (1 to 1000; this connector shows at most 50 per answer).","title":"Limit"},"page":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Page number, starting at 0.","title":"Page"}},"title":"list_variantsArguments","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_variant":{"post":{"operationId":"get_variant","summary":"Get one variant by its Inventory Planner ID with SKU, lead time, review period, replenishment and days to sell out. Use ","description":"Get one variant by its Inventory Planner ID with SKU, lead time, review period, replenishment and days to sell out. Use for \"Show Inventory Planner variant 17948565252\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"variant_id":{"description":"Variant ID (see list_variants).","maxLength":200,"title":"Variant Id","type":"string"}},"required":["variant_id"],"title":"get_variantArguments","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_variant_vendors":{"post":{"operationId":"list_variant_vendors","summary":"List the vendors of one variant with cost price, landing cost, vendor reference, minimum order quantity and ordering uni","description":"List the vendors of one variant with cost price, landing cost, vendor reference, minimum order quantity and ordering unit. Use for \"Which vendors supply variant 17948565252 and at what cost\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"variant_id":{"description":"Variant ID (see list_variants).","maxLength":200,"title":"Variant Id","type":"string"}},"required":["variant_id"],"title":"list_variant_vendorsArguments","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_orders":{"post":{"operationId":"list_stock_orders","summary":"List stock orders (purchase orders, transfers and assembly orders) with status, vendor or source warehouse, destination ","description":"List stock orders (purchase orders, transfers and assembly orders) with status, vendor or source warehouse, destination warehouse, dates and totals. Use for \"Which Inventory Planner purchase orders are expected this month\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"status":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only orders with this status.","title":"Status"},"type":{"anyOf":[{"enum":["assembly","transfer","po"],"type":"string"},{"type":"null"}],"default":null,"description":"Order type: assembly, transfer or po.","title":"Type"},"source_type":{"anyOf":[{"enum":["vendor","warehouse"],"type":"string"},{"type":"null"}],"default":null,"description":"vendor for purchase orders, warehouse for transfers and assembly orders.","title":"Source Type"},"vendor":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only orders of this vendor name.","title":"Vendor"},"expected_date_gte":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only orders expected on or after this date.","title":"Expected Date Gte"},"expected_date_lte":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only orders expected on or before this date.","title":"Expected Date Lte"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (1 to 1000; this connector shows at most 50 per answer).","title":"Limit"},"page":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Page number, starting at 0.","title":"Page"}},"title":"list_stock_ordersArguments","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_stock_order":{"post":{"operationId":"get_stock_order","summary":"Get one stock order by ID with references, status, vendor, warehouses, dates and totals. Use for \"Show Inventory Planner","description":"Get one stock order by ID with references, status, vendor, warehouses, dates and totals. Use for \"Show Inventory Planner purchase order 12345\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"order_id":{"description":"Stock order ID in Inventory Planner.","maxLength":200,"title":"Order Id","type":"string"}},"required":["order_id"],"title":"get_stock_orderArguments","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_order_items":{"post":{"operationId":"list_stock_order_items","summary":"List the line items of one stock order: variant, SKU, ordered quantity, received quantity, cost price and tax. Use for \"","description":"List the line items of one stock order: variant, SKU, ordered quantity, received quantity, cost price and tax. Use for \"What is on Inventory Planner purchase order 12345 and how much has arrived\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"order_id":{"description":"Stock order ID in Inventory Planner.","maxLength":200,"title":"Order Id","type":"string"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (1 to 1000; this connector shows at most 50 per answer).","title":"Limit"},"page":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Page number, starting at 0.","title":"Page"}},"required":["order_id"],"title":"list_stock_order_itemsArguments","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}}}}