SideQuest Companion
POST /api/epgp/device-authorizations
Start a companion sign-in
Starts a browser sign-in for SideQuest Companion and returns a code to show the member. No sign-in needed.
Request body
Model: EpgpDeviceAuthorizationCreate
Field |
Type |
Required |
Description |
device_name
|
string |
yes |
|
Response 201 — The device code, the code to show, and the page to open.
Model: EpgpDeviceAuthorizationCreated
Field |
Type |
Required |
Description |
device_code
|
string |
yes |
|
user_code
|
string |
yes |
|
verification_uri
|
string |
yes |
|
verification_uri_complete
|
string |
yes |
|
expires_in
|
integer |
yes |
|
interval
|
integer |
yes |
|
POST /api/epgp/device-authorizations/token
Check a companion sign-in
Returns whether a companion sign-in is still waiting, approved (with its sync token) or denied. Always 200, so it never reveals whether a code exists.
Request body
Model: EpgpDeviceAuthorizationPoll
Field |
Type |
Required |
Description |
device_code
|
string |
yes |
|
Response 200 — The sign-in’s status.
Model: EpgpDeviceAuthorizationPollResult
GET /api/epgp/device-authorizations/{user_code}
Get a companion sign-in
Returns a waiting companion sign-in, so the member can check it before approving.
Parameters
Name |
In |
Type |
Required |
Description |
user_code
|
path |
string |
yes |
The code the companion shows. |
Response 200 — The sign-in’s status.
Model: EpgpDeviceAuthorizationStatus
Field |
Type |
Required |
Description |
user_code
|
string |
yes |
|
device_name
|
string |
yes |
|
created_at
|
string (date-time) |
yes |
|
expires_at
|
string (date-time) |
yes |
|
status
|
DeviceAuthorizationStatus |
yes |
|
POST /api/epgp/device-authorizations/{user_code}/approve
Approve a companion sign-in
Approves a waiting companion sign-in, which gives the companion a sync token for this member.
Parameters
Name |
In |
Type |
Required |
Description |
user_code
|
path |
string |
yes |
The code the companion shows. |
Response 204 — The sign-in was approved.
POST /api/epgp/device-authorizations/{user_code}/deny
Deny a companion sign-in
Denies a waiting companion sign-in.
Parameters
Name |
In |
Type |
Required |
Description |
user_code
|
path |
string |
yes |
The code the companion shows. |
Response 204 — The sign-in was denied.
GET /api/epgp/sync-tokens
List my sync tokens
Returns the signed-in member’s own sync tokens that are not revoked.
Response 200 — The sync tokens.
Model: EpgpSyncTokenList
DELETE /api/epgp/sync-tokens/me
Revoke this sync token
Revokes the Bearer sync token sent with the request, so SideQuest Companion can sign out.
Response 204 — The sync token was revoked.
GET /api/epgp/sync-tokens/me
Get the sync token owner’s profile
Returns what the Bearer sync token’s owner can see about themselves, for SideQuest Companion.
Response 200 — The token owner’s profile.
Model: EpgpSyncTokenMe
Field |
Type |
Required |
Description |
display_name
|
string |
yes |
|
avatar_url
|
string | null |
yes |
|
is_officer
|
boolean |
yes |
|
is_guild_member
|
boolean |
yes |
|
calendar_url
|
string | null |
yes |
|
token_name
|
string |
yes |
|
DELETE /api/epgp/sync-tokens/{token_id}
Revoke one of my sync tokens
Revokes one of the signed-in member’s own sync tokens.
Parameters
Name |
In |
Type |
Required |
Description |
token_id
|
path |
string (uuid) |
yes |
The sync token’s ID. |
Response 204 — The sync token was revoked.