List samples

GET /v0/clients/samples

Return every sample on your client's orders, ordered by order date descending and then by sample ID so the newest samples come first.

Use start and limit to page through the results (maximum 100 per page). When more results are available beyond the current page, more_results is true. Filters combine, so sending both status_id and harvest_id returns only samples matching both.

Query parameters

start integer optional

Zero-based offset of the first result.

Default: 0

limit integer optional

Maximum results per page (max 100).

Default: 100

status_id integer optional

Only return samples whose order is in this order status. See the order statuses endpoint for available IDs.

modified_since_time string optional

Only return samples whose order was modified after this timestamp.

client_id integer optional

Only return samples on orders for this client ID.

regulator_batch_id string optional

Only return samples with this batch ID from the state's seed-to-sale tracking system.

harvest_id string optional

Only return samples with this harvest lot ID from the state's seed-to-sale tracking system.

Try it

Log in to send test requests to this endpoint straight from the docs.

Responses

200 Success
samples array of objects
Show 27 child attributes Hide 27 child attributes
id string

Sample ID

order_id string

Orders ID

client_id integer

Client ID

lab object

Lab

Show 2 child attributes Hide 2 child attributes
id integer

Lab ID

name string

Lab Name

order_status_id integer

Order Status ID

order_status_name string

Order Status Name

sample_name string

Name of Sample

strain_name string

Name of Sample Strain

sample_industry_id integer

Sample Industry ID

sample_industry_name string

Sample Industry Name

sample_category_id integer

Sample Category ID

sample_category_name string

Sample Category Name

sample_type_id integer

Sample Type ID

sample_type_name string

Sample Type Name

sample_classification_id integer

Sample Classification ID

sample_classification_name string

Sample Classification Name

production_method_name string

Production Method name

production_method_id integer

Production Method ID

regulator_sample_id string

Unique ID from the state's seed-to-sale tracking system of the sample tested by the lab

regulator_batch_id string

Unique ID from the state's seed-to-sale tracking system of the client's batch from which the sample tested by the lab came

batch_id string

Unique ID from the client's inventory management system of the client's batch from which the sample tested by the lab came

harvest_id string

Unique ID from the state's seed-to-sale tracking system of the client's harvest lot from which the sample tested by the lab came

test_packages array of objects
Show 4 child attributes Hide 4 child attributes
id integer

Unique ID for Test Package

name string

Test Package Name

price number

Package Price - if 0, call for price

minimum_quantity number

Minimum sample quantity required for testing

last_modified timestamp

Time this sample was last modified

date_published timestamp

Published Date [when sample was published]

order_lims_id string

Orders lims ID

lims_id string

Sample lims ID

more_results boolean

True if more results are available beyond this page.

400 Bad request

The request was malformed or failed validation. Validation failures include per-field messages in error_details.

Possible error_code values: invalid_request, request_too_old.

401 Unauthorized

Authentication failed.

Possible error_code values: missing_api_key, invalid_api_key, invalid_credentials_type, api_access_restricted, api_access_denied, missing_signature, missing_timestamp, invalid_timestamp, invalid_signature.

403 Permission denied

The API key is valid but does not have permission for this endpoint (for example, a client key calling a labs endpoint).

Possible error_code values: permission_denied.

How to sign requests
# X-ConfidentLims-Signature: see the Request Signing guide - https://api.confidentcannabis.com/v0/docs/request-signing.md
curl -X GET 'https://api.confidentcannabis.com/v0/clients/samples' \
  -H 'X-ConfidentLims-APIKey: YOUR_API_KEY' \
  -H 'X-ConfidentLims-Timestamp: UNIX_TIMESTAMP' \
  -H 'X-ConfidentLims-Signature: REQUEST_SIGNATURE'
Response · 200
{
  "success": true,
  "samples": [
    {
      "id": "2603CAL0142.0001",
      "order_id": "2603CAL0142",
      "client_id": 4821,
      "lab": {
        "id": 118,
        "name": "Cascade Analytical Labs"
      },
      "order_status_id": 3,
      "order_status_name": "In Progress",
      "sample_name": "Blue Dream - Cured Flower",
      "strain_name": "Blue Dream",
      "sample_industry_id": 1,
      "sample_industry_name": "Cannabis & Hemp",
      "sample_category_id": 1,
      "sample_category_name": "Plant",
      "sample_type_id": 1,
      "sample_type_name": "Flower - Cured",
      "sample_classification_id": 4,
      "sample_classification_name": "Hybrid",
      "production_method_id": 1,
      "production_method_name": "Indoor",
      "regulator_sample_id": "1A4060300003B01000001234",
      "regulator_batch_id": "1A4060300003B01000000987",
      "batch_id": "BD-2026-03-A",
      "harvest_id": "HV-2026-01-BD",
      "test_packages": [
        {
          "id": 12,
          "name": "OR Recreational Flower Panel",
          "price": 275.0,
          "minimum_quantity": 5.0
        }
      ],
      "last_modified": "2026-03-12T08:31:19",
      "date_published": null,
      "order_lims_id": "CAL-2026-0142",
      "lims_id": "CAL-2026-0142-01"
    }
  ],
  "more_results": false
}