> This page is for version v4 (default).
> For other versions, use one of these documentation indexes:
> - v4 (default): https://help.getzep.com/v4/llms.txt
> - v3: https://help.getzep.com/v3/llms.txt
> - v2: https://help.getzep.com/v2/llms.txt

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

# List graph metadata keys

GET https://api.getzep.com/api/v4/graphs/{graph_uuid}/metadata-keys

Returns the append-only metadata keys recorded for a graph. A key can remain in the list after no episode or message uses it.

Reference: https://help.getzep.com/sdk-reference/graph/list-metadata-keys

## Authentication

- `Authorization` header (required) (prefixed with ` Api-Key  `) — Type "Api-Key" followed by a space and the project API key.

## Request

### Path parameters

- `graph_uuid` (string, required) — The UUID of the graph. For a user graph, you can also use the UUID of the user.

### Query parameters

- `page_size` (integer, optional, default: 100) — The maximum number of keys per page.
- `cursor` (string, optional) — Opaque page cursor

## Response

### 200

OK

- `items` (list of v4.GraphMetadataKey, optional) — The append-only keys recorded for the graph. A key can remain after no episode or message uses it.
- `next_cursor` (string, optional) — The cursor for the next page, when more keys exist.

## Errors

### 400 Bad Request Error

Bad Request

- `error` (v4.ErrorBody, optional)

### 401 Unauthorized Error

Unauthorized

- `error` (v4.ErrorBody, optional)

### 403 Forbidden Error

Forbidden

- `error` (v4.ErrorBody, optional)

### 404 Not Found Error

Not Found

- `error` (v4.ErrorBody, optional)

## Types

### v4.GraphMetadataKey

- `created_at` (string, optional) — The time when the key was first recorded.
- `key` (string, optional) — The metadata key name.

### v4.ErrorBody

- `code` (string, optional)
- `details` (map from string to any, optional)
- `message` (string, optional)
- `param` (string, optional)
- `request_id` (string, optional)

## Examples

**Response**

```json
{
  "items": [
    {
      "created_at": "2026-10-13T12:00:00Z",
      "key": "customer_tier"
    }
  ],
  "next_cursor": "eyJrIjoiY3VzdG9tZXJfdGllciJ9"
}
```