---
title: Definitions - APIs
description: Enrichment API resources definition
lastUpdated: 25 April 2025
source_url:
  html: https://docs.contentsquare.com/en/api/enrichment/definitions/
  md: https://docs.contentsquare.com/en/api/enrichment/definitions/index.md
---

## Provider

A provider is the entity (usually a technology partner) that will enrich the data.

A provider is identified by a unique `providerId` by Contentsquare.

A provider will create [integrations](#integration) in order to be able to send data to Contentsquare.

## Integration

An integration is created by a [provider](#provider) to declare what data will be sent to Contentsquare. It is represented by a data schema provided by the provider, in the form of a JSON object.

When data will be sent to Contentsquare, a specific integration will be authenticated and Contentsquare will check that enrichments abide by the schema of the integration.

An integration is identified by a unique `integrationId` by Contentsquare.

An integration can have multiple [integration versions](#integration-version).

## Integration version

An integration can have multiple schema versions, to allow for updating and versioning an [integration](#integration) while avoiding to break enrichments flows relying on a previous schema.

See [the dedicated section](https://docs.contentsquare.com/en/api/enrichment/update-an-integration-schema/) to see how to manage an integration schema update.

## Enrichment

An enrichment is a data instance that matches an [integration](#integration) schema. It is the data sent by the provider to enrich Contentsquare sessions.

If an enrichment does not meet the specified [integration version schema](#integration-version), it will be rejected.

As several enrichments can be sent to enrich the same Contentsquare [session](#session), each enrichment for a specific session is indexed with an [enrichment number](#enrichment-number).

## Enrichment number

Each new [enrichment](#enrichment) for a specific session is indexed to be differentiated from the previous enrichments received for the same session.

Currently, no more than 3 enrichments can be sent per session, so enrichments will be indexed with a number from 1 to 3 included. The enrichment number should be specified by the provided but if not, it will be considered as being 1 by default.

The enrichment number can be used to update an existing enrichment: if for a session, an enrichment is pushed with the same index as a existing enrichment, it will get updated with the last enrichment received.

See [the dedicated section](https://docs.contentsquare.com/en/api/enrichment/update-an-enrichment/) to see how to manage an enrichment update.

## Enrichment field

An enrichment field is a specific key in an [enrichments](#enrichment) data object.

## Enrichment batch

An enrichment batch is a collection of [enrichments](#enrichment), in the form of an array of JSON objects. Enrichments are sent in batch to the Enrichment API endpoint. Of course, nothing prevents the provider from sending a batch of one enrichment only.

For security purposes, if an enrichment gets rejected, the full batch will be rejected.

## Session

A session is a visit of a user on a website or mobile app. The purpose of the Enrichment API is to enrich Contentsquare sessions data.
