getEventTop method
Top returns the caller org's ranked lenses for one window, five of them at once.
Top returns the caller org's ranked lenses for one window, five of them at once. models ranks LLM models by spend and is always real; products ranks commerce orders by revenue; topPages ranks requested paths, topReferrers the external referrer domains ("(direct)" for a missing or same-origin one) and topSources the utm_source campaigns ("(none)" when absent), each by pageviews. Every lens carries each row's share of the in-window total, so a top-N honestly shows the long tail. The four event lenses report available=false rather than fabricating zeros when the product-event table holds nothing yet. The org is the validated principal's — never a parameter. 403 without a validated bearer, 400 on an unknown range, 503 when the warehouse is unreachable.
Parameters:
-
String range: Range is a relative window: a count and a unit — 24h, 7d, 90d, any
-
String start: Start is the inclusive lower bound of a custom window, RFC3339. Requires end.
-
String end: End is the exclusive upper bound of a custom window, RFC3339. Requires start.
-
int limit: Limit bounds every ranked lens in the response. Default 10, maximum 100; a value at or below zero, or one that is not a number, takes the default.
Implementation
Future<Top?> getEventTop({ String? range, String? start, String? end, int? limit, }) async {
final response = await getEventTopWithHttpInfo( range: range, start: start, end: end, limit: limit, );
if (response.statusCode >= HttpStatus.badRequest) {
throw ApiException(response.statusCode, await _decodeBodyBytes(response));
}
// When a remote server returns no body with a status of 204, we shall not decode it.
// At the time of writing this, `dart:convert` will throw an "Unexpected end of input"
// FormatException when trying to decode an empty string.
if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) {
return await apiClient.deserializeAsync(await _decodeBodyBytes(response), 'Top',) as Top;
}
return null;
}