Skip to main content

inputLogMessages

The recorded inputs of one session, oldest first, each exactly as the client sent it (without its authentication tail): a session holds only what its own player sent. Read from the input log by the offset ranges its index holds, so inputs past the published retention are gone even while the session is still listed. With 'moderate_safety' (a moderator, or the organization's admins) you may read the sessions an open or escalated safety report covers (SafetyReport.sessions); every player may read their own; any other session answers NOT_FOUND. With 'manage_apps' you may also read any session of an app for adults, but not on an app that admits players under 18 (the safety log), nor a session of a player under 18 anywhere. Every read of another player's session is audited, and so is every read on an app that admits players under 18, your own included. Game plane: send the app-scoped token for this app to the app's datacenter. Page with first (default 50, max 200) and after, the previous page's endCursor for this same session (a cursor from another session is BAD_USER_INPUT); a page can hold fewer than first inputs, or none, when it stopped at its time or scan limit, so keep paging while hasNextPage is true. An operation may select this field only once. A server runs one read per user (two per app and per org) at a time; a read over that share waits for the earlier one within its own few-second deadline, and a read whose request is closed stops. Errors: INPUT_LOG_UNAVAILABLE when input logging is not configured on this deployment, or this server may not read its log (do not retry); INPUT_LOG_RATE_LIMITED (429) when the wait for an earlier read ran out or left too little time to read, and INPUT_LOG_TEMPORARILY_UNAVAILABLE (503) when the log cannot be read just now, both with extensions.retryable: retry shortly with the same cursor. A read whose request closed stops as INPUT_LOG_READ_ABORTED (499), which nobody receives.

inputLogMessages(
appId: BigInt!
gameTokenId: BigInt!
first: Int
after: String
filter: InputLogMessageFilter
): InputLogMessageConnection!

Arguments​

inputLogMessages.appId ● BigInt! non-null scalar​

The app the session belongs to.

inputLogMessages.gameTokenId ● BigInt! non-null scalar​

The session to read: InputLogSession.gameTokenId.

inputLogMessages.first ● Int scalar​

Return the first N edges after after. Default 50; clamped to 1..200, so 0 returns one edge.

inputLogMessages.after ● String scalar​

Opaque cursor: return edges after this one. Pass a previous page's pageInfo.endCursor. Omit for the first page.

inputLogMessages.filter ● InputLogMessageFilter input​

Optional filters; omit to read every input of the session.

Type​

InputLogMessageConnection object​

A page of recorded inputs, oldest first. A page can hold fewer than first inputs when the read stopped at its time or scan limit; keep paging while hasNextPage is true.