---
title: "Get the server-authoritative identity, Workspace role, and scopes"
method: GET
path: "/v1/principal"
tags: ["Auth"]
---

# Get the server-authoritative identity, Workspace role, and scopes

`GET /v1/principal`

## Response `200`

Authenticated principal projection

- PrincipalResponse
  - `request_id` string, required
  - `execution` Execution, required
    - `location` 'local' | 'cloud', required
    - `capability_id` string, nullable
    - `capability_version` string, nullable
  - `usage` Usage, required
    - `billable` boolean, required
    - `quantity` number, required
    - `unit` string, required
    - `credits` number
  - `warnings` string[], required
  - `data` Principal, required
    - `user_id` string, required
    - `workspace_id` string, required
    - `role` 'owner' | 'admin' | 'member' | 'viewer', required
    - `scopes` string[], required
    - `credential_kind` 'web_cookie' | 'desktop_oauth' | 'cli_device' | 'api_key', required

## Other responses

- `default` — Standard Cerul error envelope

## Changes

- **2026-07-27** `c15615d54993` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/cerul-ai/apis/cerul-api/changes/v1/principal/get.md)

---

[API](https://skmtc.dev/cerul-ai/apis/cerul-api.md) · [All operations](https://skmtc.dev/cerul-ai/apis/cerul-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/cerul-ai/cerul-api/revisions/c15615d54993/schema)
