For the complete documentation index, see llms.txt. This page is also available as Markdown.

Team

List teams

get

Lists the user's teams (owned and where the user is a member).

Authorizations
api-tokenstringRequired
Responses
200

Teams listed successfully

application/json
objectOptional
get/teams
GET /v2/teams HTTP/1.1
Host: api.discloud.app
api-token: YOUR_API_KEY
Accept: */*
{
  "status": "ok",
  "message": "Teams listed successfully",
  "data": [
    {
      "_id": "team1719010867306",
      "name": "My Team",
      "isOwner": true
    }
  ]
}

Create team

post

Creates a new team. Requires a compatible plan.

Authorizations
api-tokenstringRequired
Body
namestringRequired

Team name (max. 50 characters)

descriptionstringOptional
Responses
201

Team created successfully

application/json
objectOptional
post/teams
POST /v2/teams HTTP/1.1
Host: api.discloud.app
api-token: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 51

{
  "name": "My Team",
  "description": "Development team"
}
{
  "status": "ok",
  "message": "Team created successfully",
  "data": {
    "_id": "team1719010867306",
    "ownerID": "470638301895294976",
    "name": "My Team"
  }
}

Apps accessible via teams

get

Lists the apps accessible by the user through the teams they belong to.

Authorizations
api-tokenstringRequired
Responses
200

Accessible apps listed successfully

application/json
objectOptional
get/teams/apps
GET /v2/teams/apps HTTP/1.1
Host: api.discloud.app
api-token: YOUR_API_KEY
Accept: */*
{
  "status": "ok",
  "message": "Apps accessible via teams",
  "data": [
    {
      "_id": "1719010867306",
      "nameTAG": "My Bot",
      "teamID": "team1719010867306"
    }
  ]
}

Role permissions

get

Returns the permissions associated with a role (admin, developer or viewer).

Authorizations
api-tokenstringRequired
Path parameters
rolestringRequired

Role (admin, developer or viewer)

Responses
200

Role permissions

application/json
objectOptional
get/teams/roles/{role}/permissions
GET /v2/teams/roles/{role}/permissions HTTP/1.1
Host: api.discloud.app
api-token: YOUR_API_KEY
Accept: */*
{
  "status": "ok",
  "message": "Permissions for role admin",
  "data": {
    "role": "admin",
    "permissions": [
      "config_app",
      "start_stop",
      "view_logs"
    ]
  }
}

Team details

get

Returns the details of a team, including members and projects.

Authorizations
api-tokenstringRequired
Path parameters
teamIDstringRequired

Team ID

Responses
200

Team details

application/json
objectOptional
get/teams/{teamID}
GET /v2/teams/{teamID} HTTP/1.1
Host: api.discloud.app
api-token: YOUR_API_KEY
Accept: */*
{
  "status": "ok",
  "message": "Team details",
  "data": {
    "team": {
      "_id": "team1719010867306",
      "name": "My Team"
    },
    "members": [
      {
        "userID": "470638301895294976",
        "role": "owner"
      }
    ],
    "projects": [
      {
        "_id": "proj1719010867306",
        "name": "My Project"
      }
    ]
  }
}

Delete team

delete

Removes a team. Owner only.

Authorizations
api-tokenstringRequired
Path parameters
teamIDstringRequired

Team ID

Responses
200

Team deleted successfully

application/json
objectOptional
delete/teams/{teamID}
DELETE /v2/teams/{teamID} HTTP/1.1
Host: api.discloud.app
api-token: YOUR_API_KEY
Accept: */*
{
  "status": "ok",
  "message": "Team deleted successfully"
}

Update team

patch

Updates the name and/or description of a team. Owner only.

Authorizations
api-tokenstringRequired
Path parameters
teamIDstringRequired

Team ID

Body
namestringOptional
descriptionstringOptional
Responses
200

Team updated successfully

application/json
objectOptional
patch/teams/{teamID}
PATCH /v2/teams/{teamID} HTTP/1.1
Host: api.discloud.app
api-token: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 23

{
  "name": "Renamed Team"
}
{
  "status": "ok",
  "message": "Team updated successfully",
  "data": {
    "_id": "team1719010867306",
    "name": "Renamed Team"
  }
}

List members

get

Lists the members of a team.

Authorizations
api-tokenstringRequired
Path parameters
teamIDstringRequired

Team ID

Responses
200

Members listed successfully

application/json
objectOptional
get/teams/{teamID}/members
GET /v2/teams/{teamID}/members HTTP/1.1
Host: api.discloud.app
api-token: YOUR_API_KEY
Accept: */*
{
  "status": "ok",
  "message": "Members listed successfully",
  "data": [
    {
      "userID": "470638301895294976",
      "role": "owner",
      "username": "owner"
    }
  ]
}

Add member

post

Adds a member to the team with a specific role.

Authorizations
api-tokenstringRequired
Path parameters
teamIDstringRequired

Team ID

Body
userIDstringRequired
rolestringRequired

admin, developer or viewer

Responses
201

Member added successfully

application/json
objectOptional
post/teams/{teamID}/members
POST /v2/teams/{teamID}/members HTTP/1.1
Host: api.discloud.app
api-token: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 50

{
  "userID": "123456789012345678",
  "role": "developer"
}
{
  "status": "ok",
  "message": "Member added successfully",
  "data": {
    "userID": "123456789012345678",
    "role": "developer",
    "username": "johndoe"
  }
}

Remove member

delete

Removes a member from the team.

Authorizations
api-tokenstringRequired
Path parameters
teamIDstringRequired

Team ID

memberUserIDstringRequired

Member user ID

Responses
200

Member removed successfully

application/json
objectOptional
delete/teams/{teamID}/members/{memberUserID}
DELETE /v2/teams/{teamID}/members/{memberUserID} HTTP/1.1
Host: api.discloud.app
api-token: YOUR_API_KEY
Accept: */*
{
  "status": "ok",
  "message": "Member removed successfully"
}

Update member role

patch

Updates the role of a team member.

Authorizations
api-tokenstringRequired
Path parameters
teamIDstringRequired

Team ID

memberUserIDstringRequired

Member user ID

Body
rolestringRequired

admin, developer or viewer

Responses
200

Role updated successfully

application/json
objectOptional
patch/teams/{teamID}/members/{memberUserID}
PATCH /v2/teams/{teamID}/members/{memberUserID} HTTP/1.1
Host: api.discloud.app
api-token: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 16

{
  "role": "admin"
}
{
  "status": "ok",
  "message": "Role updated successfully",
  "data": {
    "userID": "123456789012345678",
    "role": "admin"
  }
}

Leave team

post

Removes the current user from the team. The owner cannot leave.

Authorizations
api-tokenstringRequired
Path parameters
teamIDstringRequired

Team ID

Responses
200

Left the team successfully

application/json
objectOptional
post/teams/{teamID}/leave
POST /v2/teams/{teamID}/leave HTTP/1.1
Host: api.discloud.app
api-token: YOUR_API_KEY
Accept: */*
{
  "status": "ok",
  "message": "You have left the team successfully"
}

Last updated