REST API Multiple Order Status Filter returns no records

Topic summary

Issue: Filtering orders by multiple statuses via the Shopify Admin REST API (2023-10) yields inconsistent results.

Observed behavior:

  • Single filters work: status=closed returns closed orders; status=cancelled returns cancelled orders.
  • Combining closed and cancelled fails: status=closed,cancelled returns an empty array (no records).
  • Combining open with other statuses works: status=open,cancelled returns records.

Key question:

  • Is the inability to combine closed and cancelled intended or a bug?
  • Is there a documented/approved way to filter by multiple order statuses?

Context:

  • REST API: web interface for programmatically accessing store data.
  • Order statuses referenced: open (active), closed (completed), cancelled (voided).

Current state:

  • No resolution or guidance provided in the thread.
  • The discussion is open, awaiting clarification on supported multi-status filtering syntax or limitations in the API.
Summarized with AI on December 31. AI used: gpt-5.

When filtering orders by order status, can we filter by multiple order statuses using the REST API or am I experiencing a bug?

Example:

If I make the following call:

/admin/api/2023-10/orders.json?status=closed

I receive my closed orders in the response

/admin/api/2023-10/orders.json?status=cancelled

I receive my cancelled orders in the response

/admin/api/2023-10/orders.json?status=closed,cancelled

I receive no records, just an empty array.

Bizarrely if combine the status filters in the following manner:

/admin/api/2023-10/orders.json?status=open,cancelled

I receive records back. Seemingly open can be combined with the other filter statuses.

Is the above behavior a bug or intended that closed and cancelled orders cannot be filtered with each other?

Is there an intended way to combine order status filters?