import 'dart:convert'; import 'package:OpenContacts/clients/api_client.dart'; import 'package:OpenContacts/models/message.dart'; class MessageApi { static Future> getUserMessages(ApiClient client, {String userId = "", DateTime? fromTime, int maxItems = 50, bool unreadOnly = false}) async { final response = await client.get("/users/${client.userId}/messages" "?maxItems=$maxItems" "${fromTime == null ? "" : "&fromTime${fromTime.toLocal().toIso8601String()}"}" "${userId.isEmpty ? "" : "&user=$userId"}" "&unread=$unreadOnly" ); client.checkResponse(response); final data = jsonDecode(response.body) as List; return data.map((e) => Message.fromMap(e)).toList(); } }