Adding multiple tracking numbers to a single item (multi-box shipments) via the new REST fulfillments.json appears unsupported. The requester is migrating from a deprecated API and seeks a REST-based solution.
Suggested approach: Use a GraphQL mutation, which supports this workflow. One participant migrated fulfillments to the new FulfillmentOrder API via GraphQL.
REST possibility: It may work by passing arrays of tracking IDs and tracking URLs, though this seems undocumented. Recommendation is to try it on a test shop.
Context/terms: REST is a standard HTTP API; GraphQL is a flexible query/mutation API; FulfillmentOrder API is the newer fulfillment model in Shopify.
Trade-offs: GraphQL has a learning curve but enables powerful operations (e.g., batch updating ~2300 product inventories in under a minute).
Outcome: No confirmed REST method in this thread. Action items: test array-based tracking in REST; consider adopting GraphQL. Status: open/unresolved.
Using REST API and migrating to the new one as old is been deprecated.
We have products that have more than 1 box (2,3 or 4). We will like to add more than 1 tracking numbers to the same product, but seems like the REST API fulfillments.json does not allow it. I read something about a possible update.
Well you could use the GraphQL mutation to do it instead. Its not particularly difficult. We migrated all of our fulfillments to graphql when we migrated to the new fulfillmentorder api.
There used to be a way to do it. just by passing an array of tracking ids and tracking urls. Maybe its undocumented. Give it a try on a test shop and see if it works. GraphQL does have a bit of a learning curve but it has some very very powerful features not available in the REST apis (like batch updating 2300 products inventory in under a minute).