---
title: "Get an organization"
method: GET
path: "/organizations/find"
tags: ["Organizations"]
---

# Get an organization

`GET /organizations/find`

## Request

- Base URL: `https://api.cactal.ai/v1`
- URL: `https://api.cactal.ai/v1/organizations/find`
- Auth: HTTP bearer

Fetches a single organization by `organizationId`, or by its URL `slug` when starting from a URL — provide exactly one. The response includes `currentMember`, the caller’s own membership record with its role (`null` when the caller has no organization-level membership). Lookups by ID require organization membership; slug lookups additionally work for principals whose only access is a direct website editor grant in the organization, who receive only its ID, name, and URL slug. Inaccessible or deleted organizations return 404.

## Query parameters

- `organizationId` string: Organization id. Provide either this or `slug`.
- `slug` string: Organization URL slug. Provide either this or `organizationId`.

## Response `200`

The requested organization with the caller’s membership.

- union
  - object
    - `id` string, required: Unique organization ID.
    - `name` string, required: Display name.
    - `slug` string, required: Unique URL-safe identifier (lowercase letters, digits, and hyphens).
    - `logo` string, nullable, required: Logo URL, or `null` when unset.
    - `metadata` object, nullable, required: Arbitrary key–value metadata attached to the organization. `null` when unset.
    - `createdAt` string, date-time, required: When the organization was created.
    - `currentMember` object, nullable, required: The calling principal’s own membership (role and join date), or `null` when the caller has no organization-level membership.
      - `principalId` string, required: Principal ID of the member. Stable across role changes.
      - `role` 'owner' | 'admin' | 'full_editor' | 'content_editor', required: The member’s organization role. Every organization has exactly one `owner`.
      - `createdAt` string, date-time, required: When the membership was created.
  - object
    - `id` string, required: Unique organization ID.
    - `name` string, required: Display name.
    - `slug` string, required: Unique URL-safe identifier (lowercase letters, digits, and hyphens).
    - `currentMember` unknown, required

## Other responses

- `400`: Validation failed. The response `message` names the first invalid field.
- `401`: Missing, invalid, expired, or revoked API key.
- `403`: The authenticated principal lacks the required capability.
- `404`: The resource does not exist or is outside the principal’s access scope.
- `429`: Rate limit exceeded. Retry after the number of seconds in the `Retry-After` header.

---

[API](https://skmtc.dev/cactal/apis/cactal-api.md) · [All operations](https://skmtc.dev/cactal/apis/cactal-api/llms.txt) · [OpenAPI document](https://skmtc.dev/cactal/apis/cactal-api/revisions/9cd0fb5eacdd?raw)
