# Get Catalog Metadata

Returns the Catalog metadata as a JSON Schema document describing every resource
(`Category`, `Attribute Set`, `Product`, `Variant`, `Point of Sale`) and the relationships
between them. Use it to build requests against the rest of the API.
## Authentication
Requires a valid API key in the `X-API-KEY` header.
## Response
**200 OK** — A JSON schema document describing every resource in the Catalog
(`Category`, `Attribute Set`, `Product`, `Variant`, `Point of Sale`) and the relationships
between them. Use this document to build requests against the rest of the API.
## Error Responses
- **401 Unauthorized** — Missing or invalid API key. Returned by the API gateway as
`{ "message": "Unauthorized", "request_id": "d8aafa5b8f3e400b60bea0123dd33317" }`.
- **404 Not Found** — Tenant or model not found.
- **500 Internal Server Error** — Unexpected technical error.

## Example
**Request:**

```http
GET /$metadata HTTP/1.1
X-API-KEY: your-api-key-here
```
**Response:**

```http
HTTP/1.1 200 OK
Content-Type: application/json
```

Endpoint: GET /$metadata
Version: 2.0.0

## Header parameters:

  - `X-API-KEY` (string)
    Tenant's API key (required)

## Response 200 fields (application/json):

  - `readLink` (object)

  - `readLink.uri` (string)

  - `value` (any)

## Response 401 fields (application/json):

  - `message` (string)

  - `request_id` (string)

## Response 404 fields (application/json):

  - `type` (string)

  - `title` (string)

  - `status` (integer)

  - `detail` (string)

  - `instance` (string)

## Response 500 fields (application/json):

  - `error` (string)

  - `details` (any)

