A space to discuss GraphQL queries, mutations, troubleshooting, throttling, and best practices.
Hi there,
Can someone at Shopify help me with with this issue?
X-Shopify-API-Version: 2021-10
X-Request-IDs: 14002aab-1fdc-437b-969f-175bf15721bb, 5a237171-bf5f-4552-9391-45b0bdc5d6c6
I have a FulfillmentOrder, and am attempting to create a Fulfillment based on that FO. I'm referencing the documentation here. My app is registered as a fulfillment service, and I believe has the appropriate API scopes: read/write merchant_managed_fulfillment_orders, read/write fulfillments).
The code:
fo = shopify.FulfillmentOrders.find(order_id="4542337646746")[0]
fulfillment = shopify.Fulfillment()
fulfillment.message = "The package was shipped this morning."
fulfillment.notify_customer = False
fulfillment.tracking_info = {
"number": "1562678",
"url": "https://www.my-shipping-company.com",
"company": "my-shipping-company"
};
fulfillment.line_items_by_fulfillment_order = [
{
"fulfillment_order_id": fo.id,
"fulfillment_order_line_items": [
{
"id": fo.line_items[0].id,
"quantity": 1
}
]
}
]
fulfillment.save()
The error:
urllib.error.HTTPError: HTTP Error 406: Not Acceptable
Thanks in advance!
Travis
Hey @travisd
I checked our logs for the request ID you shared and found a POST to the following endpoint, which has an invalid format:
/admin/api/2021-10/orders//fulfillments.json
You may just need to check how you are formatting your requests, but troubleshooting third party code is outside of my team's scope of support.
In case you haven't seen it already, I also wanted to recommend checking out our guide on migrating to the FulfillmentOrder resource, as the Fulfillment resource will be deprecated.
Cheers,
JamesG | API Support @ Shopify
- Was my reply helpful? Click Like to let me know!
- Was your question answered? Mark it as an Accepted Solution
- To learn more visit Shopify.dev or the Shopify Web Design and Development Blog
Hi @JamesG !
Thanks for letting me know about the invalid format on the URL.
Regarding the transition to FulfillmentOrders, how does one provide tracking information for an order without creating a Fulfillment resource? The migration guide and FulfillmentOrder documentation doesn't reference anything about carriers or tracking numbers.
How does one mark the order as "fulfilled" with a FulfillmentOrder? I've read the documentation thoroughly, and I don't see any reference to this.
Thanks!
Travis
Hi @travisd ,
I see you already found the information on the fulfillmentCreateV2 mutation. The Fulfillment.TrackingInfo can be provided as part of the FulfillmentCreateV2Payload when using GraphQL.
I also did some digging into the REST admin API and found out that although several of the features of the Fulfillments resource have been deprecated, it's still necessary to use it to create a new fulfillment in REST, or update tracking information.
Apologies for any confusion caused by my last reply, I'll follow up with the documentation team as well to see if we can update the language too.
Cheers,
JamesG | API Support @ Shopify
- Was my reply helpful? Click Like to let me know!
- Was your question answered? Mark it as an Accepted Solution
- To learn more visit Shopify.dev or the Shopify Web Design and Development Blog