Data storage

The API BaaS feature of Apigee API Services provides a flexible, secure and redundant data store where you can keep and manage all of your app data. Backed by a NoSQL database, the data store allows you to store and manipulate just about anything as a JSON object, including binary assets, and supports standard create, retrieve, update, delete (CRUD) functions.

API BaaS data model

The API BaaS data store provides a simple and extensible structure for modeling all of your application data as collections of JSON objects, known as data entities. All entities have a type property that associates it with a correspondingly named collection.

Because the API BaaS is backed by a NoSQL database, there is no enforced schema on any given entity type. This gives you a great deal of flexibility in modeling your data, since it allows for data entities and their properties to be defined and updated atomically. This also means that arbitrary relationships can be created between entities both within and across collections.

Learn more about:

API BaaS data model


Similar to tables in a traditional relational database, collections are most commonly used to group a set of entities that are intended to store data related to a common purpose or feature. When working with your data in the API BaaS data store, you generally will work at the entity level; however, there are times when it is useful to make API request against entire collections, such as batch update operations.

Learn more about:

Working with collections


Similar to rows in a traditional relational database, entities in the API BaaS data store represent an individual database record, stored as a JSON object. Each entity contains a set of default properties, including uuid, created, etc. that are set by the API when the entity is created. Entities also allow for any number of custom properties, which are JSON-formatted key-value pairs. This allows entities to represent just about anything, and to store as much or as little contextual data as your app requires.

Learn more about:

Working with entities

Basic usage

At its most basic level, the API BaaS uses a simple path structure for performing operations on collections and data entities. Simply perform a GET, PUT, POST, or DELETE HTTP request on one of the following URI templates:


The API BaaS also supports a powerful SQL-like query language to enable complex and multi-entity operations, and offers a number of language-specific SDKs to make interaction with the API fast and easy.