Analytics - Game
Gets a URL that game developers can use to download analytics reports (CSV files) for their games. The URL is valid for 5 minutes. For detail about analytics and the fields returned, see the Insights & Analytics guide.
The response has a JSON payload with a data
field containing an array of games information elements and can contain a pagination
field containing information required to query for more streams.
Method Definition
@RequestLine("GET /analytics/games?after={after}&ended_at={ended_at}&first={first}&game_id={game_id}&started_at={started_at}&type={type}")
@Headers("Authorization: Bearer {token}")
HystrixCommand<GameAnalyticsList> getGameAnalyticUrl(
@Param("token") String authToken,
@Param("after") String after,
@Param("first") Integer limit,
@Param("game_id") String gameId,
@Param("type") String type,
@Param("started_at") String startedAt,
@Param("ended_at") String endedAt
);
Required Parameters
Name | Type | Description |
---|---|---|
authToken | string | User Access Token with the analytics:read:games scope. |
Optional Parameters
Name | Type | Description |
---|---|---|
after | string | Cursor for forward pagination: tells the server where to start fetching the next set of results, in a multi-page response. This applies only to queries without extension_id . If an extension_id is specified, it supersedes any cursor/offset combinations. The cursor value specified here is from the pagination response field of a prior query. |
limit | integer | Maximum number of objects to return. Maximum: 100. Default: 20. |
game_id | string | The game’s client ID. If specified, the response contains a report for the specified game. If not specified, the response includes a report for each of the authenticated user’s games. |
type | string | The type of analytics report to get. Possible values are: "overview_v2". |
started_at | string | Starting date/time for returned reports, in RFC3339 format with the hours, minutes, and seconds zeroed out and the UTC timezone: YYYY-MM-DDT00:00:00Z . This must be on or after January 31, 2018.If this is provided, ended_at also must be specified. If started_at is earlier than the default start date, the default date is used. Default: January 31, 2018 (overview_v2) or 90 days (overview_v1) before the report was issued. The file contains one row of data per day. |
ended_at | string | Ending date/time for returned reports, in RFC3339 format with the hours, minutes, and seconds zeroed out and the UTC timezone: YYYY-MM-DDT00:00:00Z . The report covers the entire ending date; e.g., if 2018-05-01T00:00:00Z is specified, the report covers up to 2018-05-01T23:59:59Z . If this is provided, started_at also must be specified. If ended_at is later than the default end date, the default date is used. Default: 1-2 days before the request was issued (depending on report availability). |
Code-Snippets
print report url (to download the files)
- Java
- Kotlin
- Groovy
ExtensionAnalyticsList resultList =twitchClient.getHelix().getGameAnalyticUrl(accessToken, null, 10, null, null, null, null).execute();
resultList.getGameAnalytics().forEach(analytic -> {
System.out.println("URL: " + analytic.getURL());
});
val resultList = twitchClient.helix.getGameAnalyticUrl(accessToken, null, 10, null, null, null, null).execute();
resultList.gameAnalytics.forEach { analytic ->
println("URL: ${analytic.uRL}")
}
def resultList = twitchClient.helix.getGameAnalyticUrl(accessToken, null, 10, null, null, null, null).execute();
resultList.gameAnalytics.each { analytic ->
System.out.println "URL: ${analytic.uRL}"
}