> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rootkey.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# List the organizations a token can act in

> Lists the organizations the user belongs to that the token reaches, each with its agent mode and whether the user is blocked from agents there. Use it to choose the value of `X-RootKey-Organization`. An organization where agents are off, or where the user is blocked, is still listed, so you can tell the user why a request there is refused. An organization whose IP access rules block your network is left out. It needs no `X-RootKey-Organization` header. Only a personal access token can call it: a request with an API key gets the `404` that any path the API does not have gets.



## OpenAPI

````yaml get /organizations
openapi: 3.0.3
info:
  title: ROOTKey Documentation
  description: >-
    Your API of choice for creating, managing, and validating information easily
    and securely!
  termsOfService: https://www.rootkey.ai/legal/privacy-policy
  contact:
    name: ROOTKey
    url: https://www.rootkey.ai/contact
    email: support@rootkey.ai
  version: 1.0.0
servers:
  - description: Production
    url: https://api.rootkey.ai/api-v1/
security:
  - x-api-key: []
  - personalAccessToken: []
tags:
  - name: api-v1-public
    description: Unauthenticated top-level /api-v1 endpoints (health, plans, annual report)
  - name: api-v1-files
    description: >-
      File anchoring, versioning, validation and compliance reporting
      (/api-v1/platform/files)
  - name: api-v1-records
    description: Structured-data record anchoring (/api-v1/platform/records)
  - name: api-v1-vaults
    description: 'Vault lifecycle: create / update / delete (/api-v1/platform/vaults)'
  - name: api-v1-recovery-points
    description: >-
      Backup archives created from vault contents
      (/api-v1/platform/recovery-point)
  - name: api-v1-organizations
    description: >-
      The identity of a personal access token and the organizations it can act
      in (/api-v1/me, /api-v1/organizations, /api-v1/organization)
paths:
  /organizations:
    get:
      tags:
        - api-v1-organizations
      summary: List the organizations a token can act in
      description: >-
        Lists the organizations the user belongs to that the token reaches, each
        with its agent mode and whether the user is blocked from agents there.
        Use it to choose the value of `X-RootKey-Organization`. An organization
        where agents are off, or where the user is blocked, is still listed, so
        you can tell the user why a request there is refused. An organization
        whose IP access rules block your network is left out. It needs no
        `X-RootKey-Organization` header. Only a personal access token can call
        it: a request with an API key gets the `404` that any path the API does
        not have gets.
      parameters:
        - $ref: '#/components/parameters/TestModeHeader'
        - name: cursor
          in: query
          required: false
          schema:
            type: string
          description: >-
            The `pagination.nextCursor` of the previous page. It is opaque; a
            cursor that is not valid gets `invalid_cursor`, never a restart from
            the first page.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 20
        - name: order
          in: query
          required: false
          schema:
            type: string
            enum:
              - asc
              - desc
            default: desc
          description: By creation time.
      responses:
        '200':
          description: A page of organizations
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/AgentOrganizationListItem'
                  pagination:
                    $ref: '#/components/schemas/PaginationBlock'
                  metadata:
                    $ref: '#/components/schemas/PaginationMetadata'
        '400':
          description: >-
            An invalid `limit` or `order` (`invalid_query_parameters`), a cursor
            that is not valid (`invalid_cursor`), or an `x-api-key` sent
            together with `Authorization: Bearer rk_...`
            (`conflicting_credentials`).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DomainErrorResponse'
        '401':
          description: >-
            Unauthenticated. A missing, malformed, unknown, inactive, revoked or
            expired credential all get the same answer.
        '403':
          description: >-
            The user has not verified their email address and the grace period
            has run out (`email_verification_required`).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DomainErrorResponse'
        '429':
          description: >-
            Too many requests. The `Retry-After` header says how many seconds to
            wait. See [Rate Limits](/pages/rate-limits).
        '500':
          $ref: '#/components/responses/InternalError'
      security:
        - personalAccessToken: []
components:
  parameters:
    TestModeHeader:
      name: x-test-mode
      in: header
      required: false
      schema:
        type: string
        enum:
          - 'true'
          - 'false'
        default: 'false'
      description: >-
        Whether a personal access token works on live data (`false`, the
        default) or on test data (`true`). Only this header decides, never a
        query string or a body field. An API key is itself a test or a live key
        and works on that data.
  schemas:
    AgentOrganizationListItem:
      type: object
      properties:
        id:
          type: string
          description: The value to send in `X-RootKey-Organization`.
        name:
          type: string
        mode:
          $ref: '#/components/schemas/AgentOrganizationMode'
        blocked:
          type: boolean
          description: >-
            True when an administrator of the organization blocked this user
            from agents. The organization is still listed: the user belongs to
            it.
    PaginationBlock:
      type: object
      properties:
        previousCursor:
          type: string
          nullable: true
        nextCursor:
          type: string
          nullable: true
    PaginationMetadata:
      type: object
      properties:
        fetchedCount:
          type: number
        totalCount:
          type: number
        serverTimestamp:
          type: string
          format: date-time
        parameters:
          type: object
          properties:
            limit:
              type: number
            cursor:
              type: string
              nullable: true
            order:
              type: string
              enum:
                - asc
                - desc
    DomainErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            requestId:
              type: string
            message:
              type: string
            errorCode:
              type: string
            docUrl:
              type: string
            timestamp:
              type: string
              format: date-time
    AgentOrganizationMode:
      type: string
      enum:
        - DISABLED
        - READ_ONLY
        - FULL
      description: >-
        What the organization lets agents do: `DISABLED` serves no agent
        request, `READ_ONLY` only reads, `FULL` reads, writes and deletes. An
        organization that never saved a policy is `READ_ONLY`.
  responses:
    InternalError:
      description: Internal server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DomainErrorResponse'
  securitySchemes:
    x-api-key:
      type: apiKey
      name: x-api-key
      in: header
      description: >-
        ROOTKey API key. A test key works on your organization's test data and a
        live key on its live data; both are used with the same API.
    personalAccessToken:
      type: http
      scheme: bearer
      bearerFormat: rk_pat_...
      description: >-
        Personal access token of a ROOTKey user, sent as `Authorization: Bearer
        rk_pat_...`. A token acts as the user who created it, in the
        organization named by the `X-RootKey-Organization` header, and never
        with more access than that user has in the ROOTKey app: the
        organization's agent policy, the user's own role and teams, and the
        token's scopes (`rootkey.read`, `rootkey.write`, `rootkey.delete`) all
        apply. A missing, malformed, unknown, revoked or expired token gets the
        same `401`. Send either an `x-api-key` or a bearer token, never both: a
        request with both gets `conflicting_credentials`. See
        [Authentication](/api-reference/auth).

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.