Skip to content

Version Differences

Functional Area
Version 3.x
Version 5
Application identification (REST Only)
REST requests must include the application-id and secret-key HTTP headers with the API requests.
Application ID and API key (previously known as secret key) are included into the endpoint URL.
Application initialization API.
This is a mandatory  method call required to initialize a native SDK implementation in a client app. Applies to all SDKs except for REST.
the initApp argument list includes version number.
the initApp argument list does not include version number. See Migrating App Initialization API for additional information.
Data Query.
The API for configuring data query parameters such as sorting, paging and identifying columns of the related objects to return in the response.
Data retrieval API (the "find" operation in the Data service) uses the BackendlessDataQuery
BackendlessDataQuery has been replaced with DataQueryBuilder
See Migrating Data Query API for additional details
Retrieval of data collections.
This applies to retrieving data objects, geopoints and listing of files.
Native SDKs
All SDK implementations use the BackendlessCollection class to represent a collection of data from the backend. The class provided a paging mechanism enabling retrieval of additional pages of data.
Native SDK and REST
BackendlessCollection is completely eliminated. Instead the backend returns an array of objects (represented as a native collection in the native SDKs). The totalObjects property is replaced with a separate API (see below)
REST
REST operations returned a JSON structure containing an array of objects (paged) as well as the totalObjects property
Object counting.
This is a mechanism used by the server to calculate:
  • total number of objects in a table, optionally satisfying a search query.
  • total number of files in a directory listing, optionally matching a pattern.
  • total number of geopoints in a category, optionally satisfying search query (search in radius, rectangular area and/or search query).
Object counting is coupled with collection retrieval (see the row above). Total number of data objects/files/geopoints is returned to the client through the totalObjects property in the response object (BackendlessCollection for native SDKs)
Since BackendlessCollection is removed and thus is never returned in the API operations, there is a new API to obtain object/file/geopoint counts.
  • Data object count
  • File listing count
  • Geopoint count
See Migrating Object/File counts API for additional information.
Object relationship management.
This is a mechanism for establishing or breaking down relations between two or more data objects using the API. Once a relationship is established, client application can use data retrieval API to fetch related object(s) for a parent object.
To establish a relationship between a parent object and the related children, client application must save the parent object instance which references the child object(s). Backendless processes the entire object hierarchy, determines which child objects must be saved/updated, persists them and establishes object relationship between the parent and the children. To remove a relationship, parent object instance must be fetched from the server with its related child objects. Client app deleted from the collection any children for which the relationship must be removed and saves back to the server the parent object.
New API is introduced for:
  1. establishing a relationship between two or more objects. See the "Set" API.
  1. adding related objects to an existing relation. See the "Add" API.
  1. removing objects from a relation. See the relation removal API.
See Migrating Related Objects API for additional information.