API data platform

API data platform

API data platform

Stop scraping APIs.

Sequin syncs APIs to the tools you already use in real-time.

Stop scraping APIs.

Sequin syncs APIs to the tools you already use in real-time.

Stop scraping APIs.

Sequin syncs APIs to the tools you already use in real-time.

Kafka®

Stream changes

Webhooks

Receive events

Postgres®

Sync in realtime

REST

Read and write

Kafka®

Stream changes

Webhooks

Receive events

Postgres®

Sync in realtime

REST

Read and write

Kafka®

Stream changes

Webhooks

Receive events

Postgres®

Sync in realtime

REST

Read and write

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.

All your API data in an event stream

All your API data in an
event stream

All your API data in an
event stream

Sequin's event stream contains every change from your APIs. Stream directly into your Kafka, receive events as webhooks, or sync records to Postgres. All without rate limits.

Sequin's event stream contains every change from your APIs. Stream directly into your Kafka, receive events as webhooks, or sync records to Postgres. All without rate limits.

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 a REST 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 a REST 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 a REST 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