Skip to content
Coritan Docs

Client API: Game Proxy

Game join addresses on the platform's join domain: names, branding and custom domains.

View as Markdown

Game join addresses on the platform's join domain: names, branding and custom domains.

Base URL: https://api.coritan.com/api/v1. Paths below are complete.

To try these requests in the browser, open the interactive Client API reference.

Method Path Summary
POST /api/v1/gameproxy/availability Claim check on the write primary so create/delete races cannot lie
POST /api/v1/gameproxy/name-suggestions Name suggestions
GET /api/v1/gameproxy/policy Storefront-facing effective policy (auto-provision + base domain)
GET /api/v1/gameproxy/routes List my routes
POST /api/v1/gameproxy/routes Order path preferred; this creates a route bound to an existing service for power users
PATCH /api/v1/gameproxy/routes/{route_id} Update my route branding
GET /api/v1/gameproxy/routes/{route_id}/custom-domain Vanity CNAME state for this route's join address
POST /api/v1/gameproxy/routes/{route_id}/custom-domain Link route custom domain
PATCH /api/v1/gameproxy/routes/{route_id}/custom-domain Show the vanity hostname, or the hosted one, in the public server list
DELETE /api/v1/gameproxy/routes/{route_id}/custom-domain Unlink route custom domain
POST /api/v1/gameproxy/routes/{route_id}/custom-domain/verify Check the CNAME now rather than waiting for the next maintenance pass

Claim check on the write primary so create/delete races cannot lie

Section titled Claim check on the write primary so create/delete races cannot lie

POST /api/v1/gameproxy/availability

Claim check on the write primary so create/delete races cannot lie.

Name In Type Required
org_id query integer or null no

application/json (required)

Field Type Required
subdomain string yes
base_domain string or null no
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

POST /api/v1/gameproxy/name-suggestions

Name In Type Required
org_id query integer or null no

application/json (required)

Field Type Required
count integer no
base_domain string or null no
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Storefront-facing effective policy (auto-provision + base domain)

Section titled Storefront-facing effective policy (auto-provision + base domain)

GET /api/v1/gameproxy/policy

Storefront-facing effective policy (auto-provision + base domain).

Name In Type Required
org_id query integer or null no
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

GET /api/v1/gameproxy/routes

The user's game routes, each with custom_domain: the answer GET /gameproxy/routes/{id}/custom-domain gives for it, read for the whole list at once.

Authentication: an access token, sent as Authorization: Bearer <token>.

Status Meaning
200 Success.

Order path preferred; this creates a route bound to an existing service for power users

Section titled Order path preferred; this creates a route bound to an existing service for power users

POST /api/v1/gameproxy/routes

Order path preferred; this creates a route bound to an existing service for power users.

Authentication: an access token, sent as Authorization: Bearer <token>.

application/json (required)

Field Type Required
subdomain string yes
base_domain string or null no
display_name string or null no
mode string no
upstream_service_id integer or null no
upstream_host string or null no
upstream_port integer or null no
location_id integer or null no
proxy_protocol boolean no
real_ip boolean or null no
description string or null no
org_id integer or null no
online_motd string or null no
offline_motd string or null no
favicon string or null no
version_name string or null no
status_cache_ttl_seconds integer or null no
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

PATCH /api/v1/gameproxy/routes/{route_id}

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
route_id path integer yes

application/json (required)

Field Type Required
online_motd string or null no
offline_motd string or null no
favicon string or null no
version_name string or null no
display_name string or null no
description string or null no
status_cache_ttl_seconds integer or null no
clear_favicon boolean no
clear_online_motd boolean no
clear_offline_motd boolean no
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Vanity CNAME state for this route's join address

Section titled Vanity CNAME state for this route's join address

GET /api/v1/gameproxy/routes/{route_id}/custom-domain

Vanity CNAME state for this route's join address.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
route_id path integer yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

POST /api/v1/gameproxy/routes/{route_id}/custom-domain

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
route_id path integer yes

application/json (required)

Field Type Required
domain string yes
subdomain string no
include_in_list boolean no
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Show the vanity hostname, or the hosted one, in the public server list

Section titled Show the vanity hostname, or the hosted one, in the public server list

PATCH /api/v1/gameproxy/routes/{route_id}/custom-domain

Show the vanity hostname, or the hosted one, in the public server list.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
route_id path integer yes

application/json (required)

Field Type Required
include_in_list boolean yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

DELETE /api/v1/gameproxy/routes/{route_id}/custom-domain

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
route_id path integer yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Check the CNAME now rather than waiting for the next maintenance pass

Section titled Check the CNAME now rather than waiting for the next maintenance pass

POST /api/v1/gameproxy/routes/{route_id}/custom-domain/verify

Check the CNAME now rather than waiting for the next maintenance pass.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
route_id path integer yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.