ServerOps.ggbeta
API ReferenceLogs

Ingest a log entry

Ingest a structured log entry with optional metadata.

Requires logs:write scope.

Coming soon. This endpoint is not yet available.

POST
/logs

Authorization

bearerAuth logs:write
AuthorizationBearer <token>

API token from your dashboard.

Format: so_live_... (production) or so_test_... (test mode).

Tokens carry one or more scopes. Request only the scopes your integration needs:

ScopeGrants
media:readList and retrieve files
media:writeUpload and delete files
logs:readRead log entries
logs:writeIngest log entries
cases:readRead cases
cases:writeCreate and update cases
apps:readRead apps
apps:writeSubmit apps
usage:readRead quota usage
members:readList organisation members
members:writeInvite and remove members
billing:readRead billing and subscription info
tokens:writeCreate and revoke API tokens

In: header

Scope: logs:write

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/logs" \  -H "Content-Type: application/json" \  -d '{    "level": "info",    "message": "Player connected",    "meta": {      "player_id": "steam:110000112345678",      "server_id": "main-1"    }  }'
{
  "id": "string",
  "level": "debug",
  "message": "string",
  "meta": {},
  "created_at": "2019-08-24T14:15:22Z"
}
{
  "error": {
    "code": "bad_request",
    "message": "missing required field"
  }
}
{
  "error": {
    "code": "unauthorized",
    "message": "missing or invalid authorization token"
  }
}

{
  "error": {
    "code": "forbidden",
    "message": "token does not have the required scope"
  }
}

{
  "error": {
    "code": "quota_exceeded",
    "message": "tier quota exceeded for storage_bytes",
    "metric": "storage_bytes",
    "quotas": [
      {
        "metric": "storage_bytes",
        "used": 10737418240,
        "limit": 10737418240,
        "cumulative": true
      }
    ]
  }
}
{
  "error": {
    "code": "internal",
    "message": "an unexpected error occurred"
  }
}