guests
6 routes, from the API’s own OpenAPI document.
6 routes. Every path starts at https://cloud-api.qaldy.com. Sign-in, tokens, errors and limits are on the overview.
Routes#
| Method | Path | What it does |
|---|---|---|
| GET | /v1/apps/{id}/guests | An app's guests, and whether the workspace lets anyone invite one |
| POST | /v1/apps/{id}/guests | Invite people outside the workspace to open this one app |
| DELETE | /v1/apps/{id}/guests/{guestId} | End a guest’s access now; for a guest whose access is over, forget them |
| POST | /v1/apps/{id}/guests/{guestId}/resend | A fresh link for a guest whose access still runs (the old link stops working) |
| GET | /v1/workspaces/{ws}/guests | Every guest of the workspace and whether guests are on (admins) |
| PUT | /v1/workspaces/{ws}/guests/policy | Turn guests on or off for the workspace (admins). Off ends every open guest. |
Reference#
GET /v1/apps/{id}/guests#
An app's guests, and whether the workspace lets anyone invite one.
- Authentication: the console’s session cookie.
- Token: not available. This route is for a signed-in person in the console (
403 console_onlyfor a token). - Who:
can_share(owner, admins); not for tokens
| Parameter | In | Type | Required | Notes |
|---|---|---|---|---|
id | path | string | yes | 1 to 128 characters |
Response 200
| Field | Type | Required | Notes |
|---|---|---|---|
enabled | boolean | yes | |
offReason | "profile" · "policy" · null or null | yes | |
canTurnOn | boolean | yes | |
canInvite | boolean | yes | |
open | integer | yes | at least 0 |
limit | integer | yes | at least 1 |
items | object[] | yes | |
items[].id | string | yes | at least 1 characters |
items[].appId | string | yes | at least 1 characters |
items[].appName | string | yes | |
items[].email | string | yes | at least 3 characters |
items[].role | "viewer" · "runner" | yes | |
items[].status | "invited" · "active" · "expired" · "revoked" | yes | |
items[].invitedBy | string | yes | |
items[].createdAt | string (date-time) | yes | |
items[].expiresAt | string (date-time) | yes | |
items[].lastOpenedAt | string (date-time) or null | yes | |
items[].opens | integer | yes | at least 0 |
items[].revokedAt | string (date-time) or null | yes |
Errors: 400, 401, 403, 404, 409, 429 (the error format is on the overview).
POST /v1/apps/{id}/guests#
Invite people outside the workspace to open this one app.
- Authentication: the console’s session cookie.
- Token: not available. This route is for a signed-in person in the console (
403 console_onlyfor a token). - Who:
can_share
| Parameter | In | Type | Required | Notes |
|---|---|---|---|---|
id | path | string | yes | 1 to 128 characters |
Request body (application/json)
| Field | Type | Required | Notes |
|---|---|---|---|
emails | string[] | yes | up to 10 items |
role | "viewer" · "runner" | default "viewer" | |
days | integer | 1 to 30. default 7 | |
deliver | "email" · "link" | default "email" | |
locale | "en" · "ru" · "kk" |
Response 200
| Field | Type | Required | Notes |
|---|---|---|---|
items | object[] | yes | |
items[].id | string | yes | at least 1 characters |
items[].appId | string | yes | at least 1 characters |
items[].appName | string | yes | |
items[].email | string | yes | at least 3 characters |
items[].role | "viewer" · "runner" | yes | |
items[].status | "invited" · "active" · "expired" · "revoked" | yes | |
items[].invitedBy | string | yes | |
items[].createdAt | string (date-time) | yes | |
items[].expiresAt | string (date-time) | yes | |
items[].lastOpenedAt | string (date-time) or null | yes | |
items[].opens | integer | yes | at least 0 |
items[].revokedAt | string (date-time) or null | yes | |
links | object[] | yes | |
links[].guestId | string | yes | at least 1 characters |
links[].email | string | yes | |
links[].link | string (uri) | yes | |
delivery | "email" · "dev-log" · null or null | yes |
Errors: 400, 401, 403, 404, 409, 429 (the error format is on the overview).
DELETE /v1/apps/{id}/guests/{guestId}#
End a guest’s access now; for a guest whose access is over, forget them.
- Authentication: the console’s session cookie.
- Token: not available. This route is for a signed-in person in the console (
403 console_onlyfor a token). - Who:
can_share
| Parameter | In | Type | Required | Notes |
|---|---|---|---|---|
id | path | string | yes | 1 to 128 characters |
guestId | path | string | yes | 1 to 128 characters |
Response 200
| Field | Type | Required | Notes |
|---|---|---|---|
removed | boolean | yes | |
guest | object or null | yes | |
guest.id | string | yes | at least 1 characters |
guest.appId | string | yes | at least 1 characters |
guest.appName | string | yes | |
guest.email | string | yes | at least 3 characters |
guest.role | "viewer" · "runner" | yes | |
guest.status | "invited" · "active" · "expired" · "revoked" | yes | |
guest.invitedBy | string | yes | |
guest.createdAt | string (date-time) | yes | |
guest.expiresAt | string (date-time) | yes | |
guest.lastOpenedAt | string (date-time) or null | yes | |
guest.opens | integer | yes | at least 0 |
guest.revokedAt | string (date-time) or null | yes |
Errors: 400, 401, 403, 404, 409, 429 (the error format is on the overview).
POST /v1/apps/{id}/guests/{guestId}/resend#
A fresh link for a guest whose access still runs (the old link stops working).
- Authentication: the console’s session cookie.
- Token: not available. This route is for a signed-in person in the console (
403 console_onlyfor a token). - Who:
can_share
| Parameter | In | Type | Required | Notes |
|---|---|---|---|---|
id | path | string | yes | 1 to 128 characters |
guestId | path | string | yes | 1 to 128 characters |
Request body (application/json)
| Field | Type | Required | Notes |
|---|---|---|---|
deliver | "email" · "link" | default "email" | |
locale | "en" · "ru" · "kk" |
Response 200
| Field | Type | Required | Notes |
|---|---|---|---|
items | object[] | yes | |
items[].id | string | yes | at least 1 characters |
items[].appId | string | yes | at least 1 characters |
items[].appName | string | yes | |
items[].email | string | yes | at least 3 characters |
items[].role | "viewer" · "runner" | yes | |
items[].status | "invited" · "active" · "expired" · "revoked" | yes | |
items[].invitedBy | string | yes | |
items[].createdAt | string (date-time) | yes | |
items[].expiresAt | string (date-time) | yes | |
items[].lastOpenedAt | string (date-time) or null | yes | |
items[].opens | integer | yes | at least 0 |
items[].revokedAt | string (date-time) or null | yes | |
links | object[] | yes | |
links[].guestId | string | yes | at least 1 characters |
links[].email | string | yes | |
links[].link | string (uri) | yes | |
delivery | "email" · "dev-log" · null or null | yes |
Errors: 400, 401, 403, 404, 409, 429 (the error format is on the overview).
GET /v1/workspaces/{ws}/guests#
Every guest of the workspace and whether guests are on (admins).
- Authentication: the console’s session cookie.
- Token: not available. This route is for a signed-in person in the console (
403 console_onlyfor a token). - Who: admin
| Parameter | In | Type | Required | Notes |
|---|---|---|---|---|
ws | path | string | yes | 1 to 128 characters |
Response 200
| Field | Type | Required | Notes |
|---|---|---|---|
enabled | boolean | yes | |
offReason | "profile" · "policy" · null or null | yes | |
canTurnOn | boolean | yes | |
canInvite | boolean | yes | |
open | integer | yes | at least 0 |
limit | integer | yes | at least 1 |
items | object[] | yes | |
items[].id | string | yes | at least 1 characters |
items[].appId | string | yes | at least 1 characters |
items[].appName | string | yes | |
items[].email | string | yes | at least 3 characters |
items[].role | "viewer" · "runner" | yes | |
items[].status | "invited" · "active" · "expired" · "revoked" | yes | |
items[].invitedBy | string | yes | |
items[].createdAt | string (date-time) | yes | |
items[].expiresAt | string (date-time) | yes | |
items[].lastOpenedAt | string (date-time) or null | yes | |
items[].opens | integer | yes | at least 0 |
items[].revokedAt | string (date-time) or null | yes |
Errors: 400, 401, 403, 404, 409, 429 (the error format is on the overview).
PUT /v1/workspaces/{ws}/guests/policy#
Turn guests on or off for the workspace (admins). Off ends every open guest..
- Authentication: the console’s session cookie.
- Token: not available. This route is for a signed-in person in the console (
403 console_onlyfor a token). - Who: admin
| Parameter | In | Type | Required | Notes |
|---|---|---|---|---|
ws | path | string | yes | 1 to 128 characters |
Request body (application/json)
| Field | Type | Required | Notes |
|---|---|---|---|
allowed | boolean | yes |
Response 200
| Field | Type | Required | Notes |
|---|---|---|---|
enabled | boolean | yes | |
offReason | "profile" · "policy" · null or null | yes | |
canTurnOn | boolean | yes | |
canInvite | boolean | yes | |
open | integer | yes | at least 0 |
limit | integer | yes | at least 1 |
items | object[] | yes | |
items[].id | string | yes | at least 1 characters |
items[].appId | string | yes | at least 1 characters |
items[].appName | string | yes | |
items[].email | string | yes | at least 3 characters |
items[].role | "viewer" · "runner" | yes | |
items[].status | "invited" · "active" · "expired" · "revoked" | yes | |
items[].invitedBy | string | yes | |
items[].createdAt | string (date-time) | yes | |
items[].expiresAt | string (date-time) | yes | |
items[].lastOpenedAt | string (date-time) or null | yes | |
items[].opens | integer | yes | at least 0 |
items[].revokedAt | string (date-time) or null | yes |
Errors: 400, 401, 403, 404, 409, 429 (the error format is on the overview).