Records API

Records API is a system-level interface for accessing and manipulating data. The data entities are called records.

Record is an entity with a set of attributes and a record identifier (RecordRef).

Data can be retrieved:

General Description

An API designed to provide simple and easily scalable communication between a data consumer and a data source. Data sources can include databases, REST services, and more.

Advantages:

  • A unified API for data access across the system for all consumers (Browser, Mobile application, Reporting system, Data indexing, Various microservices, etc.);

  • Support for loading data from related entities. For example, if a contract references a power of attorney, having the contract’s identifier allows you to retrieve any attribute of the linked power of attorney;

  • Efficiency. Only the attributes required by the consumer are loaded and computed;

  • Ease of development — the data source developer describes all attributes that consumers may request, regardless of computation complexity. The consumer specifies in the request only the attributes they are interested in;

  • Ease of maintenance — no API versioning is required, as new attributes can be added at any time without affecting existing ones;

  • The type of retrieved data is fully defined by the request. The data source returns attributes of any type, and Records API converts them to the type required by the consumer;

  • Computed attributes. The ability to add attributes that are not stored in the database or any other storage but are computed based on existing ones;

  • Support for combining attributes from different sources. For example, you can create a data source that retrieves some attributes from Alfresco and others from an external database, merging them by identifier.