REST API

Connectors API

Integration API for connecting Celerp ERP to external commerce and business platforms, managing connector credentials, and running data synchronization.

Generated from the Celerp 2.5.0 OpenAPI schema, 21 September 2026.

POST /connector-items/{connector_name}/sync

Set Item Sync

Turn product synchronization on or off for selected items on one connected channel.

Parameters

NameInRequiredTypeDescription
connector_namepathyesstringConnector name identifying the external integration.

Request body

FieldTypeRequiredDescription
entity_idsarray of stringyesEntity Ids
enableboolean--Enable

Responses

StatusDescriptionBody
200Returns the number of items updated and any items that could not be changed, with the reason.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/connector-items/:connector_name/sync \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

GET /connectors/

List External Connectors

List the external connectors available to this Celerp installation and their current connection state.

Responses

StatusDescriptionBody
200Returns the requested external connectors.array of ConnectorInfo

Example

curl -X GET http://localhost:8000/connectors/ \
  -H "Authorization: Bearer $TOKEN"

POST /connectors/woocommerce/orders/{order_id}/reconciled

Mark Order Reconciled

Mark a changed WooCommerce order as reconciled by hand. The import leaves the order alone until it changes in WooCommerce again.

Parameters

NameInRequiredTypeDescription
order_idpathyesstringWooCommerce order ID.

Request body

FieldTypeRequiredDescription
signaturestringyesSignature

Responses

StatusDescriptionBody
200Returns the updated reconciliation entry.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/connectors/woocommerce/orders/:order_id/reconciled \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

DELETE /connectors/woocommerce/orders/{order_id}/reconciled

Unmark Order Reconciled

Remove the reconciled mark, so the order is flagged for reconciliation again.

Parameters

NameInRequiredTypeDescription
order_idpathyesstringWooCommerce order ID.

Responses

StatusDescriptionBody
200Returns the updated reconciliation entry.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X DELETE http://localhost:8000/connectors/woocommerce/orders/:order_id/reconciled \
  -H "Authorization: Bearer $TOKEN"

POST /connectors/{connector_name}/credentials

Save Connector Credentials

Validate and save credentials for the selected external integration, then return whether the connector was successfully connected.

Parameters

NameInRequiredTypeDescription
connector_namepathyesstringConnector name identifying the external integration.

Request body

FieldTypeRequiredDescription
consumer_keystringyesConnector consumer or API key supplied for the external store.
consumer_secretstringyesConnector consumer or API secret supplied for the external store.
store_urlstring, optional--Base URL of the external store or service.

Responses

StatusDescriptionBody
200Returns `ok: true` when the connection works, or `ok: false` with an error code and detail explaining why it failed.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/connectors/:connector_name/credentials \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

DELETE /connectors/{connector_name}/credentials

Disconnect External Connector

Disconnect a connector and clear its local sync state. Records it already imported are kept. Pass `force` to disconnect even when the store's webhooks cannot be confirmed removed.

Parameters

NameInRequiredTypeDescription
connector_namepathyesstringConnector name identifying the external integration.
forcequery--booleanDisconnect even when the store's webhooks cannot be confirmed removed.

Responses

StatusDescriptionBody
200Returns `ok: true` when the connector is disconnected, or `ok: false` with an error code and detail when it could not be.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X DELETE http://localhost:8000/connectors/:connector_name/credentials \
  -H "Authorization: Bearer $TOKEN"

POST /connectors/{connector_name}/sync

Sync External Connector

Run a synchronization operation for the selected external connector.

Parameters

NameInRequiredTypeDescription
connector_namepathyesstringConnector name identifying the external integration.

Request body

FieldTypeRequiredDescription
entitySyncEntityyesConnector entity or data domain to synchronize.

Responses

StatusDescriptionBody
200Returns how many records were created, updated, skipped or failed during the sync.SyncResponse
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/connectors/:connector_name/sync \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

POST /connectors/{connector_name}/sync-plan

Sync Connector Plan

Start a synchronization run for a connected channel.

Parameters

NameInRequiredTypeDescription
connector_namepathyesstringConnector name identifying the external integration.

Responses

StatusDescriptionBody
200Returns `ok: true` once the run is started.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/connectors/:connector_name/sync-plan \
  -H "Authorization: Bearer $TOKEN"

DELETE /connectors/{connector_name}/unassigned

Reset Unassigned Connector

Disconnect a connector that was set up before each company had its own connectors. No company becomes its owner; the company that should use it connects it again afterwards.

Parameters

NameInRequiredTypeDescription
connector_namepathyesstringConnector name identifying the external integration.
forcequery--booleanDisconnect even when the store's webhooks cannot be confirmed removed.

Responses

StatusDescriptionBody
200Returns `ok: true` when the connector is disconnected, or `ok: false` with an error code and detail when it could not be.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X DELETE http://localhost:8000/connectors/:connector_name/unassigned \
  -H "Authorization: Bearer $TOKEN"