---
title: "List Service Points"
method: POST
path: "/v1/service_points/list"
tags: ["service_points"]
---

# List Service Points

`POST /v1/service_points/list`

List carrier service points by location

## Request body

- GetServicePointsRequest — A get service points request body. Caller must provide exactly one of address_query, address, or lat / long pair.
  - `address_query` string — Unstructured text to search for service points by.
  - `address` object — Structured address to search by.
    - `address_line1` string — The first line of the street address. For some addresses, this may be the only line. Other addresses may require 2 or 3 lines.
    - `address_line2` string
    - `address_line3` string
    - `city_locality` string — The name of the city or locality
    - `state_province` string — The state or province. For some countries (including the U.S.) only abbreviations are allowed. Other countries allow the full name or abbreviation.
    - `postal_code` string — postal code
    - `country_code` string, required — A two-letter [ISO 3166-1 country code](https://en.wikipedia.org/wiki/ISO_3166-1)
  - `providers` object[], required — An array of shipping service providers and service codes
    - `carrier_id` string — Uniquely identifies a carrier connection
    - `service_code` string[]
  - `lat` number, double — The latitude of the point. Represented as signed degrees. Required if long is provided. http://www.geomidpoint.com/latlon.html
  - `long` number, double — The longitude of the point. Represented as signed degrees. Required if lat is provided. http://www.geomidpoint.com/latlon.html
  - `radius` integer — Search radius in kilometers
  - `max_results` integer — The maximum number of service points to return
  - `shipment` object — Shipment information to be used for service point selection
    - `total_weight` Weight — The weight of a package
      - `value` number, required — The weight, in the specified unit
      - `unit` 'pound' | 'ounce' | 'gram' | 'kilogram', required — The possible weight unit values
    - `packages` object[] — An array of package dimensions
      - `dimensions` Dimensions — The dimensions of a package
        - `unit` 'inch' | 'centimeter', required — The dimension units that are supported by ShipEngine.
        - `length` number, required — The length of the package, in the specified unit
        - `width` number, required — The width of the package, in the specified unit
        - `height` number, required — The height of the package, in the specified unit

## Response `200`

The request was a success.

- ListServicePointsResponseBody — A list service points response body
  - `lat` number, double — The latitude of the point. Represented as signed degrees. Required if long is provided. http://www.geomidpoint.com/latlon.html
  - `long` number, double — The longitude of the point. Represented as signed degrees. Required if lat is provided. http://www.geomidpoint.com/latlon.html
  - `service_points` object[]
    - `carrier_code` string — A [shipping carrier](https://www.shipengine.com/docs/carriers/setup/), such as `fedex`, `dhl_express`, `stamps_com`, etc.
    - `service_codes` string[]
    - `service_point_id` string — A unique identifier for a carrier drop off point.
    - `company_name` string — If this is a business address, then the company name should be specified here.
    - `address_line1` string — The first line of the street address. For some addresses, this may be the only line. Other addresses may require 2 or 3 lines.
    - `city_locality` string — The name of the city or locality
    - `state_province` string — The state or province. For some countries (including the U.S.) only abbreviations are allowed. Other countries allow the full name or abbreviation.
    - `postal_code` string — postal code
    - `country_code` string — A two-letter [ISO 3166-1 country code](https://en.wikipedia.org/wiki/ISO_3166-1)
    - `phone_number` string — Phone number associated
    - `lat` number, double — The latitude of the point. Represented as signed degrees. Required if long is provided. http://www.geomidpoint.com/latlon.html
    - `long` number, double — The longitude of the point. Represented as signed degrees. Required if lat is provided. http://www.geomidpoint.com/latlon.html
    - `distance_in_meters` number, double — Distance in meters
    - `hours_of_operation` object — Hours of operation
      - `monday` object[]
        - `open` string — Opening time
        - `close` string — Closing time
      - `tuesday` object[]
        - `open` string — Opening time
        - `close` string — Closing time
      - `wednesday` object[]
        - `open` string — Opening time
        - `close` string — Closing time
      - `thursday` object[]
        - `open` string — Opening time
        - `close` string — Closing time
      - `friday` object[]
        - `open` string — Opening time
        - `close` string — Closing time
      - `saturday` object[]
        - `open` string — Opening time
        - `close` string — Closing time
      - `sunday` object[]
        - `open` string — Opening time
        - `close` string — Closing time
    - `features` string[] — Service features
    - `type` 'pudo' | 'locker' — Service point type
  - `errors` Error[] — The errors associated with the failed API call
    - `error_source` 'carrier' | 'order_source' | 'shipengine', required — The source of the error, as indicated by the name this informs us if the API call failed because of the carrier, the order source, or the ShipEngine API itself.
    - `error_type` 'account_status' | 'business_rules' | 'validation' | 'security' | 'system' | 'integrations', required — The type of error
    - `error_code` 'auto_fund_not_supported' | 'batch_cannot_be_modified' | 'carrier_conflict' | 'carrier_disconnected' | 'carrier_not_connected' | 'carrier_not_supported' | 'confirmation_not_supported' | 'default_warehouse_cannot_be_deleted' | 'field_conflict' | 'field_value_required' | 'forbidden' | 'identifier_conflict' | 'identifiers_must_match' | 'insufficient_funds' | 'invalid_address' | 'invalid_billing_plan' | 'invalid_field_value' | 'invalid_identifier' | 'invalid_status' | 'invalid_string_length' | 'label_images_not_supported' | 'meter_failure' | 'order_source_not_active' | 'rate_limit_exceeded' | 'refresh_not_supported' | 'request_body_required' | 'return_label_not_supported' | 'settings_not_supported' | 'subscription_inactive' | 'terms_not_accepted' | 'tracking_not_supported' | 'trial_expired' | 'unauthorized' | 'unknown' | 'unspecified' | 'verification_failure' | 'warehouse_conflict' | 'webhook_event_type_conflict' | 'customs_items_required' | 'incompatible_paired_labels' | 'invalid_charge_event' | 'invalid_object' | 'no_rates_returned' | 'file_not_found' | 'shipping_rule_not_found' | 'service_not_determined' | 'no_rates_returned' | 'funding_source_registration_in_progress' | 'insurance_failure' | 'funding_source_missing_configuration' | 'funding_source_error', required — The error code specified for the failed API Call
    - `message` string, required — An error message associated with the failed API call
    - `carrier_id` string — A string that uniquely identifies a ShipEngine resource, such as a carrier, label, shipment, etc.
    - `carrier_code` string — A [shipping carrier](https://www.shipengine.com/docs/carriers/setup/), such as `fedex`, `dhl_express`, `stamps_com`, etc.
    - `field_name` string — The name of the field that caused the error

## Other responses

- `400` — The request contained errors.
- `404` — The specified resource does not exist.
- `500` — An error occurred on ShipEngine's side. > This error will automatically be reported to our engineers.

---

[API](https://skmtc.net/shipengine/apis/shipengine-api.md) · [All operations](https://skmtc.net/shipengine/apis/shipengine-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/shipengine/shipengine-api/revisions/6af91511d87e/schema)
