diff --git a/ios/ChronoMind/Shared/Cloud/PlatformSyncManager.swift b/ios/ChronoMind/Shared/Cloud/PlatformSyncManager.swift index dbcfbf3..318198d 100644 --- a/ios/ChronoMind/Shared/Cloud/PlatformSyncManager.swift +++ b/ios/ChronoMind/Shared/Cloud/PlatformSyncManager.swift @@ -132,7 +132,8 @@ final class PlatformSyncManager: ObservableObject { let (data, response) = try await authenticatedRequest(url: url, method: "GET") try validateResponse(response) - return try decoder.decode([SyncTimerDTO].self, from: data) + let wrapper = try decoder.decode(SyncDeltaResponse.self, from: data) + return wrapper.timers } /// Push a single timer change to the server @@ -255,6 +256,7 @@ final class PlatformSyncManager: ObservableObject { request.httpMethod = method request.setValue("application/json", forHTTPHeaderField: "Content-Type") request.setValue(UUID().uuidString, forHTTPHeaderField: "x-request-id") + request.setValue("chronomind", forHTTPHeaderField: "x-product-id") if let token = authToken { request.setValue("Bearer \(token)", forHTTPHeaderField: "Authorization") @@ -350,6 +352,11 @@ final class PlatformSyncManager: ObservableObject { // MARK: - DTOs +struct SyncDeltaResponse: Codable { + let timers: [SyncTimerDTO] + let count: Int +} + struct SyncTimerDTO: Codable { let id: String var label: String