NutraSoft food manufacturing ERP software
Esc
  • GuideGetting startedThree steps to your first call and your first order, then the two shapes every response takes.
  • GuideAuthentication and keysBearer keys, test and live environments, rotation without an outage, and what each scope grants.
  • GuideTest modeA second NutraSoft account of your own, seeded with realistic data, that you can safely break.
  • PageErrorsEvery error code the API returns, what it means, what to do about it and whether to retry.
  • PageConventionsThe rules every operation follows: money, time, paging, sorting, nulls, PATCH and identifiers.
Menu

Price lists

Customer price lists. Prices need cost:read.

sales:readhttps://public-api.nutrasoft.ca/v1

The Price list object

  • idinteger
  • codestringnullable
  • descriptionstringnullable
  • end_datestringnullable
    • UTC timestamp
  • itemsarray of objectsnullable

    On GET /price-lists/{price_list_id} only; null on the list.

    Show 3 fields of items
    • custom_namestringnullable

      The name documents use for the product; null means its own name.

    • pricenumbernullable

      The list price. Requires cost:read; null means redacted.

    • product_idinteger
  • namestringnullable
  • start_datestringnullable
    • UTC timestamp

Operations

List price lists

get/price-listssales:read

items is null here: retrieve a price list for its prices.

Query parameters

  • searchstringnullable

    Free-text match on code, name or description.

  • namestringnullable

    Partial match on the name.

  • sortstringnullable

    Comma-separated field:direction pairs, e.g. id:desc. Sortable: code, id, name. id is always added last, so paging is stable.

  • limitinteger

    Rows to return. Maximum 200.

    • >= 1
    • <= 200
    • default 50
  • offsetinteger

    Rows to skip. Maximum 10000: to read further, narrow the filters or page with updated_since.

    • >= 0
    • <= 10000
    • default 0
Returns
200 A page of PriceList objects in data, with pagination.
Errors
400 401 403 429 500 503
GET /price-lists
curl "https://public-api.nutrasoft.ca/v1/price-lists?limit=50" \
  -H "Authorization: Bearer $NUTRASOFT_API_KEY"
Response200
{
  "data": [
    {
      "id": 123,
      "code": "SAMPLE-01",
      "description": "string",
      "end_date": "2026-09-10T14:30:00Z",
      "items": null,
      "name": "Sample name",
      "start_date": "2026-09-10T14:30:00Z"
    }
  ],
  "pagination": {
    "limit": 50,
    "offset": 0,
    "total": 1,
    "has_more": false
  },
  "order": "id:asc"
}

Retrieve a price list

get/price-lists/{price_list_id}sales:read

Includes the list's products. Prices require cost:read.

Path parameters

  • price_list_idintegerrequired

    The price list's id.

    • > 0
Returns
200 One PriceList object in data.
Errors
400 401 403 404 429 500 503
GET /price-lists/{price_list_id}
curl "https://public-api.nutrasoft.ca/v1/price-lists/123" \
  -H "Authorization: Bearer $NUTRASOFT_API_KEY"
Response200
{
  "data": {
    "id": 123,
    "code": "SAMPLE-01",
    "description": "string",
    "end_date": "2026-09-10T14:30:00Z",
    "items": [
      {
        "custom_name": "Sample name",
        "price": 12.5,
        "product_id": 123
      }
    ],
    "name": "Sample name",
    "start_date": "2026-09-10T14:30:00Z"
  }
}