Harbor docs
One API that lets your agent buy at any store on a user's behalf, with the user's approval, and follow the order after.
Harbor sits between your agent and the store. Your agent asks for a product; Harbor finds the price, builds the cart, checks the user's limits against the real total, and places the order the way that store allows. You get one schema for every store and a webhook when anything changes.
1 · approveThe user says yesOnce, in Harbor Approve. They set limits and connect stores.
2 · offerLook up the productAny product link in, a live price and stock out.
3 · checkoutBuild the orderReal totals, checked against the user's rules.
4 · confirmPlace itThen track it to the door with webhooks.
Start here
QuickstartA full sandbox purchase in eight requests, about ten minutes.
API referenceEvery endpoint, parameter and object.
CheckoutsThe lifecycle, and how to handle each next action.
SandboxTest products that trigger every outcome.
How Harbor reaches a store
Every checkout takes one of three routes. Harbor picks it from the product link, and your code handles them the same way.
| Route | Stores | How the order is placed |
|---|---|---|
device_session |
Major retailers: Target, Best Buy, The Home Depot | In the user's own signed-in browser. Harbor prepares the order and the user taps Place order. |
ucp |
Every Shopify, BigCommerce and Wix store that publishes the Universal Commerce Protocol | Through the store's own agent checkout. The user finishes on the store's checkout page with one tap. |
browser |
Everyone else (WooCommerce, Magento, custom stacks) | Coming soon. Try it now with the sandbox store. |
Read more in Stores and routes.
The user stays in charge
- They approve your app once, with a per-order limit, an optional daily limit, and an amount above which they want to confirm each order themselves.
- Harbor enforces those limits against the real total from the store, including shipping and tax, before anything is placed.
- Harbor never sees their passwords or card numbers. Payment stays with the store and the user's own wallet.
Keys and environments
Create keys on the API keys page of the dashboard. Each key is shown once.
| Sandbox | Live | |
|---|---|---|
| Key prefix | hk_test_ |
hk_live_ |
| Stores | Sandbox stores plus read-only lookups at real stores | Real stores only |
| Orders | Simulated, nothing is charged | Real orders |
| Cost | Free | Pay per completed order |
Send the key as a bearer token on every request to https://www.useharbor.io/v1. Keep it on your server.
curl https://www.useharbor.io/v1/merchants \
-H "Authorization: Bearer $HARBOR_KEY"