`/api/v1/me` is the bootstrap endpoint for a storefront: one call returns who the store is, how it should look, and which capabilities are switched on. Most storefronts fetch it once at build or boot and cache the result.

## Get Current Store

```
GET /api/v1/me
```

Returns a curated, secret-free view of the store behind the API key. It is deliberately an allowlist — API key hashes, deploy credentials, Stripe identifiers, and the merchant's address never cross this endpoint, and a newly added settings field stays private until it is explicitly exposed here.

```bash
curl \
  -H "Authorization: Bearer your_api_key" \
  https://your-store.yns.store/api/v1/me
```

### Response

```json
{
  "store": {
    "id": "0191abc0-1234-7def-8000-000000000001",
    "name": "Acme Candles",
    "subdomain": "acme",
    "domain": "acmecandles.com",
    "domainVerified": true,
    "currency": "usd",
    "locale": "en-US",
    "published": true,
    "environment": "live",
    "taxBehavior": "exclusive",
    "settings": {
      "storeName": "Acme Candles",
      "storeDescription": "Hand-poured soy candles",
      "socials": {},
      "freeShippingThreshold": 5000,
      "logo": "https://cdn.example.com/logo.svg",
      "favicon": "https://cdn.example.com/favicon.ico",
      "colors": {},
      "enabledTools": {},
      "defaultLanguage": "en-US",
      "enabledLanguages": {},
      "enabledCurrencies": ["usd", "eur"]
    }
  },
  "storeBaseUrl": "https://acmecandles.com",
  "publicUrl": "https://yns.store"
}
```

### Top-Level Fields

| Field | Description |
|-------|-------------|
| `store` | The store profile and its public settings |
| `storeBaseUrl` | The canonical base URL for this store — custom domain when verified, otherwise the subdomain |
| `publicUrl` | The platform root URL |

### Store Fields

| Field | Type | Description |
|-------|------|-------------|
| `id` | `string` | Store UUID |
| `name` | `string` | Store name |
| `subdomain` | `string` | The store's `*.yns.store` subdomain |
| `domain` | `string \| null` | Custom domain, when one is connected |
| `domainVerified` | `boolean` | Whether the custom domain has passed verification |
| `currency` | `string` | Base currency code |
| `locale` | `string` | Store locale |
| `published` | `boolean` | Whether the storefront is published |
| `environment` | `string` | `live` or `test` — see [test mode](/help/getting-started/test-mode) |
| `taxBehavior` | `string` | `inclusive` (shoppers see gross prices, tax included) or `exclusive` (shoppers see net prices, tax added at checkout). Use it to pick which price to render — see [Prices and tax](/docs/api-reference/products#prices-and-tax). |

### Settings Fields

Everything under `settings` is safe to render publicly.

| Group | Fields |
|-------|--------|
| **Identity** | `storeName`, `storeDescription`, `socials`, `logo`, `ogimage`, `favicon` |
| **Theme** | `colors`, `buttons`, `fontFamily`, `fontFamilyHeadings`, `fontSizes`, `pageWidth`, `cartIcon`, `productCards`, `checkoutAppearance` |
| **Commerce** | `freeShippingThreshold`, `freeShippingThresholds`, `omnibus` |
| **Capabilities** | `enabledTools` — which modules are switched on |
| **Localization** | `defaultLanguage`, `enabledLanguages`, `enabledCurrencies` |
| **Growth** | `newsletterPopup`, `welcomeOffer`, `cartRecommendations` |
| **Blog** | `blogFilterConfig` |

Use `enabledTools` to decide which storefront features to render — a wishlist button, a reviews section, a newsletter popup — so your storefront matches whatever the merchant has enabled in their dashboard.

Use `enabledLanguages` and `enabledCurrencies` to drive your language and currency switchers, then pass `lang` and `currency` to the catalog endpoints.

### Errors

| Status | Meaning |
|--------|---------|
| `404` | Store not found |

## Related

- [Settings API](/docs/api-reference/settings) — read and update the merchant-facing settings
- [Domain API](/docs/api-reference/domain) — manage the custom domain
- [Products API](/docs/api-reference/products) — the catalog this store exposes