---
title: "List User Schemas V1"
method: GET
path: "/v1/schemas"
tags: ["v1", "Schema Management"]
---

# List User Schemas V1

`GET /v1/schemas`

List all schemas accessible to the authenticated user.
    
    Returns schemas that the user owns or has read access to, including:
    - Personal schemas created by the user
    - Workspace schemas shared within the user's workspace (legacy)
    - Namespace schemas shared within the user's namespace
    - Organization schemas available to the user's organization
    
    **Authentication Required**:
    One of the following authentication methods must be used:
    - Bearer token in `Authorization` header
    - API Key in `X-API-Key` header
    - Session token in `X-Session-Token` header

## Query parameters

- `workspace_id` string, nullable — Filter by workspace ID
- `status_filter` string, nullable — Filter by status (draft, active, deprecated, archived)

## Response `200`

Schemas retrieved successfully

- SchemaListResponse — Response model for listing schemas
  - `success` boolean, required
  - `data` UserGraphSchemaOutput[], nullable
    - `id` string
    - `name` string, required
    - `description` string, nullable
    - `version` string
    - `user_id` union
      - string
      - object
    - `workspace_id` union
      - string
      - object
    - `organization_id` string, nullable — Organization ID this schema belongs to. Accepts legacy 'organization' alias.
    - `namespace_id` string, nullable — Namespace ID this schema belongs to. Accepts legacy 'namespace' alias.
    - `organization` union — DEPRECATED: Use 'organization_id' instead. Accepts Parse pointer or objectId.
      - string
      - object
    - `namespace` union — DEPRECATED: Use 'namespace_id' instead. Accepts Parse pointer or objectId.
      - string
      - object
    - `node_types` object — Custom node types (max 10 per schema)
    - `relationship_types` object — Custom relationship types (max 20 per schema)
    - `memory_policy` object, nullable — Default memory policy for memories using this schema. Includes mode ('auto', 'manual'), node_constraints (applied in auto mode when present), and OMO safety settings (consent, risk). Memory-level policies override schema-level.
    - `status` 'draft' | 'active' | 'deprecated' | 'archived'
    - `scope` 'personal' | 'workspace' | 'namespace' | 'organization' — Schema scopes available through the API
    - `created_at` string, date-time
    - `updated_at` string, date-time, nullable
    - `read_access` string[]
    - `write_access` string[]
    - `usage_count` integer
    - `last_used_at` string, date-time, nullable
  - `error` string, nullable
  - `code` integer
  - `total` integer

## Other responses

- `401` — Unauthorized
- `422` — Validation Error
- `500` — Internal server error

---

[API](https://skmtc.net/papr-ai/apis/papr-memory-api.md) · [All operations](https://skmtc.net/papr-ai/apis/papr-memory-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/papr-ai/papr-memory-api/revisions/b553be9aad37/schema)
