# Your product's integrations, without building any

> If your product needs your customers' data, run the Erathos API behind it. You connect each customer's sources from code, Erathos extracts and loads, and the data lands in your product's database ready for it to use.

Source: https://www.erathos.com/en/embedded
Em português: https://www.erathos.com/embedded

## Each customer connects their own sources, inside your product

Every connection lives in one workspace, your product's. For each customer, your code creates the connection through the API with whatever name makes sense to you, such as the customer's ID.

Credentials come in through your product's own interface and go to Erathos through the API. For OAuth sources, the API returns a single-use authorization link: the customer authorizes and comes back to your product with the result.

### One connection per customer

Create each customer's connection through the API, in the same workspace, and tag each one with your own ID.

### Credentials through your product

The customer enters credentials in your interface, and your code sends them through the API. OAuth sources are supported too.

### OAuth that returns to your product

For OAuth sources, the API generates an authorization link, valid for 30 minutes and single use, that sends the customer back to your product with the status.

## Set up and monitor every customer without opening the platform

Your product picks each connection's tables and endpoints, frequency and update type through the API, with a preview before saving.

Each connection reports which setup step it is on, and every run can be triggered and tracked through the same API. Your code always knows what to do next.

### Jobs with a preview

See what will sync before saving, then save with dry_run: false.

### Setup status

setup_status tells you whether the connection is waiting for credentials, needs settings or is ready for jobs.

### Runs via API

Trigger runs when your product needs them and track the status of each one.

## Your product knows when each customer's data has landed

Data from every connection lands in the workspace's destination: the database your product already uses, such as PostgreSQL, Supabase or SQL Server, or a warehouse if that's your setup.

After each run, a webhook, created through the API itself, notifies your system with the run's details. Rules decide when it fires, for example only for runs that finished successfully and loaded new rows.

### One destination, yours

Every connection loads into your product's database, where it already reads from.

### A webhook on every run

Your system gets a request after each run, with its status, rows and the job that ran.

### Rules for firing

Fire only when it matters, such as successful runs that loaded rows.

## Frequently Asked Questions

### Does each of my customers need an Erathos account?

No. Your product uses one workspace, and each customer becomes a connection inside it. Credentials come in through your interface and go through the API, and for OAuth sources the customer authorizes through a link that brings them back to your product.

### Where does the data go?

To the workspace's destination: the database your product already uses, such as PostgreSQL, Supabase or SQL Server, or a warehouse. Talk to us to design how each customer's data is organized in it.

### Which sources can I offer my customers?

Any of the 100+ sources in the catalog, from databases to SaaS tools and ERPs. For internal or niche APIs, the custom connector is on the Pro and Enterprise plans.

### How does my product authenticate with the API?

With an Erathos API key sent in the Authorization header. The key acts as the user who owns it: each request can only do what that user can already do in the workspace. The walkthrough is in the [API docs](https://docs.erathos.com/api/introduction/set-up-connections).

### How does pricing work?

It depends on data volume and on how many customers your product will connect. Talk to sales to put together the right plan.
