Skip to content

List your organizations

The organizations.list_mine operation: GET /api/v1/organizations in the REST API and the organizations_list_mine tool in the MCP server.

GET/api/v1/organizations

Lists the organizations you belong to, with each of your memberships there: the role, the scope (the whole organization, one legal entity or one brand, with its slug and name) and whether it has live-mode access. The console uses it for the organization switcher. Sorted by name; limit (1–100, default 100) and starting_after (an organization ID, the next_cursor of the previous page) paginate.

Who can call it: any signed-in user. API keys can't (a key belongs to one organization; use organizations.get).

At a glance

  • REST: GET /api/v1/organizations
  • MCP tool: organizations_list_mine
  • Operation ID: organizations.list_mine
  • Scope: Platform
  • Permission: account:read
  • Risk tier: read
  • Dry run: Not supported
  • Idempotency: Not needed (read only)
  • Modes: Test and live
  • Pagination: limit (at most 100) and starting_after
  • Authentication: API key with the account:read scope
  • Since: M1

Request

Query parameters

FieldTypeRequiredDescription
limitinteger (1 to 100)No
starting_afterorg_… IDNo

Response

200 OK with a JSON object, a page of the list (newest first):

FieldTypeDescription
object"list"
dataarray of object
data[].idorg_… ID
data[].object"organization"
data[].slugstring
data[].namestring
data[].statusone of active, restricted, suspended, closing, closed
data[].isPlatformboolean
data[].membershipsarray of object
data[].memberships[].idmem_… ID
data[].memberships[].roleone of org_owner, org_admin, billing_admin, finance, tax_manager, support, developer, viewer
data[].memberships[].scopeobject
data[].memberships[].livemodeAccessboolean
has_moreboolean
next_cursororg_… ID or null

Examples

An owner of one organization and a developer on a brand of another

HTTP
GET /api/v1/organizations
Authorization: Bearer or_test_…

Response (200):

JSON
{
  "object": "list",
  "data": [
    {
      "id": "org_01m4tx5nj7ekd958x53w4bntcg",
      "object": "organization",
      "slug": "acme",
      "name": "Acme",
      "status": "active",
      "isPlatform": false,
      "memberships": [
        {
          "id": "mem_01m4tx5nj8emwbyf7y9vcf47x6",
          "role": "org_owner",
          "scope": {
            "type": "org"
          },
          "livemodeAccess": true
        }
      ]
    },
    {
      "id": "org_01m4tx5nj8emwbyf7y9vcf47x1",
      "object": "organization",
      "slug": "globex",
      "name": "Globex",
      "status": "active",
      "isPlatform": false,
      "memberships": [
        {
          "id": "mem_01m4tx5nj8emwbyf7y9vcf47x7",
          "role": "developer",
          "scope": {
            "type": "brand",
            "brandId": "brd_01m4tx5nj8emwbyf7y9vcf47x5",
            "brand": {
              "slug": "globex-cloud",
              "name": "Globex Cloud",
              "entityId": "ent_01m4tx5nj8emwbyf7y9vcf47x3",
              "entitySlug": "globex-us"
            }
          },
          "livemodeAccess": false
        }
      ]
    }
  ],
  "has_more": false,
  "next_cursor": null
}

Errors

CodeHTTP statusWhenWhat to do
permission_denied403The caller isn't a signed-in user (for example, an API key).Ask an organization owner or admin for a role or scope that allows this action.

It can also return these common errors: validation_failed, api_version_unsupported, authentication_required, api_key_invalid, resource_not_found, dry_run_not_supported, rate_limited, internal_error.