---
title: "Retrieve a single permission by its ID"
method: GET
path: "/permissions/{id}"
tags: ["Permission"]
---

# Retrieve a single permission by its ID

`GET /permissions/{id}`

Returns the permission record identified by {id}. Use this when you already have a specific permission id (obtained from POST /permissions or GET /permissions) and need its full details; for browsing the full catalog, use GET /permissions instead.

Preconditions: the caller must be authenticated and hold the READ_PERMISSION permission for the tenant.

On success, returns the matching permission (id, resource, action, description); createdAt and updatedAt are always null in the current implementation. Returns 404 when no permission with that id exists for the tenant.

## Path parameters

- `id` string, required

## Headers

- `tenant-id` string, required

## Response `200`

The permission matching the given id, including its resource, action, and description. Note: createdAt and updatedAt are always null in the current implementation.

- PermissionResponseDto — Permission information response
  - `id` string — Server-assigned unique identifier for the permission.
  - `resource` string — Name of the resource this permission governs (e.g. 'user', 'roster'). Mirrors the resource value supplied when the permission was created or last replaced.
  - `action` string — Name of the action this permission grants on the resource (e.g. 'read', 'create'). Mirrors the action value supplied when the permission was created or last replaced.
  - `description` string — Human-readable explanation of what the permission allows. Optional; may be null if it was not supplied at creation.
  - `createdAt` string, date-time
  - `updatedAt` string, date-time

## Other responses

- `400` — Returned when the request is malformed, such as an invalid id format.
- `404` — No permission with the given id exists in this tenant's catalog. Verify the id value and tenant-id header, or use GET /permissions to look up a valid id.
- `500` — An unexpected error occurred while retrieving the permission, typically a downstream data-service failure. Retry the request or contact support if the error persists.

---

[API](https://skmtc.net/certifyos/apis/certify-api-layer.md) · [All operations](https://skmtc.net/certifyos/apis/certify-api-layer/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/certifyos/certify-api-layer/revisions/563848e0ecc0/schema)
