All the API documentation is here - https://help.shopify.com/api/reference
The order call will give you all the info you need for the shipping labels. We create all our packing slips and labels via a simple interface.
The order api does not provide the zpl file from shopify shipping as far as I have ever seen. I can get the file location easily enough through the events api, but as far as I can tell there is no way to actually get the file contents.
I don't need the customers address and what not. I need the actual zpl file.
Hi Alexandra, Kurt here on the shipping team. You are correct that shipping labels are not exposed in the Orders API at this time. Would you mind elaborating on your scenario and what you're trying to accomplish here? This will be helpful in us understanding how we can improve our APIs or shipping interface.
We automatically download and print the zpl files upon purchase of the shipping label. It is quite a messy script that makes this possible currently, but is being broken by the captcha login.
In a perfect world you would allow us to input the weight, query the methods and costs, submit the method of choice, and download the label. All of this is performed by our in house inventory system. We need the API because our employees do not use devices capable of printing the files (android based). Once the order is picked and weighed the system takes over and a shipping label is printed automatically.
I would settle for simply exposing the zpl file via the event api (which is where we get the necessary details to create the download url), but the ability to actually purchase the shipping via API would elimate even more of the problem.
Assume a store has X orders per week.. Without this functionality, the process would be to open 1 browser tab per order (X tabs) and print out X shipping labels. Then you print your X pick lists and match them to their corresponding shipping label. This matching takes a lot of time, and has a high error risk.
If you could expose the shipping label in the API we could instead automatically download these X shipping label PDFs and merge them with our pick sheets (programmatically) to create one big PDF file. We print it once (every other is shipping label, every other is matching picklist).
For X<10, the prior process works well. For X>100 it quickly breaks down, and for X>1000 you'll need a fulltime person just to handle the lack of API support.
Now, the real question here is how anyone at Shopify needs me/us to explain the use case. Supposedly Shopify is an expert in e-commerce? This should be obvious to you?
Only explanation I can see is that Shopify IS NOT for scaled e-commerce, but only for small scale use cases. Seems that if you grow above a certain size, you need to move on.
Prove me wrong! And yes, the tone in my post is a bit negative, but I'm tired of hitting the wall with the shopify api (and GraphQL) constantly.