Star
6k
Developer infrastructure for product integrations
Integrate your product with 500+ APIs.
Full control, in code.
Code-first integrations.
Native to your stack.
import { createSync } from 'nango';
export default createSync({
description: `Sync Google Calendar events from main calendar`,
frequency: 'every 10 minutes',
models: { CalendarEvent: z.object({ id: z.string(), ... }) },
exec: async (nango) => {
const requestConfig = {
method: 'GET',
endpoint: `calendar/v3/calendars/primary/events`,
retries: 10 // Retry request up to 10 times
};
// Paginate results & save changed events
for await (const eventPage of nango.paginate(requestConfig)) {
const mappedEvents = eventPage.map(toEvent);
await nango.batchSave(mappedEvents, 'CalendarEvent');
}
// Delete events that don't exist anymore
await nango.deleteRecordsFromPreviousExecutions('CalendarEvent');
},
});
~ $ claude --allowed-tools "nango" \
Build a custom Nango SYNC for Google Calendar called “calendar-events”.
The sync should fetch all events from the primary calendar of the connected user.
It should run every 10min and output the events in the following schema:
[....]
Use `nango dryrun calendar-events test-user-1` to test.
Build a custom Nango SYNC for Google Calendar called “calendar-events”.
The sync should fetch all events from the primary calendar of the connected user.
It should run every 10min and output the events in the following schema:
[....]
Use `nango dryrun calendar-events test-user-1` to test.
~ $ npm i -g nango
~ $ nango create --sync google-calendar calendar-events
✔ Sync scaffold "calendar-events" created for "Google Calendar" integration
~ $ nango dev # watch & auto compile
~ $ open google-calendar/syncs/calendar-events.ts
~ $ nango dryrun calendar-events test-234 # test locally
~ $ git commit -a -m "Google Calendar events sync"
~ $ nango create --sync google-calendar calendar-events
✔ Sync scaffold "calendar-events" created for "Google Calendar" integration
~ $ nango dev # watch & auto compile
~ $ open google-calendar/syncs/calendar-events.ts
~ $ nango dryrun calendar-events test-234 # test locally
~ $ git commit -a -m "Google Calendar events sync"
~ $ nango deploy dev
✔ Typechecking
✔ Building 3 file(s)
✔ Exporting definitions
✔ Compiled
✔ Packaging
✔ Acquiring remote state
Nango will perform this plan:
[Syncs +1 -1]
+ google-calendar → calendar-events (1 impacted connections)
- slack → users (2 impacted connections)
[Actions +1 -1]
+ google-calendar → create-calendar-event
- slack → send-message
Summary
↳ Syncs to create [ 1 ] to update [ 0 ] to delete [ 1 ]
↳ Actions to create [ 1 ] to update [ 0 ] to delete [ 1 ]
↳ OnEvents to create [ 0 ] to update [ 0 ] to delete [ 0 ]
Are you sure you want to continue y/n? y
⠧ Deploying 4 functions
✔ Typechecking
✔ Building 3 file(s)
✔ Exporting definitions
✔ Compiled
✔ Packaging
✔ Acquiring remote state
Nango will perform this plan:
[Syncs +1 -1]
+ google-calendar → calendar-events (1 impacted connections)
- slack → users (2 impacted connections)
[Actions +1 -1]
+ google-calendar → create-calendar-event
- slack → send-message
Summary
↳ Syncs to create [ 1 ] to update [ 0 ] to delete [ 1 ]
↳ Actions to create [ 1 ] to update [ 0 ] to delete [ 1 ]
↳ OnEvents to create [ 0 ] to update [ 0 ] to delete [ 0 ]
Are you sure you want to continue y/n? y
⠧ Deploying 4 functions
Built for scale
Enterprise-grade infrastructure that scales automatically with your workloads.
Lightning-fast infra
Sub 100ms from Function schedule
to run

Elastic by default
Auto scales on traffic spikes, webhook floods, or massive accounts
.webp)
Tenant isolation
Secure & fair execution of each customer’s integrations
.webp)
Flexible, Powerful, Complete.
Everything you need to build best-in-class product integrations
API Auth for 500+ APIs
Integrate with any API your customers need.
Contribute APIs & never get blocked.
2-way syncs
Read & write any data from the external API with full platform support.
Webhooks
Listen to webhooks from any API with a universal interface.
LLM tool calling
Easily expose your integrations to AI agents.
Observability
Detailed real-time logs & metrics, with OpenTelemetry integration.
Cover advanced use-cases
Unified APIs, per-customer config, real-time syncs,
custom data validation, built-in MCP server, etc.
Integrations infrastructure you can trust.



Ready to get started?
Ship the integrations your customers need with 500+ APIs. Code-first, fully customizable & low maintenance