-
Return User information about the logged in user
Declaration
Swift
@discardableResult public func me(completion: @escaping (_ result: Result<User, Zone5.Error>) -> Void) -> PendingRequest?
-
Register a new user account
Declaration
Swift
@discardableResult public func register(user: RegisterUser, completion: @escaping Zone5.ResultHandler<User>) -> PendingRequest?
-
Delete a user account
Declaration
Swift
@discardableResult public func deleteAccount(userID: Int, completion: @escaping Zone5.ResultHandler<Zone5.VoidReply>) -> PendingRequest?
-
Purge (soft delete) a user account
Declaration
Swift
@discardableResult public func purgeAccount(_ completion: @escaping Zone5.ResultHandler<Zone5.VoidReply>) -> PendingRequest?
-
Login as a user and obtain a bearer token
Note that the configured access token is automatically updated with this call. Don’t pass back a PendingRequest as this is not something that we can cancel mid-request
Declaration
Swift
public func login(email: String, password: String, clientID: String? = nil, clientSecret: String? = nil, accept: [String]? = nil, billingCountry: String? = nil, completion: @escaping Zone5.ResultHandler<LoginResponse>)
-
Logout - this will invalidate any active JSESSION and will also invalidate your bearer token
Don’t pass back a PendingRequest as this is not something that we can cancel mid-request
Declaration
Swift
public func logout(completion: @escaping Zone5.ResultHandler<Bool>)
-
Test if an email address is already registered in the system - true if the email already exists in the system
Declaration
Swift
@discardableResult public func isEmailRegistered(email: String, completion: @escaping Zone5.ResultHandler<Bool>) -> PendingRequest?
-
Request a password reset email - ie get a magic link to reset a user’s password
Declaration
Swift
@discardableResult public func resetPassword(email: String, completion: @escaping Zone5.ResultHandler<Bool>) -> PendingRequest?
-
Update properties on the User
Declaration
Swift
@discardableResult public func updateUser(user: User, completion: @escaping Zone5.ResultHandler<Bool>) -> PendingRequest?
-
Test a password candidate. This will test if a given password will pass comlpexity rules for the currently configured clientID
Declaration
Swift
@discardableResult public func testPassword(username: String, password: String, completion: @escaping Zone5.ResultHandler<TestPasswordResponse>) -> PendingRequest?
Parameters
username
user to test password for
password
password to test
-
Set the given user’s preferences, e.g. metric/imperial units
Declaration
Swift
@discardableResult public func getPreferences(userID: Int, completion: @escaping Zone5.ResultHandler<UsersPreferences>) -> PendingRequest?
-
Get the current user’s preferences, e.g. metric/imperial units
Declaration
Swift
@discardableResult public func setPreferences(preferences: UsersPreferences, completion: @escaping Zone5.ResultHandler<Bool>) -> PendingRequest?
-
Get the Email validation for the given email
Declaration
Swift
@discardableResult public func getEmailValidationStatus(email: String, completion: @escaping Zone5.ResultHandler<[String : Bool]>) -> PendingRequest?
-
Undocumented
Declaration
Swift
@discardableResult public func passwordComplexity(completion: @escaping (_ result: Result<String, Zone5.Error>) -> Void) -> PendingRequest?
-
Undocumented
Declaration
Swift
@discardableResult public func reconfirmEmail(email: String, completion: @escaping (_ result: Result<Zone5.VoidReply, Zone5.Error>) -> Void) -> PendingRequest?