Querying cancelled orders using GraphiQL

Querying cancelled orders using GraphiQL

MaximRIT
Shopify Partner
14 1 1

Hello,

 

Trying to query cancelled orders only. They should have non-null values:

"cancel_reason" and "cancelled_at" - REST syntax

"cancelReason" and "cancelledAt" - GraphiQL syntax

 

First query I tried should return all orders after specified date with non-null cancel reason (according to syntax guide "*" should do that):

 

 

 

{
  orders(query:"created_at:>'2023-04-02T00:00:00' AND cancel_reason:*", first: 100) {
    edges {
      node {
        id
        createdAt
        cancelReason
        cancelledAt
      }
    }
    pageInfo {
      hasNextPage
    }
  }
}

 

 

 

But actually this query returns all orders after the date specified (2023-04-02) both with null "cancelReason" values and containing text.

 

My second attempt was to search by cancelled date:

 

 

{
  orders(query:"cancelled_at:>'2023-04-02T00:00:00'", first: 100) {
    edges {
      node {
        id
        cancelReason
        cancelledAt
      }
    }
    pageInfo {
      hasNextPage
    }
  }
}

 

 

 

But this query just returns all orders - both with null "cancelledAt" values and any with date populated.

 

I also tried to put "cancelReason" and "cancelledAt" variables (GraphiQL syntax instead of REST one) for those queries but this doesn't change the query result.

Reply 1 (1)

garyrgilbert
Shopify Partner
429 41 181

Hi Maxim,

 

You can't query by cancelled_at with either the graphql or rest api's.

 

GraphQL supports the following filter parameters only:

  • cart_token
  • channel
  • channel_id
  • chargeback_status
  • checkout_token
  • created_at
  • credit_card_last4
  • customer_id
  • delivery_method
  • discount_code
  • earliest_fulfill_by
  • email
  • financial_status
  • fraud_protection_level
  • fulfillment_location_id
  • fulfillment_status
  • gateway
  • location_id
  • name
  • payment_id
  • payment_provider_id
  • po_number
  • processed_at
  • reference_location_id
  • return_status
  • risk_level
  • sales_channel
  • sku
  • source_identifier
  • source_name
  • status
  • tag
  • tag_not
  • test
  • updated_at

 

Cheers,

 

Gary

- Was my reply helpful? Click Like to let me know!
- Was your question answered? Mark it as an Accepted Solution