Hello,
I used to get available shipping rates handles from draftOrderCalculate, but it’s suddenly started to return a JWT in the “handle” field.
Example request
mutation CalculateDraftOrder($input: DraftOrderInput!) {
draftOrderCalculate(input: $input) {
calculatedDraftOrder {
availableShippingRates {
handle
title
price {
amount
}
}
...
results in:
{
"data": {
"draftOrderCalculate": {
"calculatedDraftOrder": {
"availableShippingRates": [
{
"handle": "eyJhbGciOiJIUzI1NiJ9.eyJ0aXRsZSI6InNoaXBwaW5nLXRlc3QiLCJjb2RlIjoic2hpcHBpbmctdGVzdCIsInNvdXJjZSI6InNob3BpZnkiLCJwcmljZSI6IjAuMCIsImN1cnJlbmN5IjoiRVVSIiwicHJpY2VfcHJlc2VudG1lbnQiOiIwLjAiLCJjdXJyZW5jeV9wcmVzZW50bWVudCI6IkVVUiIsImVzdGltYXRlZF9kZWxpdmVyeV90aW1lX3JhbmdlIjpudWxsLCJncm91cF9pZCI6bnVsbH0.2SuHhYPQWGa8vUNXUDrGyLGMYAs_c93asswCSckdiF4",
"title": "shipping-test",
"price": {
"amount": "0.0"
}
},
...
This JWT resolve as:
{
"title": "shipping-test",
"code": "shipping-test",
"source": "shopify",
"price": "0.0",
"currency": "EUR",
"price_presentment": "0.0",
"currency_presentment": "EUR",
"estimated_delivery_time_range": null,
"group_id": null
}
… instead of just getting the handle string as usual, which should be “human readable” (cf doc).
I have no clue what happened. I tried with differents api version (23/24/25). It was not the case around 1 month ago, and I can’t find any changes related to this anywhere.
Thanks in advance