Skip to main content
If you are a developer building an enterprise agent, Ampersand enables your agent to reliably work across your customers’ systems of record. More specifically, you can:
  • Read historical and current data from your customer’s system.
  • Write data to your customer’s system.
  • Subscribe to events (creates, deletes, and field changes) in your customer’s system.
Ampersand’s declarative interface and UI components let your customers configure integrations with their CRM, ERP, or other systems of record directly within your product. Quickstart → · Explore supported systems →

Built for each of your customers’ configurations

Ampersand handles multi-tenancy at scale. Say you have 400 customers on Salesforce. Every one of them has customized it to reflect how they run their business, with different custom objects, fields, permissions, and rules for how your product interacts with their data. Two very similar companies can store the same data in completely different places. Ampersand separates the integration you build from each customer’s configuration. You define the schema and actions your application needs once, and each installation keeps track of the per-customer mappings. For example, you define renewalDate once, and each customer uses the embeddable UI library to map it to where they’re actually storing the renewal date in their Salesforce. Your application reads and writes renewalDate. Ampersand translates it to each customer’s field.

How Ampersand works

1

Define an integration

Use an amp.yaml file to declare each integration: the system to connect to, the objects and fields to read or write, and the configuration options to expose to your customers. See the manifest reference.
2

Let customers connect and configure

Embed authentication and configuration in your product with prebuilt UI components, headless UI library, or API. Customers connect their own instance and choose field mappings and preferences, and Ampersand saves those choices in their installation.
3

Ampersand runs it

A managed runtime tracks every customer’s configuration and makes the right API calls for each one. It handles authentication, scheduling, retries, rate limits, and non-standard provider error messages. You can either make direct API calls or have async results delivered to your destinations.
4

Monitor, adapt, and recover

Inspect installations and operation logs, get notifications about connection issues, sync failures, and configuration changes, and watch for schema changes when fields are added, removed, or modified. Use these signals to operationalize your integrations by alerting your team or your customers when actions need to be taken.

Actions

Actions are the verbs of every integration. You declare them in your manifest.

Read

Scheduled or on-demand reads with full backfills and incremental syncs.

Write

Create and update records, synchronously or asynchronously.

Subscribe

Get notified about creates, updates, and deletes as they happen.

Search

Targeted searches based on field filters.

Proxy

Call any provider endpoint directly with managed auth and rate limit handling.

Get started

Clone the starter project

If you want to see an example.

Onboard with Claude Code

If you want to add integrations to an existing codebase.

Dig deeper

Browse the integration directory

Search the supported providers.

How Ampersand works

Learn the concepts.

REST API

Platform, read, write, search, and proxy APIs.

UI Library

Prebuilt components and headless UI.

Manifest schema

Learn what goes into the amp.yaml file.

CLI

Install the Ampersand CLI for deploying and managing integrations.

Contact us

Need help? Join our Discord channel or email support@withampersand.com. If you want a dedicated Slack channel with our team, explore our pricing plans.