getWebsiteSessions method
Gets website session details within a time range.
token JWT authentication token.
websiteId Website ID.
startAt Start timestamp (ms).
endAt End timestamp (ms).
query Search text (optional).
page Page (optional).
pageSize Page size (optional).
orderBy Order by (optional).
Returns a Map with the data or null on error.
Implementation
Future<Map<String, dynamic>?> getWebsiteSessions({
required String token,
required String websiteId,
required int startAt,
required int endAt,
String? query,
int? page,
int? pageSize,
String? orderBy,
}) async {
final params = <String, String>{
'startAt': startAt.toString(),
'endAt': endAt.toString(),
if (query != null) 'query': query,
if (page != null) 'page': page.toString(),
if (pageSize != null) 'pageSize': pageSize.toString(),
if (orderBy != null) 'orderBy': orderBy,
};
final uri = Uri.parse('$endpoint/api/websites/$websiteId/sessions').replace(queryParameters: params);
final response = await http.get(
uri,
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer $token',
},
);
if (response.statusCode == 200) {
return jsonDecode(response.body);
}
debugPrint('Failed to fetch website sessions: ${response.statusCode} ${response.body}');
return null;
}