Kuaidi100 launched China's first MCP-protocol-compatible logistics information service platform. The core API services of Kuaidi100's Baidiy
CommerceBook is installed from its publisher's own source and answers where it runs, so this marketplace is not in the path of a single call. There is no address here to send one to, and a panel that pretended otherwise would be showing you an answer we made up. Install it and call it from your own client — the Installation tab has the entry for each one.
What it does
Search and buy products from sellers and verified warehouses, sell surplus stock, post requests.
Quickstart
# 1 — add it to Claude Code
claude mcp add --scope user --transport http commercebook-mcp https://commercebook.ai/mcp
# 2 — ask your agent for something these tools do
# signup_start, signup_confirm, commercebook_network_now and 197 more
CommerceBook costs nothing on mcprush: there is no plan to choose here, no cap to set and nothing mcprush can bill you for.
Collected from a public index. Nobody has claimed this account, so nothing here was written by its author — claim it if it is yours.
Where are you running it?
Every route below installs the same thing and ends at the same approval screen. Nothing here runs on your machine and nothing runs on ours: this server answers at its publisher’s own address, and what you install is the connection straight to it.
This is a public server: it answers at its publisher’s own address and this marketplace is not in the path. Claude Code registers it in one command; --scope user makes it available in every project. The transport below is http, as the publisher's own manifest declares it.
claude mcp add --scope user --transport http commercebook-mcp https://commercebook.ai/mcpReconnect, or start a new session, and the tools appear in the model’s tool list.
Nothing is required, but it can take Authorization header (Optional. Bearer and the agent link key the owner issues at Agent access. Without a key the six keyless tools answer.) if you want to set it.
One config entry pointing straight at the publisher’s own address — this marketplace is not in the path, and nothing from this listing executes on your machine.
200 tools, with what each one reads, writes and reaches shown before you agree — the same list on every route above. Read the tool surface.
Tool surface
What the model actually sees. Descriptions are diffed on every release — see version history.
POST /signup/start: asks to open a CommerceBook account for the owner. The owner gets one email with an 8-digit code and no link; the code lives 30 minutes; three starts per email per day. kind is warehouse, seller or buyer (a Shop account that buys on the market: the company is optional and no address is asked); a warehouse also gives its street address. The key starts read-only; the owner turns
| Parameter | Type | Required | Notes |
|---|---|---|---|
| string | yes | The owner’s email; the code goes there. | |
| kind | string | yes | — |
| company | string | no | The business name. Required for a warehouse or a seller; optional for a buyer. |
| contact_name | string | yes | The owner’s name. |
| address | string | no | A warehouse: the street address of its first facility. |
| city | string | no | — |
| state | string | no | — |
| services | array | no | — |
| sqft | integer | no | — |
POST /signup/confirm: the email and the 8-digit code the owner read in the email. Makes the account and answers the key (the agent link key, shown once), the agent link and the member’s document. Connect again with Authorization: Bearer <key> for the full tool list. Selling and buying with money still need the owner’s Stripe steps.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| string | yes | — | |
| code | string | yes | — |
GET /network/now (no key needed): verified members, leads listed in the last 7 days, prices posted and savings confirmed this month, cached 15 minutes.
No parameter schema on file.
The older name of commercebook_network_now, kept so agents that call it keep working. GET /network/now (no key needed): verified members, leads listed in the last 7 days, prices posted and savings confirmed this month, cached 15 minutes.
No parameter schema on file.
GET /instructions with no key: the briefing of the role asked for (role buyer, seller or warehouse; buyer when left out): what CommerceBook does for that role, how each thing is done, the rules, what is coming and how to send feedback. The first line names the other two briefings.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| role | string | no | The briefing to return: buyer, seller or warehouse. Left out: buyer without a key, the key’s own kind with a key. |
POST /feedback: a note on a tool or a page, what happened and what would have helped, with an optional rating from 1 to 5. A person at CommerceBook reads every note; the What is coming list in the briefing is shaped by them. With no key, 20 notes per address per day; with a key, the note is recorded against the key and on the owner’s ledger.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| about | string | yes | A tool name (for example commercebook_shipping_quote) or a page (for example /feeds). |
| what_happened | string | no | — |
| what_would_help | string | no | — |
| rating | integer | no | — |
GET /market/search: the products for sale on CommerceBook, by words (every word must match a whole word, with an optional plural ending, so stretch never matches stretcher) in the title, the category (its key, its name and its synonyms, so groom finds grooming), the item specifics, the brand or the part number; the description adds to the score and never makes a hit alone, and each item names its
| Parameter | Type | Required | Notes |
|---|---|---|---|
| q | string | no | Words; each must match a whole word of the title, brand, part number or description (a plural ending s or es matches too). |
| category | string | no | A category key, exact (for example packaging, tools, home_garden). commercebook_market_book lists every key with its products and open requests. |
| min_price | integer | no | — |
| max_price | integer | no | — |
| state | string | no | Two-letter state the goods ship to. |
| condition | string | no | — |
| limit | integer | no | — |
GET /market/lots/{id}: one public product (lot_id) as its product page shows it (the count, the condition, the date the seller last confirmed the count, the photos, the shipping) with every active offer and the states it ships to. No key needed.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lot_id | string | yes | — |
GET /market/sellers/{slug} (seller_slug, or slug, its older name): the record CommerceBook computes for one seller (seller_slug of a search item or a product): the tier (new, standard or trusted, with founding beside it), the last 90 days and all time (delivered, on time, accurate, cancelled, disputed, refunded; each with n, of, rate and shown_as, a count until it is built on 10 orders, then a per
| Parameter | Type | Required | Notes |
|---|---|---|---|
| seller_slug | string | no | The seller_slug of a search item or a product. |
| slug | string | no | The older name of seller_slug, still accepted. |
GET /market/intents: the demand side of the book. Every open public request (an intent in the API) with its title, category, quantity, the most the buyer pays each (ceiling_unit_cents; a band when the buyer hid it), the state it goes to, the expiry and the open quotes; no buyer is named. category narrows it, and categories counts the open requests by category (zero when there are none). With a key
| Parameter | Type | Required | Notes |
|---|---|---|---|
| category | string | no | A category key, lower case with underscores (for example packaging, office_supplies, industrial_equipment). |
| q | string | no | SPEC-80: words; each must match a whole word of the request title (stretch finds stretch wrap, never stretcher). |
| limit | integer | no | — |
GET /market/book: what is on the market and what buyers ask for, by category, with live numbers only. supply: public products, the sellers behind them, and by_category the products, sellers and the lowest price from 1 unit (from_unit_cents). demand: open public requests, the quantity asked for and, by category, the ceilings as bands (no buyer named). fills_30d: orders in the last 30 days, those th
No parameter schema on file.
GET /market/intents/reach: before posting, how many sellers a public request in the category would be emailed to (each with a live product there, or watching the category) and how many live products match the quantity and the state. Counts only; no seller is named. No key needed.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| category | string | yes | A category key from commercebook_market_book (for example packaging, material_handling, medical_surgical). |
| qty | integer | no | — |
| destination_state | string | no | A two-letter state. |
GET /market/lots/{id}/shipping: the lowest and highest shipping of one product to a state, from the seller’s shipping rules (no carrier call). served false means the seller does not ship there; a calculated rule is priced at the quote (commercebook_market_quote). No key needed.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lot_id | string | yes | The lot_id of a search item. |
| state | string | yes | A two-letter state. |
| qty | integer | no | — |
GET /seller/capabilities: every seller capability on CommerceBook in one read, grouped as ways_to_offer (a standing offer, price by quantity, quote on request with a private floor, quotes on buyer requests, the category watch, and the planned private offers, auctions with a reserve, group buys and promoted listings), ways_to_be_found, ways_to_be_paid (the fee with its cap and the payout days), wha
| Parameter | Type | Required | Notes |
|---|---|---|---|
| group | string | no | One group only; left out, every group. |
Needs a buyer key (no activity needed). A seller or warehouse key also reaches it. The member this key belongs to, with verification, counts, the API base and the key prefix.
No parameter schema on file.
Needs a buyer key (no activity needed). A seller or warehouse key also reaches it. GET /me: your member, its organisation (your company), verification and counts.
No parameter schema on file.
Needs a buyer key (no activity needed). A seller or warehouse key also reaches it. GET /me/standing: your strikes in 90 and 365 days, fabricated-contact strikes, whether you may post (posting_suspended_until) and your status. Three strikes in 90 days suspend posting for 30 days; five in a year, or two fabricated contacts, remove the member from the exchange pending review (see /policies).
No parameter schema on file.
Needs a buyer key (no activity needed). A seller or warehouse key also reaches it. GET /openapi.json: the OpenAPI 3.1 document of the warehouse API.
No parameter schema on file.
Needs a warehouse key (Leads: Can read). GET /leads/open: open leads on the exchange, newest first, with the same visibility rules as the app. Filter by service or market (City, ST); a market filter also returns Anywhere leads (location_any). include_own: true adds your own open leads (own: true on each), as the app shows them.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
| service | string | no | — |
| market | string | no | — |
| include_own | boolean | no | — |
Needs a warehouse key (Leads: Can read). GET /leads/mine: the leads you posted, drafts included.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
| service | string | no | — |
| market | string | no | — |
Needs a warehouse key (Leads: Can act). POST /leads: post a lead from one of your CRM deals (deal_id) or from fields (company_name, need, service, markets or market, price). Send a title (80 characters) and a one-line summary (140) with the need: buyers read them first, and the lead takes generated ones when they are left out. lead_source referral with referral_source names the lead company that r
| Parameter | Type | Required | Notes |
|---|---|---|---|
| deal_id | string | no | — |
| company_name | string | no | — |
| contact_name | string | no | — |
| string | no | — | |
| phone | string | no | — |
| need | string | no | — |
| title | string | no | The title buyers see first; generated from the services, location and volume band when left out |
| summary_short | string | no | One short line under the title, such as Short-term plywood, one container; the first sentence of the need when left out |
| lead_source | string | no | own (default): the lead came to you directly; referral: a lead company referred it |
| referral_source | string | no | The lead company that referred it, such as Fulfill.com |
| service | string | no | — |
| market | string | no | City, ST |
| markets | array | no | Several locations, each City, ST, in order; the first is the primary |
| location_any | boolean | no | true: the prospect has no preferred place (Anywhere); markets are cleared |
| replace_draft | string | no | One of your drafts this post replaces (edit a draft) |
| terms | string | no | — |
| price_flat_cents | integer | no | — |
| price_pct | number | no | — |
| exclusivity | string | no | — |
| max_buyers | integer | no | — |
Needs a warehouse key (Payments: Can act). POST /leads/{id}/claim: claims an open lead. A free lead claims at once (payment demo). A priced lead with payments configured is paid without a client secret: method balance pays from the member’s balance at once (no processing line), method card charges the owner’s saved card (price plus 2.90 percent plus 30 cents). Without method: the balance when it c
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lead_id | string | yes | — |
| method | string | no | balance or card; leave out to use the balance when it covers the price, else the saved card. |
| operation_id | string | no | Idempotency key for the payment. |
Needs a warehouse key (CRM: Can read). GET /crm/deals: your CRM deals, most recently updated first.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
| stage | string | no | — |
| archived | boolean | no | — |
Needs a warehouse key (CRM: Can act). POST /crm/deals: a new CRM deal; name is required. Also Add a lead on the Leads screen: contact_name, email and phone write the contact, markets (City, ST) or location_any keep the locations, and then_share (true, or the commercebook_lead_post fields) posts the deal to the exchange right after, as Save and share does; share in the answer is what the post answe
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | yes | — |
| stage | string | no | — |
| service | no | — | |
| target_market | no | — | |
| value_cents | no | — | |
| monthly_revenue_cents | no | — | |
| description | no | — | |
| expected_closing_date | no | — | |
| company_id | no | One of your companies. | |
| company_name | no | Finds your company of that name or creates it. | |
| attributes | object | no | — |
| contact_name | string | no | — |
| string | no | — | |
| phone | string | no | — |
| markets | array | no | City, ST, in order. |
| location_any | boolean | no | true: Anywhere. |
| then_share | no | true, or the commercebook_lead_post fields without deal_id: post the new deal right after. |
Needs a warehouse key (CRM: Can act). PATCH /crm/deals/{id}: change the named fields of a deal. A stage change runs the board rules.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| deal_id | string | yes | — |
| name | string | no | — |
| stage | string | no | — |
| service | no | — | |
| target_market | no | — | |
| value_cents | no | — | |
| monthly_revenue_cents | no | — | |
| description | no | — | |
| expected_closing_date | no | — | |
| company_id | no | One of your companies. | |
| company_name | no | Finds your company of that name or creates it. | |
| attributes | object | no | — |
| archived | boolean | no | — |
Needs a warehouse key (Capacity: Can read). GET /capacity/requests: the requests you sent and the ones your node received.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
| direction | string | no | — |
| status | string | no | — |
Needs a warehouse key (Capacity: Can act). POST /capacity/requests: ask another warehouse (node_id from commercebook_members, or its member_id) for pallet positions over a date range.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| node_id | string | no | — |
| member_id | string | no | — |
| positions | integer | yes | — |
| start_date | string | yes | — |
| end_date | string | yes | — |
| requirements | string | no | — |
| for | string | no | The requester name shown to the node; your member name by default. |
Needs a warehouse key (Capacity: Can act). POST /capacity/requests/{id}/quote: quote a request your node received.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| request_id | string | yes | — |
| quote_cents | integer | yes | — |
| note | string | no | — |
Needs a warehouse key (Messages: Can read). GET /messages/threads: your message threads.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
Needs a warehouse key (Messages: Can read). GET /messages/threads/{id}: one thread with its messages, oldest first.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| thread_id | string | yes | — |
Needs a warehouse key (Messages: Can act). POST /messages/threads/{id}: send a message in an open thread.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| thread_id | string | yes | — |
| body | string | yes | — |
| attachment | object | no | — |
Needs a warehouse key (Messages: Can act). POST /messages/request: the first message to a member opens a thread they accept in the app. An existing open or requested thread is returned instead.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| member_id | string | yes | — |
| body | string | yes | — |
| attachment | object | no | — |
Needs a warehouse key (Costs: Can read). GET /costs/prices: your invoiced items against the network quotes, as the app computes them.
No parameter schema on file.
Needs a warehouse key (no activity needed). GET /network/members: the directory, public fields only, with each member’s node id.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
Needs a seller key (no activity needed). GET /seller/me: your seller, what blocks selling (blockers), readiness and counts.
No parameter schema on file.
Needs a seller key (Catalog: Can read). GET /seller/catalog/lots: your products (lots in the API), newest first, with state (live, held for paused, draft, stale, sold_out), quantities, price and completeness.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
| status | string | no | — |
| state | string | no | — |
Needs a seller key (Catalog: Can read). GET /seller/catalog/lots/{id}: the product record an agent reads, with its manifest, offers and ledger rows.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lot_id | string | yes | — |
Needs a seller key (Catalog: Can act). POST /seller/catalog/upsert: up to 500 records of the CommerceBook product data template v1.1 (ACP field names: item_id, title, description, brand, category, condition, price, currency, availability, inventory_quantity, inventory_as_of, image_link, enable_checkout, title_holder, ...). Run with dry_run true first to see created, changed and skipped with reason
| Parameter | Type | Required | Notes |
|---|---|---|---|
| records | array | yes | — |
| dry_run | boolean | no | — |
| operation_id | string | no | Idempotency key; a retry with the same one returns the first answer. |
Needs a seller key (Catalog: Can act). POST /seller/catalog/lots/{id}/hold: pauses the product’s live offers until you resume sales.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lot_id | string | yes | — |
| reason | string | no | — |
| operation_id | string | no | Idempotency key; a retry with the same one returns the first answer. |
Needs a seller key (Catalog: Can act). POST /seller/catalog/lots/{id}/release: resumes sales of a paused product on the market through the publish checks (you must be live).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lot_id | string | yes | — |
| operation_id | string | no | Idempotency key; a retry with the same one returns the first answer. |
Needs a seller key (Catalog: Can read). GET /seller/catalog/reconcile: the stock problems of your products against the count on record at the warehouse that ships them, and the stale counts (a count is stale when it is older than 72 hours): count_mismatch, stale_count, oversold, offer_exceeds_stock, delegation_missing. Writes nothing.
No parameter schema on file.
Needs a seller key (Catalog: Can act). POST /seller/catalog/verify: after a physical count matched, every product keeps its quantity on hand as the count, and now becomes its count date.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| operation_id | string | no | Idempotency key; a retry with the same one returns the first answer. |
Needs a seller key (Orders: Can read). GET /seller/orders: orders of your products, newest first.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
| status | string | no | — |
Needs a seller key (Orders: Can read). GET /seller/orders/{id}: the order with payment, fulfillment, disputes, refunds and transitions.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| order_id | string | yes | — |
Needs a seller key (Orders: Can act). POST /seller/orders/{id}/release: releases an authorised order to ship. A shipped order over $500 needs evidence (the count and at least one photo link), else 409 release_evidence_required. You are paid 2 business days after delivery unless a dispute is open; shoppers have 30 days from delivery to file a dispute.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| order_id | string | yes | — |
| evidence | object | no | The count shipped and photo links of the packed goods; required on shipped orders over $500. |
| operation_id | string | no | Idempotency key; a retry with the same one returns the first answer. |
Needs a seller key (Orders: Can act). POST /seller/orders/{id}/ship: marks a released order shipped (with carrier and tracking) or picked up. buy_label true (SPEC-67) buys the label for the quoted service at the live price from your balance instead, and writes the carrier and tracking (label_url: a 10-minute link to the PDF); send it without carrier or tracking. Past the key’s confirm amount or 30
| Parameter | Type | Required | Notes |
|---|---|---|---|
| order_id | string | yes | — |
| kind | string | no | — |
| carrier | string | no | — |
| tracking | string | no | — |
| buy_label | boolean | no | — |
| operation_id | string | no | Idempotency key; a retry with the same one returns the first answer. |
Needs a seller key (Orders: Can act). POST /seller/orders/{id}/cancel: cancels an order before release; the payment is voided.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| order_id | string | yes | — |
| reason | string | no | — |
| operation_id | string | no | Idempotency key; a retry with the same one returns the first answer. |
Needs a seller key (Orders: Can read). GET /seller/disputes: disputes on your orders.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
| status | string | no | — |
Needs a seller key (Orders: Can act). POST /seller/disputes/{id}/reply: your note and evidence (tracking, photo links) on an open dispute.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| dispute_id | string | yes | — |
| note | string | yes | — |
| evidence | object | no | — |
| operation_id | string | no | Idempotency key; a retry with the same one returns the first answer. |
Needs a seller key (Policies: Can read). GET /seller/policies: acceptance_days (the business days a buyer has to file a dispute, as the policy states it), returns, restocking fee, the lowest price you accept (offer_floor_pct), auctions.
No parameter schema on file.
Needs a seller key (Policies: Can act). PATCH /seller/policies: the named fields only. Accepting the policies is the owner’s own step in the app.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| acceptance_days | integer | no | — |
| return_window_days | integer | no | — |
| return_method | string | no | — |
| restocking_fee_pct | number | no | — |
| offer_floor_pct | no | — | |
| auctions_allowed | boolean | no | — |
| return_terms_by_category | object | no | Return terms by product category key (the whole map is replaced). A product can still carry its own terms. |
| claim_window_days | no | Days a shopper has to file a dispute after delivery: 30 or more; null uses the platform 30. |
Needs a seller key (Payouts: Can read). GET /seller/payouts/statement: proceeds after the fee, refund reversals, fee and processing lines by order (90 days by default).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| from | string | no | — |
| to | string | no | — |
Needs a seller key (Performance: Can read). GET /seller/performance: the seller sheet, live, with the counts behind every rate.
No parameter schema on file.
Needs a seller key (Delegations: Can read). GET /seller/delegations: your warehouse agreements (delegations in the API) with the warehouses that store and ship for you, and their status.
No parameter schema on file.
Needs a seller key (Delegations: Can act). POST /seller/delegations: asks a warehouse on CommerceBook for a warehouse agreement to store and ship your goods; it answers from its own account.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| warehouse_member_id | string | yes | — |
| facility_id | string | no | — |
| terms | string | no | — |
| operation_id | string | no | Idempotency key; a retry with the same one returns the first answer. |
Needs a seller key (no activity needed). GET /seller/events: what happened on your account, newest first, and whether your agent did it.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
| agent_only | boolean | no | — |
| object_id | string | no | — |
Needs a warehouse key (Leads: Can read). GET /leads/{id}: one lead as the exchange shows it, with quality: the lead quality score (0 to 9), what is present, and on your own lead what is missing.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lead_id | string | yes | — |
Needs a warehouse key (Payments: Can act). POST /leads/{id}/buy: buys a lead within the money limits on the key; over a limit the answer is needs_approval with the approval_id the owner sees. In Stripe test mode payment_method (pm_card_visa) confirms the card payment at once. A priced lead needs the payments activity on the key.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lead_id | string | yes | — |
| payment_method | string | no | — |
| operation_id | string | no | — |
Needs a warehouse key (Leads: Can act). POST /leads/{id}/withdraw: takes your draft or open lead off the exchange, until a buyer claims it.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lead_id | string | yes | — |
Needs a warehouse key (Leads: Can act). PATCH /leads/{id}/places: how many buyers may buy your lead (1 makes it exclusive).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lead_id | string | yes | — |
| places | integer | yes | — |
Needs a warehouse key (Leads: Can act). PATCH /leads/{id}/price: the flat price in cents of your draft or open lead, before any buyer claims it (0 is a free lead).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lead_id | string | yes | — |
| price_cents | integer | yes | — |
Needs a warehouse key (Leads: Can act). PATCH /leads/{id}/text: the title (80 characters), the one-line summary (140) and where the lead came from (lead_source own or referral, referral_source the lead company) of your draft or open lead. Fields left out stay as they are; the title and the summary must not name the shipper.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lead_id | string | yes | — |
| title | string | no | — |
| summary_short | string | no | — |
| lead_source | string | no | — |
| referral_source | string | no | — |
Needs a warehouse key (Leads: Can act). PATCH /leads/{id}: adds details to your draft or open lead before any buyer claims it (409 lead_has_claims after one): product, current_provider (a buyer sees it after purchase), inbound_mode (parcel, pallet, container), units_per_order, rate_expectation (the budget), the volumes and the window. A field sent replaces the stored one, null clears it, a field l
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lead_id | string | yes | — |
| product | no | — | |
| current_provider | no | — | |
| inbound_mode | no | — | |
| units_per_order | no | — | |
| rate_expectation | no | — | |
| orders_month | no | — | |
| pallets_on_hand | no | — | |
| pallets_inbound_month | no | — | |
| units_month | no | — | |
| containers_month | no | — | |
| sqft | no | — | |
| skus | no | — | |
| window_start | no | — | |
| window_end | no | — |
Needs a warehouse key (Leads: Can act). POST /leads/{id}/introduction: sends the introduction to the buyers of your lead.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lead_id | string | yes | — |
| message | string | no | — |
Needs a warehouse key (Leads: Can act). POST /leads/{id}/call: schedules the call with the buyers of your lead (at: ISO 8601 with zone).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lead_id | string | yes | — |
| at | string | yes | — |
Needs a warehouse key (Leads: Can act). POST /leads/{id}/rating: rates a lead you bought as_described or overstated, once.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lead_id | string | yes | — |
| rating | string | yes | — |
Needs a warehouse key (Leads: Can act). POST /leads/{id}/challenge: challenges a listing that duplicates your prospect, with evidence.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lead_id | string | yes | — |
| evidence | string | yes | — |
Needs a warehouse key (Leads: Can read). GET /leads/claims: the leads you bought, newest first.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
Needs a warehouse key (Leads: Can act). POST /leads/claims/{id}/outcome: records what happened with a lead you bought.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| claim_id | string | yes | — |
| outcome | string | yes | — |
Needs a warehouse key (Leads: Can act). POST /leads/claims/{id}/defect: reports a problem with a lead you bought, within 7 days of buying it. kind is email_bounced, phone_invalid, already_client, duplicate, never_asked or fabricated (a contact that does not exist), the six refund reasons; fabricated needs evidence, is decided at review, and a confirmed one is a strike against the seller. overstate
| Parameter | Type | Required | Notes |
|---|---|---|---|
| claim_id | string | yes | — |
| kind | string | yes | — |
| evidence | string | no | — |
Needs a warehouse key (CRM: Can read). GET /crm/deals/{id}: one deal with its notes.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| deal_id | string | yes | — |
Needs a warehouse key (CRM: Can act). DELETE /crm/deals/{id}: deletes an archived deal (archive it first with commercebook_deal_update). A GoHighLevel deal is not deleted: it is archived and hidden from the Leads table (hidden true), archived or not before, because GoHighLevel keeps the opportunity; commercebook_deal_update with archived false restores it.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| deal_id | string | yes | — |
Needs a warehouse key (CRM: Can act). POST /crm/deals/{id}/notes: adds a note to a deal.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| deal_id | string | yes | — |
| text | string | yes | — |
| type | string | no | — |
Needs a warehouse key (CRM: Can act). POST /crm/import: imports deals from CSV text (the CRM sample columns; HubSpot style names are renamed) or rows; dry_run returns what would be created.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| csv | string | no | — |
| rows | array | no | — |
| dry_run | boolean | no | — |
Needs a warehouse key (Capacity: Can act). POST /capacity/requests/{id}/accept: accepts the quote on a request you sent; a contract record, nothing is paid.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| request_id | string | yes | — |
Needs a warehouse key (Capacity: Can act). POST /capacity/requests/{id}/quote/withdraw: takes back a quote your node gave, before it is accepted.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| request_id | string | yes | — |
Needs a warehouse key (Capacity: Can act). POST /capacity/requests/{id}/withdraw: withdraws a capacity request you sent, while it is requested or quoted; once accepted it answers capacity_state.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| request_id | string | yes | — |
Needs a warehouse key (Messages: Can act). POST /messages/threads/{id}/respond: accepts or ignores a message request.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| thread_id | string | yes | — |
| accept | boolean | yes | — |
Needs a warehouse key (Messages: Can act). POST /messages/threads/{id}/read: marks a thread read.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| thread_id | string | yes | — |
Needs a warehouse key (Messages: Can act). POST /messages/threads/{id}/mute: mutes or unmutes a thread.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| thread_id | string | yes | — |
| muted | boolean | yes | — |
Needs a warehouse key (Messages: Can act). POST /messages/threads/{id}/report: reports a thread or one message to CommerceBook.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| thread_id | string | yes | — |
| reason | string | yes | — |
| message_id | string | no | — |
Needs a warehouse key (Messages: Can act). POST /messages/members/{id}/block: blocks or unblocks a member.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| member_id | string | yes | — |
| block | boolean | yes | — |
Needs a warehouse key (Messages: Can act). POST /messages/groups: starts a group with two or more members you already message.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| member_ids | array | yes | — |
| subject | string | yes | — |
| body | string | yes | — |
Needs a warehouse key (Messages: Can read). GET /messages/attachables: your leads, deals, facilities and capacity requests as attachment cards for a message.
No parameter schema on file.
Needs a warehouse key (Messages: Can read). GET /messages/unread: how many messages wait unread.
No parameter schema on file.
Needs a warehouse key (no activity needed). GET /network/members/{id}: one member’s public card with facilities, node, rate card and record.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| member_id | string | yes | — |
Needs a warehouse key (Network: Can read). GET /network/delegations: sellers asking your warehouse for a warehouse agreement (a delegation in the API) to store and ship their goods.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
Needs a warehouse key (Network: Can act). POST /network/delegations/{id}/respond: accepts or declines a seller’s request for a warehouse agreement.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| delegation_id | string | yes | — |
| accept | boolean | yes | — |
Needs a warehouse key (Network: Can act). POST /network/delegations/{id}/end: ends a warehouse agreement; the products stored under it stop selling.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| delegation_id | string | yes | — |
Needs a warehouse key (Settings: Can read). GET /settings: your phone, who sees it and how you hear about messages.
No parameter schema on file.
Needs a warehouse key (Settings: Can act). PATCH /settings/contact: changes the phone (null clears it), its visibility (members, public, hidden) or message notifications (immediate, daily, none).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| phone | no | — | |
| phone_visibility | string | no | — |
| message_notify | string | no | — |
Needs a buyer key (no activity needed). A seller or warehouse key also reaches it. GET /agent/limits: the money ceilings and approval areas on this key, today’s spend and the approvals not yet used.
No parameter schema on file.
Needs a seller key (Business details: Can read). GET /seller/entity: your business details, what they still need and readiness.
No parameter schema on file.
Needs a seller key (Business details: Can act). PATCH /seller/entity: sets fields of the business details (legal_name, entity_type, ein, address, responsible person, beneficial_owners, w9_status).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| entity | object | yes | — |
| operation_id | string | no | Idempotency key; a retry with the same one returns the first answer. |
Needs a seller key (Business details: Can act). PATCH /seller/fulfillment: who ships your orders, self (ship_from, cutoff_local HH:MM, carriers) or warehouse; with warehouse_member_id the request for a warehouse agreement goes out too.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| fulfillment_mode | string | yes | — |
| ship_from | object | no | — |
| cutoff_local | string | no | — |
| carriers | array | no | — |
| warehouse_member_id | string | no | — |
| facility_id | string | no | — |
| terms | string | no | — |
| operation_id | string | no | Idempotency key; a retry with the same one returns the first answer. |
Needs a seller key (Policies: Can act). POST /seller/policies/accept: always refused with 403 owner_accepts_policies. An agent never accepts the policies for the owner; the owner accepts them in person on the seller portal.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| version | string | no | — |
| operation_id | string | no | Idempotency key; a retry with the same one returns the first answer. |
Needs a seller key (Delegations: Can read). GET /seller/delegations/warehouses: verified warehouses that can store and ship your goods.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
Needs a seller key (Delegations: Can act). POST /seller/delegations/{id}/end: ends your warehouse agreement with a warehouse.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| delegation_id | string | yes | — |
| operation_id | string | no | Idempotency key; a retry with the same one returns the first answer. |
Needs a warehouse key (Profile: Can read). GET /profile: About and its source, services, people, certifications, the logo, the phone and who sees it.
No parameter schema on file.
Needs a warehouse key (Profile: Can read). GET /profile/services/catalog: the standard services a profile can list, by key.
No parameter schema on file.
Needs a warehouse key (Profile: Can read). GET /profile/completeness: the ten items of the Home meter with the next call for each gap.
No parameter schema on file.
Needs a warehouse key (Profile: Can act). PATCH /profile/about: writes the About paragraph (up to 1,200 characters; null clears it).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| about | yes | — | |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a warehouse key (Profile: Can act). PATCH /profile/services: replaces the services list in order: {catalog_key} for a standard service, {id?, title, body} for a custom one (6 custom at most).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| services | array | yes | — |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a warehouse key (Profile: Can act). PATCH /profile/people: replaces the people list (three at most, in order); keep a person by id, add a photo by photo_url.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| people | array | yes | — |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a warehouse key (Profile: Can act). POST /profile/people: adds one person after the others, with a photo by photo_url or photo_base64.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | yes | — |
| role | no | — | |
| line | no | — | |
| photo_url | string | no | — |
| photo_base64 | string | no | — |
| photo_filename | string | no | — |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a warehouse key (Profile: Can act). PATCH /profile/certifications: replaces the certifications and systems (12 at most).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| certifications | array | yes | — |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a warehouse key (Profile: Can act). PATCH /profile/contact: changes the profile phone (null clears it) and who sees it (members, public, hidden).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| phone | no | — | |
| phone_visibility | string | no | — |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a warehouse key (Profile: Can act). POST /profile/logo: adds or replaces the logo from url or content_base64 (JPEG, PNG or WebP).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| url | string | no | A public https address of the file; the API fetches and stores it. |
| content_base64 | string | no | The file itself, base64. |
| filename | string | no | — |
| content_type | string | no | — |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a warehouse key (Profile: Can act). DELETE /profile/logo: removes the logo; the profile shows the initial mark.
No parameter schema on file.
Needs a warehouse key (Profile: Can read). GET /profile/rate-card: the rate card as published on your node.
No parameter schema on file.
Needs a warehouse key (Profile: Can act). PATCH /profile/rate-card: publishes up to four lines, each optional (cents): storage per pallet per month, receiving per pallet, pick and pack per order, projects per hour, shown as from prices. A number sets a line, null clears it; at least one line must remain. handling_out_per_pallet_cents is the out handling for instant quotes when it differs from rece
| Parameter | Type | Required | Notes |
|---|---|---|---|
| storage_per_pallet_month_cents | no | — | |
| handling_in_per_pallet_cents | no | — | |
| pick_pack_per_order_cents | no | — | |
| project_per_hour_cents | no | — | |
| handling_out_per_pallet_cents | no | — | |
| terms | no | — | |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a warehouse key (Profile: Can read). GET /facilities: your facilities with their photos, video and pins.
No parameter schema on file.
Needs a warehouse key (Profile: Can act). POST /facilities: adds a facility and places its pin from the street address (city centre when the address does not resolve).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | yes | — |
| address | string | yes | The street address. |
| city | string | yes | — |
| state | string | yes | — |
| zip | no | — | |
| sqft | no | — | |
| services | array | no | — |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a warehouse key (Profile: Can act). PATCH /facilities/{id}: changes the named fields; a changed address places the pin again.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| facility_id | string | yes | — |
| name | string | no | — |
| address | string | no | The street address. |
| city | string | no | — |
| state | string | no | — |
| zip | no | — | |
| sqft | no | — | |
| services | array | no | — |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a warehouse key (Profile: Can act). DELETE /facilities/{id}: removes a facility and its stored files; cannot be undone.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| facility_id | string | yes | — |
Needs a warehouse key (Profile: Can act). POST /facilities/{id}/pin: places the pin again from the address (retry asks the map service again).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| facility_id | string | yes | — |
| retry | boolean | no | — |
Needs a warehouse key (Profile: Can act). POST /facilities/{id}/media: adds a photo (10 at most) or the video (1): url as a link, or store true, or content_base64 to store the file.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| facility_id | string | yes | — |
| kind | string | no | — |
| caption | no | — | |
| store | boolean | no | — |
| url | string | no | A public https address of the file; the API fetches and stores it. |
| content_base64 | string | no | The file itself, base64. |
| filename | string | no | — |
| content_type | string | no | — |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a warehouse key (Profile: Can act). PATCH /facilities/{id}/media: lists every photo and the video once in the new order, with any caption changes.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| facility_id | string | yes | — |
| items | array | yes | — |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a warehouse key (Profile: Can act). DELETE /facilities/media/{id}: removes one photo or the video; cannot be undone.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| media_id | string | yes | — |
Needs a warehouse key (Costs: Can read). GET /costs/rank: your rank and the network median per category, the categories above the median and the top overspends.
No parameter schema on file.
Needs a warehouse key (Costs: Can read). GET /costs/summary: the invoices read this month and the biggest saving on Your Prices, with its next step (the spend line of My Costs).
No parameter schema on file.
Needs a warehouse key (Costs: Can act). POST /costs/prices/match: records the price your vendor matched for an item of Your Prices (item_key), or the refusal.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| item_key | string | yes | — |
| outcome | string | yes | — |
| matched_unit_price_cents | integer | no | — |
| note | string | no | — |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a warehouse key (Costs: Can read). GET /costs/invoices: your invoices and how each was read.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
Needs a warehouse key (Costs: Can act). POST /costs/invoices: uploads an invoice from url or content_base64 (with filename) and reads it into Your Prices (parse false skips the read).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| url | string | no | A public https address of the file; the API fetches and stores it. |
| content_base64 | string | no | The file itself, base64. |
| filename | string | no | — |
| content_type | string | no | — |
| parse | boolean | no | — |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a warehouse key (Costs: Can act). POST /costs/invoices/{id}/parse: reads an invoice again; its lines are replaced.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| invoice_id | string | yes | — |
Needs a warehouse key (Costs: Can act). DELETE /costs/invoices/{id}: deletes an invoice, its lines and its file; cannot be undone.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| invoice_id | string | yes | — |
Needs a warehouse key (Costs: Can read). GET /costs/quote-requests: your network price requests.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
Needs a warehouse key (Costs: Can act). POST /costs/quote-requests: asks for the network price on a category for a quantity and market (verified members).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| category | string | yes | — |
| quote_id | no | — | |
| qty | number | yes | — |
| unit | string | yes | — |
| ship_to_market | string | no | — |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a warehouse key (Costs: Can act). POST /costs/dismissals: hides a category from your savings for now (dismissed true) or shows it again.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| category | string | yes | — |
| dismissed | boolean | yes | — |
Needs a warehouse key (Settings: Can read). GET /settings/preferences: your markets, service chips, notification email and CRM preference.
No parameter schema on file.
Needs a warehouse key (Settings: Can act). PATCH /settings/preferences: changes the named fields: markets (City, ST), service chips, notification_email, crm_connection, crm_sharing.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| markets | array | no | — |
| services | array | no | — |
| notification_email | string/null | no | — |
| crm_connection | string | no | — |
| crm_sharing | string | no | — |
| sources | object | no | Where each fact came from, one note per field written (a URL, a document, "the owner said"). |
Needs a seller key (Policies: Can read). GET /seller/shipping/profiles: your profiles with their rules, the default and the regions you serve.
No parameter schema on file.
Needs a seller key (Policies: Can act). POST /seller/shipping/profiles: a named profile (for example Heavy items) with its region rules.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | yes | — |
| handling_days | integer | no | — |
| handling_cents | integer | no | — |
| is_default | boolean | no | — |
| rules | array | no | Replaces the rules. A region not listed for standard is not served. |
Needs a seller key (Policies: Can act). PATCH /seller/shipping/profiles/{id}: name, handling days, handling cents, rules.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| profile_id | string | yes | — |
| name | string | no | — |
| handling_days | integer | no | — |
| handling_cents | integer | no | — |
| is_default | boolean | no | — |
| rules | array | no | Replaces the rules. A region not listed for standard is not served. |
Needs a seller key (Policies: Can act). POST /seller/shipping/profiles/{id}/delete: not the default; its offers use the default.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| profile_id | string | yes | — |
Needs a seller key (Policies: Can act). POST /seller/shipping/profiles/{id}/default: offers with no profile use this one.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| profile_id | string | yes | — |
Needs a seller key (Catalog: Can act). POST /seller/shipping/assign: a profile for offers or for the open offers of products (lot_ids); profile_id null puts them back on the default.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| profile_id | yes | — | |
| offer_ids | array | no | — |
| lot_ids | array | no | — |
Needs a seller key (Policies: Can act). POST /seller/shipping/rate-card: your carrier rates for an origin ZIP3 in the rates.json shape (zones_by_zip3, services[].weight_lbs_to_rates); calculated rules use it.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| origin_zip3 | string | yes | — |
| card | object | yes | — |
| label | string | no | — |
Needs a seller key (Orders: Can act). POST /seller/orders/{id}/shipping-actual: what the label cost; the statement shows shipping quote vs actual.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| order_id | string | yes | — |
| shipping_actual_cents | integer | yes | — |
| source | string | no | — |
Needs a buyer key (no activity needed). A seller or warehouse key also reaches it. POST /shipping/quote: what an offer costs to ship and how many days, from the seller profile, with the goods at that quantity (goods_cents, total_cents), the processing line and the buyer total by payment method (card, ach, balance) and the quantity check (requested, available; ok false with reason quantity when the
| Parameter | Type | Required | Notes |
|---|---|---|---|
| offer_id | string | yes | — |
| qty | integer | no | — |
| service | string | no | — |
| destination | yes | TX, US-TX, 77043, an address line, or {country, state, zip, residential}. |
Needs a seller key (Catalog: Can act). POST /seller/catalog/import: reads a Google Shopping XML or TSV feed, a Shopify products CSV, an eBay Seller Hub CSV or a products JSON (by url, or the file text as content) and previews (dry_run true) or writes the products, with created, updated and skipped rows and their reasons.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| url | string | no | A feed address to fetch now (http or https). |
| content | string | no | The file text, when there is no URL. |
| file_name | string | no | — |
| kind | string | no | Read from the content when left out. |
| dry_run | boolean | no | true: preview only, nothing written. |
| default_quantity | integer | no | The quantity for rows that carry none (Google feeds). |
| schedule | string | no | For a URL that writes: save the feed with this schedule. |
Needs a seller key (Catalog: Can read). GET /seller/catalog/feeds: the saved feed URLs and imported files with the last fetch, status, counts and the last five runs.
No parameter schema on file.
Needs a seller key (Catalog: Can act). POST /seller/catalog/feeds: saves a feed URL with its schedule (none, hourly or daily); the hourly function fetches it when due.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| url | string | yes | — |
| kind | string | no | — |
| schedule | string | no | — |
| default_quantity | integer | no | — |
Needs a seller key (Catalog: Can act). POST /seller/catalog/feeds/{id}/fetch: fetches the saved feed now and imports it (dry_run true previews), with a run record.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| feed_id | string | yes | — |
| dry_run | boolean | no | — |
Needs a seller key (Catalog: Can act). DELETE /seller/catalog/feeds/{id}: removes the saved feed and its runs; the products it loaded stay.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| feed_id | string | yes | — |
Needs a warehouse key (CRM: Can read). GET /crm/deals/{id}/facts: the service, location, volume, product, timing and SKU count read from the deal’s notes, each with its source sentence and status (suggested, confirmed, rejected); ready when the five Post fields are confirmed.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| deal_id | string | yes | — |
Needs a warehouse key (CRM: Can act). POST /crm/deals/{id}/facts/{fact_id}/decide: confirmed writes the deal’s service, target market or attribute key from the fact; rejected hides it and keeps it.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| deal_id | string | yes | — |
| fact_id | string | yes | — |
| status | string | yes | — |
Needs a warehouse key (CRM: Can act). POST /crm/deals/{id}/facts/extract: runs the hand rules over the deal’s notes and fields again and writes the suggestions; decided facts never change.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| deal_id | string | yes | — |
Needs a buyer key (no activity needed). A seller or warehouse key also reaches it. GET /keys/{id}/limits: the spending cap per 30 days, the amount above which a payment waits for the owner, the actions the owner confirms, the calls per hour, what the key spent in 30 days and how many of its actions wait.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| key_id | string | yes | — |
Needs a buyer key (no activity needed). A seller or warehouse key also reaches it. PUT /keys/{id}/limits: fields left out keep their value. With an agent link key a limit can only be lowered; raising one needs the owner signed in (403 owner_in_person).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| key_id | string | yes | — |
| spend_cap_cents | no | — | |
| confirm_above_cents | no | — | |
| confirm_actions | array | no | — |
| rate_per_hour | integer | no | — |
Needs a buyer key (no activity needed). A seller or warehouse key also reaches it. GET /keys/{id}/pending: calls over the key’s limits are not executed; each waits here (202 pending_owner_confirmation gave its pending_id) until the owner approves or declines it, and status and result show what happened.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| key_id | string | yes | — |
| status | string | no | — |
Needs a buyer key (no activity needed). A seller or warehouse key also reaches it. POST /keys/{id}/pending/{pending_id}/decide: decline drops the action and runs nothing; approve needs the owner signed in at Agent access, Waiting for you (403 owner_in_person for a key).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| key_id | string | yes | — |
| pending_id | string | yes | — |
| decision | string | yes | — |
Needs a buyer key (no activity needed). A seller or warehouse key also reaches it. GET /keys/{id}/permissions: every activity of the key, Read only or Can act, Payments off or on, and the sentence to relay to the owner. Every key starts read-only with payments off; the owner turns an activity on at Agent access, and after that the next call succeeds without a new key. With activities (for example
| Parameter | Type | Required | Notes |
|---|---|---|---|
| key_id | string | yes | — |
| activities | object | no | — |
Needs a warehouse key (Costs: Can read). GET /costs/savings: one row per confirmed saving (a supplier price confirmed on a request, or a vendor match), with this year’s and this month’s totals.
No parameter schema on file.
Needs a buyer key (no activity needed). A seller or warehouse key also reaches it. GET /me/agent-rules: the rules CommerceBook enforces on every call you make for your owner. Read them first and plan within them. rules holds the values that bind your key (the lower of the account rule and your key limit for money); text is the same rules as one paragraph. A call outside allowed_actions, allowed_ho
No parameter schema on file.
Needs a buyer key (no activity needed). A seller or warehouse key also reaches it. GET /me/agent-activity: every call of your owner’s keys in the last days (30 by default, up to 90), newest first: the action, the amount, the counterparty, and whether a rule allowed it, held it for the owner or stopped it.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| days | integer | no | — |
Needs a warehouse key (CRM: Can read). GET /leads/table: every deal that is not archived, newest received first, as the Leads screen shows it: company, received, what we know (service, location, volume), missing facts, estimated value, whether its lead is shared (not_shared, draft, shared, claimed, sold, withdrawn, expired) with price, buyer places, claims and buyer companies, the action the scree
| Parameter | Type | Required | Notes |
|---|---|---|---|
| tab | string | no | — |
| q | string | no | — |
| missing | boolean | no | true: only rows missing a service or a location |
| source | string | no | — |
| marked | boolean | no | true: only rows marked to share |
| set_aside | boolean | no | true: only the Not shared rows set aside (Not for the network); without it Not shared leaves them out |
| deleted | boolean | no | true: only the GoHighLevel rows deleted from the list |
| cursor | string | no | The next_cursor of the previous page. |
| limit | integer | no | — |
Needs a warehouse key (CRM: Can act). PATCH /crm/deals/{id}/share-decision: the call on a deal. decline is Not for the network (the row moves under Set aside), none is Reconsider; share (Marked to share) and hold are chips. share does not post; post with commercebook_lead_post and the deal_id.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| deal_id | string | yes | — |
| decision | string | yes | — |
Needs a warehouse key (Leads: Can read). GET /settings/lead-defaults: the price and buyer places a lead takes when commercebook_lead_post sends no price, and whether the Pass for $1 preset shows on the screen. $20, open to 2 buyers, until the member saves its own.
No parameter schema on file.
Needs a warehouse key (Leads: Can act). PATCH /settings/lead-defaults: price_cents, max_buyers (1 to 5) and dollar_preset; fields left out keep their value.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| price_cents | integer | no | — |
| max_buyers | integer | no | — |
| dollar_preset | boolean | no | — |
Needs a warehouse key (no activity needed). GET /me/payment-methods: the cards the owner saved at Settings, Payment methods (brand, last four, expiry, the default) and the balance held by Stripe. A claim with method card charges the default card off-session; a claim with method balance pays from the balance.
No parameter schema on file.
Needs a warehouse key (Payments: Can act). DELETE /me/payment-methods/{id}: answers 403 owner_only for every key. The owner removes a card at Settings, Payment methods; relay that sentence.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| payment_method_id | string | yes | — |
Needs a warehouse key (no activity needed). GET /me/balance: the member’s CommerceBook balance, held by Stripe: available now, recent events (funded, applied_to_payment and the rest), an open return, and the funding instructions once asked for. The owner funds it by ACH (1 to 3 business days) or wire (same day); a card cannot fund it. Unused balance returns to the sender’s bank after 75 days.
No parameter schema on file.
Needs a warehouse key (no activity needed). POST /me/balance/funding-instructions: the routing number, account number, account holder and bank the owner sends an ACH or a wire to. Asking again answers the same instructions. Moves no money.
No parameter schema on file.
Needs a warehouse key (Payments: Can act). POST /me/balance/return: returns the balance (or amount_cents of it) to the owner’s bank; Stripe emails the owner for the account details. One return at a time. Needs the payments activity (403 not_permitted with the hint until the owner turns it on).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| amount_cents | integer | no | — |
Needs a buyer key (Orders: Can act). A seller or warehouse key also reaches it. POST /market/quotes: prices one offer at a quantity, with shipping to the destination from the seller’s shipping profile (method ship; destination a state or ZIP, or {state, zip, residential, service, rate_id}) or pickup. The quote holds the goods for 15 minutes. Needs the orders activity (the key of a buyer or a selle
| Parameter | Type | Required | Notes |
|---|---|---|---|
| offer_id | string | yes | — |
| quantity | integer | yes | — |
| method | string | no | — |
| destination | no | — |
Needs a buyer key (Payments: Can act). A seller or warehouse key also reaches it. POST /market/orders: turns an open quote into an order paid with the owner’s balance (no processing line) or the owner’s saved card (the card fee, 2.90 percent plus 30 cents; the card is held, not charged, until the seller ships). method bank (SPEC-79) pays by bank debit from the bank account the owner saved once wit
| Parameter | Type | Required | Notes |
|---|---|---|---|
| quote_id | string | yes | — |
| method | string | no | — |
Needs a buyer key (Orders: Can read). A seller or warehouse key also reaches it. GET /market/orders: the orders this member placed, newest first, with the amounts, the payment line (card_held, bank_settling, paid), the fulfillment and any dispute.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| status | string | no | — |
| limit | integer | no | — |
Needs a buyer key (Orders: Can read). A seller or warehouse key also reaches it. GET /market/orders/{id}: one order the member placed: the state, the amounts, the payment line, the fulfillment and tracking, the latest dispute and the rating.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| order_id | string | yes | — |
Needs a buyer key (Orders: Can act). A seller or warehouse key also reaches it. POST /market/orders/{id}/confirm-delivery: accepts the goods of a released order, which ends the time to file a dispute early; the seller is paid out within the hour. Report a problem first if something is wrong.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| order_id | string | yes | — |
Needs a buyer key (Orders: Can act). A seller or warehouse key also reaches it. POST /market/orders/{id}/dispute: opens a dispute (non_delivery, shortage, condition or other) on a released, accepted or completed order. Shoppers have 30 days from delivery to file a dispute; after that the order is non-refundable (409 claim_window_closed). Claims name the listing field (quantity, condition_grade, id
| Parameter | Type | Required | Notes |
|---|---|---|---|
| order_id | string | yes | — |
| reason | string | yes | — |
| note | string | no | — |
| evidence | object | no | — |
| claims | array | no | — |
Needs a buyer key (Orders: Can act). A seller or warehouse key also reaches it. POST /market/orders/{id}/rate: rates an accepted or completed order, the goods and the seller from 1 to 5, with an optional note; a second call changes the rating.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| order_id | string | yes | — |
| product_score | integer | yes | — |
| seller_score | integer | yes | — |
| note | string | no | — |
Needs a buyer key (Browse: Can read). A seller or warehouse key also reaches it. POST /market/sheets: one page with the ranked candidates for the owner, instead of a link per product. Give the owner’s query, the ship-to (postal_code and state), up to 12 items (offer_id, quantity, rank, reason, optional tradeoff), up to 6 spec names to compare, notes, a title, and the owner’s budget and deadline in
| Parameter | Type | Required | Notes |
|---|---|---|---|
| query | string | yes | — |
| ship_to | object | yes | — |
| items | array | yes | — |
| compare | array | no | — |
| notes | string | no | — |
| title | string | no | — |
| budget | string | no | — |
| deadline | string | no | — |
| public | boolean | no | true lets search engines index the page; noindex by default. |
Needs a buyer key (Browse: Can read). A seller or warehouse key also reaches it. GET /market/sheets: the sheets this member made that have not expired, newest first, with the link, whether the owner opened it and the top choice.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| limit | integer | no | — |
Needs a buyer key (Browse: Can read). A seller or warehouse key also reaches it. GET /market/sheets/{id}: one sheet re-read live (sold out, price changed), as markdown and json.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| sheet_id | string | yes | — |
Needs a buyer key (Browse: Can read). A seller or warehouse key also reaches it. DELETE /market/sheets/{id}: removes a sheet this member made; its link answers 404 after.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| sheet_id | string | yes | — |
Needs a seller key (Catalog: Can act). PATCH /seller/catalog/lots/{id}: the seller product page’s edit. Send only the fields to change: title, description (empty clears it), condition (new, open_box, used, refurbished, defective), quantity on hand (a new quantity confirms the count, and now becomes its count date; never below what is reserved or sold; 0 makes a live product sold out), unit_price_c
| Parameter | Type | Required | Notes |
|---|---|---|---|
| lot_id | string | yes | — |
| title | string | no | — |
| description | string | no | — |
| condition | string | no | — |
| quantity | integer | no | — |
| unit_price_cents | integer | no | — |
| min_qty | integer | no | — |
| photos | array | no | — |
| return_window_days | integer | no | — |
| return_method | string | no | — |
| restocking_fee_pct | number | no | — |
| return_terms | null | no | null clears the product’s own return terms, so it inherits again. |
| price_schedule | no | — | |
| schedule_kind | string | no | How the tiers apply (default volume). volume: every unit is priced at the price of the highest tier the quantity reaches. graduated: the units within each tier are priced at that tier’s price. |
| publish | boolean | no | — |
| operation_id | string | no | — |
Needs a seller key (Orders: Can act). POST /seller/orders/{id}/label/void: before the first carrier scan, the label goes back to the carrier, the order returns to released and the label cost is refunded.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| order_id | string | yes | — |
| operation_id | string | no | — |
Needs a seller key (Orders: Can read). GET /seller/orders/{id}/tracking: the label, the carrier events newest first, delivered_at with delivered_by_scan, and attention when the carrier could not deliver.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| order_id | string | yes | — |
Needs a seller key (Orders: Can read). GET /seller/orders/{id}/label: the order’s labels (the outbound label and any return label), each with a link to its PDF that lasts 10 minutes. Ask again for a new link.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| order_id | string | yes | — |
Needs a seller key (Orders: Can act). POST /seller/returns/{id}/label: the label of a return by mail, from the shopper to the return address, charged to the side the return names. Past the key’s confirm amount or 30-day cap it answers 202 pending_owner_confirmation and waits for the owner.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| return_id | string | yes | — |
| operation_id | string | no | — |
Needs a buyer key (Orders: Can read). A seller or warehouse key also reaches it. GET /market/orders/{id}/tracking: the carrier, the tracking number, the events, and delivered_at from the carrier scan.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| order_id | string | yes | — |
Needs a buyer key (no activity needed). A seller or warehouse key also reaches it. POST /shipping/address-check: deliverable or not, the residential flag, and the corrected form when the carrier writes it differently. Pass the same address as ship_to to commercebook_market_order_place.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| address | object | yes | — |
Needs a buyer key (Orders: Can read). A seller or warehouse key also reaches it. GET /feedback/board: every member’s posts on what would make CommerceBook better, a shipped post CommerceBook pinned first, then the most votes and the newest (sort votes) or the newest alone (sort newest). Each post has its author, member, kind, votes, replies, status (open, planned, building, shipped, not_now) and w
| Parameter | Type | Required | Notes |
|---|---|---|---|
| sort | string | no | — |
| kind | string | no | Only the posts of members of this kind. |
Needs a buyer key (Orders: Can read). A seller or warehouse key also reaches it. GET /feedback/posts/{id}: the post with its full body, its status note and its replies in order, each with the name and member of who wrote it.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| post_id | string | yes | — |
Needs a buyer key (Orders: Can act). A seller or warehouse key also reaches it. POST /feedback/posts: a new post under your person’s name, marked as written by an agent: a title of 120 characters at most, an optional body of 4,000, and the page it is about. CommerceBook reads every post. Needs the write level of the key’s activity (messages, or orders for a seller or a buyer key).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| title | string | yes | — |
| body | string | no | — |
| page | string | no | The page or the tool it is about, for example /warehouse/leads. |
Needs a buyer key (Orders: Can act). A seller or warehouse key also reaches it. POST /feedback/posts/{id}/replies: a reply under your person’s name; the author and every earlier replier are emailed once. Needs the write level of the key’s activity.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| post_id | string | yes | — |
| body | string | yes | — |
Needs a buyer key (Orders: Can act). A seller or warehouse key also reaches it. POST /feedback/posts/{id}/vote: adds your person’s vote, or takes it back when it is already there (voted and votes come back). One vote per person, no down-votes. Needs the write level of the key’s activity.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| post_id | string | yes | — |
Needs a buyer key (Orders: Can act). A seller or warehouse key also reaches it. POST /market/intents: posts what the owner wants, at no cost: title, category, qty and ceiling_unit_cents (the most the owner pays each, in cents). Optional: ceiling_visible false (sellers see a band), destination (a state or a ZIP), notes for sellers, visibility private (kept off the book; only offers that match it te
| Parameter | Type | Required | Notes |
|---|---|---|---|
| title | string | yes | — |
| category | string | yes | A category key, lower case with underscores (for example packaging, office_supplies, industrial_equipment). |
| qty | integer | yes | — |
| ceiling_unit_cents | integer | yes | — |
| ceiling_visible | boolean | no | — |
| destination | string | no | — |
| destination_zip | string | no | SPEC-79: the five-digit ZIP the goods go to; sellers see it on the request. |
| unit | string | no | SPEC-80: the unit of sale qty counts (each, roll, case, pack, box, pallet or other). |
| unit_note | string | no | SPEC-80: what one unit holds, for example 6 rolls a case. |
| notes | string | no | — |
| visibility | string | no | — |
| notify | boolean | no | — |
| expires_in_days | integer | no | — |
Needs a buyer key (Orders: Can act). A seller or warehouse key also reaches it. DELETE /market/intents/{id}: takes an open request of this member off the book; its open quotes close with it and each seller is told.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| intent_id | string | yes | — |
Needs a buyer key (Orders: Can read). A seller or warehouse key also reaches it. GET /market/intents/{id}/quotes: the request and every quote on it, open ones first by total: the quantity, the price each, the shipping, the total, the expiry (72 hours, or the request’s), the seller’s note, the product with its listed price at the quantity, and the seller’s tier and three numbers (delivered, on time
| Parameter | Type | Required | Notes |
|---|---|---|---|
| intent_id | string | yes | — |
Needs a buyer key (Payments: Can act). A seller or warehouse key also reaches it. POST /market/intents/{id}/quotes/{quote}/accept: the order at the quote’s price, through the same order path and payment as commercebook_market_order_place (method balance, or card / saved with the owner’s saved card; without method the balance when it covers the total, else the saved card). The fee is the market fee
| Parameter | Type | Required | Notes |
|---|---|---|---|
| intent_id | string | yes | — |
| quote_id | string | yes | — |
| method | string | no | — |
| ship_to | object | no | — |
Needs a buyer key (Orders: Can act). A seller or warehouse key also reaches it. POST /market/intents/{id}/quotes/{quote}/decline: closes one quote and tells the seller, with the reason when one is given (300 characters). The request stays open.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| intent_id | string | yes | — |
| quote_id | string | yes | — |
| reason | string | no | — |
Needs a seller key (Catalog: Can read). GET /seller/intents: the open public requests in the categories of the seller’s live products (or the category named), newest first, with the buyer’s notes and the seller’s own quote on each; and the seller’s quotes in every state. No buyer is named. Needs catalog read.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| category | string | no | A category key, lower case with underscores (for example packaging, office_supplies, industrial_equipment). |
| q | string | no | SPEC-80: words; each must match a whole word of the request title (stretch finds stretch wrap, never stretcher). |
| limit | integer | no | — |
Needs a seller key (Catalog: Can act). POST /seller/intents/{id}/quote: the seller’s price each for a request, with one of its live products (lot_id). The product’s live offer must cover the quantity (qty defaults to the request’s and may be less); the price is at most the buyer’s ceiling (409 quote_above_ceiling) and, when the seller’s policies set offer_floor_pct, at least that share of the list
| Parameter | Type | Required | Notes |
|---|---|---|---|
| intent_id | string | yes | — |
| lot_id | string | yes | — |
| unit_price_cents | integer | yes | — |
| qty | integer | no | — |
| shipping_cents | integer | no | — |
| note | string | no | — |
Needs a seller key (Catalog: Can act). DELETE /seller/quotes/{id}: closes an open quote of the seller; the buyer can no longer accept it. Needs catalog write.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| quote_id | string | yes | — |
Needs a seller key (Catalog: Can read). GET /seller/shopify: the seller’s CommerceBook sales channel in Shopify: whether a store is connected, the last sync with its counts and skipped rows, the products linked and live, the CommerceBook orders sent to the store, Stripe, and the open requests in the store’s categories. With shop (<x>.myshopify.com) it also answers install_url, a single-use link (1
| Parameter | Type | Required | Notes |
|---|---|---|---|
| shop | string | no | The store address, ending in .myshopify.com: also answer an install link for it. |
Needs a seller key (Catalog: Can act). POST /seller/shopify/sync: reads the connected store’s products now (variants, prices, the available quantity at the first active location, pictures, SKU, barcode, the commercebook.price_schedule metafield) and writes them as lots; a product not active in Shopify stays a draft and a quantity of 0 takes the lot off the book. The hourly sync and the product web
No parameter schema on file.
Needs a seller key (Catalog: Can read). GET /seller/category-watch: the categories you are told of new public requests in, with or without a live product. Needs the catalog activity.
No parameter schema on file.
Needs a seller key (Catalog: Can act). PUT /seller/category-watch: the whole list of categories to watch (30 at most; an empty list watches none). From then on you are told of every new public request in them, so a dealer that quotes and does not list a public price still hears of demand. Needs the catalog activity (write).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| categories | array | yes | — |
| operation_id | string | no | — |
- Every tool — any call limit is its publisher’s, not ours
- No card, and mcprush charges nothing for it
- Runs at its publisher’s own address — this marketplace is not in the path
- Nothing to cap, because mcprush bills nothing
What counts against your monthly calls
| Tool | Unit | Calls used | Out of the allowance |
|---|
Nothing here is billable: mcprush charges nothing to install CommerceBook or to call it, at any volume.
Two independent axes, because powerful and malicious are different questions. The grade is threat only. The capability level is blast radius, and it is never a penalty on the grade — it is priced as one subtract-only term in the score, where you can see it.
| Term | Level | What it prices | Points |
|---|---|---|---|
| capability-exposure | moderate | capability blast radius (moderate) — client exposure if the model is manipulated | −3 |
| coverage-honesty | manifest | inspection depth (manifest) — how much of the target the scan could see | −4 |
What the scan could actually read
A grade is only as meaningful as its coverage, so the scanner publishes its own depth before it publishes its result.
The scan read each tool’s name, description, input schema and annotations exactly as the server listed them the last time it answered us; no code was reviewed. We ask the server again about once a month, and a list that changed is graded again.
The implementation source was not read — this reflects the declared tool metadata only.
Capability — what it could do if the model were manipulated
Tags derived from each tool’s schema and the implementation, not from what the tool calls itself. moderate is the level these add up to.
| Tool | Capability tags | Why the tag was assigned |
|---|---|---|
| signup_start | external-sink | external-sink: declares readOnlyHint: false, openWorldHint: true |
| signup_confirm | state-write | state-write: declares readOnlyHint: false |
| commercebook_network_now | no tags | |
| network_now | no tags | |
| instructions | no tags | |
| commercebook_feedback | state-write | state-write: declares readOnlyHint: false |
| commercebook_market_search | no tags | |
| commercebook_market_lot | no tags | |
| commercebook_market_seller | no tags | |
| commercebook_market_intents | no tags | |
| commercebook_market_book | no tags | |
| commercebook_request_reach | no tags | |
| commercebook_market_shipping_estimate | no tags | |
| commercebook_seller_capabilities | no tags | |
| commercebook_whoami | no tags | |
| commercebook_me | no tags | |
| commercebook_my_standing | no tags | |
| commercebook_openapi | no tags | |
| commercebook_leads_open | no tags | |
| commercebook_leads_mine | no tags | |
| commercebook_lead_post | state-write | state-write: declares readOnlyHint: false |
| commercebook_lead_claim | state-write | state-write: declares readOnlyHint: false |
| commercebook_deals_list | no tags | |
| commercebook_deal_create | state-write | state-write: declares readOnlyHint: false |
| commercebook_deal_update | state-write | state-write: declares readOnlyHint: false |
| commercebook_capacity_list | no tags | |
| commercebook_capacity_request | state-write | state-write: declares readOnlyHint: false |
| commercebook_capacity_quote | state-write | state-write: declares readOnlyHint: false |
| commercebook_threads_list | no tags | |
| commercebook_thread_get | no tags | |
| commercebook_message_send | external-sinkstate-write | external-sink: keyword "post_message"; state-write: declares readOnlyHint: false |
| commercebook_message_request | external-sinkstate-write | external-sink: keyword "post_message"; state-write: declares readOnlyHint: false |
| commercebook_prices | no tags | |
| commercebook_members | no tags | |
| commercebook_seller_me | no tags | |
| commercebook_seller_lots | no tags | |
| commercebook_seller_lot_get | no tags | |
| commercebook_seller_catalog_upsert | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_lot_hold | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_lot_release | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_reconcile | no tags | |
| commercebook_seller_verify | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_orders | no tags | |
| commercebook_seller_order_get | no tags | |
| commercebook_seller_order_release | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_order_ship | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_order_cancel | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_disputes | no tags | |
| commercebook_seller_dispute_reply | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_policies_get | no tags | |
| commercebook_seller_policies_update | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_statement | no tags | |
| commercebook_seller_performance | no tags | |
| commercebook_seller_delegations | no tags | |
| commercebook_seller_delegation_request | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_events | no tags | |
| commercebook_lead_get | no tags | |
| commercebook_lead_buy | state-write | state-write: declares readOnlyHint: false |
| commercebook_lead_withdraw | state-write | state-write: declares readOnlyHint: false |
| commercebook_lead_places | state-write | state-write: declares readOnlyHint: false |
| commercebook_lead_price | state-write | state-write: declares readOnlyHint: false |
| commercebook_lead_text | state-write | state-write: declares readOnlyHint: false |
| commercebook_lead_update | state-write | state-write: declares readOnlyHint: false |
| commercebook_lead_introduction | state-write | state-write: declares readOnlyHint: false |
| commercebook_lead_call | state-write | state-write: declares readOnlyHint: false |
| commercebook_lead_rate | state-write | state-write: declares readOnlyHint: false |
| commercebook_lead_challenge | state-write | state-write: declares readOnlyHint: false |
| commercebook_claims_list | no tags | |
| commercebook_claim_outcome | state-write | state-write: declares readOnlyHint: false |
| commercebook_claim_defect | state-write | state-write: declares readOnlyHint: false |
| commercebook_deal_get | no tags | |
| commercebook_deal_delete | state-write | state-write: declares readOnlyHint: false, destructiveHint: true |
| commercebook_deal_note_add | state-write | state-write: declares readOnlyHint: false |
| commercebook_crm_import | state-write | state-write: declares readOnlyHint: false |
| commercebook_capacity_accept | state-write | state-write: declares readOnlyHint: false |
| commercebook_capacity_quote_withdraw | state-write | state-write: declares readOnlyHint: false |
| commercebook_capacity_request_withdraw | state-write | state-write: declares readOnlyHint: false |
| commercebook_thread_respond | external-sinkstate-write | external-sink: keyword "post_message"; state-write: declares readOnlyHint: false |
| commercebook_thread_read | external-sinkstate-write | external-sink: keyword "post_message"; state-write: declares readOnlyHint: false |
| commercebook_thread_mute | external-sinkstate-write | external-sink: keyword "post_message"; state-write: declares readOnlyHint: false |
| commercebook_thread_report | external-sinkstate-write | external-sink: keyword "post_message"; state-write: declares readOnlyHint: false |
| commercebook_member_block | external-sinkstate-write | external-sink: keyword "post_message"; state-write: declares readOnlyHint: false |
| commercebook_group_create | external-sinkstate-write | external-sink: keyword "post_message"; state-write: declares readOnlyHint: false |
| commercebook_attachables | no tags | |
| commercebook_unread_count | no tags | |
| commercebook_member_get | no tags | |
| commercebook_delegations | no tags | |
| commercebook_delegation_respond | state-write | state-write: declares readOnlyHint: false |
| commercebook_delegation_end | state-write | state-write: declares readOnlyHint: false |
| commercebook_settings_get | no tags | |
| commercebook_settings_contact | state-write | state-write: declares readOnlyHint: false |
| commercebook_agent_limits | no tags | |
| commercebook_seller_entity_get | no tags | |
| commercebook_seller_entity_update | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_fulfillment | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_policies_accept | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_delegation_warehouses | no tags | |
| commercebook_seller_delegation_end | state-write | state-write: declares readOnlyHint: false |
| commercebook_profile_get | no tags | |
| commercebook_service_catalog | no tags | |
| commercebook_profile_completeness | no tags | |
| commercebook_profile_about | state-write | state-write: declares readOnlyHint: false |
| commercebook_profile_services | state-write | state-write: declares readOnlyHint: false |
| commercebook_profile_people | state-write | state-write: declares readOnlyHint: false |
| commercebook_profile_person_add | state-write | state-write: declares readOnlyHint: false |
| commercebook_profile_certifications | state-write | state-write: declares readOnlyHint: false |
| commercebook_profile_contact | state-write | state-write: declares readOnlyHint: false |
| commercebook_profile_logo | state-write | state-write: declares readOnlyHint: false |
| commercebook_profile_logo_remove | state-write | state-write: declares readOnlyHint: false, destructiveHint: true |
| commercebook_rate_card_get | no tags | |
| commercebook_rate_card_set | state-write | state-write: declares readOnlyHint: false |
| commercebook_facilities_list | no tags | |
| commercebook_facility_create | state-write | state-write: declares readOnlyHint: false |
| commercebook_facility_update | state-write | state-write: declares readOnlyHint: false |
| commercebook_facility_delete | state-write | state-write: declares readOnlyHint: false, destructiveHint: true |
| commercebook_facility_pin | state-write | state-write: declares readOnlyHint: false |
| commercebook_facility_media_add | state-write | state-write: declares readOnlyHint: false |
| commercebook_facility_media_order | state-write | state-write: declares readOnlyHint: false |
| commercebook_facility_media_remove | state-write | state-write: declares readOnlyHint: false, destructiveHint: true |
| commercebook_costs_rank | no tags | |
| commercebook_costs_summary | no tags | |
| commercebook_price_match | state-write | state-write: declares readOnlyHint: false |
| commercebook_invoices_list | no tags | |
| commercebook_invoice_upload | state-write | state-write: declares readOnlyHint: false |
| commercebook_invoice_parse | state-write | state-write: declares readOnlyHint: false |
| commercebook_invoice_delete | state-write | state-write: declares readOnlyHint: false, destructiveHint: true |
| commercebook_quote_requests | no tags | |
| commercebook_quote_request | state-write | state-write: declares readOnlyHint: false |
| commercebook_cost_dismiss | state-write | state-write: declares readOnlyHint: false |
| commercebook_preferences_get | no tags | |
| commercebook_preferences_set | state-write | state-write: declares readOnlyHint: false |
| commercebook_shipping_profiles | no tags | |
| commercebook_shipping_profile_create | state-write | state-write: declares readOnlyHint: false |
| commercebook_shipping_profile_update | state-write | state-write: declares readOnlyHint: false |
| commercebook_shipping_profile_delete | state-write | state-write: declares readOnlyHint: false |
| commercebook_shipping_profile_set_default | state-write | state-write: declares readOnlyHint: false |
| commercebook_shipping_assign | state-write | state-write: declares readOnlyHint: false |
| commercebook_shipping_rate_card | state-write | state-write: declares readOnlyHint: false |
| commercebook_shipping_order_actual | state-write | state-write: declares readOnlyHint: false |
| commercebook_shipping_quote | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_catalog_import | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_feeds_list | no tags | |
| commercebook_seller_feed_add | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_feed_fetch | untrusted-inputstate-write | untrusted-input: keyword "fetch"; state-write: declares readOnlyHint: false |
| commercebook_seller_feed_remove | state-write | state-write: declares readOnlyHint: false, destructiveHint: true |
| commercebook_deal_facts_list | no tags | |
| commercebook_deal_fact_decide | state-write | state-write: declares readOnlyHint: false |
| commercebook_deal_facts_extract | state-write | state-write: declares readOnlyHint: false |
| commercebook_key_limits_get | no tags | |
| commercebook_key_limits_set | state-write | state-write: declares readOnlyHint: false |
| commercebook_pending_list | no tags | |
| commercebook_pending_decide | state-write | state-write: declares readOnlyHint: false |
| commercebook_key_permissions | no tags | |
| commercebook_costs_savings | no tags | |
| commercebook_agent_rules | no tags | |
| commercebook_agent_activity | no tags | |
| commercebook_leads_table | no tags | |
| commercebook_deal_share_decision | state-write | state-write: declares readOnlyHint: false |
| commercebook_lead_defaults_get | no tags | |
| commercebook_lead_defaults_set | state-write | state-write: declares readOnlyHint: false |
| commercebook_payment_methods | no tags | |
| commercebook_payment_method_remove | state-write | state-write: declares readOnlyHint: false, destructiveHint: true |
| commercebook_balance | no tags | |
| commercebook_balance_funding_instructions | state-write | state-write: declares readOnlyHint: false |
| commercebook_balance_return | state-write | state-write: declares readOnlyHint: false |
| commercebook_market_quote | state-write | state-write: declares readOnlyHint: false |
| commercebook_market_order_place | state-write | state-write: declares readOnlyHint: false |
| commercebook_market_orders | no tags | |
| commercebook_market_order | no tags | |
| commercebook_market_order_confirm_delivery | state-write | state-write: declares readOnlyHint: false |
| commercebook_market_order_dispute | state-write | state-write: declares readOnlyHint: false |
| commercebook_market_order_rate | state-write | state-write: declares readOnlyHint: false |
| commercebook_result_sheet | state-write | state-write: declares readOnlyHint: false |
| commercebook_result_sheets | no tags | |
| commercebook_result_sheet_get | no tags | |
| commercebook_result_sheet_delete | state-write | state-write: declares readOnlyHint: false, destructiveHint: true |
| commercebook_seller_lot_update | state-write | state-write: declares readOnlyHint: false |
| commercebook_shipping_label_void | state-write | state-write: declares readOnlyHint: false |
| commercebook_shipping_tracking | no tags | |
| commercebook_shipping_label | no tags | |
| commercebook_shipping_return_label | state-write | state-write: declares readOnlyHint: false |
| commercebook_market_order_tracking | no tags | |
| commercebook_shipping_address_check | state-write | state-write: declares readOnlyHint: false |
| commercebook_feedback_board | no tags | |
| commercebook_feedback_read | no tags | |
| commercebook_feedback_post | state-write | state-write: declares readOnlyHint: false |
| commercebook_feedback_reply | state-write | state-write: declares readOnlyHint: false |
| commercebook_feedback_vote | state-write | state-write: declares readOnlyHint: false |
| commercebook_intent_create | state-write | state-write: declares readOnlyHint: false |
| commercebook_intent_withdraw | state-write | state-write: declares readOnlyHint: false, destructiveHint: true |
| commercebook_intent_quotes | no tags | |
| commercebook_intent_quote_accept | state-write | state-write: declares readOnlyHint: false |
| commercebook_intent_quote_decline | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_intents | no tags | |
| commercebook_seller_quote | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_quote_withdraw | state-write | state-write: declares readOnlyHint: false, destructiveHint: true |
| commercebook_seller_shopify_status | no tags | |
| commercebook_seller_shopify_sync | state-write | state-write: declares readOnlyHint: false |
| commercebook_seller_category_watch | no tags | |
| commercebook_seller_category_watch_set | state-write | state-write: declares readOnlyHint: false |
Toxic-flow graph
The lethal trifecta, checked as a graph rather than as a checklist: untrusted input, a sensitive source and an external sink have to meet before there is a path worth worrying about.
Supply chain and provenance
This is the first scan of this surface here, so there is nothing yet to compare it against.
Every result on this tab comes from one deterministic pass over the published package — offline, rule by rule, and auditable line by line above. Same methodology version, same bytes, same score.
Release history
This is an address its publisher runs: which release it serves is theirs to choose, so there is nothing here to pin. The history below is for reading; the current release on file is 0.4.1.
No release note was published with this version.
One review per account, from a signed-in account that does not publish this listing. Nothing else is asked — you can say what you think before you install it. Publishers can reply once per review, and a review can be edited or deleted by whoever wrote it.
Any signed-in account that does not publish CommerceBook can review it, once — before installing it or after. A review from an account that has installed it is marked as one.
Nobody has reviewed this listing. The rating on the card is the mean of the reviews written here and nothing else, so there is no rating until somebody writes the first — which takes a signed-in account that does not publish it, and nothing else.