I'm trying to collect a list of apps to whom a user is eligible, but unfortunately the result is always nil. This is the snippet:
let provider = APIProvider(configuration: configuration)
var out: [UserModel] = []
provider.request(APIEndpoint.users()) { result in
switch result {
case .success(let userResponse):
for u in userResponse.data {
let uid = u.id
let roles = (u.attributes?.roles ?? []).map{$0.rawValue}
let username = u.attributes?.username ?? ""
let firstName = u.attributes?.firstName ?? ""
let lastName = u.attributes?.lastName ?? ""
let provisioningAllowed = u.attributes?.provisioningAllowed ?? false
let allAppsVisible = u.attributes?.allAppsVisible ?? false
let visibleApps = u.relationships?.visibleApps?.data?.compactMap{$0.id} ?? []
let user = UserModel(uid: uid,
username: username,
firstName: firstName,
lastName: lastName,
provisioningAllowed: provisioningAllowed,
allAppsVisible: allAppsVisible,
roles: roles,
visibleApps: visibleApps)
out.append(user)
}
completion(out.sorted{$0.firstName < $1.firstName})
case .failure(let error):
print(error)
}
▿ Optional<Relationships>
▿ some : Relationships
▿ visibleApps : Optional<VisibleApps>
▿ some : VisibleApps
- data : nil
▿ links : Optional<Links>
▿ some : Links
▿ related : Optional<URL>
▿ some : https://api.appstoreconnect.apple.com/v1/users/0289f9b9-301e-40cf-8bc3-023df002c221/visibleApps
- _url : https://api.appstoreconnect.apple.com/v1/users/0289f9b9-301e-40cf-8bc3-023df002c221/visibleApps
▿ self : Optional<URL>
▿ some : https://api.appstoreconnect.apple.com/v1/users/0289f9b9-301e-40cf-8bc3-023df002c221/relationships/visibleApps
- _url : https://api.appstoreconnect.apple.com/v1/users/0289f9b9-301e-40cf-8bc3-023df002c221/relationships/visibleApps
- meta : nil