I'm using the C# Shippo library to provide a way for a client to create and print shipping labels for his online store. He will always use the same carrier and service level and doesn't do international shipping.
It looks like I should be able to create a shipment with async="false", and look in the rate_list I get back to identify the rate object_id I need to use when I create the transaction. Which leaves just pulling out the correct rate.
At first I thought I could look for a specific provider and service_level_token combination, but I can't see how to determine what these values will be without first enumerating the API for them. I'm not seeing where any of the rate object properties I get back are in the Shippo dashboard UI for managing carriers, which would make it difficult to communicate with the client what values they need to configure for my utility to work (I'll need to talk them through looking it up, I won't have access to their production account).
What's the suggested way to go about creating transactions that will always use the same carrier and shipping method? Is there a value I can just save and use to lookup in rates_list that's visible somewhere in the UI?
If you know in advance which carrier/service you're going to use than I recommend using Shippo's Single Call Label Creation. It saves you one API call and you'll directly get the label you're looking for without iterating through the rates.
Also, you can find all servicelevel and carrier values in Shippo's API reference: