searchEvents method

Future<Map<String, dynamic>> searchEvents(
  1. SearchEventsFilter filter
)

Search events with a SearchEventsFilter.

Implementation

Future<Map<String, dynamic>> searchEvents(SearchEventsFilter filter) async {
  final queryString = filter
      .toJson()
      .entries
      .map(
        (e) =>
            '${Uri.encodeComponent(e.key)}=${Uri.encodeComponent(e.value.toString())}',
      )
      .join('&');

  final url = Uri.parse('$baseUrl/events/search?$queryString');

  final response = await http
      .get(
        url,
        headers: {
          'Authorization': 'Bearer $apiKey',
          'Content-Type': 'application/json',
        },
      )
      .timeout(timeout);

  if (response.statusCode == 200) {
    return jsonDecode(response.body) as Map<String, dynamic>;
  } else {
    throw Exception(
      'Failed to search events [${response.statusCode}]: ${response.body}',
    );
  }
}