# Get Merchant

**GET** `/merchants/{merchant_id}`

Base URL: `https://live.savewithsail.com/api/v1`

Retrieves a single merchant with capabilities and URLs.

## Authorization

- PartnerKey (http, bearer)

## Path parameters

- `merchant_id` (string, required)
  The Sail merchant id.

## Responses

### 200

Merchant details.

- `id` (string)
  The Sail merchant id.
- `name` (string)
  The merchant's display name.
- `capabilities` (object)
  What Sail can do for this merchant.
  - `item_level_receipts` (boolean)
    Whether this merchant supplies item-level purchase data through a store connection.
- `urls` (object)
  Public URLs associated with this merchant.
  - `main` (string)
    The merchant's main website URL.
  - `logo` (string)
    URL of the merchant's logo. Null if unavailable.

Example:

```json
{
  "id": "mer_costco",
  "name": "Costco",
  "capabilities": {
    "item_level_receipts": true
  },
  "urls": {
    "main": "string",
    "logo": "string"
  }
}
```

### default

Standard error envelope covering 400, 401, 403, 404, 429, and 500.

- `error` (object)
  The error detail.
  - `code` (string)
    Machine-readable code, e.g. `not_found`, `token_scope_mismatch`, `product_not_enabled`, `insufficient_key_scope`, `insufficient_token_scope`, `user_token_required`, `user_token_expired`, `invalid_user_token`, `invalid_key_configuration`, `connection_not_reconnectable`, `rate_limited`.
  - `message` (string)
    Human-readable error message. May change, so match on `error.code` instead.
  - `param` (string)
    The request field that caused the error, when applicable. Null otherwise.

Example:

```json
{
  "error": {
    "code": "string",
    "message": "string",
    "param": "string"
  }
}
```