Getting started

Welcome 👋

Welcome to String's API documentation! Here you'll find information about the endpoints available to you, as well as the parameters and responses these endpoints will accept and return.

String is here to help you ship orders to your customers at the lowest cost. To do that, String finds the smallest package option an order will fit into. String also finds the fastest and lowest cost shipping option for any parcel shipment in the United States based on the parameters you provide.

String can filter out different packages, carriers, or shipping service levels based on your preferences and business rules. String can also filter out different carriers and service levels based on time-in-transit requirements.

The endpoints

String has two endpoints available to you to help you optimize shipments.

Least Cost Fulfillment

The first is the /lcf endpoint.

'LCF' stands for 'Least Cost Fulfillment' and is the name of the endpoint you'll use to get a fully optomized shipping configuration from String. String returns the fastest and most cost-effective shipping configuration for a shipment based on the parameters you provide.
String also returns the optimal package size if requested.

To find the optimal shipping service for every shipment, String factors in things like package cost, delivery speed, fees, and surcharges. By using accurate, robust, and real-time data, String can precisely find the best shipping option for any parcel shipment in the United States with a single API request.

After you make a request to the /lcf endpoint, String does the hard work to find the best package, carrier, and service level for your shipment. String considers any qualfiying carrier, service level, and package option available for you based on the parameters you provide.

What's particuarly unique about String is that it can compare flat rate shipping options to dynamically rated shipping options. This is only possible when you allow String to find the optimal package size for your shipment.

In order to indicate the proper configuration for a shipment, String uses a set of codes to indicate the carrier used, serivce level, and package option. Visit the Codes section for code definitions.


The second endpoint available to you is the /pack endpoint.

This endpoint is used to find the smallest package option an order will fit into.
String wil only return the smallest package option that will fit all the items in an order.

If you use Flat Rate packaging from carriers like USPS, FedEx, and UPS, String will return the smallest Flat Rate package in addition to the smallest custom package.

More information on how our packing algorithm works can be found in the Packing description.


String is built to be highly reliable and we aim for 99.9% uptime. Because we're consistently releasing impovements for String while maintiaing high reliabilty, we have a daily maintanence window where the API may be down for as long as 20 minutes. Our maintanence window is from 11PM PT to 12pm PT in order to minimize service interuptions.


String will provide you with an API key that you will use to make requests to the API. Do not share these credentials outside of your organziation because any requests made with your credentials will be billed to your account.