Skip to content

API Reference

Michael Pisman edited this page Oct 19, 2023 · 1 revision

API Reference

Authentication

  • oAuth2 authentication.

    • Flow: password

    • Token URL = auth/jwt/login

  • API Key (APIKeyCookie)
    • Parameter Name: fastapiusersauth, in: cookie.

Workspaces

get_workspaces_workspaces_get

Code samples

GET /workspaces

Get Workspaces

Returns all workspaces where the current user is a member. The request does not accept any query parameters.

Example responses

200 Response

{
  "workspaces": [
    {
      "description": "This is an example workspace",
      "name": "Workspace 01",
      "owner": "true"
    },
    {
      "description": "This is another example workspace",
      "name": "Workspace 02",
      "owner": "false"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK List of all workspaces WorkspaceList
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

create_workspace_workspaces_post

Code samples

POST /workspaces

Create Workspace

Creates a new workspace for the current user. Body parameters:

  • name (str): name of the workspace, must be unique
  • description (str): description of the workspace

Returns the created workspace information.

Body parameter

{
  "description": "This is an example workspace",
  "name": "Workspace 01"
}

Parameters

Name In Type Required Description
body body WorkspaceCreateInput true none

Example responses

201 Response

{
  "description": "This is an example workspace",
  "name": "Workspace 01"
}

Responses

Status Meaning Description Schema
201 Created Created workspaces WorkspaceCreateOutput
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

get_workspace_permissions_workspaces_permissions_get

Code samples

GET /workspaces/permissions

Get Workspace Permissions

Example responses

200 Response

{
  "permissions": [
    "get_workspaces",
    "create_workspace",
    "get_workspace",
    "update_workspace",
    "delete_workspace",
    "get_workspace_members",
    "add_workspace_members",
    "remove_workspace_member",
    "get_groups",
    "create_group",
    "get_workspace_policies",
    "get_workspace_policy",
    "set_workspace_policy",
    "get_workspace_permissions"
  ]
}

Responses

Status Meaning Description Schema
200 OK List of all workspace permissions PermissionList
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

get_workspace_workspaces__workspace_id__get

Code samples

GET /workspaces/{workspace_id}

Get Workspace

Description:

Endpoint to get a workspace with the given id. By default, it returns the basic information of the workspace such as id, name, and description. The user can specify other resources to include in the response using the query parameters.

For example, to include groups and members in the response, the user can send the following GET request:

/workspaces/6497fdbafe12e8ff9017f253?include=groups&include=members

To include all resources, the user can send the following GET request:

/workspaces/6497fdbafe12e8ff9017f253?include=all

To get basic information of the workspace, the user can send the following GET request:

/workspaces/6497fdbafe12e8ff9017f253

Path parameters:

  • workspace_id (str): id of the workspace

Query parameters:

  • include (str): resources to include in the response

    Possible values:

    • groups: include groups in the response
    • members: include members in the response
    • policies: include policies in the response
    • all: include all resources in the response

Response:

Returns a workspace with the given id.

Parameters

Name In Type Required Description
workspace_id path string true none
include query any false none

Example responses

200 Response

{
  "description": "This is an example workspace",
  "id": "1a2b3c4d5e6f7g8h9i0j",
  "name": "Workspace 01"
}

Responses

Status Meaning Description Schema
200 OK Workspace data Workspace
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

update_workspace_workspaces__workspace_id__patch

Code samples

PATCH /workspaces/{workspace_id}

Update Workspace

Updates the workspace with the given id. Query parameters: @param workspace_id: id of the workspace to update Body parameters:

  • name (str): name of the workspace, must be unique
  • description (str): description of the workspace

Returns the updated workspace.

Body parameter

{
  "description": "This is an example workspace",
  "name": "Workspace 01"
}

Parameters

Name In Type Required Description
workspace_id path string true none
body body WorkspaceUpdateRequest true none

Example responses

200 Response

{
  "description": "This is an example workspace",
  "id": "1a2b3c4d5e6f7g8h9i0j",
  "name": "Workspace 01"
}

Responses

Status Meaning Description Schema
200 OK Updated workspace Workspace
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

delete_workspace_workspaces__workspace_id__delete

Code samples

DELETE /workspaces/{workspace_id}

Delete Workspace

Deletes the workspace with the given id. Query parameters: @param workspace_id: id of the workspace to delete

Returns status code 204 if the workspace is deleted successfully. Response has no detail.

Parameters

Name In Type Required Description
workspace_id path string true none

Example responses

422 Response

{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

Responses

Status Meaning Description Schema
204 No Content Deleted workspace None
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

get_groups_workspaces__workspace_id__groups_get

Code samples

GET /workspaces/{workspace_id}/groups

Get Groups

Parameters

Name In Type Required Description
workspace_id path string true none

Example responses

200 Response

{
  "groups": [
    {
      "id": "5eb7cf5a86d9755df3a6c593",
      "name": "string",
      "description": "string"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK List of all groups GroupList
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

create_group_workspaces__workspace_id__groups_post

Code samples

POST /workspaces/{workspace_id}/groups

Create Group

Body parameter

{
  "description": "My first Group",
  "name": "Group 01"
}

Parameters

Name In Type Required Description
workspace_id path string true none
body body GroupCreateInput true none

Example responses

201 Response

{
  "id": "5eb7cf5a86d9755df3a6c593",
  "name": "string",
  "description": "string"
}

Responses

Status Meaning Description Schema
201 Created Created Group GroupCreateOutput
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

get_workspace_members_workspaces__workspace_id__members_get

Code samples

GET /workspaces/{workspace_id}/members

Get Workspace Members

Parameters

Name In Type Required Description
workspace_id path string true none

Example responses

200 Response

{
  "members": [
    {
      "email": "jdoe@example.com",
      "first_name": "John",
      "last_name": "Doe",
      "role": "admin"
    },
    {
      "email": "jsmith@example.com",
      "first_name": "Jack",
      "last_name": "Smith",
      "role": "user"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK List of all groups MemberList
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

add_workspace_members_workspaces__workspace_id__members_post

Code samples

POST /workspaces/{workspace_id}/members

Add Workspace Members

Body parameter

{
  "accounts": [
    "1a2b3c4d5e6f7g8h9i0j",
    "2a3b4c5d6e7f8g9h0i1j",
    "3a4b5c6d7e8f9g0h1i2j"
  ]
}

Parameters

Name In Type Required Description
workspace_id path string true none
body body AddMembers true none

Example responses

200 Response

{
  "members": [
    {
      "email": "jdoe@example.com",
      "first_name": "John",
      "last_name": "Doe",
      "role": "admin"
    },
    {
      "email": "jsmith@example.com",
      "first_name": "Jack",
      "last_name": "Smith",
      "role": "user"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK List added members MemberList
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

remove_workspace_member_workspaces__workspace_id__members__account_id__delete

Code samples

DELETE /workspaces/{workspace_id}/members/{account_id}

Remove Workspace Member

Parameters

Name In Type Required Description
workspace_id path string true none
account_id path string true none

Example responses

200 Response

null

Responses

Status Meaning Description Schema
200 OK Updated list removed members Inline
422 Unprocessable Entity Validation Error HTTPValidationError

Response Schema

To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

get_workspace_policies_workspaces__workspace_id__policies_get

Code samples

GET /workspaces/{workspace_id}/policies

Get Workspace Policies

Parameters

Name In Type Required Description
workspace_id path string true none
account_id query string false none

Example responses

200 Response

{
  "policies": [
    {
      "permissions": [
        "get_workspace",
        "get_groups"
      ],
      "policy_holder": {
        "email": "email@example.com",
        "first_name": "Name",
        "id": "1a2b3c4d5e6f7g8h9i0j",
        "last_name": "Surname"
      }
    },
    {
      "permissions": [
        "get_workspace",
        "get_groups"
      ],
      "policy_holder": {
        "email": "email@example.com",
        "first_name": "Name",
        "id": "1a2b3c4d5e6f7g8h9i0j",
        "last_name": "Surname"
      }
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK List of all policies PolicyList
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

set_workspace_policy_workspaces__workspace_id__policies__policy_id__put

Code samples

PUT /workspaces/{workspace_id}/policies/{policy_id}

Set Workspace Policy

Sets the permissions for a user in a workspace. Query parameters: @param workspace_id: id of the workspace to update Body parameters:

  • user_id (str): id of the user to update
  • permissions (int): new permissions for the user

Returns the updated workspace.

Body parameter

{
  "permissions": [
    "get_workspace_info",
    "list_members"
  ]
}

Parameters

Name In Type Required Description
workspace_id path string true none
policy_id path string true none
body body PolicyInput true none

Example responses

200 Response

{
  "permissions": [
    "get_workspaces",
    "create_workspace",
    "get_workspace",
    "update_workspace",
    "delete_workspace",
    "get_workspace_members",
    "add_workspace_members",
    "remove_workspace_member",
    "get_groups",
    "create_group",
    "get_all_workspace_policies",
    "get_workspace_policy",
    "set_workspace_policy"
  ],
  "policy_holder": {
    "email": "email@example.com",
    "first_name": "Name",
    "id": "1a2b3c4d5e6f7g8h9i0j",
    "last_name": "Surname"
  }
}

Responses

Status Meaning Description Schema
200 OK Updated permissions PolicyOutput
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

get_polls_workspaces__workspace_id__polls_get

Code samples

GET /workspaces/{workspace_id}/polls

Get Polls

Parameters

Name In Type Required Description
workspace_id path string true none

Example responses

200 Response

{
  "polls": [
    {
      "description": "This is an example poll",
      "id": "1a2b3c4d5e6f7g8h9i0j",
      "name": "Poll 01",
      "published": true
    },
    {
      "description": "This is an example poll",
      "id": "1a2b3c4d5e6f7g8h9i0j",
      "name": "Poll 02",
      "published": true
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK List of all polls in the workspace PollList
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

create_poll_workspaces__workspace_id__polls_post

Code samples

POST /workspaces/{workspace_id}/polls

Create Poll

Body parameter

{
  "name": "string",
  "description": "string",
  "public": true,
  "published": true,
  "questions": [
    {
      "id": 0,
      "question": "string",
      "question_type": "string",
      "options": [
        "string"
      ],
      "correct_answer": [
        0
      ]
    }
  ]
}

Parameters

Name In Type Required Description
workspace_id path string true none
body body CreatePollRequest true none

Example responses

201 Response

{
  "description": "This is an example poll",
  "id": "1a2b3c4d5e6f7g8h9i0j",
  "name": "Poll 01",
  "published": true
}

Responses

Status Meaning Description Schema
201 Created Created poll PollResponse
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

Groups

get_all_groups_groups__get

Code samples

GET /groups/

Get All Groups

Parameters

Name In Type Required Description
workspace query any false none
account query any false none
name query any false none

Example responses

200 Response

{
  "groups": [
    {
      "id": "5eb7cf5a86d9755df3a6c593",
      "name": "string",
      "description": "string"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK List of groups GroupList
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

create_group_groups__post

Code samples

POST /groups/

Create Group

Body parameter

{
  "description": "My first Group",
  "name": "Group 01",
  "workspace": "60b9d1c8e1f1d5f5f5b4f8e1"
}

Parameters

Name In Type Required Description
body body GroupCreateRequest true none

Example responses

201 Response

{
  "id": "5eb7cf5a86d9755df3a6c593",
  "name": "string",
  "description": "string"
}

Responses

Status Meaning Description Schema
201 Created Created Group GroupCreateOutput
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

get_group_permissions_groups_permissions_get

Code samples

GET /groups/permissions

Get Group Permissions

Example responses

200 Response

{
  "permissions": [
    "get_workspaces",
    "create_workspace",
    "get_workspace",
    "update_workspace",
    "delete_workspace",
    "get_workspace_members",
    "add_workspace_members",
    "remove_workspace_member",
    "get_groups",
    "create_group",
    "get_workspace_policies",
    "get_workspace_policy",
    "set_workspace_policy",
    "get_workspace_permissions"
  ]
}

Responses

Status Meaning Description Schema
200 OK List of all Group permissions PermissionList
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

get_group_groups__group_id__get

Code samples

GET /groups/{group_id}

Get Group

Parameters

Name In Type Required Description
group_id path string true none
include query any false none

Example responses

200 Response

{
  "id": "5eb7cf5a86d9755df3a6c593",
  "name": "string",
  "description": "string",
  "workspace": {},
  "members": [
    null
  ],
  "policies": [
    null
  ]
}

Responses

Status Meaning Description Schema
200 OK Get a group Group
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

update_group_groups__group_id__patch

Code samples

PATCH /groups/{group_id}

Update Group

Body parameter

{
  "Description": "Updated description"
}

Parameters

Name In Type Required Description
group_id path string true none
body body GroupUpdateRequest true none

Example responses

200 Response

{
  "id": "5eb7cf5a86d9755df3a6c593",
  "name": "string",
  "description": "string"
}

Responses

Status Meaning Description Schema
200 OK Update a group GroupShort
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

delete_group_groups__group_id__delete

Code samples

DELETE /groups/{group_id}

Delete Group

Parameters

Name In Type Required Description
group_id path string true none

Example responses

422 Response

{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

Responses

Status Meaning Description Schema
204 No Content Delete a group None
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

get_group_members_groups__group_id__members_get

Code samples

GET /groups/{group_id}/members

Get Group Members

Parameters

Name In Type Required Description
group_id path string true none

Example responses

200 Response

{
  "members": [
    {
      "email": "jdoe@example.com",
      "first_name": "John",
      "last_name": "Doe",
      "role": "admin"
    },
    {
      "email": "jsmith@example.com",
      "first_name": "Jack",
      "last_name": "Smith",
      "role": "user"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK List of group members MemberList
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

add_group_members_groups__group_id__members_post

Code samples

POST /groups/{group_id}/members

Add Group Members

Body parameter

{
  "accounts": [
    "1a2b3c4d5e6f7g8h9i0j",
    "2a3b4c5d6e7f8g9h0i1j",
    "3a4b5c6d7e8f9g0h1i2j"
  ]
}

Parameters

Name In Type Required Description
group_id path string true none
body body AddMembers true none

Example responses

200 Response

{
  "members": [
    {
      "email": "jdoe@example.com",
      "first_name": "John",
      "last_name": "Doe",
      "role": "admin"
    },
    {
      "email": "jsmith@example.com",
      "first_name": "Jack",
      "last_name": "Smith",
      "role": "user"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK List of group members MemberList
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

remove_group_member_groups__group_id__members__account_id__delete

Code samples

DELETE /groups/{group_id}/members/{account_id}

Remove Group Member

Parameters

Name In Type Required Description
group_id path string true none
account_id path string true none

Example responses

200 Response

null

Responses

Status Meaning Description Schema
200 OK Updated list removed members Inline
422 Unprocessable Entity Validation Error HTTPValidationError

Response Schema

To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

get_group_policies_groups__group_id__policies_get

Code samples

GET /groups/{group_id}/policies

Get Group Policies

Parameters

Name In Type Required Description
group_id path string true none
account_id query string false none

Example responses

200 Response

{
  "policies": [
    {
      "permissions": [
        "get_workspace",
        "get_groups"
      ],
      "policy_holder": {
        "email": "email@example.com",
        "first_name": "Name",
        "id": "1a2b3c4d5e6f7g8h9i0j",
        "last_name": "Surname"
      }
    },
    {
      "permissions": [
        "get_workspace",
        "get_groups"
      ],
      "policy_holder": {
        "email": "email@example.com",
        "first_name": "Name",
        "id": "1a2b3c4d5e6f7g8h9i0j",
        "last_name": "Surname"
      }
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK List of all policies PolicyList
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

set_group_policy_groups__group_id__policies__policy_id__put

Code samples

PUT /groups/{group_id}/policies/{policy_id}

Set Group Policy

Sets the permissions for a user in a workspace. Query parameters: @param workspace_id: id of the workspace to update Body parameters:

  • user_id (str): id of the user to update
  • permissions (int): new permissions for the user

Body parameter

{
  "permissions": [
    "get_workspace_info",
    "list_members"
  ]
}

Parameters

Name In Type Required Description
group_id path string true none
policy_id path string true none
body body PolicyInput true none

Example responses

200 Response

{
  "permissions": [
    "get_workspaces",
    "create_workspace",
    "get_workspace",
    "update_workspace",
    "delete_workspace",
    "get_workspace_members",
    "add_workspace_members",
    "remove_workspace_member",
    "get_groups",
    "create_group",
    "get_all_workspace_policies",
    "get_workspace_policy",
    "set_workspace_policy"
  ],
  "policy_holder": {
    "email": "email@example.com",
    "first_name": "Name",
    "id": "1a2b3c4d5e6f7g8h9i0j",
    "last_name": "Surname"
  }
}

Responses

Status Meaning Description Schema
200 OK Updated policy PolicyOutput
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

Polls

get_poll_polls__poll_id__get

Code samples

GET /polls/{poll_id}

Get Poll

Parameters

Name In Type Required Description
poll_id path string true none
include query any false none

Example responses

200 Response

{
  "description": "This is an example poll",
  "id": "1a2b3c4d5e6f7g8h9i0j",
  "name": "Poll 01",
  "published": true
}

Responses

Status Meaning Description Schema
200 OK Poll details PollResponse
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

update_poll_polls__poll_id__patch

Code samples

PATCH /polls/{poll_id}

Update Poll

Body parameter

{
  "description": "This is an example poll",
  "name": "Poll 01",
  "published": true
}

Parameters

Name In Type Required Description
poll_id path string true none
body body UpdatePollRequest true none

Example responses

200 Response

{
  "description": "This is an example poll",
  "id": "1a2b3c4d5e6f7g8h9i0j",
  "name": "Poll 01",
  "published": true
}

Responses

Status Meaning Description Schema
200 OK Update Poll detail PollResponse
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

delete_poll_polls__poll_id__delete

Code samples

DELETE /polls/{poll_id}

Delete Poll

Parameters

Name In Type Required Description
poll_id path string true none

Example responses

422 Response

{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

Responses

Status Meaning Description Schema
204 No Content Result of delete operation None
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

get_questions_polls__poll_id__questions_get

Code samples

GET /polls/{poll_id}/questions

Get Questions

Parameters

Name In Type Required Description
poll_id path string true none
include query any false none

Example responses

200 Response

{
  "questions": [
    {
      "id": 0,
      "question": "string",
      "question_type": "string",
      "options": [
        "string"
      ],
      "correct_answer": [
        0
      ]
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Questions in a poll QuestionList
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

get_policies_polls__poll_id__policies_get

Code samples

GET /polls/{poll_id}/policies

Get Policies

Parameters

Name In Type Required Description
poll_id path string true none
include query any false none

Example responses

200 Response

{
  "policies": [
    {
      "permissions": [
        "get_workspace",
        "get_groups"
      ],
      "policy_holder": {
        "email": "email@example.com",
        "first_name": "Name",
        "id": "1a2b3c4d5e6f7g8h9i0j",
        "last_name": "Surname"
      }
    },
    {
      "permissions": [
        "get_workspace",
        "get_groups"
      ],
      "policy_holder": {
        "email": "email@example.com",
        "first_name": "Name",
        "id": "1a2b3c4d5e6f7g8h9i0j",
        "last_name": "Surname"
      }
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Policy list of a poll PolicyList
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

Accounts

get_all_accounts_accounts_get

Code samples

GET /accounts

Get All Accounts

Example responses

200 Response

{
  "accounts": [
    {
      "id": "5eb7cf5a86d9755df3a6c593",
      "email": "user@example.com",
      "first_name": "string",
      "last_name": "string"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Successful Response AccountList
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

users_current_user_accounts_me_get

Code samples

GET /accounts/me

Users:Current User

Example responses

200 Response

{
  "email": "user@example.com",
  "first_name": "John",
  "last_name": "Smith",
  "password": "pass1234"
}

Responses

Status Meaning Description Schema
200 OK Successful Response Account
401 Unauthorized Missing token or inactive user. None
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

delete_my_account_accounts_me_delete

Code samples

DELETE /accounts/me

Delete My Account

Delete current user account

This route deletes the account of the currently logged in user.

Request body

  • user - User object

Expected Response

204 - The account has been deleted

Responses

Status Meaning Description Schema
204 No Content Successful Response None
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

users_patch_current_user_accounts_me_patch

Code samples

PATCH /accounts/me

Users:Patch Current User

Body parameter

{
  "email": "user@example.com",
  "first_name": "John",
  "last_name": "Smith",
  "password": "pass1234"
}

Parameters

Name In Type Required Description
body body UpdateAccount true none

Example responses

200 Response

{
  "email": "user@example.com",
  "first_name": "John",
  "last_name": "Smith",
  "password": "pass1234"
}

Bad Request

{
  "detail": "UPDATE_USER_EMAIL_ALREADY_EXISTS"
}
{
  "detail": {
    "code": "UPDATE_USER_INVALID_PASSWORD",
    "reason": "Password should beat least 3 characters"
  }
}

Responses

Status Meaning Description Schema
200 OK Successful Response Account
400 Bad Request Bad Request ErrorModel
401 Unauthorized Missing token or inactive user. None
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

users_delete_user_accounts__id__delete

Code samples

DELETE /accounts/{id}

Users:Delete User

Parameters

Name In Type Required Description
id path string true none

Example responses

422 Response

{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

Responses

Status Meaning Description Schema
204 No Content Successful Response None
401 Unauthorized Missing token or inactive user. None
403 Forbidden Not a superuser. None
404 Not Found The user does not exist. None
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

users_user_accounts__id__get

Code samples

GET /accounts/{id}

Users:User

Parameters

Name In Type Required Description
id path string true none

Example responses

200 Response

{
  "email": "user@example.com",
  "first_name": "John",
  "last_name": "Smith",
  "password": "pass1234"
}

Responses

Status Meaning Description Schema
200 OK Successful Response Account
401 Unauthorized Missing token or inactive user. None
403 Forbidden Not a superuser. None
404 Not Found The user does not exist. None
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

users_patch_user_accounts__id__patch

Code samples

PATCH /accounts/{id}

Users:Patch User

Body parameter

{
  "email": "user@example.com",
  "first_name": "John",
  "last_name": "Smith",
  "password": "pass1234"
}

Parameters

Name In Type Required Description
id path string true none
body body UpdateAccount true none

Example responses

200 Response

{
  "email": "user@example.com",
  "first_name": "John",
  "last_name": "Smith",
  "password": "pass1234"
}

Bad Request

{
  "detail": "UPDATE_USER_EMAIL_ALREADY_EXISTS"
}
{
  "detail": {
    "code": "UPDATE_USER_INVALID_PASSWORD",
    "reason": "Password should beat least 3 characters"
  }
}

Responses

Status Meaning Description Schema
200 OK Successful Response Account
400 Bad Request Bad Request ErrorModel
401 Unauthorized Missing token or inactive user. None
403 Forbidden Not a superuser. None
404 Not Found The user does not exist. None
422 Unprocessable Entity Validation Error HTTPValidationError
To perform this operation, you must be authenticated by means of one of the following methods: OAuth2PasswordBearer, APIKeyCookie

Authentication

auth_token_login_auth_jwt_login_post

Code samples

POST /auth/jwt/login

Auth:Token.Login

Body parameter

grant_type: string
username: string
password: string
scope: ""
client_id: string
client_secret: string

Parameters

Name In Type Required Description
body body Body_auth_token_login_auth_jwt_login_post true none

Example responses

200 Response

{
  "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoiOTIyMWZmYzktNjQwZi00MzcyLTg2ZDMtY2U2NDJjYmE1NjAzIiwiYXVkIjoiZmFzdGFwaS11c2VyczphdXRoIiwiZXhwIjoxNTcxNTA0MTkzfQ.M10bjOe45I5Ncu_uXvOmVV8QxnL-nZfcH96U90JaocI",
  "refresh_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoiOTIyMWZmYzktNjQwZi00MzcyLTg2ZDMtY2U2NDJjYmE1NjAzIiwiYXVkIjoiZmFzdGFwaS11c2VyczphdXRoIiwiZXhwIjoxNTcxNTA0MTkzfQ.M10bjOe45I5Ncu_uXvOmVV8QxnL-nZfcH96U90JaocI",
  "token_type": "bearer",
  "expires_in": 3600
}

Bad Request

{
  "detail": "LOGIN_BAD_CREDENTIALS"
}
{
  "detail": "LOGIN_USER_NOT_VERIFIED"
}

422 Response

{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Successful Response LoginResponse
400 Bad Request Bad Request ErrorModel
422 Unprocessable Entity Validation Error HTTPValidationError
This operation does not require authentication

refresh_jwt_auth_jwt_refresh_post

Code samples

POST /auth/jwt/refresh

Refresh Jwt

Refresh the access token using the refresh token.

Headers: authorization: Authorization header with the access token refresh_token: Refresh-Token header with the refresh token

Parameters

Name In Type Required Description
authorization header string true none
refresh-token header string true none

Example responses

200 Response

{
  "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoiOTIyMWZmYzktNjQwZi00MzcyLTg2ZDMtY2U2NDJjYmE1NjAzIiwiYXVkIjoiZmFzdGFwaS11c2VyczphdXRoIiwiZXhwIjoxNTcxNTA0MTkzfQ.M10bjOe45I5Ncu_uXvOmVV8QxnL-nZfcH96U90JaocI",
  "refresh_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoiOTIyMWZmYzktNjQwZi00MzcyLTg2ZDMtY2U2NDJjYmE1NjAzIiwiYXVkIjoiZmFzdGFwaS11c2VyczphdXRoIiwiZXhwIjoxNTcxNTA0MTkzfQ.M10bjOe45I5Ncu_uXvOmVV8QxnL-nZfcH96U90JaocI",
  "token_type": "bearer",
  "expires_in": 3600
}

Bad Request

{
  "detail": "LOGIN_BAD_CREDENTIALS"
}
{
  "detail": "LOGIN_USER_NOT_VERIFIED"
}

422 Response

{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Successful Response LoginResponse
400 Bad Request Bad Request ErrorModel
422 Unprocessable Entity Validation Error HTTPValidationError
This operation does not require authentication

refresh_jwt_with_client_ID_auth_jwt_postman_refresh_post

Code samples

POST /auth/jwt/postman_refresh

Refresh Jwt With Client Id

Refresh the access token using the refresh token.

Headers: authorization: Authorization header with the access token Body: refresh_token: Refresh-Token header with the refresh token

Body parameter

"string"

Parameters

Name In Type Required Description
authorization header string true none
body body string true none

Example responses

200 Response

{
  "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoiOTIyMWZmYzktNjQwZi00MzcyLTg2ZDMtY2U2NDJjYmE1NjAzIiwiYXVkIjoiZmFzdGFwaS11c2VyczphdXRoIiwiZXhwIjoxNTcxNTA0MTkzfQ.M10bjOe45I5Ncu_uXvOmVV8QxnL-nZfcH96U90JaocI",
  "refresh_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoiOTIyMWZmYzktNjQwZi00MzcyLTg2ZDMtY2U2NDJjYmE1NjAzIiwiYXVkIjoiZmFzdGFwaS11c2VyczphdXRoIiwiZXhwIjoxNTcxNTA0MTkzfQ.M10bjOe45I5Ncu_uXvOmVV8QxnL-nZfcH96U90JaocI",
  "token_type": "bearer",
  "expires_in": 3600
}

Bad Request

{
  "detail": "LOGIN_BAD_CREDENTIALS"
}
{
  "detail": "LOGIN_USER_NOT_VERIFIED"
}

422 Response

{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Successful Response LoginResponse
400 Bad Request Bad Request ErrorModel
422 Unprocessable Entity Validation Error HTTPValidationError
This operation does not require authentication

register_register_auth_register_post

Code samples

POST /auth/register

Register:Register

Body parameter

{
  "email": "user@example.com",
  "first_name": "John",
  "last_name": "Smith",
  "password": "pass1234"
}

Parameters

Name In Type Required Description
body body CreateAccount true none

Example responses

201 Response

{
  "email": "user@example.com",
  "first_name": "John",
  "last_name": "Smith",
  "password": "pass1234"
}

Bad Request

{
  "detail": "REGISTER_USER_ALREADY_EXISTS"
}
{
  "detail": {
    "code": "REGISTER_INVALID_PASSWORD",
    "reason": "Password should beat least 3 characters"
  }
}

Responses

Status Meaning Description Schema
201 Created Successful Response Account
400 Bad Request Bad Request ErrorModel
422 Unprocessable Entity Validation Error HTTPValidationError
This operation does not require authentication

reset_forgot_password_auth_forgot_password_post

Code samples

POST /auth/forgot-password

Reset:Forgot Password

Body parameter

{
  "email": "user@example.com"
}

Parameters

Name In Type Required Description
body body Body_reset_forgot_password_auth_forgot_password_post true none

Example responses

202 Response

null

Responses

Status Meaning Description Schema
202 Accepted Successful Response Inline
422 Unprocessable Entity Validation Error HTTPValidationError

Response Schema

This operation does not require authentication

reset_reset_password_auth_reset_password_post

Code samples

POST /auth/reset-password

Reset:Reset Password

Body parameter

{
  "token": "string",
  "password": "string"
}

Parameters

Name In Type Required Description
body body Body_reset_reset_password_auth_reset_password_post true none

Example responses

200 Response

null

Bad Request

{
  "detail": "RESET_PASSWORD_BAD_TOKEN"
}
{
  "detail": {
    "code": "RESET_PASSWORD_INVALID_PASSWORD",
    "reason": "Password should be at least 3 characters"
  }
}

Responses

Status Meaning Description Schema
200 OK Successful Response Inline
400 Bad Request Bad Request ErrorModel
422 Unprocessable Entity Validation Error HTTPValidationError

Response Schema

This operation does not require authentication

verify_request_token_auth_request_verify_token_post

Code samples

POST /auth/request-verify-token

Verify:Request-Token

Body parameter

{
  "email": "user@example.com"
}

Parameters

Name In Type Required Description
body body Body_verify_request_token_auth_request_verify_token_post true none

Example responses

202 Response

null

Responses

Status Meaning Description Schema
202 Accepted Successful Response Inline
422 Unprocessable Entity Validation Error HTTPValidationError

Response Schema

This operation does not require authentication

verify_verify_auth_verify_post

Code samples

POST /auth/verify

Verify:Verify

Body parameter

{
  "token": "string"
}

Parameters

Name In Type Required Description
body body Body_verify_verify_auth_verify_post true none

Example responses

200 Response

{
  "email": "user@example.com",
  "first_name": "John",
  "last_name": "Smith",
  "password": "pass1234"
}

Bad Request

{
  "detail": "VERIFY_USER_BAD_TOKEN"
}
{
  "detail": "VERIFY_USER_ALREADY_VERIFIED"
}

Responses

Status Meaning Description Schema
200 OK Successful Response Account
400 Bad Request Bad Request ErrorModel
422 Unprocessable Entity Validation Error HTTPValidationError
This operation does not require authentication

Schemas

Account

{
  "email": "user@example.com",
  "first_name": "John",
  "last_name": "Smith",
  "password": "pass1234"
}

Account

Properties

Name Type Required Restrictions Description
id string true none none
email string(email) true none none
is_active boolean false none none
is_superuser boolean false none none
is_verified boolean false none none
first_name string false none none
last_name string false none none

AccountList

{
  "accounts": [
    {
      "id": "5eb7cf5a86d9755df3a6c593",
      "email": "user@example.com",
      "first_name": "string",
      "last_name": "string"
    }
  ]
}

AccountList

Properties

Name Type Required Restrictions Description
accounts [AccountShort] true none none

AccountShort

{
  "id": "5eb7cf5a86d9755df3a6c593",
  "email": "user@example.com",
  "first_name": "string",
  "last_name": "string"
}

AccountShort

Properties

Name Type Required Restrictions Description
id string true none none
email string(email) true none none
first_name string true none none
last_name string true none none

AddMembers

{
  "accounts": [
    "1a2b3c4d5e6f7g8h9i0j",
    "2a3b4c5d6e7f8g9h0i1j",
    "3a4b5c6d7e8f9g0h1i2j"
  ]
}

AddMembers

Properties

Name Type Required Restrictions Description
accounts [string] true none none

Body_auth_token_login_auth_jwt_login_post

{
  "grant_type": "string",
  "username": "string",
  "password": "string",
  "scope": "",
  "client_id": "string",
  "client_secret": "string"
}

Body_auth_token_login_auth_jwt_login_post

Properties

Name Type Required Restrictions Description
grant_type any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
username string true none none
password string true none none
scope string false none none
client_id any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
client_secret any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

Body_reset_forgot_password_auth_forgot_password_post

{
  "email": "user@example.com"
}

Body_reset_forgot_password_auth_forgot_password_post

Properties

Name Type Required Restrictions Description
email string(email) true none none

Body_reset_reset_password_auth_reset_password_post

{
  "token": "string",
  "password": "string"
}

Body_reset_reset_password_auth_reset_password_post

Properties

Name Type Required Restrictions Description
token string true none none
password string true none none

Body_verify_request_token_auth_request_verify_token_post

{
  "email": "user@example.com"
}

Body_verify_request_token_auth_request_verify_token_post

Properties

Name Type Required Restrictions Description
email string(email) true none none

Body_verify_verify_auth_verify_post

{
  "token": "string"
}

Body_verify_verify_auth_verify_post

Properties

Name Type Required Restrictions Description
token string true none none

CreateAccount

{
  "email": "user@example.com",
  "first_name": "John",
  "last_name": "Smith",
  "password": "pass1234"
}

CreateAccount

Properties

Name Type Required Restrictions Description
email string(email) true none none
password string true none none
is_active any false none none

anyOf

Name Type Required Restrictions Description
» anonymous boolean false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
is_superuser any false none none

anyOf

Name Type Required Restrictions Description
» anonymous boolean false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
is_verified any false none none

anyOf

Name Type Required Restrictions Description
» anonymous boolean false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
first_name string false none none
last_name string false none none

CreatePollRequest

{
  "name": "string",
  "description": "string",
  "public": true,
  "published": true,
  "questions": [
    {
      "id": 0,
      "question": "string",
      "question_type": "string",
      "options": [
        "string"
      ],
      "correct_answer": [
        0
      ]
    }
  ]
}

CreatePollRequest

Properties

Name Type Required Restrictions Description
name string true none none
description string true none none
public boolean true none none
published boolean true none none
questions [Question] true none none

ErrorModel

{
  "detail": "string"
}

ErrorModel

Properties

Name Type Required Restrictions Description
detail any true none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous object false none none
»» additionalProperties string false none none

Group

{
  "id": "5eb7cf5a86d9755df3a6c593",
  "name": "string",
  "description": "string",
  "workspace": {},
  "members": [
    null
  ],
  "policies": [
    null
  ]
}

Group

Properties

Name Type Required Restrictions Description
id any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
name any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
description any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
workspace any false none none

anyOf

Name Type Required Restrictions Description
» anonymous any false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
members any false none none

anyOf

Name Type Required Restrictions Description
» anonymous [any] false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
policies any false none none

anyOf

Name Type Required Restrictions Description
» anonymous [any] false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

GroupCreateInput

{
  "description": "My first Group",
  "name": "Group 01"
}

GroupCreateInput

Properties

Name Type Required Restrictions Description
name string false none none
description string false none none

GroupCreateOutput

{
  "id": "5eb7cf5a86d9755df3a6c593",
  "name": "string",
  "description": "string"
}

GroupCreateOutput

Properties

Name Type Required Restrictions Description
id string true none none
name string true none none
description string true none none

GroupCreateRequest

{
  "description": "My first Group",
  "name": "Group 01",
  "workspace": "60b9d1c8e1f1d5f5f5b4f8e1"
}

GroupCreateRequest

Properties

Name Type Required Restrictions Description
name string false none none
workspace string true none none
description string false none none

GroupList

{
  "groups": [
    {
      "id": "5eb7cf5a86d9755df3a6c593",
      "name": "string",
      "description": "string"
    }
  ]
}

GroupList

Properties

Name Type Required Restrictions Description
groups any true none none

anyOf

Name Type Required Restrictions Description
» anonymous [GroupShort] false none none

or

Name Type Required Restrictions Description
» anonymous [Group] false none none

GroupShort

{
  "id": "5eb7cf5a86d9755df3a6c593",
  "name": "string",
  "description": "string"
}

GroupShort

Properties

Name Type Required Restrictions Description
id string true none none
name string true none none
description string true none none

GroupUpdateRequest

{
  "Description": "Updated description"
}

GroupUpdateRequest

Properties

Name Type Required Restrictions Description
name any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
description any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

HTTPValidationError

{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

HTTPValidationError

Properties

Name Type Required Restrictions Description
detail [ValidationError] false none none

LoginResponse

{
  "access_token": "string",
  "token_type": "Bearer",
  "scope": "string",
  "client_id": "string",
  "expires_in": 3600,
  "refresh_token": "string"
}

LoginResponse

Properties

Name Type Required Restrictions Description
access_token string true none none
token_type string false none none
scope any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
client_id any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
expires_in integer false none none
refresh_token string true none none

Member

{
  "email": "user@example.com",
  "first_name": "John",
  "id": "1a2b3c4d5e6f7g8h9i0j",
  "last_name": "Doe"
}

Member

Properties

Name Type Required Restrictions Description
id string true none none
email any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string(email) false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
first_name any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
last_name any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
name any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
description any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

MemberList

{
  "members": [
    {
      "email": "jdoe@example.com",
      "first_name": "John",
      "last_name": "Doe",
      "role": "admin"
    },
    {
      "email": "jsmith@example.com",
      "first_name": "Jack",
      "last_name": "Smith",
      "role": "user"
    }
  ]
}

MemberList

Properties

Name Type Required Restrictions Description
members [Member] true none none

PermissionList

{
  "permissions": [
    "get_workspaces",
    "create_workspace",
    "get_workspace",
    "update_workspace",
    "delete_workspace",
    "get_workspace_members",
    "add_workspace_members",
    "remove_workspace_member",
    "get_groups",
    "create_group",
    "get_workspace_policies",
    "get_workspace_policy",
    "set_workspace_policy",
    "get_workspace_permissions"
  ]
}

PermissionList

Properties

Name Type Required Restrictions Description
permissions [string] true none none

PolicyInput

{
  "permissions": [
    "get_workspace_info",
    "list_members"
  ]
}

PolicyInput

Properties

Name Type Required Restrictions Description
policy_id any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
account_id any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
group_id any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
permissions [string] true none none

PolicyList

{
  "policies": [
    {
      "permissions": [
        "get_workspace",
        "get_groups"
      ],
      "policy_holder": {
        "email": "email@example.com",
        "first_name": "Name",
        "id": "1a2b3c4d5e6f7g8h9i0j",
        "last_name": "Surname"
      }
    },
    {
      "permissions": [
        "get_workspace",
        "get_groups"
      ],
      "policy_holder": {
        "email": "email@example.com",
        "first_name": "Name",
        "id": "1a2b3c4d5e6f7g8h9i0j",
        "last_name": "Surname"
      }
    }
  ]
}

PolicyList

Properties

Name Type Required Restrictions Description
policies [PolicyShort] true none none

PolicyOutput

{
  "permissions": [
    "get_workspaces",
    "create_workspace",
    "get_workspace",
    "update_workspace",
    "delete_workspace",
    "get_workspace_members",
    "add_workspace_members",
    "remove_workspace_member",
    "get_groups",
    "create_group",
    "get_all_workspace_policies",
    "get_workspace_policy",
    "set_workspace_policy"
  ],
  "policy_holder": {
    "email": "email@example.com",
    "first_name": "Name",
    "id": "1a2b3c4d5e6f7g8h9i0j",
    "last_name": "Surname"
  }
}

PolicyOutput

Properties

Name Type Required Restrictions Description
permissions [string] true none none
policy_holder any false none none

PolicyShort

{
  "id": "5eb7cf5a86d9755df3a6c593",
  "policy_holder_type": "account",
  "policy_holder": null,
  "permissions": {}
}

PolicyShort

Properties

Name Type Required Restrictions Description
id string true none none
policy_holder_type string true none none
policy_holder any false none none
permissions any false none none

anyOf

Name Type Required Restrictions Description
» anonymous any false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

Enumerated Values

Property Value
policy_holder_type account
policy_holder_type group

PollList

{
  "polls": [
    {
      "description": "This is an example poll",
      "id": "1a2b3c4d5e6f7g8h9i0j",
      "name": "Poll 01",
      "published": true
    },
    {
      "description": "This is an example poll",
      "id": "1a2b3c4d5e6f7g8h9i0j",
      "name": "Poll 02",
      "published": true
    }
  ]
}

PollList

Properties

Name Type Required Restrictions Description
polls [PollShort] true none none

PollResponse

{
  "description": "This is an example poll",
  "id": "1a2b3c4d5e6f7g8h9i0j",
  "name": "Poll 01",
  "published": true
}

PollResponse

Properties

Name Type Required Restrictions Description
id any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
workspace any false none none

anyOf

Name Type Required Restrictions Description
» anonymous any false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
name string true none none
description string true none none
public boolean true none none
published boolean true none none
questions any false none none

anyOf

Name Type Required Restrictions Description
» anonymous [Question] false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
policies any false none none

anyOf

Name Type Required Restrictions Description
» anonymous [any] false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

PollShort

{
  "poll": {
    "description": "This is an example poll",
    "id": "1a2b3c4d5e6f7g8h9i0j",
    "name": "Poll 01",
    "published": true
  }
}

PollShort

Properties

Name Type Required Restrictions Description
id string true none none
name string true none none
description string true none none
public boolean true none none
published boolean true none none

Question

{
  "id": 0,
  "question": "string",
  "question_type": "string",
  "options": [
    "string"
  ],
  "correct_answer": [
    0
  ]
}

Question

Properties

Name Type Required Restrictions Description
id integer true none none
question string true none none
question_type string true none none
options [string] true none none
correct_answer [integer] true none none

QuestionList

{
  "questions": [
    {
      "id": 0,
      "question": "string",
      "question_type": "string",
      "options": [
        "string"
      ],
      "correct_answer": [
        0
      ]
    }
  ]
}

QuestionList

Properties

Name Type Required Restrictions Description
questions [Question] true none none

UpdateAccount

{
  "email": "user@example.com",
  "first_name": "John",
  "last_name": "Smith",
  "password": "pass1234"
}

UpdateAccount

Properties

Name Type Required Restrictions Description
password any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
email string(email) true none none
is_active any false none none

anyOf

Name Type Required Restrictions Description
» anonymous boolean false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
is_superuser any false none none

anyOf

Name Type Required Restrictions Description
» anonymous boolean false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
is_verified any false none none

anyOf

Name Type Required Restrictions Description
» anonymous boolean false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
first_name string false none none
last_name string false none none

UpdatePollRequest

{
  "description": "This is an example poll",
  "name": "Poll 01",
  "published": true
}

UpdatePollRequest

Properties

Name Type Required Restrictions Description
name any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
description any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
public any false none none

anyOf

Name Type Required Restrictions Description
» anonymous boolean false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
published any false none none

anyOf

Name Type Required Restrictions Description
» anonymous boolean false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
questions any false none none

anyOf

Name Type Required Restrictions Description
» anonymous [Question] false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

ValidationError

{
  "loc": [
    "string"
  ],
  "msg": "string",
  "type": "string"
}

ValidationError

Properties

Name Type Required Restrictions Description
loc [anyOf] true none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous integer false none none

continued

Name Type Required Restrictions Description
msg string true none none
type string true none none

Workspace

{
  "description": "This is an example workspace",
  "id": "1a2b3c4d5e6f7g8h9i0j",
  "name": "Workspace 01"
}

Workspace

Properties

Name Type Required Restrictions Description
id any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
name any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
description any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
members any false none none

anyOf

Name Type Required Restrictions Description
» anonymous [any] false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
groups any false none none

anyOf

Name Type Required Restrictions Description
» anonymous [any] false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
policies any false none none

anyOf

Name Type Required Restrictions Description
» anonymous [any] false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
polls any false none none

anyOf

Name Type Required Restrictions Description
» anonymous [any] false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

WorkspaceCreateInput

{
  "description": "This is an example workspace",
  "name": "Workspace 01"
}

WorkspaceCreateInput

Properties

Name Type Required Restrictions Description
name string true none none
description string true none none

WorkspaceCreateOutput

{
  "description": "This is an example workspace",
  "name": "Workspace 01"
}

WorkspaceCreateOutput

Properties

Name Type Required Restrictions Description
id string true none none
name string true none none
description string true none none

WorkspaceList

{
  "workspaces": [
    {
      "description": "This is an example workspace",
      "name": "Workspace 01",
      "owner": "true"
    },
    {
      "description": "This is another example workspace",
      "name": "Workspace 02",
      "owner": "false"
    }
  ]
}

WorkspaceList

Properties

Name Type Required Restrictions Description
workspaces any true none none

anyOf

Name Type Required Restrictions Description
» anonymous [WorkspaceShort] false none none

or

Name Type Required Restrictions Description
» anonymous [Workspace] false none none

WorkspaceShort

{
  "id": "5eb7cf5a86d9755df3a6c593",
  "name": "string",
  "description": "string"
}

WorkspaceShort

Properties

Name Type Required Restrictions Description
id string true none none
name string true none none
description string true none none

WorkspaceUpdateRequest

{
  "description": "This is an example workspace",
  "name": "Workspace 01"
}

WorkspaceUpdateRequest

Properties

Name Type Required Restrictions Description
name any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
description any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none
Clone this wiki locally