Organizations

Create Organization

Create a new organization for the current user.

POST/organizations
Authorization
Body
name*OrganizationName (string)

Organization's display name.

slug*string

Organization's human-readable identifier.

Pattern: ^[a-zA-Z0-9-]+$
countryCode*string (iso3166-1)

The country in which the organization operates.

Response

Created

Body
id*string (uuid)

The organization's ID

name*OrganizationName (string)

Organization's display name.

slug*string

Human-readable identifier

avatarUrlstring

URL to the organization avatar.

status*OrganizationStatus (enum)

Current status

activebanned
statusReasonstring

The reason for the organization's status (if any).

pendingMemberCountinteger

How many members are pending to join the organization

activeMemberCount*integer

How many members are active

owner*string (uuid)

ID of the user that owns the organization

createdAt*string (date-time)

When the organization was created

updatedAtstring (date-time)

When the organization was last updated

managedByarray of object

List of entities managing the organization

Request
const response = await fetch('/organizations', {
    method: 'POST',
    headers: {
      "Authorization": "Bearer jwt",
      "Content-Type": "application/json"
    },
    body: JSON.stringify({
      "slug": "text",
      "name": "text",
      "countryCode": "text"
    }),
});
const data = await response.json();
Response
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "name": "text",
  "slug": "text",
  "avatarUrl": "text",
  "status": "active",
  "statusReason": "text",
  "pendingMemberCount": 0,
  "activeMemberCount": 0,
  "owner": "123e4567-e89b-12d3-a456-426614174000",
  "createdAt": "2024-12-21T11:59:46.146Z",
  "updatedAt": "2024-12-21T11:59:46.146Z",
  "managedBy": [
    {
      "Type": "text",
      "ID": "text"
    }
  ]
}

Get Organization

Get an organization by its ID.

GET/organizations/{organizationId}
Authorization
Path parameters
organizationId*string

The organization ID

Response

OK

Body
id*string (uuid)

The organization's ID

name*OrganizationName (string)

Organization's display name.

slug*string

Human-readable identifier

avatarUrlstring

URL to the organization avatar.

status*OrganizationStatus (enum)

Current status

activebanned
statusReasonstring

The reason for the organization's status (if any).

pendingMemberCountinteger

How many members are pending to join the organization

activeMemberCount*integer

How many members are active

owner*string (uuid)

ID of the user that owns the organization

createdAt*string (date-time)

When the organization was created

updatedAtstring (date-time)

When the organization was last updated

managedByarray of object

List of entities managing the organization

Request
const response = await fetch('/organizations/{organizationId}', {
    method: 'GET',
    headers: {
      "Authorization": "Bearer jwt"
    },
});
const data = await response.json();
Response
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "name": "text",
  "slug": "text",
  "avatarUrl": "text",
  "status": "active",
  "statusReason": "text",
  "pendingMemberCount": 0,
  "activeMemberCount": 0,
  "owner": "123e4567-e89b-12d3-a456-426614174000",
  "createdAt": "2024-12-21T11:59:46.146Z",
  "updatedAt": "2024-12-21T11:59:46.146Z",
  "managedBy": [
    {
      "Type": "text",
      "ID": "text"
    }
  ]
}

Update Organization

Update an organization's properties.

PATCH/organizations/{organizationId}
Authorization
Path parameters
organizationId*string

The organization ID

Body
nameOrganizationName (string)

Organization's display name.

avatarUrlstring

The url of the avatar displayed next to the org

statusnullable enum
bannedactive
statusReasonnullable string

The reason for the organization's status

ownerstring (uuid)

The organization's owner's ID

Response

OK

Body
id*string (uuid)

The organization's ID

name*OrganizationName (string)

Organization's display name.

slug*string

Human-readable identifier

avatarUrlstring

URL to the organization avatar.

status*OrganizationStatus (enum)

Current status

activebanned
statusReasonstring

The reason for the organization's status (if any).

pendingMemberCountinteger

How many members are pending to join the organization

activeMemberCount*integer

How many members are active

owner*string (uuid)

ID of the user that owns the organization

createdAt*string (date-time)

When the organization was created

updatedAtstring (date-time)

When the organization was last updated

managedByarray of object

List of entities managing the organization

Request
const response = await fetch('/organizations/{organizationId}', {
    method: 'PATCH',
    headers: {
      "Authorization": "Bearer jwt",
      "Content-Type": "application/json"
    },
    body: JSON.stringify({}),
});
const data = await response.json();
Response
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "name": "text",
  "slug": "text",
  "avatarUrl": "text",
  "status": "active",
  "statusReason": "text",
  "pendingMemberCount": 0,
  "activeMemberCount": 0,
  "owner": "123e4567-e89b-12d3-a456-426614174000",
  "createdAt": "2024-12-21T11:59:46.146Z",
  "updatedAt": "2024-12-21T11:59:46.146Z",
  "managedBy": [
    {
      "Type": "text",
      "ID": "text"
    }
  ]
}

Last updated