Obtain API credentials through the Instacart developer program at instacart.com/company/business/developers
Authenticate requests using the provided API key in the Authorization header of each REST call
Create a fulfillment order by POSTing to the orders endpoint with a list of catalog item identifiers, quantities, the customer's delivery address, and a preferred delivery window
Instacart returns an order_id and a status; poll the order status endpoint or configure a webhook to track shopper assignment, shopping in progress, and delivered states
Handle item substitutions by listening for substitution events in status updates; decide whether to accept or reject substitutions based on your product policy
Known gotchas
Catalog item identifiers in Instacart Connect must match Instacart's internal catalog; items not in the catalog cannot be ordered — verify item coverage for your SKUs before launch
Delivery windows are subject to shopper availability; offering a narrow time window may result in no available slot, causing order creation to fail
Substitution logic must be handled explicitly; if your integration silently accepts all substitutions, customers may receive different products than ordered without notification
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp