Community Support

Developer documentation

Connect your own player feedback integration.

Connect a Unity plugin or any HTTP client to the managed Community Support service. This reference is rendered from the live OpenAPI contract published by the service.

Base path
/api/v1
Format
JSON over HTTPS
Authentication
Bearer player token
Specification
OpenAPI 3.1

Quick start

Identify the player first.

Every installation starts by exchanging its project public key and stable installation ID for a player ID and short opaque access token.

Request
curl --request POST \
  https://community.game-mode.dev/api/v1/player/identify \
  --header "Content-Type: application/json" \
  --data '{
    "projectPublicKey": "pk_live_your_game",
    "installationId": "device-installation-id",
    "userId": "optional-game-account-id",
    "context": {
      "appVersion": "1.8.2",
      "buildNumber": "142",
      "platform": "Windows",
      "locale": "en-US"
    }
  }'

Authentication

Keep the player token in the header.

Every endpoint except player identification requires the token returned by the identify call. Send it only in the HTTP Authorization header; query-string tokens are rejected.

Authorization: Bearer pat_<opaque-token>
Token lifecycle

Identifying the same installation again rotates the token. Store it securely and replace the previous value.

API reference

Endpoints from the live contract.

Loading OpenAPI

Errors and limits

Predictable responses for game clients.

4xx

Problem Details

Validation, authentication, not-found and conflict responses use standard ASP.NET Core Problem Details JSON.

429

Back off and retry

Rate-limited responses can include Retry-After. Clients should wait instead of retrying immediately.

10

Open tickets per player

A player can keep at most ten non-terminal tickets open at once.