listCustomers method

  1. @override
Future<Map<String, dynamic>> listCustomers({
  1. String? email,
  2. int? limit,
})
override

List all customers

Implementation

@override
Future<Map<String, dynamic>> listCustomers({String? email, int? limit}) async {
  try {
    final queryParams = <String, String>{};
    if (email != null) queryParams['email'] = email;
    if (limit != null) queryParams['limit'] = limit.toString();

    final uri = Uri.parse('$_sotaidApiUrl/customers').replace(queryParameters: queryParams);

    final response = await http.get(
      uri,
      headers: getHeaders(),
    );

    if (response.statusCode == 200) {
      return jsonDecode(response.body);
    } else {
      throw Exception('Failed to list customers: ${response.statusCode}');
    }
  } catch (e) {
    throw Exception('Error listing customers: $e');
  }
}