RELEASE HISTORY

6.7.10 / July 20, 2023

6.7.9 / May 17, 2023

6.7.8 / April 21, 2023

6.7.7 / February 20, 2023

func loginWithOauth1(providerCode: String, authToken: String, tokenSecret: String, fieldsMapping: [String : String], stayLoggedIn: Bool, responseHandler: ((BackendlessUser) -> Void)!, errorHandler: ((Fault) -> Void)!)

func loginWithOauth1(providerCode: String, authToken: String, tokenSecret: String, guestUser: BackendlessUser, fieldsMapping: [String : String], stayLoggedIn: Bool, responseHandler: ((BackendlessUser) -> Void)!, errorHandler: ((Fault) -> Void)!)

6.7.6 / January 27, 2023

func createEmailConfirmation(identity: String, responseHandler: ((String) -> Void)!, errorHandler: ((Fault) -> Void)!)

6.7.5 / December 12, 2022

6.7.4 / December 6, 2022

6.7.3 / December 2, 2022

func createDirectory(path: String, responseHandler: (() -> Void)!, errorHandler: ((Fault) -> Void)!)

6.7.2 / November 18, 2022

6.7.1 / October 7, 2022

6.7.0 / September 26, 2022

func updateUsersPermissions(tableName: String, objectId: String, permissions: [AclPermissionDTO], responseHandler: (([Bool]) -> Void)!, errorHandler: ((Fault) -> Void)!)

6.6.2 / September 20, 2022

6.6.1 / August 23, 2022

6.6.0 / May 25, 2022

Backendless.shared.commerce.verifyAppleReceipt(...)

6.5.4 / April 21, 2022

6.5.3 / March 17, 2022

6.5.2 / March 11, 2022

func save(entity: Any, responseHandler: ((Any) -> Void)!, errorHandler: ((Fault) -> Void)!)

6.5.1 / January 24, 2022

func save(entity: [String : Any], isUpsert: Bool, responseHandler: (([String : Any]) -> Void)!, errorHandler: ((Fault) -> Void)!)

func save(entity: Any, isUpsert: Bool, responseHandler: ((Any) -> Void)!, errorHandler: ((Fault) -> Void)!)

6.5.0 / January 17, 2022

func save(entity: Any, isUpsert: Bool, responseHandler: ((Any) -> Void)!, errorHandler: ((Fault) -> Void)!)

func bulkUpsert(entities: [Any], responseHandler: (([String]) -> Void)!, errorHandler: ((Fault) -> Void)!)
func addUpsertListener(responseHandler: ((Any) -> Void)!, errorHandler: ((Fault) -> Void)!) -> RTSubscription?

func addUpsertListener(whereClause: String, responseHandler: ((Any) -> Void)!, errorHandler: ((Fault) -> Void)!) -> RTSubscription?

func removeUpsertListeners(whereClause: String)

func removeUpsertListeners()

6.4.5 / December 9, 2021

6.4.4 / December 3, 2021

func append(fileName: String, filePath: String, content: Data, responseHandler: ((BackendlessFile) -> Void)!, errorHandler: ((Fault) -> Void)!)

func append(urlToFile: String, backendlessPath: String, responseHandler: ((BackendlessFile) -> Void)!, errorHandler: ((Fault) -> Void)!)

func append(fileName: String, filePath: String, base64Content: String, responseHandler: ((BackendlessFile) -> Void)!, errorHandler: ((Fault) -> Void)!)

func append(fileName: String, filePath: String, data: String, responseHandler: ((BackendlessFile) -> Void)!, errorHandler: ((Fault) -> Void)!)

6.4.3 / October 26, 2021

6.4.2 / September 29, 2021

6.4.1 / September 16, 2021

func group(queryBuilder: GroupDataQueryBuilder, responseHandler: ((GroupResult) -> Void)!, errorHandler: ((Fault) -> Void)!)

func getGroupObjectCount(queryBuilder: GroupDataQueryBuilder, responseHandler: ((Int) -> Void)!, errorHandler: ((Fault) -> Void)!)

6.4.0 / August 31, 2021

func upload(urlToFile: String, backendlessPath: String, responseHandler: ((BackendlessFile) -> Void)!, errorHandler: ((Fault) -> Void)!)

func upload(urlToFile: String, backendlessPath: String, overwrite: Bool, responseHandler: ((BackendlessFile) -> Void)!, errorHandler: ((Fault) -> Void)!)

*added methods to send email from template with attachments:

func sendEmailFromTemplate(templateName: String, envelope: EmailEnvelope, attachments: [String], responseHandler: ((MessageStatus) -> Void)!, errorHandler: ((Fault) -> Void)!)

func sendEmailFromTemplate(templateName: String, envelope: EmailEnvelope, templateValues: [String : String], attachments: [String], responseHandler: ((MessageStatus) -> Void)!, errorHandler: ((Fault) -> Void)!)
func list(counterNamePattern: String, responseHandler: (([String]) -> Void)!, errorHandler: ((Fault) -> Void)!)
func getAuthorizationUrlLink(providerCode: String, responseHandler: ((String) -> Void)!, errorHandler: ((Fault) -> Void)!)

func getAuthorizationUrlLink(providerCode: String, fieldsMappings: [String : String], responseHandler: ((String) -> Void)!, errorHandler: ((Fault) -> Void)!)

func getAuthorizationUrlLink(providerCode: String, scope: [String], responseHandler: ((String) -> Void)!, errorHandler: ((Fault) -> Void)!)

func getAuthorizationUrlLink(providerCode: String, fieldsMappings: [String : String], scope: [String], responseHandler: ((String) -> Void)!, errorHandler: ((Fault) -> Void)!)

*added methods to the UserService:

func findByRole(roleName: String, responseHandler: (([BackendlessUser]) -> Void)!, errorHandler: ((Fault) -> Void)!)

func findByRole(roleName: String, loadRoles: Bool, responseHandler: (([BackendlessUser]) -> Void)!, errorHandler: ((Fault) -> Void)!)

func findByRole(roleName: String, queryBuilder: DataQueryBuilder, responseHandler: (([BackendlessUser]) -> Void)!, errorHandler: ((Fault) -> Void)!)

func findByRole(roleName: String, loadRoles: Bool, queryBuilder: DataQueryBuilder, responseHandler: (([BackendlessUser]) -> Void)!, errorHandler: ((Fault) -> Void)!)

6.3.3 / June 02, 2021

6.3.2 / June 02, 2021

6.3.1 / March 12, 2021

6.3.0 / March 10, 2021

6.2.10 / February 11, 2021

6.2.9 / February 5, 2021

6.2.8 / February 4, 2021

6.2.6 / 6.2.7 February 1, 2021

6.2.5 / January 28, 2021

6.2.4 / January 26, 2021

6.2.3 / January 25, 2021

6.2.1.1 / January 22, 2021

6.2.1 / January 20, 2021

var useSharedUrlSession = false
// true: URLSession is created only once for all requests
// false: URLSession is created for every request

// to setup URLSessionConfiguration manually for all you URLSession requests
func setupURLSessionConfig(_ config: URLSessionConfiguration)

// to setup URLSession manually for all you requests
func setupURLSession(_ session: URLSession)

6.2.0 / January 14, 2021

6.1.3.1 / December 22, 2020

6.1.3 / December 18, 2020

6.1.2 / November 25, 2020

logingWithFacebook(...)
loginWithTwitter(...)
loginWithGoogle(...)

6.1.1 / October 27, 2020

6.1.0 / October 26, 2020

func loginWithOauth2(providerName: String...)

func loginWithOauth1(providerName: String...)

changed to

func loginWithOauth2(providerCode: String...)

func loginWithOauth1(providerCode: String...)
func resendEmailConfirmation(email: String, responseHandler: (() -> Void)!, errorHandler: ((Fault) -> Void)!)

changed to

func resendEmailConfirmation(identity: String, responseHandler: (() -> Void)!, errorHandler: ((Fault) -> Void)!)
func createEmailConfirmation(identity: String, responseHandler: (([String : Any]) -> Void)!, errorHandler: ((Fault) -> Void)!)

6.0.5 / September 15, 2020

func loginWithOauth2(providerName: String, token: String, fieldsMapping: [String : String], stayLoggedIn: Bool, responseHandler: ((BackendlessUser) -> Void)!, errorHandler: ((Fault) -> Void)!)

func loginWithOauth2(providerName: String, token: String, guestUser: BackendlessUser, fieldsMapping: [String : String], stayLoggedIn: Bool, responseHandler: ((BackendlessUser) -> Void)!, errorHandler: ((Fault) -> Void)!)

func loginWithOauth1(providerName: String, token: String, tokenSecret: String, fieldsMapping: [String : String], stayLoggedIn: Bool, responseHandler: ((BackendlessUser) -> Void)!, errorHandler: ((Fault) -> Void)!)

func loginWithOauth1(providerName: String, token: String, tokenSecret: String, guestUser: BackendlessUser, fieldsMapping: [String : String], stayLoggedIn: Bool, responseHandler: ((BackendlessUser) -> Void)!, errorHandler: ((Fault) -> Void)!)

6.0.4.1 / August 31, 2020

6.0.4 / August 27, 2020

6.0.3 / August 19, 2020

6.0.2 / August 11, 2020

6.0.1.1 / July 23, 2020

6.0.1 / July 22, 2020

6.0 / June 17, 2020

5.7.17 / May 29, 2020

5.7.16 / May 20, 2020

5.7.15 / May 7, 2020

5.7.14 / May 6, 2020

5.7.13 / April 30, 2020

5.7.12 / April 28, 2020

5.7.11 / April 27, 2020

5.7.10 / April 22, 2020

5.7.9 / April 10, 2020

5.7.8 / April 6, 2020

5.7.7 / March 17, 2020

5.7.6 / February 25, 2020

5.7.5 / February 20, 2020

5.7.4 / February 14, 2020

5.7.3 / January 28, 2020

5.7.2 / January 24, 2020

5.7.1 / January 15, 2020

5.7.0 / January 10, 2020

func loginWithFacebook(accessToken: String, guestUser: BackendlessUser, fieldsMapping: [String: String], responseHandler: ((BackendlessUser) -> Void)!, errorHandler: ((Fault) -> Void)!)

func loginWithTwitter(authToken: String, authTokenSecret: String, guestUser: BackendlessUser, fieldsMapping: [String: String], responseHandler: ((BackendlessUser) -> Void)!, errorHandler: ((Fault) -> Void)!)

func loginWithGoogle(accessToken: String, guestUser: BackendlessUser, fieldsMapping: [String: String], responseHandler: ((BackendlessUser) -> Void)!, errorHandler: ((Fault) -> Void)!)
func addProperties(properties: String...)

5.6.6 / December 6, 2019

5.6.5 / November 29, 2019

5.6.4 / November 21, 2019

5.6.3 / November 20, 2019

5.6.2 / November 19, 2019

5.6.1 / November 19, 2019

5.6.0 / November 15, 2019

5.5.11 / November 13, 2019

5.5.10 / November 5, 2019

5.5.9 / October 29, 2019

5.5.8 / October 18, 2019

5.5.7 / October 18, 2019

5.5.6 / October 15, 2019

5.5.5 / October 10, 2019

5.5.4 / October 8, 2019

func get(key: String, ofType: Any.Type, responseHandler: ((Any?) -> Void)!, errorHandler: ((Fault) -> Void)!)

This method is available for Swift projects.

5.5.3 / October 1, 2019

5.5.2 / September 24, 2019

5.5.1 / September 23, 2019

5.5.0 / August 28, 2019

0.0.19 / August 9, 2019

0.0.18 / August 6, 2019

0.0.17 / August 6, 2019

func setUserToken(value: String)

func getUserToken()

func loginAsGuest(responseHandler: ((BackendlessUser) -> Void)!, errorHandler: ((Fault) -> Void)!)

func loginAsGuest(stayLoggedIn: Bool, responseHandler: ((BackendlessUser) -> Void)!, errorHandler: ((Fault) -> Void)!)
func getHeaders() -> [String : String]

func setHeader(key: String, value: String)

func removeHeader(key: String)

0.0.16 / July 8, 2019

0.0.15 / July 1, 2019

func getFencePointsCount(geoFenceName: String, responseHandler: ((Int) -> Void)!, errorHandler: ((Fault) -> Void)!)

func getFencePointsCount(geoFenceName: String, geoQuery: BackendlessGeoQuery, responseHandler: ((Int) -> Void)!, errorHandler: ((Fault) -> Void)!)
func sendEmailFromTemplate(templateName: String, envelope: EmailEnvelope, responseHandler: ((MessageStatus) -> Void)!, errorHandler: ((Fault) -> Void)!)

func sendEmailFromTemplate(templateName: String, envelope: EmailEnvelope, templateValues: [String : String], responseHandler: ((MessageStatus) -> Void)!, errorHandler: ((Fault) -> Void)!)

0.0.14 / June 25, 2019

func sendEmailFromTemplate(templateName: String, envelope: EmailEnvelope, responseHandler: ((MessageStatus) -> Void)!, errorHandler: ((Fault) -> Void)!)

func sendEmailFromTemplate(templateName: String, templateValues: [String : String], envelope: EmailEnvelope, responseHandler: ((MessageStatus) -> Void)!, errorHandler: ((Fault) -> Void)!)

0.0.13 / June, 21 2019

0.0.12 / June, 19 2019

0.0.11 / June, 18 2019

0.0.10 / June, 12 2019

func pushWithTemplate(templateName: String, templateValues: [String : Any], responseHandler: ((MessageStatus) -> Void)!, errorHandler: ((Fault) -> Void)!)
func sendCommand(commandType: String, data: Any?, responseHandler: (() -> Void)!, errorHandler: ((Fault) -> Void)!)

0.0.9 / June, 6 2019

func sendEmails(templateName: String, envelope: IEmailEnvelope, responseHandler: ((MessageStatus) -> Void)!, errorHandler: ((Fault) -> Void)!)

func sendEmails(templateName: String, templateValues: [String : String], envelope: IEmailEnvelope, responseHandler: ((MessageStatus) -> Void)!, errorHandler: ((Fault) -> Void)!)

0.0.8 / June, 4 2019

func loginWithTwitter(authToken: String, authTokenSecret: String, fieldsMapping: [String: String], responseHandler: ((BackendlessUser) -> Void)!, errorHandler: ((Fault) -> Void)!)

func resendEmailConfirmation(email: String, responseHandler: (() -> Void)!, errorHandler: ((Fault) -> Void)!)

0.0.7 / May, 28 2019

init(from decoder: Decoder) throws

func encode(to encoder: Encoder) throws

0.0.6 / May, 21 2019

func exists(path: String, responseHandler: ((Bool) -> Void)!, errorHandler: ((Fault) -> Void)!)

func listing(path: String, responseHandler: (([BackendlessFileInfo]) -> Void)!, errorHandler: ((Fault) -> Void)!)

func remove(path: String, pattern: String, recursive: Bool, responseHandler: (() -> Void)!, errorHandler: ((Fault) -> Void)!)
func unregisterDevice(channels: [String], responseHandler: ((Bool) -> Void)!, errorHandler: ((Fault) -> Void)!)

func refreshDeviceToken(newDeviceToken: Data, responseHandler: ((Bool) -> Void)!, errorHandler: ((Fault) -> Void)!)

0.0.5 / May, 16 2019

0.0.4 / May, 5 2019

0.0.3 / May, 3 2019

func registerDevice(responseHandler: ((String) -> Void)!, errorHandler: ((Fault) -> Void)!)

func registerDevice(channels: [String], responseHandler: ((String) -> Void)!, errorHandler: ((Fault) -> Void)!)

func registerDevice(expiration: Date, responseHandler: ((String) -> Void)!, errorHandler: ((Fault) -> Void)!)

func registerDevice(channels: [String], expiration: Date, responseHandler: ((String) -> Void)!, errorHandler: ((Fault) -> Void)!)

func getDeviceRegistrations(responseHandler: (([DeviceRegistration]) -> Void)!, errorHandler: ((Fault) -> Void)!)

0.0.2 / April, 26 2019

0.0.1 / April, 26 2019