---
title: "The caller's live Snowflake role set."
method: GET
path: "/v1/me/snowflake-roles"
tags: ["auth"]
---

# The caller's live Snowflake role set.

`GET /v1/me/snowflake-roles`

## Request

- Base URL: `http://localhost:8080`
- URL: `http://localhost:8080/v1/me/snowflake-roles`
- Auth: one of:
  - API key in cookie `dvt_session`
  - HTTP bearer

Snowflake-mode only (DVT-1387/DVT-1738): returns the Snowflake roles the
caller's live session holds — the engine's CURRENT_AVAILABLE_ROLES(),
resolved under the caller's own identity and cached briefly server-side.
Role names are canonical (upper-cased) and sorted; reserved pseudo-roles
(PUBLIC) are excluded, matching the role-share write surface's denylist.
Feeds the share-to-role picker in the web share dialog. Exposes nothing
the caller could not learn by running SELECT CURRENT_AVAILABLE_ROLES()
themselves. Outside snowflake mode (or off the Snowflake ingress path)
this endpoint does not exist (404).

## Response `200`

The caller's live Snowflake role names, sorted.

- object
  - `data` string[], required
  - `meta` Meta, required: Response metadata.
    - `requestId` string, required: Correlates with the X-Request-Id header.
    - `total` integer: Item count, present on collection responses.
    - `nextCursor` string, nullable: Opaque keyset-pagination cursor, present on paginated responses (e.g. GET /v1/dashboards) when more rows exist beyond this page. Pass it back as the `cursor` query param to fetch the next page; absent or null on the last page.
    - `roleResolveDegraded` boolean: Snowflake mode only (DVT-2260), on GET /v1/dashboards: present and true when the caller's live Snowflake role resolution failed or was unavailable — role-shared dashboards may be missing from this page. Omitted (not merely false) whenever resolution succeeded or the role-share arm does not apply (off snowflake mode, an org admin/owner, or off the ingress listener).

## Other responses

- `401`: Missing, invalid, or expired session.
- `404`: Resource does not exist.
- `502`: The engine could not resolve the caller's live role set.

---

[API](https://skmtc.dev/dvt/apis/dvt-rest-api.md) · [All operations](https://skmtc.dev/dvt/apis/dvt-rest-api/llms.txt) · [OpenAPI document](https://skmtc.dev/dvt/apis/dvt-rest-api/revisions/00016f504165?raw)
