API Reference

A project in Omnium is used to handle all activities that are completed over a period of time. There are multiple use cases for projects, such as return and claim workflows, long-running sales, or selling services. Projects connect collections of carts, orders, and returns with all other data needed for project management.

Key project features

  • Workflows
  • Partners
  • Project parts
  • Change orders
  • Transactions
  • Products with per-product status, reason codes, and custom properties

Project Model

See the full project model definition:
Omnium Project Model


Project Products

Projects can contain a list of products, typically used for claim projects or projects created from purchase orders. Each product in a project supports:

  • Status — per-product status (e.g. Active, Cancelled)
  • CancellationCode — complaint/cancellation reason code
  • CancellationReason — free text reason for cancellation or complaint
  • Properties — custom key-value properties per product

Product Model

PropertyTypeDescription
namestringProduct name
skuIdstringProduct SKU ID
productIdstringProduct ID
quantitydecimalNumber of products
statusstringPer-product status (e.g. Active, Cancelled)
cancellationCodestringComplaint/cancellation reason code
cancellationReasonstringFree text complaint/cancellation reason
propertiesarrayCustom properties (key/value pairs)
referenceTypestringReference type (defined on project type)
orderTypestringOrder type the product is related to
orderIdstringID of the associated order

Update Product Status

Update the status of individual products within a project.

Endpoint: POST /api/Projects/UpdateProjectProductStatus

Authorization: Project Admin

Request body:

{
  "projectId": "project-123",
  "productStatusUpdates": [
    {
      "skuId": "SKU-001",
      "status": "Cancelled",
      "cancellationCode": "Defect",
      "cancellationReason": "Product was damaged on arrival"
    },
    {
      "skuId": "SKU-002",
      "status": "Active"
    }
  ]
}
PropertyTypeDescription
projectIdstringThe project ID (required)
productStatusUpdatesarrayList of per-product status updates (required)
productStatusUpdates[].skuIdstringSKU ID of the product to update
productStatusUpdates[].statusstringNew status for this product
productStatusUpdates[].cancellationCodestringCancellation/complaint code (optional)
productStatusUpdates[].cancellationReasonstringFree text reason (optional)

Response: Updated OmniumProject

Products via PUT / PATCH

Products can also be included in the standard PUT /api/Projects and PATCH /api/Projects endpoints by including the products array in the request body. When included via PATCH, the entire product list is replaced.

Example (PATCH):

{
  "id": "project-123",
  "products": [
    {
      "skuId": "SKU-001",
      "productId": "PROD-001",
      "name": "Product A",
      "quantity": 1,
      "status": "Active",
      "properties": [
        { "key": "Color", "value": "Red" }
      ]
    }
  ]
}

Searching Projects

Use the SearchProjects endpoint to find projects:

Search Projects API

Example Request

{
  "take": 10,
  "page": 1,
  "query": "Oppussing bad"
}

This request retrieves the first 10 projects that match the search query.

Sorting Results

By default, projects are returned in the order of their document ID. To sort the results, add the sortOrder property to the request:

{
  "take": 10,
  "page": 1,
  "query": "Oppussing bad",
  "sortOrder": "CreatedDescending"
}

This example sorts projects by creation date in descending order.

Available Sort Orders

  • CreatedAscending
  • CreatedDescending
  • ModifiedAscending
  • ModifiedDescending
  • ProjectTypeNameAscending
  • ProjectTypeNameDescending
  • CustomerAscending
  • CustomerDescending
  • PartnerAscending
  • PartnerDescending
  • ProjectDeadlineAscending
  • ProjectDeadlineDescending
  • ProjectValueAscending
  • ProjectValueDescending
  • ProjectStoreContactAscending
  • ProjectStoreContactDescending
  • ProjectCurrentWorkflowStepAscending
  • ProjectCurrentWorkflowStepDescending

Project Types

See the full project type model definition:
Omnium Project Type Model

On this page