Skip to content

Cluster groups API

Base URL: https://YOUR-SERVER/api. Send your API key in x-api-key where authentication is required. A key also needs the listed permission; your account's access rules still apply.

API guide · All endpoints · OpenAPI JSON

Retrieve cluster group requests

GET /api/cluster-groups/requests

Retrieve the pending requests for the current user to join a cluster group.

Authentication: API key. Permission: clusterGroupRequest.read.

Responses

Field definitions: ClusterGroupRequestResponseDto

{
  "200": {
    "content": {
      "application/json": {
        "schema": {
          "items": {
            "$ref": "#/components/schemas/ClusterGroupRequestResponseDto"
          },
          "type": "array"
        }
      }
    },
    "description": ""
  }
}

Decline a cluster group request

DELETE /api/cluster-groups/requests/{id}

Delete a pending request to join a cluster group.

Authentication: API key. Permission: clusterGroupRequest.delete.

Parameters

NameWhereRequiredDescription
idpathYesstring
Parameter types, defaults and constraints
[
  {
    "name": "id",
    "required": true,
    "in": "path",
    "schema": {
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$",
      "type": "string"
    }
  }
]

Responses

{
  "204": {
    "description": ""
  }
}

Accept a cluster group request

POST /api/cluster-groups/requests/{id}/accept

Join the cluster group the request was created for.

Authentication: API key. Permission: clusterGroupRequest.create.

Parameters

NameWhereRequiredDescription
idpathYesstring
Parameter types, defaults and constraints
[
  {
    "name": "id",
    "required": true,
    "in": "path",
    "schema": {
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$",
      "type": "string"
    }
  }
]

Responses

{
  "204": {
    "description": ""
  }
}

Leave a cluster group

POST /api/cluster-groups/{id}/leave

Move the current user into a new cluster group of their own.

Authentication: API key. Permission: clusterGroup.leave.

Parameters

NameWhereRequiredDescription
idpathYesstring
Parameter types, defaults and constraints
[
  {
    "name": "id",
    "required": true,
    "in": "path",
    "schema": {
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$",
      "type": "string"
    }
  }
]

Responses

{
  "204": {
    "description": ""
  }
}

Regenerate people of users in cluster group

POST /api/cluster-groups/{id}/regenerate-people

Forcefully re-run facial recognition for all faces of users in this group.

Authentication: API key. Permission: clusterGroup.read.

Parameters

NameWhereRequiredDescription
idpathYesstring
Parameter types, defaults and constraints
[
  {
    "name": "id",
    "required": true,
    "in": "path",
    "schema": {
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$",
      "type": "string"
    }
  }
]

Responses

{
  "204": {
    "description": ""
  }
}

Retrieve the requests sent by a cluster group

GET /api/cluster-groups/{id}/requests

Retrieve the pending requests for other users to join the cluster group.

Authentication: API key. Permission: clusterGroupRequest.read.

Parameters

NameWhereRequiredDescription
idpathYesstring
Parameter types, defaults and constraints
[
  {
    "name": "id",
    "required": true,
    "in": "path",
    "schema": {
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$",
      "type": "string"
    }
  }
]

Responses

Field definitions: ClusterGroupRequestResponseDto

{
  "200": {
    "content": {
      "application/json": {
        "schema": {
          "items": {
            "$ref": "#/components/schemas/ClusterGroupRequestResponseDto"
          },
          "type": "array"
        }
      }
    },
    "description": ""
  }
}

Create a cluster group request

PUT /api/cluster-groups/{id}/requests

Ask another user to join the cluster group of the current user.

Authentication: API key. Permission: clusterGroupRequest.create.

Parameters

NameWhereRequiredDescription
idpathYesstring
Parameter types, defaults and constraints
[
  {
    "name": "id",
    "required": true,
    "in": "path",
    "schema": {
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$",
      "type": "string"
    }
  }
]

Request body

Required.

Field definitions: ClusterGroupRequestCreateDto

{
  "application/json": {
    "schema": {
      "$ref": "#/components/schemas/ClusterGroupRequestCreateDto"
    }
  }
}

Responses

Field definitions: ClusterGroupRequestResponseDto

{
  "200": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/ClusterGroupRequestResponseDto"
        }
      }
    },
    "description": ""
  }
}

Retrieve the users of a cluster group

GET /api/cluster-groups/{id}/users

Retrieve the users that are a member of the cluster group.

Authentication: API key. Permission: clusterGroup.read.

Parameters

NameWhereRequiredDescription
idpathYesstring
Parameter types, defaults and constraints
[
  {
    "name": "id",
    "required": true,
    "in": "path",
    "schema": {
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$",
      "type": "string"
    }
  }
]

Responses

Field definitions: UserResponseDto

{
  "200": {
    "content": {
      "application/json": {
        "schema": {
          "items": {
            "$ref": "#/components/schemas/UserResponseDto"
          },
          "type": "array"
        }
      }
    },
    "description": ""
  }
}