---
title: "Match a store to a project"
method: GET
path: "/store_connection"
tags: ["Store Integrations"]
---

# Match a store to a project

`GET /store_connection`

## Request

- Base URL: `https://api.llmpulse.ai/api/v1`
- URL: `https://api.llmpulse.ai/api/v1/store_connection`
- Auth: API key in header `Authorization`

Tells a store app whether the API key's account can use it and which project the store belongs to: the live project whose domain equals the store domain, else one whose domain is a parent or a subdomain of it, else null. candidates lists every live project of the account so the app can offer a picker. Pitch projects are never matched or listed, since a store is a data connection a pitch project does not take. Takes no project_id. Not available to accounts with a white-label portal or an embed (ERR_INTEGRATION_UNAVAILABLE).

## Query parameters

- `platform` 'shopify', required
- `domain` string, required

## Response `200`

Eligibility, the matching project and the candidates

- StoreConnectionResponse
  - `platform` string, required: The store platform, e.g. shopify
  - `domain` string, required: The store domain as compared: lowercase, without scheme, www or path
  - `project` object, nullable, required: The live project the store maps to: its domain equals the store's, or is a parent or subdomain of it. Null when no project matches
    - `id` integer, required
    - `name` string, required
    - `domain` string, required
    - `country_code` string, nullable
    - `language_code` string, nullable
  - `ambiguous` boolean, required: True when several live projects match the store domain (for example one project per market). project is then null and the app asks the key holder to pick from candidates.
  - `candidates` object[], required: Every live project of the account, for a project picker
    - `id` integer, required
    - `name` string, required
    - `domain` string, required: Empty when the project has no website URL
  - `account` object, required
    - `plan` string, nullable: Internal plan key of the account, e.g. scale or scaleplus; null for a key limited to some projects
  - `request_id` string, required

## Other responses

- `403`: The account has a white-label portal or an embed, so store integrations are not available (ERR_INTEGRATION_UNAVAILABLE). Writes with a read-only key answer ERR_INSUFFICIENT_SCOPE, and a team member without the permission ERR_INSUFFICIENT_PERMISSION, with the same status
- `422`: Invalid parameters

## Changes

- **2026-10-04** `8698fcf9df22`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/llmpulse/apis/llm-pulse-api/changes/store_connection/get.md)

---

[API](https://skmtc.dev/llmpulse/apis/llm-pulse-api.md) - [All operations](https://skmtc.dev/llmpulse/apis/llm-pulse-api/llms.txt) - [OpenAPI document](https://skmtc.dev/llmpulse/apis/llm-pulse-api/revisions/38a31f123641?raw)
