
# Get an organization

`GET /fapi/v1/organizations/{org_id}` · called from the environment's sign-in host

Returns the profile of an organization as its administrator sees it: name, slug, status, brand color and version. This is what an organization profile screen shows. Requires the authenticated user's `__Host-idp_session` cookie; if the cookie is missing, expired, or revoked, returns `401 unauthenticated`. A first-party app on another origin can instead send its front API access token (`Authorization: DPoP <token>` with a DPoP proof; see [Front API access token](/docs/api/fapi/front-api-token)). The user must be an active member of the organization with the `idp_org:read` permission. A user who is not a member gets `404 not_found`, so the organization's existence is not disclosed; a member without the permission gets `403 insufficient_permissions`.

With `@keenauth/js`: `await keenauth.organizations.get(orgId)`.

## Request

Headers:

| Header | Required | Description |
| --- | --- | --- |
| `Idp-Client` | yes | SDK identifier. |

`org_id`: the organization identifier (`org_…`).

No body.

## Response

`200 OK` with `ETag: "<version>"`.

| Field | Description |
| --- | --- |
| `id` | `org_…`. |
| `name` | Display name; render it as plain text. |
| `slug` | The organization's slug. |
| `status` | `active`, `disabled` or `pending_deletion`. |
| `brand_color` | `#RRGGBB`, or `null` when unset. |
| `deletion_due_at` | Only while the organization is pending deletion: when it will be deleted. |
| `created_at`, `updated_at` | RFC 3339 times. |
| `version` | The version the `ETag` carries; send it as `If-Match` on an update. |

## Errors

| Status | Code | When |
| --- | --- | --- |
| 401 | `unauthenticated` | No valid session cookie. |
| 403 | `insufficient_permissions` | The user lacks `idp_org:read` in the organization. |
| 404 | `not_found` | No such organization for this user; an unknown, malformed or foreign identifier answers the same. |
| 503 | `service_unavailable` | Temporarily unavailable; retry after `Retry-After`. |

## Example

```bash
curl https://example.keenauth.app/fapi/v1/organizations/org_01jbz6x8kq3m2n4p5r6s7t8v9a \
  -H "Idp-Client: my-app/1.0.0 (node/22.0.0)" \
  -b cookies.txt
```

```json
{
  "id": "org_01jbz6x8kq3m2n4p5r6s7t8v9a",
  "name": "Acme",
  "slug": "acme",
  "status": "active",
  "brand_color": "#112233",
  "created_at": "2026-11-03T09:00:00Z",
  "updated_at": "2026-11-03T09:30:00Z",
  "version": 4
}
```
