> This page is for Developer.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.bigcommerce.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.bigcommerce.com/_mcp/server.

# Get Store

GET https://api.bigcommerce.com/franchises/franchise_uuid/v1/stores/{store_id}

This endpoint allows you to retrieve details for a specific store on a specific account under your franchise. You can also poll this endpoint to confirm if a store has completed provisioning.

Reference: https://docs.bigcommerce.com/developer/docs/beta/powered-by/api-reference/stores/get-store

## Authentication

- `X-Auth-Client` header (required) — The client ID of the franchise API account.
- `X-Auth-Token` header (required) — An OAuth token generated from the franchise API account. To authenticate, generate an **OAuth Token** (if you donʼt have one or itʼs expired): ```http POST https://api.bigcommerce.com/franchises/{franchise_uuid}/v1/oauth/token Accept: application/json X-Auth-Client: {client_id} X-Auth-Secret: {client_secret} { "duration": 900 } ``` Response: ```json { "access_token": "dlkJcn34...Lkd012", "expires_at": "2018-04-24T16:15:26.509045122Z” } ``` After you generate an **OAuth token**, use the `client_id` and `oauth_token` to authenticate all other API requests: ```http GET https://api.bigcommerce.com/franchises/{franchise_uuid}/v1/accounts/123 Accept: application/json X-Auth-Client: {client_id} X-Auth-Token: {oauth_token} ``` Response: ```json { "data": { "id": "12345678910", "name": "Test Company", ... }, "meta": {} } ```

## Request

### Path parameters

- `store_id` (string, required) — The ID of the store.

### Headers

- `Accept` (string, required, default: application/json) — The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body.

## Response

### 200

Success If a “Create Store” request was successfully received, the store - in any status - will be returned with a 200 response code, along the store’s status and settings. Merchant’s can access their store once the status is “active”. At this point, an email for account verification should have been received by them. Provisioning store example (not ready for login): ```json { "data": { "id": "1520270098436", "status": "provisioning", "plan_sku": "STORE-TRIAL-15DAY", "store_name": "Pflugerville Coop" "country": "US", "account_id": "e818f592-5b73-4ba8-b14c-fc9d8cfb1453", "store_launched": false }, "meta": {} } ``` Allocating store example (not ready for login): ```json { "data": { "id": "1520270098436", "status": "allocating", "plan_sku": "STORE-TRIAL-15DAY", "store_name": "Pflugerville Coop" "store_hash": "lhv58otl0w", "primary_hostname": "pflugerville-coop.store.bcdev", "canonical_hostname": "store-lhv58otl0w.store.bcdev", "country": "US", "expires_at": "2018-03-20T17:17:58Z", "account_id": "e818f592-5b73-4ba8-b14c-fc9d8cfb1453", "store_launched": false }, "meta": {} } ``` Active store example (ready for login): ```json { "data": { "id": "1520270098436", "status": "active", "plan_sku": "STORE-TRIAL-15DAY", "store_name": "Pflugerville Coop" "store_hash": "lhv58otl0w", "primary_hostname": "pflugerville-coop.store.bcdev", "canonical_hostname": "store-lhv58otl0w.store.bcdev", "country": "US", "allocated_at": "2018-03-05T17:18:33Z", "expires_at": "2018-03-20T17:17:58Z", "account_id": "e818f592-5b73-4ba8-b14c-fc9d8cfb1453", "store_launched": false }, "meta": {} } ```

- `data` (StoresStoreIdGetResponsesContentApplicationJsonSchemaData, optional)
- `meta` (StoresStoreIdGetResponsesContentApplicationJsonSchemaMeta, optional)

## Errors

### 401 Unauthorized Error

Unauthorized If a franchise makes a request with a `client_id` and access token that do not belong together or are expired, a 401 Unauthorized Credentials response is returned.

- `status` (double, required)
- `title` (string, required)
- `type` (string, required)

### 404 Not Found Error

Not Found If the requested account resource is not found for the franchise, you get a 404 Not Found.

- `status` (double, required)
- `title` (string, required)
- `type` (string, required)

### 502 Bad Gateway Error

Bad Gateway If something happens during the request that causes it to fail, a 502 response is returned. Submit a new get request. If it continues to fail, check the BigCommerce system status [here](http://status.bigcommerce.com/). A service is likely down and the request needs to be made again when the service is back up.

- `status` (double, required)
- `title` (string, required)
- `type` (string, required)

### 503 Service Unavailable Error

If this occurs, you should retry the request. If you are unable to successfully make a request, please check [the BigCommerce system status](http://status.bigcommerce.com/). A service is likely down and you will need to send the request again when the system is back up.

- `status` (double, optional)
- `title` (string, optional)
- `type` (string, optional)
- `errors` (StoresStoreIdGetResponsesContentApplicationJsonSchemaErrors, optional)

### 504 Gateway Timeout Error

If this occurs, retry the request. Typically retrying the request several times will result in a successful request. However, if you are unable to successfully make a request, please check the BigCommerce system status [here](http://status.bigcommerce.com/). A service is likely down and the request should be made again when it is back up. In some cases, this error indicates that the original “Create Store” request was never successful and needs to be retried. You can use the same response body as the initial Create Store request. The title will indicate this, as seen below: ```json { "status": 504, "title": "This store could not be created. Please try another store creation request.", "type": "/developer/api-reference/rest/overview#rest-http-status-codes", "errors": { } } ```

- `status` (double, optional)
- `title` (string, optional)
- `type` (string, optional)
- `errors` (StoresStoreIdGetResponsesContentApplicationJsonSchemaErrors, optional)

## Types

### StoresStoreIdGetResponsesContentApplicationJsonSchemaData

- `id` (string, optional) — External id of the store, as provided by partner or created by BigCommerce (if no value provided) upon store creation
- `status` (string, optional) — Store’s current workflow status (Active, Cancelled, Suspended, etc.)
- `plan_sku` (string, optional) — Plan SKU for the store
- `store_name` (string, optional) — Name of the store
- `store_hash` (string, optional) — Unique identifier contained in the canonical_hostname
- `primary_hostname` (string, optional) — Main domain of store
- `canonical_hostname` (string, optional) — Permanent domain of store
- `country` (string, optional) — Country where store is located
- `allocated_at` (string, optional) — Date on which store was provisioned
- `expires_at` (string, optional) — Date on which store trial expires, if applicable
- `account_id` (string, optional) — External id of the account to which the store belongs, as provided by partner or created by BigCommerce upon account creation
- `store_launched` (boolean, optional) — Specifies if the merchant has launched their BigCommerce store

### StoresStoreIdGetResponsesContentApplicationJsonSchemaMeta

### StoresStoreIdGetResponsesContentApplicationJsonSchemaErrors

## Examples

**Response**

```json
{
  "data": {
    "id": "1520270098436",
    "status": "active",
    "plan_sku": "STORE-TRIAL-15DAY",
    "store_name": "Pflugerville Coop",
    "store_hash": "lhv58otl0w",
    "primary_hostname": "pflugerville-coop.store.bcdev",
    "canonical_hostname": "store-lhv58otl0w.store.bcdev",
    "country": "US",
    "allocated_at": "2018-03-05T17:18:33Z",
    "expires_at": "2018-03-20T17:17:58Z",
    "account_id": "e818f592-5b73-4ba8-b14c-fc9d8cfb1453",
    "store_launched": false
  },
  "meta": {}
}
```

**SDK Code**

```python Example
import requests

url = "https://api.bigcommerce.com/franchises/franchise_uuid/v1/stores/store_id"

headers = {
    "Accept": "application/json",
    "X-Auth-Client": "<apiKey>"
}

response = requests.get(url, headers=headers)

print(response.json())
```

```javascript Example
const url = 'https://api.bigcommerce.com/franchises/franchise_uuid/v1/stores/store_id';
const options = {
  method: 'GET',
  headers: {Accept: 'application/json', 'X-Auth-Client': '<apiKey>'}
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go Example
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.bigcommerce.com/franchises/franchise_uuid/v1/stores/store_id"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("Accept", "application/json")
	req.Header.Add("X-Auth-Client", "<apiKey>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby Example
require 'uri'
require 'net/http'

url = URI("https://api.bigcommerce.com/franchises/franchise_uuid/v1/stores/store_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Accept"] = 'application/json'
request["X-Auth-Client"] = '<apiKey>'

response = http.request(request)
puts response.read_body
```

```java Example
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.bigcommerce.com/franchises/franchise_uuid/v1/stores/store_id")
  .header("Accept", "application/json")
  .header("X-Auth-Client", "<apiKey>")
  .asString();
```

```php Example
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.bigcommerce.com/franchises/franchise_uuid/v1/stores/store_id', [
  'headers' => [
    'Accept' => 'application/json',
    'X-Auth-Client' => '<apiKey>',
  ],
]);

echo $response->getBody();
```

```csharp Example
using RestSharp;

var client = new RestClient("https://api.bigcommerce.com/franchises/franchise_uuid/v1/stores/store_id");
var request = new RestRequest(Method.GET);
request.AddHeader("Accept", "application/json");
request.AddHeader("X-Auth-Client", "<apiKey>");
IRestResponse response = client.Execute(request);
```

```swift Example
import Foundation

let headers = [
  "Accept": "application/json",
  "X-Auth-Client": "<apiKey>"
]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.bigcommerce.com/franchises/franchise_uuid/v1/stores/store_id")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```