> **For coding agents and LLMs:** This is one Social Fetch marketing page (markdown export). For API orientation start with [`/llms.txt`](https://www.socialfetch.dev/llms.txt); for auth and crawl rules use [`/agents.txt`](https://www.socialfetch.dev/agents.txt); for every operation use [`/llms-endpoints.txt`](https://www.socialfetch.dev/llms-endpoints.txt).

## This page

- **On-site (HTML):** <https://www.socialfetch.dev/platforms/shopify/store-locations>
- **Markdown (.mdx) URL:** <https://www.socialfetch.dev/platforms/shopify/store-locations.mdx>

---

# Shopify Locations API

Physical store locations with the address and coordinates the merchant publishes.

`GET /v1/shopify/store/locations?store=…` returns `data.locations`, each with `id`, `name` and an `address` object: `address1`, `address2`, `city`, `province`, `provinceCode`, `zip`, `country`, `countryCode`, `latitude`, `longitude`, `phone` and `formatted` lines.

Use `limit` and `cursor` to page. An online-only store can return `found` with an empty list, so treat an empty list as a real answer rather than a failure.

## Request

- **Endpoint:** `GET /v1/shopify/store/locations`
- **Credits:** 1 credit
Failed requests are free
- **Input:** by store
- **Full reference:** [docs](https://www.socialfetch.dev/docs/api/v1/shopify/store/locations/get)
- **Platform page:** [/platforms/shopify](https://www.socialfetch.dev/platforms/shopify)

## FAQ

### Why is the location list empty?

Some stores have no public physical locations. The answer is still found and the list is empty.

### Are coordinates always present?

No. latitude and longitude are null when the merchant did not publish them for that location.

### How do I page?

Read page.hasMore and pass page.nextCursor back as cursor with the same filters.

### How do I name the store?

The store is the domain, for example allbirds.com, www.allbirds.com or weareallbirds.myshopify.com. A full URL is reduced to its host.

### How is it billed?

Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged: that field is the billing source of truth. Each paginated page is a separate billed request.

### What does lookupStatus mean?

found means the lookup succeeded. not_found means the store or entity does not exist or is not a Shopify store. private means the storefront is password-protected. restricted means it is paused or frozen. HTTP 200 only means the request finished, so branch on lookupStatus.
