Platform
Identity Platform
Organizations

Organizations

Every resource in PIP is owned by an organization. Users can belong to multiple organizations with different roles in each.

Organization model

{
  "id": "org_xxxx",
  "slug": "my-company",
  "name": "My Company",
  "plan": "standard",
  "createdAt": "2026-01-01T00:00:00.000Z"
}

Membership roles

RoleDescription
ownerFull control — billing, delete org, manage members
adminManage members and settings
memberStandard access

Membership roles are separate from Access Platform permissions. Membership controls who can manage the org itself; permissions control what users can do inside products.

Endpoints

List organizations for current user

GET /organizations
Authorization: Bearer <token>

Get organization

GET /organizations/:slug
Authorization: Bearer <token>

Create organization

POST /organizations
Authorization: Bearer <token>
Content-Type: application/json
 
{
  "name": "My Company",
  "slug": "my-company"
}

Invite member

POST /organizations/:slug/invitations
Authorization: Bearer <token>
Content-Type: application/json
 
{
  "email": "colleague@example.com",
  "role": "member"
}

List members

GET /organizations/:slug/members
Authorization: Bearer <token>

Remove member

DELETE /organizations/:slug/members/:userId
Authorization: Bearer <token>

Organizations

Every resource in PIP is owned by an organization. Users can belong to multiple organizations with different roles in each.

Organization model

{
  "id": "org_xxxx",
  "slug": "my-company",
  "name": "My Company",
  "plan": "standard",
  "createdAt": "2026-01-01T00:00:00.000Z"
}

Membership roles

RoleDescription
ownerFull control — billing, delete org, manage members
adminManage members and settings
memberStandard access

Membership roles are separate from Access Platform permissions. Membership controls who can manage the org itself; permissions control what users can do inside products.

Endpoints

List organizations for current user

GET /organizations
Authorization: Bearer <token>

Get organization

GET /organizations/:slug
Authorization: Bearer <token>

Create organization

POST /organizations
Authorization: Bearer <token>
Content-Type: application/json
 
{
  "name": "My Company",
  "slug": "my-company"
}

Invite member

POST /organizations/:slug/invitations
Authorization: Bearer <token>
Content-Type: application/json
 
{
  "email": "colleague@example.com",
  "role": "member"
}

List members

GET /organizations/:slug/members
Authorization: Bearer <token>

Remove member

DELETE /organizations/:slug/members/:userId
Authorization: Bearer <token>