From 46d3e240587d2b9077436d976ffb5ef198842973 Mon Sep 17 00:00:00 2001 From: tudor <7089284+tudddorrr@users.noreply.github.com> Date: Mon, 5 Oct 2026 17:51:40 +0100 Subject: [PATCH] docs: add game channel admin api reference --- content/docs/1.x/admin/bruno-collection.mdx | 2 +- content/docs/1.x/admin/game-channel-api.mdx | 102 ++++++++++++++++++++ content/docs/1.x/admin/game-config-api.mdx | 2 - content/docs/1.x/admin/meta.json | 2 +- 4 files changed, 104 insertions(+), 4 deletions(-) create mode 100644 content/docs/1.x/admin/game-channel-api.mdx diff --git a/content/docs/1.x/admin/bruno-collection.mdx b/content/docs/1.x/admin/bruno-collection.mdx index 91dbeb0..f6c454d 100644 --- a/content/docs/1.x/admin/bruno-collection.mdx +++ b/content/docs/1.x/admin/bruno-collection.mdx @@ -27,7 +27,7 @@ The full collection is available in [this repository](https://github.com/TaloDev ## Collection structure -The collection's **Admin API** folder contains **Game config**, **Leaderboards** and **Stats** requests, mirroring the endpoints documented in the [Admin API reference](/1.x/admin/authentication). +The collection's **Admin API** folder contains **Game channels**, **Game config**, **Leaderboards** and **Stats** requests, mirroring the endpoints documented in the [Admin API reference](/1.x/admin/authentication). ## Configure the environment diff --git a/content/docs/1.x/admin/game-channel-api.mdx b/content/docs/1.x/admin/game-channel-api.mdx new file mode 100644 index 0000000..0b77d05 --- /dev/null +++ b/content/docs/1.x/admin/game-channel-api.mdx @@ -0,0 +1,102 @@ +--- +description: Manage game channels via the admin API. Create, update, delete and list channels and their storage. +title: Game channel admin API +seoTitle: Admin game channels API +--- + +import { ServiceDocumentation } from '@/components/documentation/ServiceDocumentation' +import { generateServiceTOC } from '@/lib/api-docs' + +export const service = 'GameChannelAdminAPI' + +export const pageToc = [ + { title: 'Overview', url: '#overview', depth: 2 }, + { title: 'Endpoints', url: '#endpoints', depth: 2 }, + ...generateServiceTOC(service), + { title: 'Types', url: '#types', depth: 2 }, + { title: 'GameChannel', url: '#gamechannel', depth: 3 }, + { title: 'Prop', url: '#prop', depth: 3 }, + { title: 'GameChannelStorageProp', url: '#gamechannelstorageprop', depth: 3 }, + { title: 'PlayerAlias', url: '#playeralias', depth: 3 }, + { title: 'RejectedProp', url: '#rejectedprop', depth: 3 }, +] + +## Overview + +The game channel admin API lets you create, update, delete and list [game channels](/1.x/http/game-channel-api) programmatically, as well as read their storage props. + +## Endpoints + + + +## Types + +### GameChannel + +```ts +type GameChannel = { + id: number + name: string + owner: PlayerAlias | null + totalMessages: number + memberCount: number // cost of the X-Talo-Include-Dev-Data header + props: Prop[] + autoCleanup: boolean + private: boolean + temporaryMembership: boolean + createdAt: string + updatedAt: string +} +``` + +### Prop + +```ts +type Prop = { + key: string + value: string +} +``` + +### GameChannelStorageProp + +```ts +type GameChannelStorageProp = { + key: string + value: string + createdBy: PlayerAlias + lastUpdatedBy: PlayerAlias + createdAt: string + updatedAt: string +} +``` + +### PlayerAlias + +```ts +type PlayerAlias = { + id: number + service: string + identifier: string + displayName: string + player: Player // aliases are omitted to avoid a circular reference + lastSeenAt: string + createdAt: string + updatedAt: string +} +``` + +### RejectedProp + +```ts +type RejectedProp = { + key: string + error: 'PROP_KEY_TOO_LONG' | 'PROP_VALUE_TOO_LONG' | 'PROP_ARRAY_TOO_LONG' | 'PROP_CONTAINS_PROFANITY' | 'PROP_KEY_RESERVED' + message: string +} +``` + +Creating or updating a channel whose props fail the size or profanity checks returns `400` with `errors.props` and a `rejectedProps` array. diff --git a/content/docs/1.x/admin/game-config-api.mdx b/content/docs/1.x/admin/game-config-api.mdx index 1029192..ca13e62 100644 --- a/content/docs/1.x/admin/game-config-api.mdx +++ b/content/docs/1.x/admin/game-config-api.mdx @@ -20,8 +20,6 @@ export const pageToc = [ The game config admin API lets you read and update your [live config](/1.x/http/game-config-api) programmatically, as well as schedule future changes. This is useful for automating changes like raising the level cap ahead of a patch or enabling an event at a specific time. -Reading config requires the `read:gameConfig` scope. Updating config and managing scheduled changes requires the `write:gameConfig` scope. - ## Endpoints