Touca Server API (2.0.0)

Touca Server API Specification

Other

Entry-point

Reassures curious engineers who browse to the Backend URL that the server is up and running.

Responses

API URL Placeholder

Reassures curious engineers who browse to the API URL provided for submitting results that the platform is up and running.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

Responses

Provide Feedback

Submits user feedback to Touca Engineering Team.

Request Body schema: application/json
body
required
string [ 20 .. 1000 ] characters
name
string <= 100 characters
page
required
string <= 16 characters
email
string <= 100 characters
cname
string <= 100 characters

Responses

Request samples

Content type
application/json
{
  • "body": "stringstringstringst",
  • "name": "string",
  • "page": "string",
  • "email": "string",
  • "cname": "string"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Account

Activate Account

Activate a user account.

Request Body schema: application/json
key
required
string >= 8 characters

Responses

Request samples

Content type
application/json
{
  • "key": "stringst"
}

Response samples

Content type
application/json
{
  • "expiresAt": "2019-08-24T14:15:22Z"
}

Extend User Session

Extend this user session.

Responses

Response samples

Content type
application/json
{
  • "expiresAt": "2019-08-24T14:15:22Z"
}

Create Password Reset Key

Initiate the process to reset account password.

Request Body schema: application/json
email
required
string <email>

Responses

Request samples

Content type
application/json
{
  • "email": "user@example.com"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Reset Account Password

Provides basic information for an account associated with a given reset key.

path Parameters
key
required
string <uuid>

reset key provided by the platform

Responses

Response samples

Content type
application/json
{
  • "email": "string",
  • "fullname": "string",
  • "username": "string"
}

Reset Account Password

Set a new password for a user account using a previously issued reset key.

path Parameters
key
required
string <uuid>

reset key provided by the platform

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Resend Password Reset Key

Resend password reset key.

Request Body schema: application/json
email
required
string <email>

Responses

Request samples

Content type
application/json
{
  • "email": "user@example.com"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Create User Session

Log into a user account. Creates a user session.

Request Body schema: application/json
email
required
string <email>
password
required
string >= 8 characters

Responses

Request samples

Content type
application/json
{
  • "email": "user@example.com",
  • "password": "stringst"
}

Response samples

Content type
application/json
{
  • "expiresAt": "2019-08-24T14:15:22Z"
}

Create User Session

Log into a user account. Creates a user session.

Request Body schema: application/json
google_token
required
string

Responses

Request samples

Content type
application/json
{
  • "google_token": "string"
}

Response samples

Content type
application/json
{
  • "expiresAt": "2019-08-24T14:15:22Z"
}

Remove User Session

Log out of a user account. Removes a user session.

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Create Account

Create a user account.

Request Body schema: application/json
email
required
string <email>

Responses

Request samples

Content type
application/json
{
  • "email": "user@example.com"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Resend Activation Link

Resend account activation key.

Request Body schema: application/json
email
required
string <email>

Responses

Request samples

Content type
application/json
{
  • "email": "user@example.com"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Batch

List Batches

List all batches in a given suite. User performing the query must be authenticated. User performing the query must be a member of the team. Output may have been cached in the server.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

Responses

Response samples

Content type
application/json
[
  • [
    ]
]

Lookup Batch

Learn more about a batch in a given suite. User performing the query must be authenticated. User performing the query must be member of the team. Output may have been cached in the server.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

batch
required
string
Example: 7.12.149

version of the workflow

Responses

Response samples

Content type
application/json
{
  • "batchSlug": "string",
  • "comparedAgainst": "string",
  • "expirable": true,
  • "isSealed": true,
  • "messageCount": 0,
  • "submittedAt": "2019-08-24T14:15:22Z",
  • "submittedBy": [
    ],
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "meta": {
    },
  • "commentCount": 0,
  • "suiteName": "string",
  • "suiteSlug": "string",
  • "teamName": "string",
  • "teamSlug": "string"
}

Remove Batch

Remove a batch and all data associated with it. User initiating the request must be authenticated. User initiating the request must be administrator of the team. Batch must be sealed. Batch must not be baseline of the suite it belongs to.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

batch
required
string
Example: 7.12.149

version of the workflow

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Compare Batch

Compare a batch with another batch. Compare results submitted for a batch to results submitted for another batch. User performing the query must be authenticated. User performing the query must be member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

batch
required
string
Example: 7.12.149

version of the workflow

dstBatch
required
string

version to compare against

dstSuite
required
string

slug of the suite to compare against

Responses

Response samples

Content type
application/json
{
  • "common": [
    ],
  • "fresh": [
    ],
  • "missing": [
    ],
  • "overview": {
    }
}

Generate PDF Report

Generate PDF report for test results submitted to this batch. User performing the query must be authenticated. User performing the query must be member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

batch
required
string
Example: 7.12.149

version of the workflow

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Export Batch as Zip

Export test results submitted to this batch as a compressed archive. User performing the query must be authenticated. User performing the query must be member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

batch
required
string
Example: 7.12.149

version of the workflow

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Promote a Batch

Promote a batch to baseline of the suite it belongs to. User initiating the request must be authenticated. User initiating the request must be member of the team. Batch to be promoted should be sealed. Batch to be promoted should not be empty. We support empty promotion reason only for the first submitted batch whose workflow does not include calling this route. hence, we choose to reject empty reasons for all subsequent promotions that happened through this route. We think a valid promotion reason should be no longer than a single paragraph. Assuming a normal paragraph includes 200 words with average length of 5, we allow at most 1500 characters to be entered for promotion reason.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

batch
required
string
Example: 7.12.149

version of the workflow

Request Body schema: application/json
reason
required
string [ 0 .. 1500 ] characters

Responses

Request samples

Content type
application/json
{
  • "reason": "string"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Seal a Batch

Seals a version of the specified suite to prevent additional results to be submitted for that version. This is optional given that batches are automatically sealed by the server after a period of time after their submission. User initiating the request must be authenticated. User initiating the request must be member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

batch
required
string
Example: 7.12.149

version of the workflow

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Client

Issue token for logging from CLI

Creates a short-lived token for logging in from the CLI. The token must be verified by visiting the URL from a web browser and logging in.

Responses

Response samples

Content type
application/json
{
  • "token": "string",
  • "webUrl": "string"
}

Check status of CLI login token

Checks the status of a CLI login token. The token must be verified by visiting the URL from a web browser and logging in.

Responses

Response samples

Content type
application/json
{
  • "apiKey": "string",
  • "team": "string"
}

Verify token for logging from CLI

Marks CLI token as verified.

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Check Remote Options

Queries server for configuration options such as the next version increment for the code under test or the set of test cases for the code under test.

Request Body schema: application/json
Array
team
required
string
suite
required
string
version
string
testcases
Array of strings

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
[
  • {
    }
]

Create Client Session

Authenticate to Touca Server API. Creates a temporary client session.

Request Body schema: application/json
key
required
string <uuid>

Responses

Request samples

Content type
application/json
{
  • "key": "4adfe27e-63d3-45b9-8238-62b6ed6fdb5e"
}

Response samples

Content type
application/json
{
  • "expiresAt": "2019-08-24T14:15:22Z"
}

Submit Results

Handles test results submitted via Touca SDKs. Client initiating the request must be authenticated.

Request Body schema: application/octet-stream

Valid binary data that conforms to Touca data schema. Submission file cannot be larger than 50 MB in size.

string <binary>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Check SDK configuration options including API Key

Request Body schema: application/json
team
string

Responses

Request samples

Content type
application/json
{
  • "team": "string"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Comment

List Comments

List comments submitted for a given page. User performing the query must be authenticated. User performing the query must be member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

batch
required
string
Example: 7.12.149

version of the workflow

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Comment

Creates a new comment. User performing the query must be authenticated. User performing the query must be member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

batch
required
string
Example: 7.12.149

version of the workflow

Request Body schema: application/json
body
required
string [ 10 .. 1500 ] characters

Responses

Request samples

Content type
application/json
{
  • "body": "stringstri"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Update Comment

Updates an existing comment. User performing the request must be authenticated. User performing the request must be member of the team. User performing the request must own the comment.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

batch
required
string
Example: 7.12.149

version of the workflow

comment
required
string
Example: 123456

unique id of this comment

Request Body schema: application/json
body
required
string [ 10 .. 1500 ] characters

Responses

Request samples

Content type
application/json
{
  • "body": "stringstri"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Remove Comment

Removes an existing comment. User performing the request must be authenticated. User performing the request must be member of the team. User performing the request must be owner of the comment or admin of the team or admin of the platform.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

batch
required
string
Example: 7.12.149

version of the workflow

comment
required
string
Example: 123456

unique id of this comment

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Reply to Comment

Replies to an existing comment. User performing the request must be authenticated. User performing the request must be member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

batch
required
string
Example: 7.12.149

version of the workflow

comment
required
string
Example: 123456

unique id of this comment

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Element

Lookup Element

Learn more about an element in a given suite. User performing the query must be authenticated. User performing the query must be member of the team. Output may have been cached in the server.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

element
required
string

testcase to be given as input to the workflow under test

Responses

Response samples

Content type
application/json
{
  • "batches": [
    ],
  • "elementName": "string",
  • "elementSlug": "string",
  • "suiteName": "string",
  • "suiteSlug": "string",
  • "teamName": "string",
  • "teamSlug": "string"
}

Lookup Element

Update test case information in a given suite. User initiating the request must be authenticated. User initiation the request must be member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

element
required
string

testcase to be given as input to the workflow under test

Request Body schema: application/json
note
string

Responses

Request samples

Content type
application/json
{
  • "note": "string"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Compare Elements

Compare results submitted for the same element between two batches. User performing the query must be authenticated. User performing the query must be member of the team. Output may have been cached in the server.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

element
required
string

testcase to be given as input to the workflow under test

batch
required
string
Example: 7.12.149

version of the workflow

dstBatch
required
string

version to compare against

dstElementName
required
string

slug of the element in the suite to compare against

dstSuite
required
string

slug of the suite to compare against

Responses

Response samples

Content type
application/json
{
  • "cmp": {
    },
  • "dst": {
    },
  • "meta": {
    },
  • "src": {
    }
}

List Elements

List all test suites in baseline version of a given suite. User performing the query must be authenticated. User performing the query must be a member of the team. Output may have been cached in the server.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Platform

Check Platform Health

Provides health status of the Touca server

Responses

Response samples

Content type
application/json
{
  • "configured": true,
  • "mail": true,
  • "ready": true
}

Update Account Information

Updates profile of an existing account on the platform. User initiating the request must be authenticated. User initiating the request must be a platform admin.

path Parameters
account
required
string
Example: alice

username of account to be updated

Request Body schema: application/json
role
required
string
Enum: "user" "admin"

Responses

Request samples

Content type
application/json
{
  • "role": "user"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Delete a given account

Deletes a given account and all data associated with it. User initiating the request must be authenticated. User initiating the request must be a platform admin. User being removed must not have any active team membership. User being removed must not have any pending team invitation. User being removed must not have any pending join request.

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Suspend a given account

Suspends a given account and removes all its active sessions. User initiating the request must be authenticated. User initiating the request must be a platform admin.

path Parameters
account
required
string
Example: alice

username of account to be updated

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Get Server Settings

Reports server settings. If server is already configured, user initiating the request must be authenticated and a server admin.

Responses

Response samples

Content type
application/json
{
  • "contact": {
    },
  • "mail": {
    },
  • "telemetry": true
}

Update Server Settings

Updates server settings. If server is already configured, user initiating the request must be authenticated and a server admin.

Request Body schema: application/json
telemetry
boolean

Responses

Request samples

Content type
application/json
{
  • "telemetry": true
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Register Server

Adds contact information to this server instance.

Request Body schema: application/json
company
string
email
required
string
name
required
string

Responses

Request samples

Content type
application/json
{
  • "company": "string",
  • "email": "string",
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Get Platform Statistics

Provides statistics about this Touca server instance. User initiating the request must be authenticated. User initiating the request must be a platform admin.

Responses

Response samples

Content type
application/json
{
  • "countBatches": 0,
  • "countComparisons": 0,
  • "countElements": 0,
  • "countMessages": 0,
  • "spaceFree": 0,
  • "spaceSize": 0,
  • "spaceUsed": 0,
  • "users": [
    ]
}

Suite

List Suites

Lists all the suites registered for a given team. User performing the query must be authenticated. User performing the query must be a member of the team. Output may have been cached in the server.

path Parameters
team
required
string
Example: acme

slug of this team

Responses

Response samples

Content type
application/json
[
  • [
    ]
]

Create Suite

Create a new suite in a given team. User initiating the request must be authenticated. User initiating the request must be a member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

Request Body schema: application/json
name
required
string
slug
required
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "slug": "string"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Lookup Suite

Learn more about a suite in a given team. User performing the query must be authenticated. User performing the query must be member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

Responses

Response samples

Content type
application/json
{
  • "baseline": {
    },
  • "batchCount": 0,
  • "latest": {
    },
  • "overview": {
    },
  • "suiteName": "string",
  • "suiteSlug": "string",
  • "batches": [
    ],
  • "isSubscribed": true,
  • "promotions": [
    ],
  • "retainFor": 0,
  • "sealAfter": 0,
  • "subscriberCount": 0,
  • "subscription": "none",
  • "teamName": "string",
  • "teamSlug": "string"
}

Update Suite

Update suite information in a given team. User initiating the request must be authenticated. User initiation the request must be member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

Request Body schema: application/json
name
string
slug
string
retainFor
number multiple of 1 [ 86400 .. 157680000 ]

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "slug": "string",
  • "retainFor": 86400
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Remove Suite

Removes a suite and all data associated with it. User initiating the request must be authenticated. User initiating the request must be administrator of the team.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Subscribe to Suite

Subscribe to a suite in a given team. User initiating the request must be authenticated. User initiating the request must be member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

suite
required
string
Example: potions-101

slug of this suite

Request Body schema: application/json
level
string (ENotificationType)
Enum: "none" "different" "all"

Responses

Request samples

Content type
application/json
{
  • "level": "none"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Team

List Teams

Lists all the teams of which user is a member. User performing the query must be authenticated.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Team

Create a new team owned by this user. User initiating the request must be authenticated.

Request Body schema: application/json
name
required
string
slug
required
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "slug": "string"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Lookup Team

Learn more about a team. User performing the query must be authenticated. User performing the query must be member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "role": "unknown",
  • "slug": "string",
  • "userCount": 0
}

Update Team

Update team information. User initiating the request must be authenticated. User initiation the request must be owner of the team.

path Parameters
team
required
string
Example: acme

slug of this team

Request Body schema: application/json
name
string
slug
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "slug": "string"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Remove Team

Removes a team and all data associated with it. User initiating the request must be authenticated. User initiating the request must be owner of the team.

path Parameters
team
required
string
Example: acme

slug of this team

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Invite to Team

Invite someone to join a team. User initiating the request must be authenticated. User initiating the request must be administrator of the team.

path Parameters
team
required
string
Example: acme

slug of this team

Request Body schema: application/json
email
required
string <email>
fullname
required
string

Responses

Request samples

Content type
application/json
{
  • "email": "alice@example.com",
  • "fullname": "Alice Anderson"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Accept Team Invitation

Adds user to the team they are invited to. User initiating the request must be authenticated. User initiating the request must be invited to the team.

path Parameters
team
required
string
Example: acme

slug of this team

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Decline Team Invitation

Removes team membership invitation for this user. User initiating the request must be authenticated. User initiating the request must be invited to the team.

path Parameters
team
required
string
Example: acme

slug of this team

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Rescind Team Invitation

Rescind invitation to a team. User initiating the request must be authenticated. User initiating the request must be administrator of the team.

path Parameters
team
required
string
Example: acme

slug of this team

Request Body schema: application/json
email
required
string <email>

Responses

Request samples

Content type
application/json
{
  • "email": "alice@example.com"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Request to Join a Team

Request to join a team. User initiating the request must be authenticated. User initiating the request must not be a member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Rescind Team Join Request

Rescind request to join a team. User initiating the request must be authenticated. User initiating the request must not be a member of the team. User initiating the request must have a pending join request.

path Parameters
team
required
string
Example: acme

slug of this team

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Accept Team Join Request

Accept user request to join the team. User initiating the request must be authenticated. User initiating the request must be administrator of the team. User holding the account must have a pending join request.

path Parameters
team
required
string
Example: acme

slug of this team

account
required
string
Example: alice

username of account to be updated

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Decline Team Join Request

Decline user request to join the team. User initiating the request must be authenticated. User initiating the request must be administrator of the team. User holding the account must have a pending join request.

path Parameters
team
required
string
Example: acme

slug of this team

account
required
string
Example: alice

username of account to be updated

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Leave a Team

Cancel membership of a given team. User initiating the request must be authenticated. User initiating the request must be member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

List Team Members

Lists all members of a team. Information provided for each member includes their roles within this team. Also provides list of users currently invited to join this team. User performing the query must be authenticated. User performing the query must be member of the team.

path Parameters
team
required
string
Example: acme

slug of this team

Responses

Response samples

Content type
application/json
{
  • "applicants": [
    ],
  • "invitees": [
    ],
  • "members": [
    ]
}

Add User to Team

Adds an existing user to a team. User initiating the request must be authenticated. User initiating the request must be administrator of the platform.

path Parameters
team
required
string
Example: acme

slug of this team

account
required
string
Example: alice

username of account to be updated

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Update Member Role

Updates role of an existing member in a team. User initiating the request must be authenticated. User initiating the request must be a team administrator. User to be updated must be a team member.

path Parameters
team
required
string
Example: acme

slug of this team

member
required
string
Example: alice

username of member to be updated

Request Body schema: application/json
role
required
string
Enum: "member" "admin"

Responses

Request samples

Content type
application/json
{
  • "role": "member"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Remove Team Member

Removes an existing member from a team. User initiating the request must be authenticated. User initiating the request must be a team administrator. User to be updated must be a team member.

path Parameters
team
required
string
Example: acme

slug of this team

member
required
string
Example: alice

username of member to be updated

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Populate team with sample data on behalf of the team owner

Populates an existing team with sample test results on behalf of the team owner. User initiating the request must be authenticated. User initiating the request must be a team member.

path Parameters
team
required
string
Example: acme

slug of this team

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

User

Lookup Current User

Provides non-sensitive account information about the user performing this query. User performing the query must be authenticated.

Responses

Response samples

Content type
application/json
{
  • "apiKeys": [
    ],
  • "email": "user@example.com",
  • "feature_flags": [
    ],
  • "fullname": "string",
  • "platformRole": "guest",
  • "user_hash": "string",
  • "user_id": "string",
  • "username": "string"
}

Update Account Information

Updates user information. User initiating the request must be authenticated.

Request Body schema: application/json
fullname
string
username
string
password
string

Responses

Request samples

Content type
application/json
{
  • "fullname": "string",
  • "username": "string",
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

Delete User Account

Removes user's account and all data associated with it. User initiating the request must be authenticated. User initiating the request must not be the platform owner. User must not have any active team membership. User must not have any pending team invitation. User must not have any pending join request.

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

List Notifications

Lists recent notifications for this user. User initiating the request must be authenticated.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Mark Notifications as Seen

Marks all notifications for this user as seen. User initiating the request must be authenticated.

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}

List Active User Sessions

Provides list of active sessions of this user. User performing the query must be authenticated.

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "agent": "string",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "ipAddr": "string"
}

Remove Active User Session

Expires a given user session for this user. User performing the query must be authenticated.

path Parameters
session_id
required
string

unique id of this session

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}