# OMS API

Official ODUS Order Management System API reference for managing orders, fulfillment, integrations, and related configuration.

## Base URLs

- Sandbox: `https://sandbox-oms-api.odus.com`

## OpenAPI document

https://sandbox-oms-api.odus.com/openapi.json is the machine-readable source of every page listed here (OpenAPI 3.0.0).

## Endpoints

### Environment Secrets

- [Get environment secrets](https://docs.odus.com/docs/api/oms/environment-secret-controller-find-one.md): `GET /environment-secrets`
- [Upsert environment secrets](https://docs.odus.com/docs/api/oms/environment-secret-controller-upsert.md): `POST /environment-secrets`

### Webhooks

- [Find all Webhook Deliveries](https://docs.odus.com/docs/api/oms/webhook-controller-find-all-paginated.md): `GET /webhooks`
- [Find one Webhook Delivery](https://docs.odus.com/docs/api/oms/webhook-controller-find-one.md): `GET /webhooks/{id}`

### Webhook Subscribers

- [Find all Webhook Subscribers](https://docs.odus.com/docs/api/oms/webhook-subscriber-controller-find-all-paginated.md): `GET /webhook-subscribers`
- [Create a Webhook Subscriber](https://docs.odus.com/docs/api/oms/webhook-subscriber-controller-create.md): `POST /webhook-subscribers`
- [Find one Webhook Subscriber](https://docs.odus.com/docs/api/oms/webhook-subscriber-controller-find-one.md): `GET /webhook-subscribers/{id}`
- [Update a Webhook Subscriber](https://docs.odus.com/docs/api/oms/webhook-subscriber-controller-update.md): `POST /webhook-subscribers/{id}`

### Fulfillments

- [List all fulfillments](https://docs.odus.com/docs/api/oms/fulfillment-controller-find-all.md): `GET /fulfillments`
- [Find one Fulfillment](https://docs.odus.com/docs/api/oms/fulfillment-controller-find-one.md): `GET /fulfillments/{id}`
- [Update fulfillment tracking](https://docs.odus.com/docs/api/oms/fulfillment-controller-update-tracking.md): `POST /fulfillments/{id}/tracking`

### Fulfillment Routes

- [List all fulfillment routes](https://docs.odus.com/docs/api/oms/fulfillment-route-controller-find-all-paginated.md): `GET /fulfillment-routes`
- [Create a fulfillment route](https://docs.odus.com/docs/api/oms/fulfillment-route-controller-create.md): `POST /fulfillment-routes`
- [Reorder fulfillment routes](https://docs.odus.com/docs/api/oms/fulfillment-route-controller-reorder.md): `POST /fulfillment-routes/reorder`
- [Publish a fulfillment route](https://docs.odus.com/docs/api/oms/fulfillment-route-controller-publish.md): `POST /fulfillment-routes/{id}/publish`
- [Unpublish a fulfillment route](https://docs.odus.com/docs/api/oms/fulfillment-route-controller-unpublish.md): `POST /fulfillment-routes/{id}/unpublish`
- [Activate a fulfillment route](https://docs.odus.com/docs/api/oms/fulfillment-route-controller-activate.md): `POST /fulfillment-routes/{id}/activate`
- [Deactivate a fulfillment route](https://docs.odus.com/docs/api/oms/fulfillment-route-controller-deactivate.md): `POST /fulfillment-routes/{id}/deactivate`
- [Find one fulfillment route](https://docs.odus.com/docs/api/oms/fulfillment-route-controller-find-one.md): `GET /fulfillment-routes/{id}`
- [Update a fulfillment route](https://docs.odus.com/docs/api/oms/fulfillment-route-controller-update.md): `POST /fulfillment-routes/{id}`

### Integrations

- [List all integrations](https://docs.odus.com/docs/api/oms/integration-controller-find-all-paginated.md): `GET /integrations`
- [Create an integration](https://docs.odus.com/docs/api/oms/integration-controller-create.md): `POST /integrations`
- [Find one integration](https://docs.odus.com/docs/api/oms/integration-controller-find-one.md): `GET /integrations/{id}`
- [Update an integration](https://docs.odus.com/docs/api/oms/integration-controller-update.md): `POST /integrations/{id}`
- [List ShipBob channels available to this integration](https://docs.odus.com/docs/api/oms/integration-controller-get-channels.md): `GET /integrations/{id}/channels`
- [List products in the external 3PL system](https://docs.odus.com/docs/api/oms/integration-controller-get-products.md): `GET /integrations/{id}/products`

### Integration Product Mappings

- [List all integration product mappings](https://docs.odus.com/docs/api/oms/integration-product-mapping-controller-find-all-paginated.md): `GET /integration-product-mappings`
- [Create an integration product mapping](https://docs.odus.com/docs/api/oms/integration-product-mapping-controller-create.md): `POST /integration-product-mappings`
- [Find one integration product mapping](https://docs.odus.com/docs/api/oms/integration-product-mapping-controller-find-one.md): `GET /integration-product-mappings/{id}`
- [Update an integration product mapping](https://docs.odus.com/docs/api/oms/integration-product-mapping-controller-update.md): `POST /integration-product-mappings/{id}`
- [Delete an integration product mapping](https://docs.odus.com/docs/api/oms/integration-product-mapping-controller-remove.md): `DELETE /integration-product-mappings/{id}`

### Inventory

- [List stock by SKU across 3PL integrations](https://docs.odus.com/docs/api/oms/inventory-controller-find-all-paginated.md): `GET /inventory`
- [Get one SKU’s inventory](https://docs.odus.com/docs/api/oms/inventory-controller-find-one.md): `GET /inventory/products/{sku}`
- [Set a SKU’s low-stock threshold](https://docs.odus.com/docs/api/oms/inventory-controller-set-threshold.md): `POST /inventory/products/{sku}/threshold`
- [Describe the inventory view](https://docs.odus.com/docs/api/oms/inventory-controller-get-sources.md): `GET /inventory/sources`
- [Refresh inventory](https://docs.odus.com/docs/api/oms/inventory-controller-refresh.md): `POST /inventory/refresh`

### Search

- [Search orders and fulfillments](https://docs.odus.com/docs/api/oms/search-controller-search.md): `GET /search`

### Secret Keys

- [Find all Secret Keys](https://docs.odus.com/docs/api/oms/secret-key-controller-find-all-paginated.md): `GET /secret-keys`
- [Create a Secret Key](https://docs.odus.com/docs/api/oms/secret-key-controller-create.md): `POST /secret-keys`
- [Find one Secret Key](https://docs.odus.com/docs/api/oms/secret-key-controller-find-one.md): `GET /secret-keys/{id}`
- [Update a Secret Key](https://docs.odus.com/docs/api/oms/secret-key-controller-update.md): `POST /secret-keys/{id}`
- [Delete a Secret Key](https://docs.odus.com/docs/api/oms/secret-key-controller-remove.md): `DELETE /secret-keys/{id}`

### Orders

- [List all Orders](https://docs.odus.com/docs/api/oms/order-controller-find-all-paginated.md): `GET /orders`
- [Get export column definitions](https://docs.odus.com/docs/api/oms/order-controller-get-export-columns.md): `GET /orders/export/columns`
- [List available integration export formats](https://docs.odus.com/docs/api/oms/order-controller-get-integration-export-formats.md): `GET /orders/export/integration-formats`
- [Validate orders for an integration export](https://docs.odus.com/docs/api/oms/order-controller-validate-integration-export.md): `GET /orders/export/integration-validation`
- [Find one Order](https://docs.odus.com/docs/api/oms/order-controller-find-one.md): `GET /orders/{id}`
- [List fulfillments for an order](https://docs.odus.com/docs/api/oms/order-controller-find-fulfillments.md): `GET /orders/{orderId}/fulfillments`
- [List history for an order](https://docs.odus.com/docs/api/oms/order-controller-find-history.md): `GET /orders/{orderId}/history`
- [Validate an order's recipient](https://docs.odus.com/docs/api/oms/order-controller-validate-recipient.md): `GET /orders/{orderId}/recipient-validation`
- [Bulk fulfill orders](https://docs.odus.com/docs/api/oms/order-controller-bulk-fulfill.md): `POST /orders/bulk-fulfill`
- [Import orders from payments](https://docs.odus.com/docs/api/oms/order-controller-import-orders.md): `POST /orders/import`
- [List available integration bulk-fulfill formats](https://docs.odus.com/docs/api/oms/order-controller-get-bulk-fulfill-integration-formats.md): `GET /orders/bulk-fulfill/integration-formats`
- [Get integration bulk-fulfill CSV template](https://docs.odus.com/docs/api/oms/order-controller-get-bulk-fulfill-integration-template.md): `GET /orders/bulk-fulfill/integration-formats/{type}/template`
- [Start a bulk fulfill](https://docs.odus.com/docs/api/oms/order-controller-start-bulk-fulfill.md): `POST /orders/bulk-fulfill/jobs`
- [Start a bulk fulfill from an integration file](https://docs.odus.com/docs/api/oms/order-controller-start-bulk-fulfill-integration.md): `POST /orders/bulk-fulfill/integration/{type}/jobs`
- [Fulfill an order](https://docs.odus.com/docs/api/oms/order-controller-fulfill.md): `POST /orders/{orderId}/fulfill`
- [Cancel an order or some of its items](https://docs.odus.com/docs/api/oms/order-controller-cancel.md): `POST /orders/{orderId}/cancel`
- [Add items to an order from payments](https://docs.odus.com/docs/api/oms/order-controller-add-items.md): `POST /orders/{orderId}/add-items`
- [Retry sending an order to its fulfillment provider](https://docs.odus.com/docs/api/oms/order-controller-retry-submission.md): `POST /orders/{orderId}/retry-submission`
- [Start an order export](https://docs.odus.com/docs/api/oms/order-export-controller-start.md): `POST /order-exports`
- [List past exports and bulk fulfills](https://docs.odus.com/docs/api/oms/order-job-controller-find-all-paginated.md): `GET /order-jobs`
- [Run a past export or bulk fulfill again](https://docs.odus.com/docs/api/oms/order-job-controller-rerun.md): `POST /order-jobs/{id}/rerun`
- [Resubmit an order that is on hold](https://docs.odus.com/docs/api/oms/order-resubmission-controller-resubmit.md): `POST /orders/{orderId}/resubmit`

### Merchant Configuration

- [Find the Merchant Configuration](https://docs.odus.com/docs/api/oms/merchant-config-controller-find-one.md): `GET /merchant-configs`
- [Update a Merchant Configuration](https://docs.odus.com/docs/api/oms/merchant-config-controller-update.md): `POST /merchant-configs/{id}`

### OMS Addon

- [Get OMS addon status](https://docs.odus.com/docs/api/oms/tenant-provisioning-controller-status.md): `GET /tenants/status`
- [Activate order creation](https://docs.odus.com/docs/api/oms/tenant-provisioning-controller-activate.md): `POST /tenants/activate`
- [Repair the OMS addon](https://docs.odus.com/docs/api/oms/tenant-provisioning-controller-repair.md): `POST /tenants/repair`
- [Pause order creation](https://docs.odus.com/docs/api/oms/tenant-provisioning-controller-pause.md): `POST /tenants/pause`

### Async Jobs

- [Get the status of an async job](https://docs.odus.com/docs/api/oms/async-job-controller-get-status.md): `GET /async-jobs/{id}`
- [Download the file an async job produced](https://docs.odus.com/docs/api/oms/async-job-controller-download-artifact.md): `GET /async-jobs/artifacts/{type}/{name}`
