{"openapi":"3.1.0","info":{"title":"Reverb (BYOK) API","version":"0.1.0","description":"Reverb (BYOK) lets an AI assistant read your own Reverb data through the Reverb API with a key you supply (Reverb personal access token (needs read_orders, read_listings, read_payouts scopes for the seller tools)). Read-only: 11 tools (list_selling_orders, get_selling_order, list_payouts, list_payout_line_items, list_selling_payments, list_listing_sales, list_my_listings, search_listings,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-reverb.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-reverb/docs"},"termsOfService":"https://connectorbay.com/byok-reverb/terms"},"servers":[{"url":"https://byok-reverb.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-reverb/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_selling_orders":{"post":{"operationId":"list_selling_orders","summary":"List the seller's Reverb orders, newest first, with item title, status, shipping provider and tracking code, prices, fee","description":"List the seller's Reverb orders, newest first, with item title, status, shipping provider and tracking code, prices, fees and expected payout. Buyer names and addresses are not returned. Needs the read_orders scope. Use for \"Which Reverb orders were updated in the last month\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"updated_start_date":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items updated at or after this ISO 8601 time, for example 2026-01-01T12:00-00:00.","title":"Updated Start Date"},"updated_end_date":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items updated at or before this ISO 8601 time.","title":"Updated End Date"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"title":"list_selling_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_selling_order":{"post":{"operationId":"get_selling_order","summary":"Get one seller order by its order number, with item title, status, shipping details, prices and fees. Buyer names and ad","description":"Get one seller order by its order number, with item title, status, shipping details, prices and fees. Buyer names and addresses are not returned. Use for \"Show Reverb order 2 with its fees and payout\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"order_number":{"description":"Reverb order number from the order list.","maxLength":200,"title":"Order Number","type":"string"}},"required":["order_number"],"title":"get_selling_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_payouts":{"post":{"operationId":"list_payouts","summary":"List payouts Reverb sent to the seller's bank (total and dates). Filter by creation time. Needs the read_payouts scope. ","description":"List payouts Reverb sent to the seller's bank (total and dates). Filter by creation time. Needs the read_payouts scope. Use for \"What payouts did Reverb send me this quarter\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"created_start_date":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created at or after this ISO 8601 time, for example 2026-01-01T12:00-00:00.","title":"Created Start Date"},"created_end_date":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created at or before this ISO 8601 time.","title":"Created End Date"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":24,"description":"Payouts per page.","title":"Per Page"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"title":"list_payoutsArguments","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_payout_line_items":{"post":{"operationId":"list_payout_line_items","summary":"List the orders inside one payout with sale date and price, processing fee, selling fee, bump fee and shipping label fee","description":"List the orders inside one payout with sale date and price, processing fee, selling fee, bump fee and shipping label fee. Use for \"Which orders and fees make up Reverb payout 54\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"payout_id":{"description":"Payout id taken from the line_items link of the payout list.","maxLength":200,"title":"Payout Id","type":"string"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":24,"description":"Line items per page.","title":"Per Page"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"required":["payout_id"],"title":"list_payout_line_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}},"/v1/tools/list_selling_payments":{"post":{"operationId":"list_selling_payments","summary":"List payments received for the seller's orders with payment method, status, item and shipping amounts and dates. Optiona","description":"List payments received for the seller's orders with payment method, status, item and shipping amounts and dates. Optionally for one order or a date range. Use for \"Which payments did Reverb record for order 12345\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"order_id":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only payments for this order id.","title":"Order Id"},"created_start_date":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created at or after this ISO 8601 time, for example 2026-01-01T12:00-00:00.","title":"Created Start Date"},"created_end_date":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created at or before this ISO 8601 time.","title":"Created End Date"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":24,"description":"Payments per page.","title":"Per Page"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"title":"list_selling_paymentsArguments","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_listing_sales":{"post":{"operationId":"list_listing_sales","summary":"List the sales (discount campaigns) a listing is part of: id, discount percent, code and start and end time. Use for \"Wh","description":"List the sales (discount campaigns) a listing is part of: id, discount percent, code and start and end time. Use for \"Which Reverb sales include listing 21363\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"listing_id":{"description":"Reverb listing id.","maxLength":200,"title":"Listing Id","type":"string"}},"required":["listing_id"],"title":"list_listing_salesArguments","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_my_listings":{"post":{"operationId":"list_my_listings","summary":"List the seller's own listings (live by default; state=all includes drafts), optionally found by SKU. Returns Reverb's f","description":"List the seller's own listings (live by default; state=all includes drafts), optionally found by SKU. Returns Reverb's full listing records, capped at 10 per call. Use for \"Find my Reverb listing with SKU 12345 including drafts\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sku":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only the listing with this SKU.","title":"Sku"},"state":{"anyOf":[{"enum":["live","all"],"type":"string"},{"type":"null"}],"default":"live","description":"Listing state: live (default) or all to include drafts and ended listings.","title":"State"},"query":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Search words, for example 'stratocaster'.","title":"Query"},"category":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Category slug from the Reverb categories, for example electric-guitars.","title":"Category"},"make":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Brand name, for example Fender.","title":"Make"},"model":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Model name, for example Stratocaster.","title":"Model"},"price_min":{"anyOf":[{"type":"number"},{"type":"null"}],"default":null,"description":"Minimum price.","title":"Price Min"},"price_max":{"anyOf":[{"type":"number"},{"type":"null"}],"default":null,"description":"Maximum price.","title":"Price Max"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"title":"list_my_listingsArguments","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/search_listings":{"post":{"operationId":"search_listings","summary":"Search public Reverb listings by keyword, category, brand, model and price. Returns Reverb's full listing records, cappe","description":"Search public Reverb listings by keyword, category, brand, model and price. Returns Reverb's full listing records, capped at 12 per call. Use for \"Find used Fender Stratocasters on Reverb under 1500 dollars\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"query":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Search words, for example 'stratocaster'.","title":"Query"},"category":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Category slug from the Reverb categories, for example electric-guitars.","title":"Category"},"make":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Brand name, for example Fender.","title":"Make"},"model":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Model name, for example Stratocaster.","title":"Model"},"price_min":{"anyOf":[{"type":"number"},{"type":"null"}],"default":null,"description":"Minimum price.","title":"Price Min"},"price_max":{"anyOf":[{"type":"number"},{"type":"null"}],"default":null,"description":"Maximum price.","title":"Price Max"},"ships_to":{"anyOf":[{"maxLength":2,"type":"string"},{"type":"null"}],"default":null,"description":"Two-letter country code the item must ship to, for example US.","title":"Ships To"},"per_page":{"anyOf":[{"maximum":50,"minimum":1,"type":"integer"},{"type":"null"}],"default":12,"description":"Listings per page.","title":"Per Page"},"page":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"title":"search_listingsArguments","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_listing":{"post":{"operationId":"get_listing","summary":"Get one Reverb listing record by its id or slug (Reverb's full listing object). Use for \"Show Reverb listing 21363\".","description":"Get one Reverb listing record by its id or slug (Reverb's full listing object). Use for \"Show Reverb listing 21363\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"listing_id":{"description":"Reverb listing id or slug.","maxLength":200,"title":"Listing Id","type":"string"}},"required":["listing_id"],"title":"get_listingArguments","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_shipping_providers":{"post":{"operationId":"list_shipping_providers","summary":"List the shipping providers Reverb accepts when an order is marked shipped. Use for \"Which shipping providers does Rever","description":"List the shipping providers Reverb accepts when an order is marked shipped. Use for \"Which shipping providers does Reverb support\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_shipping_providersArguments","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_action_counts":{"post":{"operationId":"get_action_counts","summary":"Show the seller's actionable status counts from Reverb's counts endpoint (items that need the seller's attention). Use f","description":"Show the seller's actionable status counts from Reverb's counts endpoint (items that need the seller's attention). Use for \"What actions are waiting for me on Reverb\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"get_action_countsArguments","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}}}}