If you don’t want to build and maintain your own service point selection interface, integrate Sendcloud’s hosted
service point picker instead.
Configure carriers in your integration settings
If you plan to search using the carriers configured for your integration, enable service point delivery and the carriers you want to use:- In the Sendcloud platform, go to your integration settings
- Find your API integration and click Configure
- Enable service point delivery
- Enable the carriers you want to use for service point delivery and save your changes
Search for service points
Use the Retrieve a list of service points endpoint to find service points near a location. Acountry_code is required. You also need to specify which carriers to search and provide the location to search around.
Choose which carriers to search
- Set
use_integration_carriers=trueto use the carriers configured for your integration. - Provide one or more
carrier_codeparameters to search specific carriers directly.
use_integration_carriers, make sure service points and the required carriers are configured as described in Configure carriers in your integration settings.
Carriers provided with carrier_code do not need to be enabled in your integration settings.
Provide a search location
You can search around an address or known coordinates. Provide the full address inaddress or its individual parts using the address_* parameters. The API geocodes the address into a reference location and returns the closest matching service points first.
If you already know the location’s coordinates, provide latitude and longitude instead.
When using the structured address parameters, combine address_house_number with address_street or address_postal_code. A house number on its own is not specific enough to locate an address.
Send the request
For example, to search around an address using the carriers configured for your integration:Example request method and URL
Example request method and URL
If you only need a few nearby service points, use
limit to reduce the number of results returned. This reduces the
response size and the amount of data your integration needs to process.Handle the response
The closest matching service points are returned first:Example response body
data.geocoding to see how the address was resolved:
statustells you whether the address was matched, partially matched, or not found.precisionindicates how precisely the location was resolved.formatted_addressshows the address the search was based on.
partially_matched result can still return service points, while precision indicates how closely the resolved location matches the address you provided.
Use the returned service points according to your flow. In a customer-facing flow, you can present them to the customer for selection. In an automated flow, your system can select one directly.
Whichever approach you use, keep the Sendcloud id of the selected service point. You’ll need it to check availability and create the shipment.
No service points found
An emptyresults list does not necessarily mean the address could not be found.
When searching by address, check data.geocoding.status to distinguish between an address that was resolved successfully and one that could not be resolved.
If the status is matched or partially_matched, the location was resolved but no service points matched the search:
Example response - no matching service points
radius or expand the bounding box, or remove these limits entirely to return the closest matching service points regardless of how far away they are.
If data.geocoding.status is not_found, the address itself could not be resolved:
Example response - address not found
Check that a service point is still available
Service point availability can change over time. The search endpoint may return service points based on recently updated data, but that does not guarantee they are still available for delivery. Before creating the shipment, check the selected service point using the Check availability of a service point endpoint. The hosted service point picker already checks availability when the customer makes their selection, but availability can change between checkout and fulfillment, so check again before you create the shipment. Use the Sendcloudid of the selected service point:
Example request method and URL
Example response body
is_available is false, do not continue with that service point. Your flow should select a different service point before creating the shipment.
Next step
With an available service point selected, continue with creating the shipment.Create a shipment with service point delivery
Use the selected service point to find a compatible shipping option, then create and announce the shipment.