For Agents
Read, create, update, archive, and search HubSpot CRM order records, with batch endpoints for bulk import from external commerce systems.
Use for: I need to sync orders from Shopify into HubSpot, Find all orders placed in the last 7 days, Get the order record for a specific order ID, List orders associated with a given contact
Not supported: Does not handle payment processing, shipping label generation, or inventory levels — use for HubSpot CRM order record management only.
The HubSpot CRM Orders API exposes order records inside the HubSpot CRM as a first-class object with read, list, search, and patch operations. It supports batch read, create, update, and archive of up to 100 orders per call, and a search endpoint that can filter by any order property. Use it to sync external commerce orders into HubSpot for reporting, to associate orders with contacts, deals, or line items, or to drive marketing and sales workflows from order events. The endpoints follow the same generic CRM object pattern as other HubSpot CRM resources, so agents that already know how to call /crm/v3/objects/{objectType} can drop in immediately.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Orders, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Orders API.
Read a single order record by ID with property selection
List orders with cursor-based pagination and association expansion
Search orders by property filters such as status, amount, and create date
Create up to 100 orders in a single batch call from an external system
Update specific properties on an order without overwriting unrelated fields
Archive orders that are no longer relevant to the CRM
Patterns agents use Orders API for, with concrete tasks.
★ External commerce order sync
Import orders from an external commerce platform (Shopify, WooCommerce, custom checkout) into HubSpot so the sales and marketing teams can see them in the CRM. Use POST /crm/v3/objects/orders/batch/create to push up to 100 orders per call, then associate each order with the related contact and line items via the Associations API.
POST 50 order records to /crm/v3/objects/orders/batch/create with properties hs_order_name, hs_order_amount, and hs_currency_code, and verify each returned a non-null id.
Order-driven sales follow-up
Trigger a follow-up sequence whenever a high-value order lands in HubSpot. Search /crm/v3/objects/orders/search for orders above a threshold amount in a given window, then drive workflow steps off the result. Useful for VIP customer outreach and reorder campaigns.
POST a search to /crm/v3/objects/orders/search filtering hs_order_amount greater than 1000 with createdate in the last 24 hours, and return the order IDs.
Order status reconciliation
Keep HubSpot order status in sync with the upstream commerce system. PATCH /crm/v3/objects/orders/{orderId} to update the status property whenever a fulfillment, shipment, or refund event arrives, without disturbing other order fields. Pair with batch read to verify the update applied across many orders.
PATCH /crm/v3/objects/orders/12345 setting hs_pipeline_stage to fulfilled, then GET the same order and confirm the value updated.
AI agent execution through Jentic
An agent that needs to act on order records discovers the API via Jentic's intent search using a query like 'create a hubspot order', loads the input schema for the chosen operation, and executes the call with credentials supplied from the Jentic vault. The same flow handles single-record CRUD, batch operations, and search.
Search Jentic for 'create a hubspot order', load POST /crm/v3/objects/orders/batch/create, and execute with a single order in the inputs array.
11 endpoints — the hubspot crm orders api exposes order records inside the hubspot crm as a first-class object with read, list, search, and patch operations.
METHOD
PATH
DESCRIPTION
/crm/v3/objects/orders/{orderId}
Read a single order by ID
/crm/v3/objects/orders/{orderId}
Update properties on an order
/crm/v3/objects/orders/{orderId}
Archive an order
/crm/v3/objects/orders
List orders with pagination
/crm/v3/objects/orders/batch/create
Create up to 100 orders in one call
/crm/v3/objects/orders/batch/read
Read up to 100 orders by ID
/crm/v3/objects/orders/batch/update
Update up to 100 orders in one call
/crm/v3/objects/orders/search
Search orders with filter groups and sorts
/crm/v3/objects/orders/{orderId}
Read a single order by ID
/crm/v3/objects/orders/{orderId}
Update properties on an order
/crm/v3/objects/orders/{orderId}
Archive an order
/crm/v3/objects/orders
List orders with pagination
/crm/v3/objects/orders/batch/create
Create up to 100 orders in one call
/crm/v3/objects/orders/batch/read
Read up to 100 orders by ID
/crm/v3/objects/orders/batch/update
Update up to 100 orders in one call
/crm/v3/objects/orders/search
Search orders with filter groups and sorts
Three things that make agents converge on Jentic-routed access.
Credential isolation
HubSpot OAuth and private app tokens live encrypted in the Jentic vault. Jentic's execution layer attaches the Authorization header at runtime, so the raw token never appears in agent prompts, logs, or model context.
Intent-based discovery
Agents search by intent (e.g. 'create a hubspot order' or 'search hubspot orders') and Jentic returns the matching Orders operation with its JSON Schema, so the agent can compose a valid request without reading the spec.
Time to first call
Direct integration: half a day to wire OAuth, batch payloads, and association calls. Through Jentic: under 30 minutes — search, load schema, execute.
Alternatives and complements available in the Jentic catalogue.
Specific to using Orders API through Jentic.
What authentication does the HubSpot Orders API use?
It accepts OAuth 2.0 access tokens for HubSpot apps and private app tokens passed as a Bearer credential in the Authorization header. Through Jentic, the token is stored in the credential vault and attached to requests at execution time.
Can I create line items as part of an order?
No. The Orders API creates the order record itself; line items are a separate object. Use the Line Items API and the Associations API to attach line items to an order after the order is created.
What are the rate limits for the HubSpot Orders API?
HubSpot enforces account-level limits, typically 100 requests per 10 seconds for OAuth apps. The batch endpoints under /crm/v3/objects/orders/batch/* count as a single request, so prefer them when ingesting large order volumes.
How do I bulk import orders through Jentic?
Search Jentic with 'batch create hubspot orders', load POST /crm/v3/objects/orders/batch/create, and execute with up to 100 order records per call. The response returns each created order's id and properties for downstream association.
Is the HubSpot Orders API free?
It is available on HubSpot accounts that have the Commerce Hub or appropriate add-on enabled. The endpoints themselves do not carry per-call pricing; they are governed by your account's API rate limits.
How do I find orders for a specific contact?
POST a query to /crm/v3/objects/orders/search with a filter on the associated contact ID, or list orders via GET /crm/v3/objects/orders and pass associations=contacts to expand the link in the response.
GET STARTED