Create Odoo 3PL Integration Instance
POST/api/odoo-3pl
Connects an Odoo 3PL (ShipPro) account. On success, the initial location, product and inventory syncs are queued automatically.
This endpoint currently requires session authentication; Personal Access Token scope support is in progress.
Body:
name— string, required, max 255, unique across all integration instances.connection_settings— object, required:base_url— string, required. HTTPS URL ending in/api/v1/3pl.api_key— string, required. Must start with3pl_.
settings— object, optional:timezone— string, valid timezone identifier (defaultAmerica/Toronto). The timezone Odoo 3PL's naive date-times are read in.auto_create_products— boolean (default false).record_shipping_costs— boolean (default true). Record the shipping fee Odoo 3PL reports on each shipment as a fulfillment cost.sync_start_date— date, nullable. Anchor forfrom_start_datesyncs.fulfillment_cost_financial_line_type_id— integer, nullable, an existing financial line type ID used for recorded shipping costs.
is_automatic_sync_enabled— boolean, optional. Turns scheduled syncing on or off.
The response never returns the API key; connection_settings.has_api_key says whether one is stored. is_sandbox is true when the base URL points at the Odoo 3PL sandbox (test. host).
Requires the integrations.create permission.
Authentication: Bearer token (Personal Access Token).
Request
Responses
- 200
- 401
- 403
- 422
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden
Response Headers
Unprocessable Entity
Response Headers
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.