API - Upcoming changes for filtering orders using tags

Upcoming API changes related to order filtering using tags

Release Date

Tue Nov 15th, 2022

Breaking Changes

GET /v3/order will no longer support not as a value for the tag_filter_by param.

Currently, the API offers tag_filter_by=not to get all orders without any of the tags passed in the tag param; tag_filter_by=not will be replaced with an exclude_tags param that will take tag names to mimic current functionality.

Example: GET /v3/order?tag=shippable&tag_filter_by=notGET /v3/order?exclude_tags=shippable

Other Changes

exclude_tags=<tags> can be used with tag=<tags> and tag_filter_by=and params in the GET /v3/order endpoint.

Support for GET /v3/order?exclude_tags= will start Oct 27, 2022, and GET /v3/order?tag_filter_by=not will be deprecated Nov 15th, 2022.

We hope to make finding orders with certain tags and without others easier.

1 Like

It looks like there’s another breaking change here (that is not documented).

For the shipping_info.status I am getting a value of ‘shipper created a label, ups has not received the package yet.’ which is not one of the predefined enum values (see below).

Please advise.

“status”: {
“type”: “string”,
“enum”: [

Hello @Hounddog

Can you post a link to the docs where you are seeing the enum?

It appears as though the document has been changed too. Our app was working yesterday and now it cannot deserialize the shipping_info.status field.

The enum you posted earlier feels to me like an old order.status shape, except orders do not have expired or manifest.

The shipping_info.status field represents the carrier status (for instance out for delivery today). These would mostly be null except for orders shipped through USPS. However, we’ve recently started populating UPS tracking statuses, so for orders shipped through UPS, this field will now contain information. There is no enum for this field, since we simply populate what the carrier shows.