---
title: "List the organizations the caller may act on"
method: GET
path: "/v2/organizations"
tags: ["Organization Api Service"]
---

# List the organizations the caller may act on

`GET /v2/organizations`

## Request

- Base URL: `https://app.metricool.com/api`
- URL: `https://app.metricool.com/api/v2/organizations`
- Auth: none declared

The caller's own organization, if it exists, every one they are a team member of, and every one with a brand they edit as a collaborator (type COLLABORATOR). Organizations whose owner has the organization permissions feature disabled or a plan not eligible for an organization are left out. Each one carries its owner's name (or email) and profile picture, as GET /v2/settings/organizations does, and unlike that endpoint this never creates the caller's own organization. Each one also says its owner's agency (agencyId) and, where the caller may create brands, the owner's brand limit (ownerPlan).

## Response `200`

Organizations retrieved, possibly none.

- JsonOkListResponseAccessibleOrganizationDto
  - `metadata` object
  - `page` JsonPaging
    - `next` string
  - `data` AccessibleOrganizationDto[]
    - `id` integer: Id of the organization, to address /v2/organizations/{organizationId} endpoints or to create a brand in it.
    - `ownerId` integer: User id of the organization owner. Brands of GET /api/admin/simpleProfiles or GET /v2/settings/brands whose userId equals it belong to this organization.
    - `name` string, nullable: Display name of the organization: the personalized name if the owner set one, otherwise the owner's billing company. Null when there is neither: the front shows its own default.
    - `type` 'OWNER' | 'TEAM_MEMBER' | 'COLLABORATOR': How the caller reaches this organization. OWNER: they own it and hold every permission. TEAM_MEMBER: with the permissions of role. COLLABORATOR: they edit some of its brands as a collaborator, with no organization permission; only its collaborators, brands and roles endpoints let them in, on the brands they edit.
    - `isOwner` boolean: Whether the caller owns this organization: type is OWNER. Use type instead.
    - `hasAgency` boolean: Whether the owner of this organization has an agency. Only then do the agency permissions of a role (organizationActions.manageAgencyConfig and manageAgencyClients) apply to it. Always false for type COLLABORATOR, which holds no role.
    - `agencyId` integer, nullable: Id of the owner's agency, to address the /v2/agency-CK/{agencyId} endpoints that the agency permissions of role open. Null when hasAgency is false.
    - `role` BrandRole
      - `id` integer
      - `userId` integer, required
      - `name` string, required
      - `description` string
      - `color` string
      - `type` string
      - `assignable` boolean
      - `teamMemberOnly` boolean
      - `deletedDate` DateTimeInfo
        - `dateTime` string, required: Local Date-time represented with a certain timezone
        - `timezone` string: Timezone applied to the datetime
      - `deleted` boolean
      - `actions` BrandRoleActions, required
        - `viewAnalytics` boolean
        - `viewInbox` boolean
        - `viewPlanner` boolean
        - `viewAds` boolean
        - `viewSmartlinks` boolean
        - `fullAccessReports` boolean
        - `fullAccessInbox` boolean
        - `fullAccessPlanner` boolean
        - `fullAccessAds` boolean
        - `fullAccessSmartlinks` boolean
        - `fullAccessHashtagTracker` boolean
        - `editBrand` boolean
        - `schedulePosts` boolean
        - `publishPosts` boolean
        - `approvePosts` boolean
        - `viewCondensedAnalytics` boolean
        - `fullAccessDashboards` boolean
        - `viewDashboards` boolean
        - `editFlow` boolean
        - `viewFlow` boolean
        - `fullAccessStudio` boolean
      - `organizationActions` OrganizationRoleActionsDto, required: Organization-level permissions granted by a brand role, on top of the per-brand actions. Never null in a read response - a role that never had organization permissions set is reported with every field false.
        - `manageBrands` boolean: Whether the role can create and manage brands at the organization level.
        - `manageRoles` boolean: Whether the role can create and manage other brand roles at the organization level.
        - `manageTeamMembers` boolean: Whether the role can manage team members at the organization level.
        - `manageAgencyConfig` boolean: Whether the role can manage the agency configuration.
        - `manageAgencyClients` boolean: Whether the role can manage agency clients.
      - `assignedUsersCount` integer
      - `assignedEnabledCount` integer
      - `assignedDisabledCount` integer
    - `owner` OrganizationOwnerDto: The owner of an organization.
      - `name` string: First name and last name of the owner, or their email when they have no first name.
      - `profilePicture` string, nullable: URL of the owner's profile picture. Null when they have none, and the front shows their initials instead.
    - `ownerPlan` OrganizationOwnerPlanDto, nullable: The organization owner's brand limit, to know whether a brand still fits before creating it.
      - `maxBrands` integer: Brand limit of the owner's plan: once brandCount reaches it, creating a brand in this organization answers 403.
      - `brandCount` integer: Brands the owner already has against that limit: their own ones, not those shared with them.

## Other responses

- `403`: Caller is not a regular-user session.

---

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