Turn on integrations in your app

Turn on integrations in your app

Turn on integrations in your app

Don't waste time building another API sync.

Add integrations to your app ridiculously fast using Kafka, Postgres, and more.

Don't waste time building another API sync.

Add integrations to your app ridiculously fast using Kafka, Postgres, and more.

Don't waste time building another API sync.

Add integrations to your app ridiculously fast using Kafka, Postgres, and more.

Kafka®

Stream changes

to your app

Webhooks

Push changes

to your app

Postgres®

Sync changes

to your db

Streaming

No infrastructure

required

Kafka®

Stream changes

to your app

Webhooks

Push changes

to your app

Postgres®

Sync changes

to your db

Streaming

No infrastructure

required

Kafka®

Stream changes

to your app

Webhooks

Push changes

to your app

Postgres®

Sync changes

to your db

Streaming

No infrastructure

required

Trusted by engineering teams that ship

Bob Lauer

Principal Engineer, Bloomtech

Sequin gives us the interfaces we always tried to build ourselves. I only wish we found Sequin sooner. We wasted time on every developer tool offered by Salesforce: APEX triggers. SOQL. Salesforce events. The streaming API… but we always hit errors and limitations.

Trusted by engineering teams that ship

Bob Lauer

Principal Engineer, Bloomtech

Sequin gives us the interfaces we always tried to build ourselves. I only wish we found Sequin sooner. We wasted time on every developer tool offered by Salesforce: APEX triggers. SOQL. Salesforce events. The streaming API… but we always hit errors and limitations.

Trusted by engineering teams that ship

Bob Lauer

Principal Engineer, Bloomtech

Sequin gives us the interfaces we always tried to build ourselves. I only wish we found Sequin sooner. We wasted time on every developer tool offered by Salesforce: APEX triggers. SOQL. Salesforce events. The streaming API… but we always hit errors and limitations.

API data as rows
and events

All your API data in an
event stream

All your API data in an
event stream

Sequin streams changes from APIs in real-time.

Stream to your Kafka, receive events as webhooks,

or sync records to Postgres.

Sequin streams changes from APIs in real-time.

Stream to your Kafka, receive events as webhooks,

or sync records to Postgres.

Kafka Consumer

Your data as events

Your data as events

Your data as events

Postgres Consumer

Read with SQL

Read with SQL

Read with SQL

Webhook Consumer

Turn events into actions

Turn events into actions

Turn events into actions

0

B

API OBJECTS / WEEK
0

B

EVENTS / WEEK

<

0

s

AVG LATENCY

Built for developers

Syncs, events streams, consumers, and more. All configurable via an API.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

// Create a Stripe sync via the API


curl --request POST

--url https://api.sequin.io/v1/syncs

--data '{

"provider": "stripe",

"name": "Choam Corp - Stripe Production",

"collection_ids": ["stripe.customer", "stripe.invoice"],

"rate_limit": {

"allowed_requests": 100,

"interval": 60000,

},

"credential": {

"provider": "stripe",

"access_token": "sk_live_7eC39HqLyjWDarjtT1zdp7dc"

}

}'

const { Kafka } = require("kafka");

const kafka = new Kafka({

sasl: {

username: "{{ kafka_username }}",

password: "{{ kafka_password }}",

},

});


const consumer = kafka.consumer({

groupId: "{{ group_name }}"

});


const consume = async () => {

await consumer.subscribe({

topic: "sequin.events",

});

await consumer.run({

eachMessage: async ({ message }) => {

// do work

},

});

};

consume();


Kafka events

Build on your APIs using Kafka. You can consume events using any Kafka client.

Learn more about Kafka events

HTTP reads

Sequin also provides an API to consume events over HTTP. It’s a lightweight alternative to native Kafka clients.

Learn more about HTTP reads

curl --request GET

--url https://kafka.upstash.io/consume/mygroup/myconsumer \

-u myuser:mypass \

-d '{"topics": ["sequin.records"], "timeout": 1000}'

Webhook events

Configure a consumer to forward events to your webhook endpoint.

Learn more about the Webhook events

curl --request POST

--url https://api.sequin.io/v1/consumers/webhook

--data '{

"name": "Choam Corp - Webhook Consumer",

"sync_ids": ["*"],

"collection_ids": [

"stripe.customer",

"stripe.charge"

]

}'

Postgres sync

Configure a consumer that syncs all records to a Postgres database. Unlimited access to your API data.

curl --request POST

--url https://api.sequin.io/v1/consumers/postgres

--header 'Content-Type: application/json'

--data '{

"name": "Choam Corp - Webhook Consumer",

"sync_ids": ["*"],

"mappings" : [

{

"collection_id": "stripe.customer",

"field_mappings": [

{

"field_name": "firstName",

"column_name": "first_name",

"column_type": "string"

}

]

}

]

}'

const { Kafka } = require("kafka");

const kafka = new Kafka({

sasl: {

username: "{{ kafka_username }}",

password: "{{ kafka_password }}",

},

});


const consumer = kafka.consumer({

groupId: "{{ group_name }}"

});


const consume = async () => {

await consumer.subscribe({

topic: "sequin.events",

});

await consumer.run({

eachMessage: async ({ message }) => {

// do work

},

});

};

consume();


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

// Create a Stripe sync via the API


curl --request POST

--url https://api.sequin.io/v1/syncs

--data '{

"provider": "stripe",

"name": "Choam Corp - Stripe Production",

"collection_ids": [

"stripe.customer",

"stripe.invoice"

],

"rate_limit": {

"allowed_requests": 100,

"interval": 60000,

},

"credential": {

"provider": "stripe",

"access_token": "sk_live_7eC39HqLyjWDarjtT"

}

}'

Built for developers

Syncs, events streams, consumers, and more. All configurable via an API.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

// Create a Stripe sync via the API


curl --request POST

--url https://api.sequin.io/v1/syncs

--data '{

"provider": "stripe",

"name": "Choam Corp - Stripe Production",

"collection_ids": ["stripe.customer", "stripe.invoice"],

"rate_limit": {

"allowed_requests": 100,

"interval": 60000,

},

"credential": {

"provider": "stripe",

"access_token": "sk_live_7eC39HqLyjWDarjtT1zdp7dc"

}

}'

const { Kafka } = require("kafka");

const kafka = new Kafka({

sasl: {

username: "{{ kafka_username }}",

password: "{{ kafka_password }}",

},

});


const consumer = kafka.consumer({

groupId: "{{ group_name }}"

});


const consume = async () => {

await consumer.subscribe({

topic: "sequin.events",

});

await consumer.run({

eachMessage: async ({ message }) => {

// do work

},

});

};

consume();


Kafka events

Build on your APIs using Kafka. You can consume events using any Kafka client.

Learn more about Kafka events

HTTP reads

Sequin also provides an API to consume events over HTTP. It’s a lightweight alternative to native Kafka clients.

Learn more about HTTP reads

curl --request GET

--url https://kafka.upstash.io/consume/mygroup/myconsumer \

-u myuser:mypass \

-d '{"topics": ["sequin.records"], "timeout": 1000}'

Webhook events

Configure a consumer to forward events to your webhook endpoint.

Learn more about the Webhook events

curl --request POST

--url https://api.sequin.io/v1/consumers/webhook

--data '{

"name": "Choam Corp - Webhook Consumer",

"sync_ids": ["*"],

"collection_ids": [

"stripe.customer",

"stripe.charge"

]

}'

Postgres sync

Configure a consumer that syncs all records to a Postgres database. Unlimited access to your API data.

curl --request POST

--url https://api.sequin.io/v1/consumers/postgres

--header 'Content-Type: application/json'

--data '{

"name": "Choam Corp - Webhook Consumer",

"sync_ids": ["*"],

"mappings" : [

{

"collection_id": "stripe.customer",

"field_mappings": [

{

"field_name": "firstName",

"column_name": "first_name",

"column_type": "string"

}

]

}

]

}'

const { Kafka } = require("kafka");

const kafka = new Kafka({

sasl: {

username: "{{ kafka_username }}",

password: "{{ kafka_password }}",

},

});


const consumer = kafka.consumer({

groupId: "{{ group_name }}"

});


const consume = async () => {

await consumer.subscribe({

topic: "sequin.events",

});

await consumer.run({

eachMessage: async ({ message }) => {

// do work

},

});

};

consume();


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

// Create a Stripe sync via the API


curl --request POST

--url https://api.sequin.io/v1/syncs

--data '{

"provider": "stripe",

"name": "Choam Corp - Stripe Production",

"collection_ids": [

"stripe.customer",

"stripe.invoice"

],

"rate_limit": {

"allowed_requests": 100,

"interval": 60000,

},

"credential": {

"provider": "stripe",

"access_token": "sk_live_7eC39HqLyjWDarjtT"

}

}'

Built for developers

Syncs, events streams, consumers, and more. All configurable via an API.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

// Create a Stripe sync via the API


curl --request POST

--url https://api.sequin.io/v1/syncs

--data '{

"provider": "stripe",

"name": "Stripe Production",

"collection_ids": [

"stripe.customer",

"stripe.invoice"

],

"rate_limit": {

"allowed_requests": 100,

"interval": 60000,

},

"credential": {

"provider": "stripe",

"access_token": "sk_live_7eC39…"

}

}'

const { Kafka } = require("kafka");

const kafka = new Kafka({

sasl: {

username: "{{ kafka_username }}",

password: "{{ kafka_password }}",

},

});


const consumer = kafka.consumer({

groupId: "{{ group_name }}"

});


const consume = async () => {

await consumer.subscribe({

topic: "sequin.events",

});

await consumer.run({

eachMessage: async ({ message }) => {

// do work

},

});

};

consume();


Kafka events

Build on your APIs using Kafka. You can consume events using any Kafka client.

Learn more about Kafka events

HTTP reads

Sequin also provides an API to consume events over HTTP. It’s a lightweight alternative to native Kafka clients.

Learn more about HTTP reads

curl --request GET

--url https://kafka.upstash.io/consume/mygroup/myconsumer \

-u myuser:mypass \

-d '{"topics": ["sequin.records"], "timeout": 1000}'

Webhook events

Configure a consumer to forward events to your webhook endpoint.

Learn more about the Webhook events

curl --request POST

--url https://api.sequin.io/v1/consumers/webhook

--data '{

"name": "Choam Corp - Webhook Consumer",

"sync_ids": ["*"],

"collection_ids": [

"stripe.customer",

"stripe.charge"

]

}'

Postgres sync

Configure a consumer that syncs all records to a Postgres database. Unlimited access to your API data.

curl --request POST

--url https://api.sequin.io/v1/consumers/postgres

--header 'Content-Type: application/json'

--data '{

"name": "Choam Corp - Webhook Consumer",

"sync_ids": ["*"],

"mappings" : [

{

"collection_id": "stripe.customer",

"field_mappings": [

{

"field_name": "firstName",

"column_name": "first_name",

"column_type": "string"

}

]

}

]

}'

const { Kafka } = require("kafka");

const kafka = new Kafka({

sasl: {

username: "{{ kafka_username }}",

password: "{{ kafka_password }}",

},

});


const consumer = kafka.consumer({

groupId: "{{ group_name }}"

});


const consume = async () => {

await consumer.subscribe({

topic: "sequin.events",

});

await consumer.run({

eachMessage: async ({ message }) => {

// do work

},

});

};

consume();


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

// Create a Stripe sync via the API


curl --request POST

--url https://api.sequin.io/v1/syncs

--data '{

"provider": "stripe",

"name": "Choam Corp - Stripe Production",

"collection_ids": [

"stripe.customer",

"stripe.invoice"

],

"rate_limit": {

"allowed_requests": 100,

"interval": 60000,

},

"credential": {

"provider": "stripe",

"access_token": "sk_live_7eC39HqLyjWDarjtT"

}

}'

Unified writes

Unified writes

Unified writes

Mutate data via Sequin. One endpoint and one interface to mutate data across your integrations.

Mutate data via Sequin. One endpoint and one interface to mutate data across your integrations.

Mutate data via Sequin. One endpoint and one interface to mutate data across your integrations.

curl --request POST \

-- url https://api.sequin.io/v1/mutations/run \

-H 'content-type: application/json' \

-d '{

"kind": "create",

"sync_id": "my-sync-id",

"collection_id": "salesforce:contact",

"records": [

{

"data": {

"FirstName": "Paul",

"LastName": "Atreides",

"Email": "paul@arrakis.org"

}

}

]

}'

The stuff you don’t want to build

The stuff you don’t want to build

The stuff you don’t want to build

Sequin replaces the bespoke APIs and glue code you’d otherwise need to learn and write to integrate with an API. Here’s what you don’t need to build when you sync with Sequin:

Sequin replaces the bespoke APIs and glue code you’d otherwise need to learn and write to integrate with an API. Here’s what you don’t need to build when you sync with Sequin:

Auth & Token Management

You don’t need to build and debug another OAuth flow and handle token refresh.

Auth & Token Management

You don’t need to build and debug another OAuth flow and handle token refresh.

Auth & Token Management

You don’t need to build and debug another OAuth flow and handle token refresh.

Rate-limit controls

You don’t need to build a cache, fuss with webhooks, or debug missing events.

Rate-limit controls

You don’t need to build a cache, fuss with webhooks, or debug missing events.

Rate-limit controls

You don’t need to build a cache, fuss with webhooks, or debug missing events.

Query guess & check

You don’t need to learn a bespoke query language or worry about API versioning and erratic errors.

Query guess & check

You don’t need to learn a bespoke query language or worry about API versioning and erratic errors.

Query guess & check

You don’t need to learn a bespoke query language or worry about API versioning and erratic errors.

Observability & Monitoring

You don’t need to build tooling to monitor your integration, detect issues, and alert team members.

Observability & Monitoring

You don’t need to build tooling to monitor your integration, detect issues, and alert team members.

Observability & Monitoring

You don’t need to build tooling to monitor your integration, detect issues, and alert team members.

Pricing

Pricing

Pricing

Our pricing is designed to support integrations of every size.
Run unlimited syncs. Only pay for the data that changes.

Our pricing is designed to support integrations of every size.
Run unlimited syncs. Only pay for the data that changes.

Our pricing is designed to support integrations of every size.
Run unlimited syncs. Only pay for the data that changes.

Starter

Free

Ship your integration today

Real-time speed

Unlimited consumers

Management API

Stream API

Mutations

Standard support

Dev environments

Business

Tailored

For production apps

Real-time speed

Unlimited consumers

Management API

Stream API

Mutations

Advanced alerting

SSH tunneling

Production syncs

Premium chat, email, and Slack support

Enterprise

Tailored

Scaled for enterprise

Scaled sync pricing

On premises deployment

SSO/SAML

Dedicated support and SLAs

Rethink all your integrations

Rethink all your integrations

Rethink all your integrations

Replace all your integrations with Sequin.

Replace all your integrations with Sequin.

Replace all your integrations with Sequin.