> ## Documentation Index
> Fetch the complete documentation index at: https://nango.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Changelog

> Important developer & product updates, including deprecations & breaking changes.

<Update label="Usage breakdowns" description="June 25, 2026">
  The usage charts on the Billing & usage page can now be broken down by dimension, so you can see what's driving your usage and costs.

  * **Group by a dimension:** Break a chart down to see what makes up the total. For example, group Function runs by Integration to see which integration drives your usage, or group Sync Records by Model to see which models store the most records.
  * **Filter to a single value:** Scope a chart to one value, then re-group that slice by another dimension. For example, filter Function runs to a single Connection to isolate one customer's usage, or filter to failed runs and group by Integration to see which integration's errors drive volume.
  * **Apply to all:** Apply one chart's group and filter to every chart at once.
  * **Shareable views:** The selected month, grouping, and filter are stored in the URL, so you can share or bookmark a link to a specific breakdown.

      <img src="https://mintcdn.com/nango/BJvdPJ3xcNv4dyZM/images/changelog/usage-breakdown.gif?s=fa6ae9384a656ef36ae10738dc6b42b7" alt="Usage breakdowns on the Billing & usage page" width="1752" height="1080" data-path="images/changelog/usage-breakdown.gif" />
</Update>

***

<Update label="Light mode" description="June 12, 2026">
  The Nango dashboard now supports light mode. Use the theme toggle in the top navigation bar, or set a preference in your profile settings under Appearance: System, Light, or Dark.

  <img src="https://mintcdn.com/nango/UJl_7JaJ7cMnWHVe/images/changelog/lightmode_1024.gif?s=1eb34d13932fd432bf06f874caccbd1e" alt="Light mode theme toggle" width="1024" height="604" data-path="images/changelog/lightmode_1024.gif" />
</Update>

***

<Update label="May 2026 roundup" description="June 1, 2026">
  <AccordionGroup>
    <Accordion icon="webhook" title="50 new APIs in May">
      * [1Password (Events API)](/api-integrations/1password-events)
      * [1Password (Users API)](/api-integrations/1password-users)
      * [Absorb LMS](/api-integrations/absorb-lms)
      * [Altrata](/api-integrations/altrata)
      * [Anvil](/api-integrations/anvil)
      * [BigChange](/api-integrations/bigchange)
      * [Buffer](/api-integrations/buffer)
      * [Canva (MCP)](/api-integrations/canva-mcp)
      * [Customer.io](/api-integrations/customer-io)
      * [Digits](/api-integrations/digits)
      * [Digits (MCP)](/api-integrations/digits-mcp)
      * [Dynatrace](/api-integrations/dynatrace)
      * [Dynatrace (OAuth)](/api-integrations/dynatrace-oauth)
      * [EasyPost](/api-integrations/easypost)
      * [Fern (Public API)](/api-integrations/fern)
      * [Follow Up Boss](/api-integrations/followupboss)
      * [Freshworks](/api-integrations/freshworks)
      * [Huntress](/api-integrations/huntress)
      * [ImmyBot](/api-integrations/immybot)
      * [Jiminny](/api-integrations/jiminny)
      * [Lightfield](/api-integrations/lightfield)
      * [Microsoft Intune](/api-integrations/microsoft-intune)
      * [Microsoft People](/api-integrations/microsoft-people)
      * [Nexthink](/api-integrations/nexthink)
      * [NinjaOne SaaS Backup](/api-integrations/ninjaone-saas-backup)
      * [Paddle](/api-integrations/paddle)
      * [Planning Center Online (OAuth)](/api-integrations/planning-center-online)
      * [Planning Center Online (Personal Access Token)](/api-integrations/planning-center-online-pat)
      * [Podscribe](/api-integrations/podscribe)
      * [Pushpay ChMS (v1)](/api-integrations/pushpay-chms-v1)
      * [pVerify](/api-integrations/pverify)
      * [Render (MCP)](/api-integrations/render-mcp)
      * [Revivn](/api-integrations/revivn)
      * [Sage 200](/api-integrations/sage-200)
      * [SAP Concur (Password Grant)](/api-integrations/sap-concur-password)
      * [Shippo](/api-integrations/shippo)
      * [Shopware (Admin API)](/api-integrations/shopware)
      * [Statamic](/api-integrations/statamic)
      * [StoreCensus](/api-integrations/store-census)
      * [Superhuman (MCP)](/api-integrations/superhuman-mcp)
      * [Tanium](/api-integrations/tanium)
      * [The Swarm](/api-integrations/the-swarm)
      * [TheirStack](/api-integrations/theirstack)
      * [Toast](/api-integrations/toast)
      * [Trigger.dev](/api-integrations/trigger-dev)
      * [VideoAsk](/api-integrations/videoask)
      * [Wappalyzer](/api-integrations/wappalyzer)
      * [WordPress.com (MCP)](/api-integrations/wordpress-mcp)
      * [Zendesk (API Token)](/api-integrations/zendesk-api-key)
      * [Zigpoll](/api-integrations/zigpoll)
    </Accordion>
  </AccordionGroup>

  ## New blog posts

  New posts from the Nango team in May:

  * [How to build a Gmail API integration with Nango and Claude](https://nango.dev/blog/how-to-build-a-gmail-api-integration-with-nango-and-claude)
  * [How to sync large amounts of contacts from the HubSpot API](https://nango.dev/blog/how-to-sync-large-amounts-of-contacts-from-hubspot-api)
  * [How to fix the Salesforce INVALID\_SESSION\_ID error](https://nango.dev/blog/fix-salesforce-invalid-session-id-error)
  * [How to migrate from Composio to Nango](https://nango.dev/blog/how-to-migrate-from-composio-to-nango)
  * [Composio vs Nango: a developer's comparison for production AI agent integrations (2026)](https://nango.dev/blog/composio-vs-nango)
  * [Merge.dev vs Nango: Which API integration platform should you choose in 2026?](https://nango.dev/blog/merge-dev-vs-nango)
</Update>

***

<Update label="Agent-led onboarding" description="June 1, 2026">
  You can now get started with a coding agent instead of following the setup steps by hand. Paste the quickstart prompt into Claude, Cursor, Codex, or another agent, and it walks you through signing up, setting up an API key, authorizing a connection, and your first function call. [Docs](/getting-started/quickstart).

  <img src="https://mintcdn.com/nango/QXkmdFf6gn-c4KXA/images/changelog/nango-quickstart-agent.jpg?fit=max&auto=format&n=QXkmdFf6gn-c4KXA&q=85&s=6336114a8dc507c6c765b31ac604a0aa" alt="Nango quickstart agent" width="2882" height="2004" data-path="images/changelog/nango-quickstart-agent.jpg" />
</Update>

***

<Update label="Remote function builder" description="June 1, 2026">
  Claude, Cursor, Codex, or other agents can now build integrations ([actions, syncs, webhooks, events](/guides/functions/functions-guide)) without a local project. This is powered by the new [Function Builder skill](/getting-started/coding-agent-setup#skills) and [REST endpoints for compile, dry run, and deploy functions](/guides/functions/functions-guide#build-with-the-functions-api).

  With the Nango skill, your agent turns behavior described in a prompt into a complete integration: it generates TypeScript code, compiles it, tests it against a real connection, and deploys it.

  You can also pair the skill with an agent inside your product to generate integrations on demand when your customer prompts it. This is also called [just-in-time integrations](https://nango.dev/blog/just-in-time-integrations).
</Update>

***

<Update label="Serverless runtime migration" description="May 18, 2026">
  We are migrating all sync executions to our serverless AWS Lambda runtime, and introducing a **10-minute execution limit** per run.
  This gives us better autoscaling, more predictable execution isolation, and a simpler runtime model across Nango Cloud environments.
  Lambda has a hard timeout, so long-running syncs must checkpoint work and continue across runs instead of relying on a single long execution.

  **Timeline:**

  * **Now**: All action and webhook function executions have already been migrated. We are now migrating all sync executions for accounts without long running syncs.
  * **Next 3-6 months**: We will progressively migrate accounts with long-running syncs by assisting with migration to checkpoints. We will announce milestones in this changelog and coordinate directly with impacted accounts.

  **Am I impacted?**

  * All accounts using syncs without checkpoints are impacted and should migrate to checkpoint-based progress. Short running syncs will still continue working without issue after migrating to lambdas, but it is still recommended to implement checkpoints.
  * We will be reaching out directly to affected accounts to assist in the migration.

  **What to do:**

  * Migrate all syncs to use checkpoints using the [migration guide and associated skill](/guides/platform/migrations/migrate-to-checkpoints#migrate-with-skill)

  If you do not want to migrate yet or cannot migrate within the timeline, please reach out and we will find a workable path with you.
</Update>

***

<Update label="April 2026 roundup" description="May 5, 2026">
  <AccordionGroup>
    <Accordion icon="webhook" title="50 new APIs in April">
      * [Apple Business Manager](/api-integrations/apple-business-manager)
      * [AWS Inspector2](/api-integrations/aws-inspector2)
      * [AWS Multi-Service](/api-integrations/aws-multi-service)
      * [Bing Webmasters](/api-integrations/bing-webmasters)
      * [Cin7 Core](/api-integrations/cin7-core)
      * [Cisco Duo Admin API](/api-integrations/cisco-duo-admin)
      * [ClickHouse](/api-integrations/clickhouse)
      * [Clover](/api-integrations/clover)
      * [Crunchbase](/api-integrations/crunchbase)
      * [Energy Performance Certificates (Gov.UK)](/api-integrations/epc-gov-uk)
      * [Etsy](/api-integrations/etsy)
      * [Freepik](/api-integrations/freepik)
      * [Getty Images](/api-integrations/getty-images)
      * [Google Maps](/api-integrations/google-maps)
      * [Halo PSA](/api-integrations/halo-psa)
      * [Hex](/api-integrations/hex)
      * [Kno Commerce](/api-integrations/kno-commerce)
      * [Listrak](/api-integrations/listrak)
      * [Lob](/api-integrations/lob)
      * [Lokalise](/api-integrations/lokalise)
      * [Looker (OAuth)](/api-integrations/looker-oauth)
      * [Maxio](/api-integrations/maxio)
      * [Modjo AI](/api-integrations/modjo-ai)
      * [Northbeam](/api-integrations/northbeam)
      * [Ocean.io](/api-integrations/ocean-io)
      * [Orange Logic](/api-integrations/orange-logic)
      * [Paligo](/api-integrations/paligo)
      * [Pendo (OAuth)](/api-integrations/pendo-oauth)
      * [Perk](/api-integrations/perk)
      * [PostHog (OAuth)](/api-integrations/posthog-oauth)
      * [PRTG Classic](/api-integrations/prtg-classic)
      * [Qualia](/api-integrations/qualia)
      * [Quipteams](/api-integrations/quipteams)
      * [Ringover](/api-integrations/ringover)
      * [RocketReach](/api-integrations/rocketreach)
      * [Rydoo](/api-integrations/rydoo)
      * [SentinelOne](/api-integrations/sentinelone)
      * [Shopify (Client Credentials)](/api-integrations/shopify-cc)
      * [simPRO](/api-integrations/simpro)
      * [Stay AI](/api-integrations/stay-ai)
      * [Stitch (MCP)](/api-integrations/stitch-mcp)
      * [Store Leads](/api-integrations/store-leads)
      * [Supabase (MCP OAuth)](/api-integrations/supabase-mcp-oauth)
      * [TalentLMS](/api-integrations/talentlms)
      * [VTEX](/api-integrations/vtex)
      * [WeJam AI](/api-integrations/wejam)
      * [Workday Adaptive Planning](/api-integrations/workday-adaptive-planning)
      * [Workday Adaptive Planning (Basic Auth)](/api-integrations/workday-adaptive-planning-basic)
      * [Workpath](/api-integrations/workpath)
      * [Zorus](/api-integrations/zorus)
    </Accordion>
  </AccordionGroup>

  ## New blog posts

  New posts from the Nango team in April:

  * [The emergence of just-in-time integrations](https://www.nango.dev/blog/just-in-time-integrations)
  * [Introducing the Nango API integrations builder skill](https://www.nango.dev/blog/nango-api-integrations-builder-skill)
  * [How to build a real-time Google Calendar API integration](https://www.nango.dev/blog/how-to-build-a-real-time-google-calendar-api-integration)
  * [Best API integration platforms to use with Claude Code, Cursor, and Codex (2026)](https://www.nango.dev/blog/best-api-integration-platforms-claude-code-cursor-codex)
  * [Best agentic API integrations platform in 2026](https://www.nango.dev/blog/best-agentic-api-integrations-platform)
</Update>

***

<Update label="API keys" description="April 22, 2026">
  We replaced environment secret keys with API keys. Previously, every environment had a single secret key with full access to all endpoints. You can now issue multiple keys and grant only the scopes each use case requires.

  <img src="https://mintcdn.com/nango/QxZ9J7aEOW-jkubA/images/changelog/api-keys.jpg?fit=max&auto=format&n=QxZ9J7aEOW-jkubA&q=85&s=c306e246bd2e380c72605558362c8fea" alt="API keys page" width="2488" height="946" data-path="images/changelog/api-keys.jpg" />

  Key details:

  * **Scoped permissions:** Choose **Full access** or **Custom** scopes when creating a key. Limit keys to specific operations like deploys, reading connections, or triggering actions.
  * **Safe rotation:** Create a replacement key, swap it into your service, watch the **Last used** column to confirm the old key is no longer in use, then delete it.
  * **RBAC-aware:** [Support role](/guides/platform/security#team-and-roles) members can only see the last four digits and scopes for troubleshooting, but cannot reveal key values.
  * **No migration required:** Your existing secret keys continue to work as API keys without any changes.

  Each endpoint in the [API reference](/reference/backend/http-api/integration/list) now lists the scopes it requires. See the [API keys documentation](/reference/backend/http-api/api-keys) for the full scope list and advised profiles.
</Update>

***

<Update label="Playground" description="April 14, 2026">
  We added a Playground to the Nango dashboard. You can now trigger [actions](/getting-started/use-cases/actions) and [syncs](/getting-started/use-cases/syncs) directly from the Nango dashboard. Pick an integration, connection, and function, fill in the inputs, and hit Run!

  <img src="https://mintcdn.com/nango/wq_FN0jhdBsjx5aq/images/changelog/playground.gif?s=bd3a033d417406cc7c9260c4d73bbbab" alt="Playground" width="1972" height="1080" data-path="images/changelog/playground.gif" />

  * ***Enabled* functions only:** The function dropdown shows only functions that are enabled for the selected integration.
  * **Input validation:** Required fields are validated before execution. Missing inputs are flagged immediately without triggering a run.
  * **Inline results and errors:** Execution results, timing, and error codes (e.g., invalid credentials) are displayed directly in the panel.
  * **Jump to logs:** Navigate to the filtered [logs](/guides/platform/observability#overview-of-nango-logs) view for any execution directly from the result.
  * **Permission-gated:** Playground access in production environments respects your team's [roles](/guides/platform/security#team-and-roles).
</Update>

***

<Update label="March 2026 roundup" description="March 27, 2026">
  <AccordionGroup>
    <Accordion icon="webhook" title="34 new APIs in March">
      * [Amplitude (MCP US)](/api-integrations/amplitude-mcp)
      * [Avanan](/api-integrations/avanan)
      * [Axiom](/api-integrations/axiom)
      * [Bliro](/api-integrations/bliro)
      * [Circleback (MCP)](/api-integrations/circleback-mcp)
      * [Clay](/api-integrations/clay)
      * [CleverReach](/api-integrations/cleverreach)
      * [Clio](/api-integrations/clio)
      * [Conta Azul](/api-integrations/conta-azul)
      * [Front (API Key)](/api-integrations/front-api-key)
      * [Google Contacts](/api-integrations/google-contacts)
      * [Google Tasks](/api-integrations/google-tasks)
      * [Heymarket](/api-integrations/heymarket)
      * [KlickTipp](/api-integrations/klicktipp)
      * [Lightspeed Retail (X-Series)](/api-integrations/lightspeed-retail)
      * [Mailjet](/api-integrations/mailjet)
      * [Microsoft PowerPoint](/api-integrations/microsoft-powerpoint)
      * [Microsoft Word](/api-integrations/microsoft-word)
      * [Pleo](/api-integrations/pleo)
      * [ProvenExpert](/api-integrations/provenexpert)
      * [Quentn](/api-integrations/quentn)
      * [Reply.io](/api-integrations/reply-io)
      * [Salesforce (Client Credentials)](/api-integrations/salesforce-cc)
      * [ShipBob (Personal Access Token)](/api-integrations/shipbob-pat)
      * [ShopWorks](/api-integrations/shopworks)
      * [Slack (MCP)](/api-integrations/slack-mcp)
      * [Supabase (MCP)](/api-integrations/supabase-mcp)
      * [Telegram](/api-integrations/telegram)
      * [Trigify IO (MCP)](/api-integrations/trigify-io-mcp)
      * [Triple Whale](/api-integrations/triple-whale)
      * [Toggl Track](/api-integrations/toggl)
      * [Typefully (API v2)](/api-integrations/typefully-v2)
      * [Vercel (MCP)](/api-integrations/vercel-mcp)
      * [WebinarJam](/api-integrations/webinarjam)
    </Accordion>
  </AccordionGroup>

  ## New blog posts

  New posts from the Nango team in March:

  * [Launching RBAC and our commitment to the enterprise](https://www.nango.dev/blog/launching-rbac-and-our-commitment-to-the-enterprise)
  * [What we learned building 200+ API integrations with OpenCode](https://www.nango.dev/blog/learned-building-200-api-integrations-with-opencode)
  * [How to build reliable tool calls for AI agents integrating with external APIs](https://www.nango.dev/blog/build-reliable-tool-calls-for-ai-agents-integrating-with-external-apis)
</Update>

***

<Update label="RBAC" description="March 27, 2026">
  We added role-based access control to the Nango dashboard. You can now assign one of three roles when inviting team members:

  | **Full Access**                                                                           | **Support**                                                                               | **Contributor**                                         |
  | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ------------------------------------------------------- |
  | Unrestricted access across all environments. Manages account settings, billing, and team. | Read-only production access without sensitive credentials. Full access in non-production. | Non-production environments only. No production access. |

  <img src="https://mintcdn.com/nango/YHPSA53XMoo2KiLA/images/changelog/rbac-team-invite-roles.jpg?fit=max&auto=format&n=YHPSA53XMoo2KiLA&q=85&s=824b831826eb5d3d75ea4e96dbc36382" alt="RBAC Team Invite Roles" width="2056" height="1297" data-path="images/changelog/rbac-team-invite-roles.jpg" />

  Key details:

  * **Production flag:** Mark any environment as production in **Environment Settings > General**. Once set, Support members get read-only access and Contributors lose access entirely.
  * **API access is unaffected:** Roles apply to dashboard access only. Any caller with a valid secret key retains full API access.

  Available on the Growth and Enterprise plans. See the [Team & roles documentation](/guides/platform/security#team-and-roles).
</Update>

***

<Update label="Schema generation deprecation" description="March 16, 2026">
  Running `nango compile` or `nango deploy` currently generates three files under `.nango/`: `schema.ts`, `schema.json`, and `nango.json`. We will stop generating `schema.ts` and `schema.json`. The `nango.json` file remains unchanged.

  Effective **April 16, 2026**.

  **Am I impacted?**

  * If you import TypeScript types from `.nango/schema.ts` in your application code (e.g., to type SDK calls like `nango.listRecords<MyModel>(...)`).
  * If you consume `.nango/schema.json` for runtime data validation or code generation.

  ### Migrating off `schema.ts`

  Export the types directly from your sync/action files using `z.infer`, then import them in your application code.

  **Before:**

  ```ts theme={null}
  import type { GithubIssue } from './nango-integrations/.nango/schema';
  import Nango from '@nangohq/node';

  const nango = new Nango({ secretKey: '...' });
  const issues = await nango.listRecords<GithubIssue>({ ... });
  ```

  **After:**

  1. In your sync/action file, export the inferred type:

     ```ts theme={null}
     // In: github/syncs/fetchIssues.ts
     export type GithubIssue = z.infer<typeof issueSchema>;
     ```
  2. Import it in your application code:

     ```ts theme={null}
     import type { GithubIssue } from './nango-integrations/github/syncs/fetchIssues';

     const issues = await nango.listRecords<GithubIssue>({ ... });
     ```

  If your types are already defined with `z.infer` but not exported, you only need to add the `export` keyword.

  ### Migrating off `schema.json`

  JSON schemas are now available per sync/action inside `.nango/nango.json` via the `json_schema` property. This replaces the top-level `schema.json`, which had naming conflicts when models across integrations shared the same name.

  To generate JSON Schema programmatically, Zod v4 supports this natively with [`z.toJSONSchema()`](https://zod.dev/json-schema?id=ztojsonschema):

  ```ts theme={null}
  import { z } from 'zod';
  import { issueSchema } from './nango-integrations/github/syncs/fetchIssues';

  const jsonSchema = z.toJSONSchema(issueSchema);
  ```

  See the [data validation guide](/guides/functions/data-validation) for more details on working with Zod schemas in Nango.
</Update>

***

<Update label="February 2026 roundup" description="February 2026">
  <AccordionGroup>
    <Accordion icon="webhook" title="37 new APIs in February">
      * [Attention](/api-integrations/attention)
      * [Cal.com (OAuth)](/api-integrations/cal-com-oauth)
      * [Candis](/api-integrations/candis)
      * [CloudTalk](/api-integrations/cloudtalk)
      * [Cloudflare](/api-integrations/cloudflare)
      * [ConnectWise RMM](/api-integrations/connectwise-rmm)
      * [Domo](/api-integrations/domo)
      * [Fiber AI](/api-integrations/fiber-ai)
      * [FullEnrich](/api-integrations/fullenrich)
      * [Granola](/api-integrations/granola)
      * [Granola (MCP)](/api-integrations/granola-mcp)
      * [Glyphic](/api-integrations/glyphic)
      * [Gamma](/api-integrations/gamma)
      * [Google BigQuery](/api-integrations/google-bigquery)
      * [Google Forms](/api-integrations/google-forms)
      * [HeyGen](/api-integrations/heygen)
      * [HubSpot (MCP)](/api-integrations/hubspot-mcp)
      * [Mercury](/api-integrations/mercury)
      * [Microsoft Teams Bot](/api-integrations/microsoft-teams-bot)
      * [Microsoft Planner](/api-integrations/microsoft-planner)
      * [Maximizer (Cloud)](/api-integrations/maximizer)
      * [Maximizer (On-Premise)](/api-integrations/maximizer-on-premise)
      * [NinjaOne RMM (OAuth2)](/api-integrations/ninjaone-rmm-oauth2)
      * [Nyne AI](/api-integrations/nyne-ai)
      * [Okta (Client Credentials)](/api-integrations/okta-cc)
      * [Ordinal](/api-integrations/ordinal)
      * [Printful](/api-integrations/printful)
      * [ResearchDesk](/api-integrations/researchdesk)
      * [Resend](/api-integrations/resend)
      * [Salesforce (JWT)](/api-integrations/salesforce-jwt)
      * [Salesmsg (PAT)](/api-integrations/salesmsg)
      * [Salesmsg (OAuth2)](/api-integrations/salesmsg-oauth2)
      * [Sellercloud](/api-integrations/sellercloud)
      * [Tally](/api-integrations/tally)
      * [Timify](/api-integrations/timify)
      * [UKG Pro HCM (Client Credentials)](/api-integrations/ukg-pro-cc)
      * [Upsales](/api-integrations/upsales)
    </Accordion>
  </AccordionGroup>

  ## New blog posts

  New posts from the Nango team in February:

  * [Best AI integration platforms in 2026](https://www.nango.dev/blog/best-ai-integration-platforms)
  * [Preserve user permissions & roles in API integrations for AI agents & RAG](https://www.nango.dev/blog/preserve-user-permissions-roles-api-integrations-ai-agents-rag)
  * [How to get Slack user access token (OAuth)](https://www.nango.dev/blog/how-to-get-slack-user-access-token-oauth)
  * [Fix Slack OAuth error: invalid\_team for non-distributed app](https://www.nango.dev/blog/fix-slack-oauth-error-invalid-team-for-non-distributed-app)
  * [Fix Salesforce OAuth error: oauth\_approval\_error\_generic](https://www.nango.dev/blog/fix-salesforce-oauth-approval-error-generic)
</Update>

***

<Update label="Sync checkpoints" description="February 2026">
  <a id="february-5,-2026" />

  <a id="february-5-2026" />

  We introduced customizable Sync checkpoints to make syncs interruptible and resumable.

  Previously, a failed sync would restart from the beginning of its execution cycle, potentially wasting time processing data that had already been synced. You can now set a `checkpoint` field with a custom comparison object and use `nango.getCheckpoint()` and `nango.saveCheckpoint()` directly in your function code to track progress at a granular level.

  ```typescript theme={null}
  // Simplified Example
  export default createSync({
      frequency: 'every hour',
      checkpoint: z.object({ lastModifiedISO: z.string() }),
      models: { Contact: ContactSchema },

      exec: async (nango) => {
          const checkpoint = await nango.getCheckpoint();

          const contacts = await fetchContacts({ since: checkpoint?.lastModifiedISO });
          await nango.batchSave(contacts, 'Contact');

          await nango.saveCheckpoint({ lastModifiedISO: contacts.at(-1).lastModifiedISO });
      },
  });
  ```

  Checkpoints are optional; not using them implies the function will always run from scratch. See the [Sync checkpoints documentation](/guides/functions/syncs/checkpoints).

  **No breaking changes:** Existing syncs without a `checkpoint` declaration continue to run as full syncs. For any sync with a large or growing dataset, define a `checkpoint` schema and call `saveCheckpoint()` after each batch.

  **Migration Note:** Checkpoints are a more flexible replacement for `nango.lastSyncDate`. We also removed the concepts of incremental vs. full syncs from the function signature. If you use `nango.lastSyncDate` for incremental syncing, we recommend migrating — checkpoints are more resilient, more flexible, and will be the primary supported path going forward. There is no deprecation timeline for `nango.lastSyncDate`, but new improvements will only land on checkpoints. Follow the [Migration guide](/guides/platform/migrations/migrate-to-checkpoints).
</Update>

***

<Update label="Serverless runtime" description="February 2026">
  We overhauled the underlying execution infrastructure to be fully serverless.

  [Function](/guides/functions/functions-guide) executions now run in isolated AWS Lambda environments rather than using a single VM per customer. This provides dedicated resources and an isolated runtime for every Function execution, significantly improving tenant isolation, execution fairness, reliability, and performance scaling.

  This change is at the infrastructure level; your function code and APIs are unaffected.
</Update>

***

<Update label="Integration builder skill" description="February 2026">
  We released a new AI skill for writing and testing Nango [Actions](/getting-started/use-cases/actions) & [Syncs ](/getting-started/use-cases/syncs)using your favorite AI coding agent.

  The skill is compatible with over 18 different AI frameworks, including Claude Code, Cursor, GitHub Copilot, Gemini CLI, Codex, OpenCode, and more.

  <img src="https://mintcdn.com/nango/_rF-kkQcfOSUWVgm/images/changelog/nango-ai-integration-builder-cursor.png?fit=max&auto=format&n=_rF-kkQcfOSUWVgm&q=85&s=08f598e4ec9beb12c255056023b51c67" alt="Building Nango integrations with Cursor" width="1842" height="1207" data-path="images/changelog/nango-ai-integration-builder-cursor.png" />

  See the [Functions guide](/guides/functions/functions-guide#guide) for instructions on building integrations with AI.
</Update>

***

<Update label="MCP Auth support" description="February 2026">
  We added full platform support for Model Context Protocol (MCP) Auth integrations, starting with [HubSpot MCP](/api-integrations/hubspot-mcp) and [Granola MCP](/api-integrations/granola-mcp).\
  You can now authenticate and connect your AI Agents with providers that support MCP Auth.

  <img src="https://mintcdn.com/nango/3aXPWvBIkxQ5k_E0/images/changelog/hubspot-mcp-connect-ui.png?fit=max&auto=format&n=3aXPWvBIkxQ5k_E0&q=85&s=e7d8e5538cb641511de975d153cc81be" alt="Hubspot Mcp Connect Ui" width="1778" height="1165" data-path="images/changelog/hubspot-mcp-connect-ui.png" />
</Update>

***

<Update label="January 2026 roundup" description="January 2026">
  <AccordionGroup>
    <Accordion icon="webhook" title="37 new APIs in January">
      * [3CX](/api-integrations/3cx)
      * [8x8](/api-integrations/8x8)
      * [Adobe Commerce](/api-integrations/adobe-commerce)
      * [Atlassian Service Account (API Token)](/api-integrations/atlassian-service-account-api-token)
      * [Atlassian Service Account (OAuth 2.0)](/api-integrations/atlassian-service-account-oauth2)
      * [Bird](/api-integrations/bird)
      * [Canvas LMS](/api-integrations/canvas-lms)
      * [Cloudbeds](/api-integrations/cloudbeds)
      * [Constant Contact](/api-integrations/constant-contact)
      * [DemoDesk](/api-integrations/demodesk)
      * [Crisp (Plugin Install)](/api-integrations/crisp-plugin-install)
      * [ECU360 (Test)](/api-integrations/ecu360)
      * [ECU360 (Production)](/api-integrations/ecu360-production)
      * [FreeAgent](/api-integrations/freeagent)
      * [FreeAgent (Sandbox)](/api-integrations/freeagent-sandbox)
      * [Google Meet](/api-integrations/google-meet)
      * [Greenhouse Harvest Partner (V3)](/api-integrations/greenhouse-harvest-partner)
      * [Greenhouse Harvest (Client Credentials V3)](/api-integrations/greenhouse-harvest-oauth2-cc)
      * [Looker](/api-integrations/looker)
      * [Meta Marketing API](/api-integrations/meta-marketing-api)
      * [Juniper Mist](/api-integrations/juniper-mist)
      * [Mollie](/api-integrations/mollie)
      * [ModMed](/api-integrations/modmed)
      * [Nerdio](/api-integrations/nerdio)
      * [nocrm.io](/api-integrations/nocrm)
      * [Oomnitza](/api-integrations/oomnitza)
      * [Perdoo](/api-integrations/perdoo)
      * [Pylon](/api-integrations/pylon)
      * [Procore](/api-integrations/procore)
      * [Reapit Connect](/api-integrations/reapit)
      * [Schwab](/api-integrations/schwab)
      * [ServiceNow (Client Credentials)](/api-integrations/servicenow-oauth2-cc)
      * [Stripe (API Key)](/api-integrations/stripe-api-key)
      * [Wiseagent](/api-integrations/wiseagent)
      * [WorkOS](/api-integrations/workos)
      * [Workday (Refresh Token Auth)](/api-integrations/workday-refresh-token)
      * [Wise (API Key)](/api-integrations/wise-api-key)
    </Accordion>
  </AccordionGroup>

  ## New blog posts

  We published a series of debugging guides detailing what causes OAuth refresh token `invalid_grant` or `BAD_REFRESH_TOKEN` errors and how to fix them across various providers:

  * [QuickBooks OAuth refresh token invalid\_grant](https://www.nango.dev/blog/quickbooks-oauth-refresh-token-invalid-grant)
  * [Airtable OAuth refresh token invalid\_grant](https://www.nango.dev/blog/airtable-oauth-refresh-token-invalid-grant)
  * [GitHub App OAuth BAD\_REFRESH\_TOKEN](https://www.nango.dev/blog/github-app-oauth-refresh-token-bad-refresh-token)
  * [Microsoft OAuth refresh token invalid\_grant](https://www.nango.dev/blog/microsoft-oauth-refresh-token-invalid-grant)
  * [LinkedIn OAuth refresh token invalid\_grant](https://www.nango.dev/blog/linkedin-oauth-refresh-token-invalid-grant)
  * [Slack OAuth refresh token invalid\_grant](https://www.nango.dev/blog/slack-oauth-refresh-token-invalid-grant)
  * [Stripe OAuth refresh token invalid\_grant](https://www.nango.dev/blog/stripe-oauth-refresh-token-invalid-grant)
  * [Shopify OAuth refresh token invalid\_grant](https://www.nango.dev/blog/shopify-oauth-refresh-token-invalid-grant)
  * [Xero OAuth refresh token invalid\_grant](https://www.nango.dev/blog/xero-oauth-refresh-token-invalid-grant)
  * [Linear OAuth refresh token invalid\_grant](https://www.nango.dev/blog/linear-oauth-refresh-token-invalid-grant)
  * [PostHog OAuth refresh token invalid\_grant](https://www.nango.dev/blog/posthog-oauth-refresh-token-invalid-grant)
  * [Notion OAuth refresh token invalid\_grant](https://www.nango.dev/blog/notion-oauth-refresh-token-invalid-grant)
  * [Zendesk OAuth refresh token invalid\_grant](https://www.nango.dev/blog/zendesk-oauth-refresh-token-invalid-grant)
  * [Jira OAuth refresh token invalid\_grant](https://www.nango.dev/blog/jira-oauth-refresh-token-invalid-grant)
  * [Gong OAuth refresh token invalid\_grant](https://www.nango.dev/blog/gong-oauth-refresh-token-invalid-grant)
  * [Confluence OAuth refresh token invalid\_grant](https://www.nango.dev/blog/confluence-oauth-refresh-token-invalid-grant)
</Update>

***

<Update label="Sync cache retention" description="January 2026">
  <a id="january-6,-2026" />

  <a id="january-6-2026" />

  We added automatic data retention policies for records stored in the Nango sync cache. These policies apply to synced records produced by syncs (our replication-oriented functions) and ensure that record payloads are not retained indefinitely.

  **Retention lifecycle:**

  1. **Automated payload pruning.** If a record has not been updated for **30 days**, Nango automatically prunes its payload. The record still exists and its metadata remains intact, including record ID, sync state, and payload hash (used for change detection). After pruning, the record's data fields are no longer retrievable from the Nango cache, but Nango can still track the record and detect future changes. This pruning does not impact sync execution or delta-detection.
  2. **Automated hard deletion.** If a sync has not executed for **60 days**, records belonging to that sync will be permanently deleted (payload and metadata).

  **Timeline:** Policies start on **January 8, 2026**. Record payload pruning starts **30 days later**. Record hard deletion for inactive syncs starts **60 days later**.

  **Am I impacted?**

  Most customers (including most sync users) are not impacted, in particular if you use syncs for replication, receive updates via Nango webhooks, and replicate records into your own system shortly after they arrive in the Nango cache. You are impacted if you use Nango sync's cache as a long-term persistent data store, reading or editing record payloads from the Nango cache long after they were updated.

  **What to do:** If you fetch record payloads from Nango long after they were updated (30+ days), reach out. We will make sure you do not experience breaking changes.

  **Why:** These retention policies are part of our broader commitment to helping customers meet modern data compliance and security expectations. They ensure that sensitive user data is not stored indefinitely in the Nango sync cache when it is no longer needed for syncing.

  See the [Records cache documentation](/guides/functions/syncs/records-cache).

  We also introduced a new endpoint to manually prune records.

  You can use `PATCH /records/prune` to empty record payloads on demand while preserving the metadata. See the [Prune records API reference](/reference/backend/http-api/sync/prune-records).
</Update>

***

<Update label="Salesforce JWT auth" description="January 2026">
  You can now authenticate with Salesforce using the JWT Bearer flow. This enables server-to-server authentication using a dedicated "API user" inside the customer's Salesforce org.

  <img src="https://mintcdn.com/nango/4Gd_WEbe8tU0gQq3/images/changelog/salesforce-jwt.png?fit=max&auto=format&n=4Gd_WEbe8tU0gQq3&q=85&s=ac529861ed7881defa770710485d25b5" alt="Salesforce JWT" width="2157" height="1025" data-path="images/changelog/salesforce-jwt.png" />

  This auth mode bypasses the interactive OAuth consent screen, which enterprise customers often prefer for easier onboarding and stronger governance.

  See the [Salesforce JWT documentation](/api-integrations/salesforce-jwt) for the setup guide and implementation snippets.
</Update>

***

<Update label="Shareable Connect links" description="January 2026">
  You can now generate and copy a shareable Connect UI link directly from the Nango dashboard. This enables you to create a link in Nango and share it with another person to complete the auth flow.

  <img src="https://mintcdn.com/nango/4Gd_WEbe8tU0gQq3/images/changelog/share-connect-link.gif?s=029f14b72b14d2b1036ca81a295f7770" alt="Share Connect Link R Jan2026" width="2164" height="1247" data-path="images/changelog/share-connect-link.gif" />

  The UI displays an expiry notification when you copy the link to your clipboard. Links expire after 30 minutes.
</Update>

***

<Update label="Mobile Connect UI" description="January 2026">
  We updated the Authorization flow UI to optimize the layout for mobile/tablet devices.

  <img src="https://mintcdn.com/nango/KKlaqQ6J6dUonarX/images/changelog/nango-auth-mobile-support.png?fit=max&auto=format&n=KKlaqQ6J6dUonarX&q=85&s=c46df2fe885ecbf769e8f4e9d458f517" alt="Nango Auth Mobile Support" title="Nango Auth Mobile Support" className="mr-auto" style={{ width:"40%" }} width="1419" height="2796" data-path="images/changelog/nango-auth-mobile-support.png" />
</Update>

***

<Update label="HMAC webhook signatures" description="December 5, 2025">
  Nango webhooks now include a new `X-Nango-Hmac-Sha256` header that uses HMAC-SHA256 for improved security. The legacy `X-Nango-Signature` header (plain SHA-256 with key concatenation) is still sent for backwards compatibility but should no longer be used.

  HMAC-SHA256 is cryptographically more secure than plain SHA-256 with concatenation. HMAC provides better protection against length extension attacks and is the industry standard for webhook signature verification.

  **Timeline:**

  * **Now available:** The `X-Nango-Hmac-Sha256` header is already included in all webhook requests.
  * The `X-Nango-Signature` header will continue to be sent for backwards compatibility, with no current deprecation timeline.

  **Am I impacted?**

  * If you currently verify webhooks using the `X-Nango-Signature` header.
  * If you are implementing webhook verification for the first time.

  **For new integrations:** verify webhook signatures using the `X-Nango-Hmac-Sha256` header. See the updated [webhook documentation](/guides/platform/webhooks-from-nango#verifying-webhooks-from-nango) for code examples.

  **For existing integrations:** migrate to `X-Nango-Hmac-Sha256` when convenient. The old `X-Nango-Signature` header will continue to work, but we recommend migrating for better security.
</Update>

***

<Update label="December 2025 roundup" description="December 2025">
  <AccordionGroup>
    <Accordion icon="webhook" title="22 new APIs in December">
      * [Availity](/api-integrations/availity)
      * [BetterContact](/api-integrations/bettercontact)
      * [ConductorOne](/api-integrations/conductorone)
      * [Drata](/api-integrations/drata)
      * [Fanvue](/api-integrations/fanvue)
      * [Fathom (OAuth)](/api-integrations/fathom-oauth)
      * [Firstbase](/api-integrations/firstbase)
      * [Google Search Console](/api-integrations/google-search-console)
      * [Grist](/api-integrations/grist)
      * [Justworks](/api-integrations/justworks)
      * [Lumos](/api-integrations/lumos)
      * [Onlogist](/api-integrations/onlogist)
      * [Oracle Cloud Identity](/api-integrations/oracle-cloud-identity)
      * [Paylocity (NextGen)](/api-integrations/paylocity-nextgen)
      * [Recall.ai](/api-integrations/recall-ai)
      * [SAP S/4HANA Cloud (Client Credentials)](/api-integrations/sap-odata-oauth2-cc)
      * [SAP S/4HANA Cloud (Basic Auth)](/api-integrations/sap-odata-basic)
      * [Slab](/api-integrations/slab)
      * [Sophos Central](/api-integrations/sophos-central)
      * [Torii](/api-integrations/torii)
      * [Vanta](/api-integrations/vanta)
      * [Veeva Vault](/api-integrations/veeva-vault)
    </Accordion>
  </AccordionGroup>

  ## New blog posts

  New posts from the Nango team in December:

  * [Finding traction without a product: Our process](https://www.nango.dev/blog/our-process-for-finding-initial-traction-pre-product)
  * [How to find the best integrations partner](https://www.nango.dev/blog/how-to-find-the-best-integrations-partner)
</Update>

***

<Update label="Connection tags" description="December 2025">
  Connections now support tags. Tags are key/value strings you attach when creating a Connect session to tie a Nango connection to a specific user, organization, or entity in your system.

  When a user completes an auth flow, Nango copies these tags to the resulting connection and includes them in the success webhook. This replaces the need for the legacy `end_user` and `organization` objects.

  Tags also enhance the Nango UI:

  * `end_user_display_name` and `end_user_email` are shown directly in the connections list.
  * The domain from the `end_user_email` is used to automatically display the corresponding company logo on the connection detail page.

      <img src="https://mintcdn.com/nango/KKlaqQ6J6dUonarX/images/changelog/connection-tags-ui.png?fit=max&auto=format&n=KKlaqQ6J6dUonarX&q=85&s=2eaaddc573bc102d8aa1593b3ba29926" alt="Connection Tags Ui" width="2942" height="1686" data-path="images/changelog/connection-tags-ui.png" />

  You can also filter connections by tags via the API. See the [Connection tags documentation](/guides/auth/connection-tags-configuration-metadata).

  **Migration Note:** If you currently use `end_user` or `organization` in Connect sessions or webhooks, follow the [migration guide](/guides/platform/migrations/migrate-from-end-user) to move to tags.
</Update>

***

<Update label="OAuth error messages" description="December 2025">
  We rebuilt the callback experience to provide better visibility into OAuth errors. Provider error messages are now rendered directly inside the Connect UI form and the pop-up window.

  <img src="https://mintcdn.com/nango/KKlaqQ6J6dUonarX/images/changelog/improved-oauth-error-messaging.png?fit=max&auto=format&n=KKlaqQ6J6dUonarX&q=85&s=936afca3dcb317ba7259cc5532295a61" alt="Enhanced OAuth error messaging" width="1031" height="1360" data-path="images/changelog/improved-oauth-error-messaging.png" />

  The new UI for the callback renders structured success and error states. It also surfaces provider query parameters in an expandable debug panel.

  Additionally, provider errors are now delivered via WebSocket for improved logging on your end.
</Update>

***

<Update label="Integrations redesign" description="December 2025">
  We have overhauled the Integrations tab to streamline how you manage and scale your catalog. This update focuses on faster discovery and a more intuitive setup flow.

  * **Improved Search:** The search on the Integrations page now considers display names, auth modes, and categories to bring you the most relevant results.

      <img src="https://mintcdn.com/nango/4Gd_WEbe8tU0gQq3/images/changelog/new-integrations-list-page.png?fit=max&auto=format&n=4Gd_WEbe8tU0gQq3&q=85&s=d7999ee88f60fb736bc143c75d234f0f" alt="Improved Search" width="2139" height="1037" data-path="images/changelog/new-integrations-list-page.png" />
  * **Decoupled Creation Flow:** Selecting an API in the catalog now leads to a dedicated form where you configure credentials (Client ID, Secret, Scopes) before the integration is created. This prevents empty integrations from cluttering your dashboard.
  * **Improved Navigation:** Added breadcrumbs to the header for better context in nested routes and a new search bar for your active integrations list.

      <img src="https://mintcdn.com/nango/KKlaqQ6J6dUonarX/images/changelog/breadcrumbs.png?fit=max&auto=format&n=KKlaqQ6J6dUonarX&q=85&s=5122a4dff569f76efba28a5dac0c5b55" alt="Improved Navigation" width="2139" height="1107" data-path="images/changelog/breadcrumbs.png" />
</Update>

***

<Update label="Webhook delivery changes" description="November 27, 2025">
  New behavior:

  * **Timeout:** 20s (instead of 60s)
  * **Retries:** 2 (instead of 7)

  Effective **December 3, 2025**.

  **Am I impacted?** Most customers — in particular anyone consuming webhooks for auth, syncs, async actions, or webhook forwards.

  **Action required:** None.

  **Why:** The previous long timeout and many retries created incidents when webhook endpoints were unavailable. The new behavior is in line with other popular APIs (e.g., Stripe, Hubspot).
</Update>

***

<Update label="November 2025 roundup" description="November 2025">
  <AccordionGroup>
    <Accordion icon="webhook" title="27 new APIs in November">
      * [Apify](/integrations/all/apify)
      * [Auvik](/integrations/all/auvik)
      * [Breezy HR](/integrations/all/breezy-hr)
      * [CrowdStrike](/integrations/all/crowdstrike)
      * [Cursor Admin](/integrations/all/cursor-admin)
      * [Crisp](/integrations/all/crisp)
      * [DrChrono](/integrations/all/drchrono)
      * [ContactOut](/integrations/all/contactout)
      * [Fellow](/api-integrations/fellow)
      * [GitLab (Personal Access Token)](/integrations/all/gitlab-pat)
      * [HeyReach](/integrations/all/heyreach)
      * [Icypeas](/integrations/all/icypeas)
      * [LeadMagic](/integrations/all/leadmagic)
      * [Mimecast](/integrations/all/mimecast)
      * [NinjaOne RMM](/integrations/all/ninjaone-rmm)
      * [Passportal](/integrations/all/passportal)
      * [Rocketlane](/integrations/all/rocketlane)
      * [Prospeo](/api-integrations/prospeo)
      * [PracticeFusion](/api-integrations/practicefusion)
      * [Semrush (v3)](/integrations/all/semrush)
      * [Shipstation (v2)](/integrations/all/shipstation-v2)
      * [TikTok Personal](/integrations/all/tiktok-personal)
      * [Valley (API Key)](/integrations/all/valley-api-key)
      * [Valley (OAuth)](/integrations/all/valley)
      * [Wiza](/integrations/all/wiza)
      * [Zendesk Sell](/integrations/all/zendesk-sell)
      * [Zoho Recruit](/integrations/all/zoho-recruit)
    </Accordion>
  </AccordionGroup>

  ## New blog posts

  New posts from the Nango team in November:

  * [How to build integrations you and your customers love](https://www.notion.so/blog/how-to-build-integrations-you-and-your-customers-love)
  * [The hidden costs of building product integrations in-house](https://www.notion.so/blog/the-hidden-costs-of-building-product-integrations-in-house)
  * [Product integrations: Build or buy?](https://www.notion.so/blog/product-integrations-build-or-buy)
</Update>

***

<Update label="Advanced connection settings" description="November 2025">
  You can now set advanced configurations directly in the Nango UI when creating a connection. This form is split into two distinct sections.

  Firstly, you can specify end-user data. This includes setting a custom ID, email, and display name for the connection.

  <img src="https://mintcdn.com/nango/KKlaqQ6J6dUonarX/images/changelog/advanced-connection-settings.gif?s=64b520fcb834b24018dfb3403c91248f" alt="Advanced connection settings" width="2000" height="1140" data-path="images/changelog/advanced-connection-settings.gif" />

  Secondly, you can also override the integration's default configuration, like authorization parameters, customize OAuth scopes, and override developer app credentials. This allows you to test connections and initiate the authorization flow even if default credentials are not fully configured in your environment.
</Update>

***

<Update label="Template cloning" description="November 2025">
  The [Nango CLI](/reference/functions/functions-cli) now includes a `nango clone` command. This automates the process of pulling function templates and their dependencies from the Nango integration templates repository.

  This replaces the manual process of copying and pasting configuration and TypeScript code. You can clone an entire integration directory, a specific category of functions, or an individual template.

  ```bash theme={null}
  nango clone github     
  nango clone github/actions               
  nango clone github/actions/list-repos
  ```

  See the guide on [customizing a function template](/guides/functions/functions-guide#guide).
</Update>

***

<Update label="Monorepo support" description="November 2025">
  We’ve improved how the Nango CLI detects and interacts with your environment, specifically for non-NPM setups:

  * **Monorepo detection**: The CLI now traverses parent directories to find your lockfile or `package.json`. If you run `nango init` in a subdirectory, it will correctly identify and use your root `pnpm`, `yarn`, or `bun` configuration.
  * **Opt-out of auto-installs**: To prevent the CLI from modifying `package.json` in sensitive environments (like CI or projects using pnpm catalogs), use the new `--no-dependency-update` flag or set the `NANGO_CLI_DEPENDENCY_UPDATE=false` environment variable.
  * **Yarn compatibility**: `nango init` now works out of the box for Yarn users, correctly flagging projects as standalone and using the `node-modules` linker.
</Update>

***

<Update label="Remote log ingestion" description="October 29, 2025">
  Function custom logs are calls to `nango.log(...)` in your functions (action functions, sync functions, webhook functions, and event functions).

  Starting in November, only `warn` and `error` level logs will be ingested by default for remote environments. Debug and info level logs will no longer be ingested automatically. When you call `nango.log(...)` without an explicit level (which defaults to `info`), these logs will not appear in the Nango UI logs tab for remote environments.

  All function custom logs, regardless of log level, will continue to surface in your local console when using the `nango dryrun` CLI command.

  Effective **November 1, 2025**.

  **Am I impacted?**

  * If you use custom logs in your syncs and actions with `nango.log(...)`.
  * If you rely on viewing debug and info level logs in the Nango UI logs tab for remote environments.

  ### Keeping logs visible in the Nango UI

  **Option 1: Raise the log level on individual calls**

  ```ts theme={null}
  nango.log('Important information', { level: 'warn' });
  nango.log('Critical error occurred', { level: 'error' });
  ```

  **Option 2: Set a minimum level for the entire function run**

  ```ts theme={null}
  nango.logger({
    level: 'info' // info-level logs and above (warn & error) will be indexed
  });

  // Now all your regular nango.log() calls will be ingested
  nango.log('This will now appear in the UI');
  ```

  **Option 3: Set an environment variable to revert to the original behavior**

  While this is the simplest way to restore the previous behavior, we recommend Options 1 or 2 for better cost control.

  In your environment settings in the Nango UI, create an environment variable with key `NANGO_LOGGER_LEVEL` and value `'info'` (or `'debug'`, `'warn'`, `'error'`).

  **Warning:** Option 3 ingests all function logs across all syncs and actions. Carefully monitor your log volume starting in November to avoid unexpectedly high bills.

  **Important notes:**

  * Options 1 and 2 require changes in your function code and must be deployed using the Nango CLI.
  * Option 3 can be configured directly in the Nango UI without code changes.
  * Local development is unaffected — all logs continue to appear when using `nango dryrun`.
  * This change helps ensure you're only billed for logs you actively use in production.

  **Why:** Many customers generate a large number of custom logs for local development purposes without using them in remote environments. With the new pricing model starting in November (which includes generous included usage for function custom logs), this change ensures that customers don't get billed for logs they're not actively using.
</Update>

***

<Update label="October 2025 roundup" description="October 2025">
  <AccordionGroup>
    <Accordion icon="webhook" title="23 new APIs in October">
      * [Adobe Workfront](/integrations/all/adobe-workfront)
      * [Affinity (v2)](/integrations/all/affinity-v2)
      * [Aimfox](/integrations/all/aimfox)
      * [Aimfox (OAuth)](/integrations/all/aimfox-oauth)
      * [Atlassian Government Cloud](/integrations/all/atlassian-government-cloud)
      * [Folk](/api-integrations/folk)
      * [Ironclad](/integrations/all/ironclad)
      * [Loop Returns](/integrations/all/loop-returns)
      * [MCP Server OAuth2 (Generic)](/integrations/all/mcp-generic)
      * [Microsoft (Admin)](/integrations/all/microsoft-admin)
      * [Microsoft Excel](/integrations/all/microsoft-excel)
      * [Momentum.io](/integrations/all/momentum-io)
      * [OneDrive Personal](/integrations/all/one-drive-personal)
      * [OneLogin](/integrations/all/onelogin)
      * [Pennylane (Company API)](/integrations/all/pennylane-company-api)
      * [PingOne](/integrations/all/pingone)
      * [PingOne (Client Credentials)](/integrations/all/pingone-cc)
      * [SAP Fieldglass](/integrations/all/sap-fieldglass)
      * [SAP Business One](/integrations/all/sap-business-one)
      * [Statista](/integrations/all/statista)
      * [Streak](/api-integrations/streak)
      * [Teamleader Focus](/integrations/all/teamleader)
      * [Snipe-IT](/integrations/all/snipe-it)
    </Accordion>
  </AccordionGroup>

  ## New blog posts

  New posts from the Nango team in October:

  * [Best practices for building a unified API](https://www.nango.dev/blog/best-practices-build-unified-api)
  * [HubSpot OAuth BAD\_REFRESH\_TOKEN — What it means & how to fix it](https://www.nango.dev/blog/hubspot-oauth-bad-refresh-token)
  * [Best iPaaS for API Unification](https://www.nango.dev/blog/best-ipaas-for-api-unification)
  * [Paragon's pricing: What You Should Know Before Signing Up](https://www.nango.dev/blog/paragon-pricing)
  * [Merge pricing: What you should know before you commit](https://www.nango.dev/blog/merge-pricing)
  * [The 4 most popular Paragon alternatives](https://www.nango.dev/blog/4-most-popular-paragon-alternatives)
  * [The 4 most popular Merge.dev alternatives](https://www.nango.dev/blog/4-most-popular-merge-dev-alternatives)
</Update>

***

<Update label="CLI interactive mode" description="October 2025">
  The Nango CLI now supports an [interactive mode](/reference/functions/functions-cli#interactive-mode) that prompts for missing arguments. For example, run `nango create` without specifying the function type, integration, or name, and the CLI will ask for them. Interactive mode is on by default in interactive terminal sessions.

  <img src="https://mintcdn.com/nango/4Gd_WEbe8tU0gQq3/images/changelog/nango-cli-interactive-mode.png?fit=max&auto=format&n=4Gd_WEbe8tU0gQq3&q=85&s=db1cb32eed289ccd62139c493bab68ea" alt="Nango_CLI_interactive_mode" width="1602" height="526" data-path="images/changelog/nango-cli-interactive-mode.png" />

  You can still provide all arguments upfront to skip prompts (e.g., for scripting): test `nango create --sync --integration my-api --name get-contacts`

  To turn off interactive mode, use the `--no-interactive` flag, or set the `CI` environment variable for CI/CD environments.
</Update>

***

<Update label="Test mock format" description="October 2025">
  We have moved from a multi-file mock format to a single `.test.json`.

  When you generate mocks for your Nango syncs or actions, a single `.test.json` file is generated next to your test file. The file contains input, output, Nango stubs, and API response mocks, organized by method and path. This keeps test data in one place, making tests easier to run and maintain. See [mock file structure](/guides/functions/testing#mock-file-structure).

  **Migration Note:** See [migrating from the old format](/guides/functions/testing#migrating-from-the-old-format) if you have tests still using the old multi-file mocks.
</Update>

***

<Update label="CI/CD guide" description="October 2025">
  * [CI/CD for Nango integrations](/guides/functions/ci-cd): A complete guide on integrating Nango into your CI/CD processes.
</Update>

***

<Update label="End-user info isolation" description="September 1, 2025">
  Currently, if multiple connections share the same `end_user_id`, they also share the same end-user object in Nango. After the change, each connection will always get its own independent copy of the end-user object, even if they use the same `end_user_id`. We are changing the old behavior because it was confusing for some developers, and because it was impossible to declare multiple organizations for a given user.

  Effective **September 8, 2025** — end-user updates will stop being replicated across connections.

  **Am I impacted?**

  * If your users can be tied to multiple organizations.
  * If you were relying on end-user auto-replication to maintain data freshness.

  **What to do:**

  End-user fields are mostly for display and tagging purposes.

  * If you are not using them, you can safely ignore this update.
  * If you are using them and wish to keep them in sync across connections (e.g., display name), patch each connection when your end-user is updated on your side:

    ```ts theme={null}
    await nango.patchConnection({
      connectionId,
      provider_config_key
    }, {
      end_user: {
        id: '123',
        email: 'new-email@nango.dev'
      }
    });
    ```

  If you don't keep them in sync, the only side effect is that data will be stale in the Nango platform.

  There is no batch endpoint for this operation. If you need one, please reach out on Slack.
</Update>

***

<Update label="September 2025 roundup" description="September 2025">
  <AccordionGroup>
    <Accordion icon="webhook" title="28 new APIs in September">
      * [Addepar (OAuth)](/integrations/all/addepar)
      * [Addepar (Basic Auth)](/integrations/all/addepar-basic)
      * [ADP Lyric](/integrations/all/adp-lyric)
      * [ADP Workforce Now](/integrations/all/adp-workforce-now)
      * [Bullhorn](/integrations/all/bullhorn)
      * [Clerk](/integrations/all/clerk)
      * [Cursor](/integrations/all/cursor)
      * [DataCandy](/integrations/all/datacandy)
      * [Fillout (API Key)](/integrations/all/fillout-api-key)
      * [Fillout (Oauth)](/integrations/all/fillout)
      * [Google Workspace Admin](/api-integrations/google-workspace-admin)
      * [Google Service Account](/integrations/all/google-service-account)
      * [Hover](/integrations/all/hover)
      * [Jobber](/integrations/all/jobber)
      * [Kintone](/integrations/all/kintone)
      * [Kintone User API](/integrations/all/kintone-user-api)
      * [Pax8](/integrations/all/pax8)
      * [Recruitee](/integrations/all/recruitee)
      * [Sellsy](/integrations/all/sellsy)
      * [Sellsy (Client Credentials)](/integrations/all/sellsy-oauth2-cc)
      * [Skio](/integrations/all/skio)
      * [Snapchat (Ads API)](/integrations/all/snapchat)
      * [Tailscale (OAuth)](/integrations/all/tailscale)
      * [Tailscale (API Key)](/integrations/all/tailscale-api-key)
      * [Webex](/integrations/all/webex)
    </Accordion>
  </AccordionGroup>
</Update>

***

<Update label="Connect UI settings" description="September 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/r-VSGvrS9ktOieNC/images/changelog/connect-ui-settings.png?fit=max&auto=format&n=r-VSGvrS9ktOieNC&q=85&s=daa08bca5e237293e953b0f3ebf08a3b" alt="Connect UI settings" width="1200" height="554" data-path="images/changelog/connect-ui-settings.png" />
  </Frame>

  Customize the Connect UI, which your users see when they authorize integrations.

  We've added a dark mode and the ability to change the primary color to fit your brand. You can also toggle the light/dark mode based on the user's system preference.

  Access the Connect UI settings in your [Environment settings](https://app.nango.dev/dev/environment-settings). We will continue adding customization options over time.
</Update>

***

<Update label="Deletion detection" description="September 2025">
  For APIs that don't support deletion detection, we've added a new interface to detect deletions on Nango's side when syncing data ([docs](/guides/functions/syncs/deletion-detection)).

  Inside your sync function, you can now call `nango.deleteRecordsFromPreviousExecutions('ModelName')` to detect deletions.

  Please note that you should only use this function if you are performing a full sync. If you are syncing data incrementally, you can periodicaly resync the whole dataset to benefit from deletion detection.
</Update>

***

<Update label="Credential verification" description="September 2025">
  We added the ability to customize the credentials verification script, which is called when a new connection is created. For this, use the new `validate-connection` hook ([docs](/guides/functions/event-functions)).

  This lets you verify your customers’ API credentials by testing them against specific endpoints that correspond to particular API scopes.
</Update>

***

<Update label="Action output limit" description="August 22, 2025">
  Nango actions currently have a documented output limit of 10MB. We are further restricting that limit to 2MB. Instead of using an action for large payloads, use the Nango [proxy](/guides/platform/proxy-requests).

  We will also soon restrict action inputs, so please take note of your inputs.

  Effective **October 1, 2025** — actions exceeding the 2MB output limit will throw an error.

  **Am I impacted?**

  * If you use actions with heavy outputs. Typical large-output actions include [`fetch-attachment`](https://github.com/NangoHQ/integration-templates/blob/main/integrations/outlook/actions/fetch-attachment.ts), [`fetch-call-transcripts`](https://github.com/NangoHQ/integration-templates/blob/main/integrations/gong/actions/fetch-call-transcripts.ts), and in general anything fetching an object from an external system. We've added dedicated proxy code to help with the migration: [`fetch-document`](https://github.com/NangoHQ/integration-templates/blob/main/integrations/google-drive/proxy/fetch-document.ts), [`fetch-spreadsheet`](https://github.com/NangoHQ/integration-templates/blob/main/integrations/google-sheet/proxy/fetch-spreadsheet.ts), [`fetch-file`](https://github.com/NangoHQ/integration-templates/blob/main/integrations/box/proxy/fetch-file.ts), [`fetch-database`](https://github.com/NangoHQ/integration-templates/blob/main/integrations/notion/proxy/fetch-database.ts).
  * If you're using a now-deprecated template function that fetches objects from an external system.

  **What to do:**

  * Check your action logs for a warning that you've exceeded the action output limitation.
  * Verify the actions you're using and log the output size of the action.
  * Migrate the action to use the proxy instead.

  If your action logs exceed the 2MB limitation, you'll see a warning like this:

  <img src="https://mintcdn.com/nango/8qZBYH1acUho2Omj/images/action-output-size-warning.png?fit=max&auto=format&n=8qZBYH1acUho2Omj&q=85&s=6c5de8f4b2f153a85030647a2695240a" alt="Action output size warning" width="834" height="505" data-path="images/action-output-size-warning.png" />

  Reach out with any questions or concerns in our Slack community.
</Update>

***

<Update label="Connection endpoint deprecation" description="August 20, 2025">
  In this release, we've made some changes to the API that are breaking for some users.

  * All endpoints under `/connection` are now deprecated. Use the new `/connections` endpoint instead. All endpoints except one take and return the same data — only the base path has changed.
  * The endpoint `POST /connections` (previously `POST /connection`) now takes a different body but returns the same data. This new body is more flexible and ensures stricter typings on your side and validation on ours.
  * The endpoints `POST /connection/:connectionId/metadata` and `PATCH /connection/:connectionId/metadata`, which have been deprecated for a while, will not be migrated to `/connections` and will be removed at the end of the grace period.

  Effective **January 20, 2026** — all `/connection` endpoints will be removed.

  **Am I impacted?**

  * If you manually use any endpoint under `/connection`.
  * If you use the CLI.
  * If you use the official Nango SDKs.

  **What to do:**

  * If you use the CLI, upgrade to `>=0.67.0`.
  * If you use the official Nango SDKs, upgrade to `>=0.67.0`.
  * If you manually use any endpoint under `/connection`, migrate to `/connections`.
  * If you use the `POST /connection/:connectionId/metadata` or `PATCH /connection/:connectionId/metadata` endpoints, migrate to `/connections/metadata`.
  * If you specifically use the `POST /connection` endpoint to import connections, see the migration section below.

  ### Migrating to `POST /connections`

  Only this endpoint requires a manual migration. Previously, credentials were all at the root of the body:

  ```bash theme={null}
  curl -X POST https://api.nango.dev/v1/connection \
  -H "Authorization: Bearer <your-secret-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "provider_config_key": "slack",
    "access_token": "some-access-token",
    [...]
  }'
  ```

  Now they are nested under the `credentials` key:

  ```bash theme={null}
  curl -X POST https://api.nango.dev/v1/connections \
  -H "Authorization: Bearer <your-secret-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "provider_config_key": "slack",
    "credentials": {
      "type": "OAUTH2",
      "access_token": "some-access-token",
      [...]
    }
  }'
  ```

  Please report any inconsistencies or issues with the new endpoints in our Slack community.
</Update>

***

<Update label="August 2025 roundup" description="August 2025">
  <AccordionGroup>
    <Accordion icon="webhook" title="23 new APIs in August">
      * [RUN Powered by ADP](/integrations/all/adp-run)
      * [ADP Workforce Now Next Generation](/integrations/all/adp-workforce-now-next-gen)
      * [AutoTask](/integrations/all/autotask)
      * [Avoma](/integrations/all/avoma)
      * [Dayforce](/api-integrations/dayforce)
      * [Datto RMM](/integrations/all/datto-rmm)
      * [Datto RMM (Password Grant)](/integrations/all/datto-rmm-password-grant)
      * [Fairing](/integrations/all/fairing)
      * [Float](/integrations/all/float)
      * [Heap](/integrations/all/heap)
      * [IT Glue](/integrations/all/itglue)
      * [JobDiva](/integrations/all/jobdiva)
      * [JumpCloud](/integrations/all/jumpcloud)
      * [Paycor](/integrations/all/paycor)
      * [Paycor (Sandbox)](/integrations/all/paycor-sandbox)
      * [Pipedream (API Key)](/integrations/all/pipedream)
      * [Pipedream (Client Credentials)](/integrations/all/pipedream-oauth2-cc)
      * [Private API (Bearer Auth)](/integrations/all/private-api-bearer)
      * [Private API (Basic Auth)](/integrations/all/private-api-basic)
      * [Roller](/integrations/all/roller)
      * [Sage People](/integrations/all/sage-people)
      * [Yotpo](/integrations/all/yotpo)
      * [Zoho Calendar](/integrations/all/zoho-calendar)
    </Accordion>
  </AccordionGroup>
</Update>

***

<Update label="TypeScript script configs" description="August 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/7g-TvA5WsKlx4tON/images/changelog/typescript-based-script-configs.png?fit=max&auto=format&n=7g-TvA5WsKlx4tON&q=85&s=ad9505352b7557b49ae32c6a8882bcd2" alt="TypeScript-based script configs illustration" width="1200" height="554" data-path="images/changelog/typescript-based-script-configs.png" />
  </Frame>

  Integration scripts now use TypeScript for configuration, colocated with your script code. Benefits:

  * Strong type safety
  * Better tooling (auto-complete, linting)
  * No custom syntax to learn

  This makes writing and maintaining custom integrations simpler, whether you code them manually or generate them with an LLM. [Migration guide](/guides/platform/migrations/migrate-to-zero-yaml).
</Update>

***

<Update label="Developer updates" description="August 2025">
  You’ll now receive important developer updates about deprecations, breaking changes, and other integration-impacting news in a more structured way:

  * **Email**: Sent to everyone who signs up (with the option to unsubscribe).
  * **Private Slack channels**: Delivered directly if your team has a dedicated channel with us.
  * **Community Slack**: Shared in the `#dev-updates` channel.
  * **Docs**: This [changelog](/updates/changelog).
</Update>

***

<Update label="Separate API rate limits" description="August 2025">
  Script API calls and Public API calls are now rate-limited separately. This prevents heavy script usage from affecting your ability to use the Public API (and vice versa). Both limits are soft and can be increased per customer. Limits are now properly reported in the Nango logs.
</Update>

***

<Update label="Getting started flow" description="August 2025">
  A redesigned onboarding screen helps you set up your first integration and call an API right after signup. This makes it easier to experience Nango’s value in just a few minutes.
</Update>

***

<Update label="nango.yaml deprecation" description="July 21, 2025">
  The new script format is now officially released under CLI `>=0.64.0`. If you are already using it or have tried before, the only big change between beta and now is that we now use Zod v4. By upgrading to `>=0.64.0` and running `nango compile`, the CLI will update the dependency automatically; otherwise, you need to install Zod `4.0.5` manually.

  Effective **December 1, 2025** — `nango.yaml` support will be removed.

  **Am I impacted?** Anyone using custom scripts.

  **What to do:** Follow the [migration guide](/guides/platform/migrations/migrate-to-zero-yaml).
</Update>

***

<Update label="July 2025 roundup" description="July 2025">
  <AccordionGroup>
    <Accordion icon="webhook" title="9 new APIs in July">
      * [Atlassian Cloud Admin](/integrations/all/atlassian-admin)
      * [AWS (SCIM)](/integrations/all/aws-scim)
      * [Azure Blob Storage](/integrations/all/azure-blob-storage)
      * [Fathom](/integrations/all/fathom)
      * [Google Chat](/api-integrations/google-chat)
      * [Google Cloud Storage](/api-integrations/google-cloud-storage)
      * [KnowBe4](/api-integrations/knowbe4)
      * [Paycom](/integrations/all/paycom)
      * [Setmore](/integrations/all/setmore)
    </Accordion>
  </AccordionGroup>
</Update>

***

<Update label="Test OAuth apps" description="July 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/7g-TvA5WsKlx4tON/images/changelog/nango-provided-oauth-apps.png?fit=max&auto=format&n=7g-TvA5WsKlx4tON&q=85&s=08d32395b9cd52685da97554da42f3c6" alt="Nango-provided OAuth apps for testing illustration" width="1200" height="554" data-path="images/changelog/nango-provided-oauth-apps.png" />
  </Frame>

  When testing OAuth APIs, you can now use Nango-provided developer apps instead of setting up your own.

  * Available for top APIs (more being added over time).
  * Select this option when creating a new integration.
  * For **testing only**—production apps should still use your own credentials to keep Nango fully white-labeled.
</Update>

***

<Update label="User and org editing" description="July 2025">
  You can now edit the user and organization information attached to a connection. This info is visible in the Nango dashboard, helping you manage connections more easily.\
  [API reference](/reference/backend/http-api/connections/patch).
</Update>

***

<Update label="Faster actions" description="July 2025">
  Action execution latency has been reduced from **more than 200ms+** to **less than 50ms**. This makes actions feel much more responsive, especially when a human is waiting for the result.
</Update>

***

<Update label="API getting started" description="July 2025">
  Each API-specific doc now includes a “Getting Started” section so you can:

  1. Run the auth flow
  2. Make a first successful API request

  All in **under 5 minutes**. Example: [Google Calendar docs](/api-integrations/google-calendar).
</Update>

***

<Update label="June 2025 roundup" description="June 2025">
  <AccordionGroup>
    <Accordion icon="webhook" title="7 new APIs in June">
      * [Jobvite](/integrations/all/jobvite)
      * [Roam (SCIM API)](/integrations/all/roam-scim)
      * [Sage HR](/integrations/all/sage-hr)
      * [Sentry (Public Integrations)](/integrations/all/sentry-oauth)
      * [Trafft](/integrations/all/trafft)
      * [UKG Pro](/integrations/all/ukg-pro)
      * [UKG Ready](/integrations/all/ukg-ready)
    </Accordion>
  </AccordionGroup>
</Update>

***

<Update label="AI integration guide" description="June 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/7g-TvA5WsKlx4tON/images/changelog/generate-integrations-with-ai.png?fit=max&auto=format&n=7g-TvA5WsKlx4tON&q=85&s=01e274f2ed65e4da7c3435cd99864f8e" alt="Generate integrations with AI illustration" width="1200" height="554" data-path="images/changelog/generate-integrations-with-ai.png" />
  </Frame>

  We published a new guide on using AI to generate integrations faster than coding them manually. You can still edit the generated code as needed.\
  [Guide](/guides/functions/functions-guide#guide).
</Update>

***

<Update label="Self-serve upgrades" description="June 2025">
  You can now upgrade or downgrade your plan directly in the Nango UI, under **Usage & Billing**.\
  *Note: Legacy plans still require contacting us.*
</Update>

***

<Update label="Usage reporting" description="June 2025">
  The **Usage & Billing** tab now includes detailed usage reports:

  * Track all metrics that affect billing.
  * See past invoices with a full breakdown.
</Update>

***

<Update label="Self-hosted releases" description="June 2025">
  We’ve formalized the release process for self-hosted Enterprise customers:

  * Two-month release cadence
  * Semantic versioning adopted
  * Clearer update process in the [self-hosting docs](/guides/platform/self-hosting#updates).
</Update>

***

<Update label="May 2025 roundup" description="May 2025">
  <AccordionGroup>
    <Accordion icon="webhook" title="18 new APIs in May">
      * [Canva](/integrations/all/canva)
      * [Codegen](/integrations/all/codegen)
      * [Confluence Data Center](/integrations/all/confluence-data-center/)
      * [Dropbox Sign](/integrations/all/dropbox-sign)
      * [Grammarly SCIM](/integrations/all/grammarly-scim)
      * [Google Slides](/api-integrations/google-slides)
      * [Jamf Pro (Client Credentials)](/integrations/all/jamf)
      * [Jamf Pro (Basic Auth)](/integrations/all/jamf-basic)
      * [JazzHR](/integrations/all/jazzhr)
      * [Jobadder](/integrations/all/jobadder)
      * [Kandji](/integrations/all/kandji)
      * [Open Hands](/integrations/all/open-hands)
      * [Paychex](/integrations/all/paychex)
      * [PreciseFP](/integrations/all/precisefp)
      * [Recruitcrm](/integrations/all/recruitcrm)
      * [Recruiterflow](/integrations/all/recruiterflow)
      * [Supabase](/api-integrations/supabase)
      * [Terraform](/integrations/all/terraform)
    </Accordion>
  </AccordionGroup>
</Update>

***

<Update label="Nango MCP server" description="May 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/7g-TvA5WsKlx4tON/images/changelog/nango-as-an-mcp-server.png?fit=max&auto=format&n=7g-TvA5WsKlx4tON&q=85&s=4165dba8e15644bc0df6e4a0a8d0850f" alt="Nango as an MCP server illustration" width="1200" height="554" data-path="images/changelog/nango-as-an-mcp-server.png" />
  </Frame>

  Nango can now act as a remote MCP server, exposing third-party API actions as tools for your AI agents.

  * Build and enable/disable tools with Nango actions.
  * Use them via the MCP protocol.\
    [Guide](/getting-started/use-cases/tool-calling).
</Update>

***

<Update label="Localized Connect UI" description="May 2025">
  You can now localize the Connect UI:

  * Choose a language.
  * Override links to end-user guides with your own versions.\
    [Docs](/reference/frontend/frontend-sdk#connect-using-nango-connect-ui).
</Update>

***

<Update label="Async actions" description="May 2025">
  You can now run actions asynchronously—triggering them without waiting for an immediate result. This is useful when:

  * Tasks take a long time to complete.
  * You don’t need the response right away.
  * Actions should be retried for reliability.
  * You’re sending many actions at once.\
    [Docs](/guides/functions/action-functions#trigger-asynchronously).
</Update>

***

<Update label="Log time windows" description="May 2025">
  You can now filter logs by precise time windows, making it easier to drill down into specific events for debugging.
</Update>

***

<Update label="April 2025 roundup" description="April 2025">
  <AccordionGroup>
    <Accordion icon="webhook" title="27 new APIs in April">
      * [ADP](/integrations/all/adp)
      * [Auth0 (Client Credentials)](/integrations/all/auth0-cc)
      * [Azure DevOps](/integrations/all/azure-devops)
      * [ClickSend](/integrations/all/clicksend)
      * [CompanyCam](/integrations/all/companycam)
      * [Confluence (Basic Auth)](/integrations/all/confluence-basic)
      * [Cyberimpact](/integrations/all/cyberimpact)
      * [Devin](/integrations/all/devin)
      * [DocuWare](/integrations/all/docuware)
      * [Employment Hero](/integrations/all/employment-hero)
      * [Gem](/integrations/all/gem)
      * [Grammarly](/integrations/all/grammarly)
      * [Github (Personal Access Token)](/integrations/all/github-pat)
      * [Incident.io](/integrations/all/incident-io)
      * [Jira Data Center (Basic Auth)](/integrations/all/jira-data-center-basic)
      * [Namely](/integrations/all/namely)
      * [Namely (PAT)](/integrations/all/namely-pat)
      * [Redtail CRM (Sandbox)](/integrations/all/redtail-crm-sandbox)
      * [Rock Gym Pro](/integrations/all/rock-gym-pro)
      * [Rootly](/api-integrations/rootly)
      * [Sentry](/integrations/all/sentry)
      * [Shopify Partner](/integrations/all/shopify-partner)
      * [Smartlead.ai](/integrations/all/smartlead-ai)
      * [Snowflake (JWT)](/integrations/all/snowflake-jwt)
      * [UKG Pro (Workforce Management)](/integrations/all/ukg-pro-wfm)
      * [Vercel](/api-integrations/vercel)
      * [Workday (OAuth)](/api-integrations/workday-oauth)
    </Accordion>
  </AccordionGroup>
</Update>

***

<Update label="Usage-based pricing" description="April 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/usage-based-pricing.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=eeeb9f8e921b487555973e4d8fbb43cb" alt="Usage-based pricing illustration" width="1200" height="554" data-path="images/changelog/usage-based-pricing.png" />
  </Frame>

  Nango now offers transparent, usage-based pricing starting at \$50/month.

  * Pricing scales with usage: connections, action executions & record syncs
  * Volume discounts up to 100x included
  * 1,000 free connections still available on the Free plan (unlimited on Free Self-Hosted)
  * Add-ons are priced individually on a monthly basis—no large annual commitments
</Update>

***

<Update label="Logs search" description="April 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/search-logs.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=09657328770a2fde78ddfcadfa6ecc23" alt="Logs search  illustration" width="1200" height="554" data-path="images/changelog/search-logs.png" />
  </Frame>

  The *Logs* tab is now much more powerful with full-text search and performance improvements.

  * Search across log and sub-log contents via the top-level search bar
  * Filter logs using record IDs to investigate when records were synced
  * Improved navigation and load times across the tab
</Update>

***

<Update label="ECS self-hosting" description="April 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/ecs-terraform.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=30fef0f5d35fb3366509774d31dbacd1" alt="Enterprise self-hosting with ECS + Terraform illustration" width="1200" height="554" data-path="images/changelog/ecs-terraform.png" />
  </Frame>

  We’ve published a new [guide](/guides/platform/self-hosting) for self-hosting Nango on AWS ECS, including a ready-to-use Terraform configuration.

  * Automates installation for Enterprise customers
  * Complements our existing Helm chart for Kubernetes
  * Ongoing work to further simplify self-hosting

  The Terraform configuration is available upon request.
</Update>

***

<Update label="Environment management" description="April 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/manage-environments.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=be6ead1c6ea0508399dcf8d1efd4d596" alt="Create, edit & delete environments illustration" width="1200" height="554" data-path="images/changelog/manage-environments.png" />
  </Frame>

  You can now manage multiple environments directly from the Nango dashboard. This makes it easier to isolate development stages or segment customer-specific setups.

  * Growth plan includes 3 environments by default
  * Additional environments available via paid add-on
</Update>

***

<Update label="March 2025 roundup" description="March 2025">
  <AccordionGroup>
    <Accordion icon="webhook" title="17 new APIs in March">
      * [ActiveCampaign](/integrations/all/active-campaign)
      * [Anthropic Administrator](/integrations/all/anthropic-admin)
      * [Blackbaud (Basic Auth)](/integrations/all/blackbaud-basic)
      * [Callrail](/integrations/all/callrail)
      * [Figma (SCIM)](/integrations/all/figma-scim)
      * [Microsoft (Client Credentials)](/api-integrations/microsoft-oauth2-cc)
      * [Missive](/integrations/all/missive)
      * [Oracle Fusion Cloud (HCM)](/integrations/all/oracle-hcm)
      * [Pandadoc (API Key)](/integrations/all/pandadoc-api-key)
      * [Razorpay](/integrations/all/razorpay)
      * [Readwise](/integrations/all/readwise)
      * [Readwise Reader](/integrations/all/readwise-reader)
      * [Rippling Shop App](/integrations/all/rippling-shop-app)
      * [SharePoint Online (Client Credentials V2)](/integrations/all/sharepoint-online-oauth2-cc)
      * [Trakstar Hire](/integrations/all/trakstar-hire)
      * [tl;dv](/integrations/all/tldv)
      * [Xero (Client Credentials)](/integrations/all/xero-oauth2-cc)
    </Accordion>
  </AccordionGroup>
</Update>

***

<Update label="Authorization logs" description="March 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/authorization-logs.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=6749461037a5856eae14c3e0a622cbcc" alt="Authorization logs illustration" width="1200" height="554" data-path="images/changelog/authorization-logs.png" />
  </Frame>

  Gain visibility into how your users interact with the Connect UI during the authorization process.

  Nango now tracks and logs key authorization events:

  * User opened or closed the Connect UI
  * User opened or closed the OAuth modal
  * User viewed a new screen (integration list, input form, success/failure)

  You can explore these events in the *Logs* tab of the Nango UI.

  We also added a chart summarizing all authorization attempts by outcome:

  * Success
  * Cancelled
  * Technical failure

  This chart is available on the *Home* tab.

  Watch the demo:

  <div style={{ position: 'relative', overflow: 'hidden', paddingTop: '56.25%' }}>
    <iframe src="https://www.loom.com/embed/ba30523220f94bf3a8def8bf5f2b92c2" frameBorder="0" allowFullScreen style={{ position: 'absolute', top: 0, left: 0, width: '100%', height: '100%' }} title="Loom video" />
  </div>
</Update>

***

<Update label="AI agent support" description="March 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/ai-agent-support.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=085222d277c7d319d70ca8ff809f7995" alt="AI agent support illustration" width="1200" height="554" data-path="images/changelog/ai-agent-support.png" />
  </Frame>

  We’ve added support for AI agents to consume Nango as part of automated workflows involving external APIs.

  Nango simplifies API orchestration, making it easier for AI agents to execute unitary, high-level actions without managing individual API calls or credentials.

  What’s new:

  * [**Introspection endpoint**](/reference/backend/http-api/scripts/config): List available actions programmatically, exportable as OpenAI tools
  * [**Action trigger endpoint**](/reference/backend/http-api/action/trigger): Run actions reliably via the API
  * [**Integrated authorization**](/guides/auth/auth-guide): Use Nango’s pre-built UI to securely prompt users for access

  This makes it easier to build AI agents that can reliably interact with 800+ APIs.

  Get inspired by [AI companies using Nango](https://www.nango.dev/blog/nango-for-ai).
</Update>

***

<Update label="AI agent demo" description="March 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/ai-agent-demo-video.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=c7d4baa9cafd54eec3a8425e23d476eb" alt="AI agent demo video illustration" width="1200" height="554" data-path="images/changelog/ai-agent-demo-video.png" />
  </Frame>

  We published a demo showing how AI agents can use Nango to trigger actions across 800+ APIs and integrations.

  See how AI agents benefit from:

  * Reliable abstractions for complex API workflows
  * Built-in authorization flows
  * Reduced surface for API errors

  Watch the demo:

  <div style={{ position: 'relative', overflow: 'hidden', paddingTop: '56.25%' }}>
    <iframe src="https://www.loom.com/embed/bdf871464fd148048ffe00eba3a1b982" frameBorder="0" allowFullScreen style={{ position: 'absolute', top: 0, left: 0, width: '100%', height: '100%' }} title="Loom video" />
  </div>

  If you want to run the demo yourself or check the code, here is the demo's [GitHub repo](https://github.com/NangoHQ/ai-agent-demo).
</Update>

***

<Update label="February 2025 roundup" description="February 2025">
  <AccordionGroup>
    <Accordion icon="webhook" title="26 new APIs in February">
      * [1Password (SCIM)](/integrations/all/1password-scim)
      * [Airtable (Personal Access Token)](/integrations/all/airtable-pat)
      * [Amazon Selling Partner](/api-integrations/amazon-selling-partner)
      * [Amazon Selling Partner (Beta)](/api-integrations/amazon-selling-partner-beta)
      * [Appstle Subscriptions](/integrations/all/appstle-subscriptions)
      * [Check](/integrations/all/checkhq)
      * [Commercetools](/integrations/all/commercetools)
      * [Drupal](/integrations/all/drupal)
      * [Google Gemini](/integrations/all/google-gemini)
      * [Guru (SCIM)](/integrations/all/guru-scim)
      * [Gorgias (Basic Auth)](/integrations/all/gorgias-basic)
      * [Jira Data Center (API Key)](/integrations/all/jira-data-center-api-key)
      * [lemlist](/integrations/all/lemlist)
      * [Loom (SCIM)](/integrations/all/loom-scim)
      * [MiniMax](/integrations/all/minimax)
      * [MIP Cloud](/integrations/all/mip-cloud)
      * [MIP On Premise](/integrations/all/mip-on-premise)
      * [OpenAI (Admin)](/integrations/all/openai-admin)
      * [Paylocity](/api-integrations/paylocity)
      * [Quickbase](/integrations/all/quickbase)
      * [Retell AI](/integrations/all/retell-ai)
      * [Rippling](/integrations/all/rippling)
      * [Sage Intacct (OAuth)](/integrations/all/sage-intacct-oauth)
      * [Salesforce (Data Cloud)](/integrations/all/salesforce-cdp)
      * [SAP Concur](/integrations/all/sap-concur)
      * [xAI](/integrations/all/xai)
    </Accordion>
  </AccordionGroup>
</Update>

***

<Update label="Sync partitioning" description="February 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/sync-partitioning.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=8347fe146c2d9cbf3a1cbddd7ef01755" alt="Sync partitioning illustration" width="650" height="300" data-path="images/changelog/sync-partitioning.png" />
  </Frame>

  Syncing is now **faster and more efficient** with **Sync partitioning**. Instead of processing large syncs at once, you can now break them down into smaller, parallel syncs, improving performance and responsiveness.

  For example, instead of syncing an entire spreadsheet, you can sync each sheet separately so that each one syncs faster. This is ideal for large datasets or real-time syncing.

  The API and UI give you full control over these syncs, letting you create, manage, and monitor them with ease.

  [Learn more in the docs](/guides/functions/syncs/sync-partitioning).
</Update>

***

<Update label="Environment settings" description="February 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/revamped-environment-settings.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=9b75a9888fa00885c61502170fe40dbe" alt="Revamped environment settings illustration" width="650" height="300" data-path="images/changelog/revamped-environment-settings.png" />
  </Frame>

  We overhauled the *Environment Settings* UI. This was one of the oldest sections of the app but is critical for setting up and configuring Nango.

  The new design organizes settings into clear sections: backend, notifications, scripts & export.

  Each setting now includes links to relevant documentation for easier navigation.

  Check it out in the *Environment Settings* tab in the [Nango UI](https://app.nango.dev/).
</Update>

***

<Update label="Webhook logs" description="February 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/detailed-webhook-logs.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=210c97f6c754ce18db3b3eaa6e106c5a" alt="Detailed webhook logs illustration" width="650" height="300" data-path="images/changelog/detailed-webhook-logs.png" />
  </Frame>

  Webhooks are a key part of Nango, notifying you of critical events such as authorization completion, sync completion, and error cases.

  We've added **granular logs** for all webhook types, allowing you to inspect individual webhook deliveries. You can now view the request/response payloads, filter by log type/status/timestamp and quickly debug failed webhook deliveries.

  Check it out in the *Logs* tab in the [Nango UI](https://app.nango.dev/).
</Update>

***

<Update label="Realtime syncing" description="February 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/real-time-syncing-strategies.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=da83c987709b2ff32872239ef2312dd2" alt="Real-time syncing strategies illustration" width="650" height="300" data-path="images/changelog/real-time-syncing-strategies.png" />
  </Frame>

  Syncing real-time webhooks alongside periodic polling can cause conflicts, especially when APIs send partial updates. To solve this, we have introduced **new merging strategies** for better data accuracy.

  **How updates are handled**

  * **Deep merge (default)**: Nango merges partial updates automatically.
  * **Custom updates**: Fetch full records by ID and modify them manually.

  **How conflicts are resolved**

  * **Most recent update wins (default)**: The latest write—whether from a webhook or a periodic sync—always updates the record.
  * **Ignore older updates**: When polling, Nango checks if a newer webhook update exists. If so, it preserves the more recent webhook data instead of overwriting it.

  [Learn more in the docs](/guides/functions/syncs/realtime-syncs#sync-concurrency-considerations).
</Update>

***

<Update label="January 2025 roundup" description="January 2025">
  <AccordionGroup>
    <Accordion icon="webhook" title="12 new APIs in January">
      * [Basecamp](/integrations/all/basecamp)
      * [FindyMail](/integrations/all/findymail)
      * [Gebruder Weiss](/integrations/all/gebruder-weiss)
      * [La Growth Machine](/integrations/all/lagrowthmachine)
      * [Lucid](/integrations/all/lucid-scim)
      * [Microsoft Business Central](/integrations/all/microsoft-business-central)
      * [Odoo](/integrations/all/odoo)
      * [Recharge](/integrations/all/recharge)
      * [Scrape.do](/integrations/all/scrapedo)
      * [SharePoint Online (v1)](/api-integrations/sharepoint-online)
      * [Shopify (API Key)](/api-integrations/shopify)
      * [Shopify (SCIM API)](/api-integrations/shopify)
    </Accordion>
  </AccordionGroup>
</Update>

***

<Update label="Trigger syncs" description="January 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/trigger-syncs.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=e43c18162b5cfd4d348dc68872494542" alt="Trigger syncs illustration" width="1200" height="554" data-path="images/changelog/trigger-syncs.png" />
  </Frame>

  You can now trigger syncs directly from the Nango UI with customizable options. The new modal allows you to trigger syncs incrementally, retrieving only the data modified since the last sync, or fully, fetching all historical data. Additionally, you can choose to clear the cached data if needed. To trigger a sync, navigate to the Connections tab, select a connection, go to the Syncs sub-tab, and click the “…” menu.
</Update>

***

<Update label="Lighter CLI" description="January 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/lighter-cli.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=35d0cad2a6942af36047f1454cfa08a1" alt="Lighter CLI illustration" width="1200" height="554" data-path="images/changelog/lighter-cli.png" />
  </Frame>

  The CLI is now drastically lighter, going from more than 30 seconds to less than 2 seconds to install.
</Update>

***

<Update label="Create environments" description="January 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/create-environments.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=89f7ae51166ccd7c8a652ec35767d9c8" alt="Create environments illustration" width="1200" height="554" data-path="images/changelog/create-environments.png" />
  </Frame>

  You can now create new environments in Nango, beyond the default *Production* and *Dev* environemnts. Simply use the dropdown at the top of the left nav bar in the [Nango UI](https://app.nango.dev). This feature is available for paid plans only.
</Update>

***

<Update label="Event scripts" description="January 2025">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/event-based-scripts.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=eb7b35093c3a225795a8189b4b764545" alt="Event-based scripts illustration" width="1200" height="554" data-path="images/changelog/event-based-scripts.png" />
  </Frame>

  Nango now supports event-based scripts, which are executed automatically after specific events, such as connection creation or deletion. These scripts enable you to automate tasks like registering or deregistering webhooks. For more details, check out the [guide](/guides/functions/event-functions).
</Update>

***

<Update label="December 2024 roundup" description="December 2024">
  <AccordionGroup>
    <Accordion icon="webhook" title="15 new APIs in December">
      * [Atlas.so](/integrations/all/atlas-so)
      * [Braze](/integrations/all/braze)
      * [BuiltWith](/integrations/all/builtwith)
      * [Canva (SCIM API)](/integrations/all/canva-scim)
      * [Copper](/integrations/all/copper)
      * [Emarsys (OAuth)](/integrations/all/emarsys)
      * [eBay](/integrations/all/ebay)
      * [Fortnox](/integrations/all/fortnox)
      * [Freshteam](/integrations/all/freshteam)
      * [Gerrit](/integrations/all/gerrit)
      * [LastPass](/integrations/all/lastpass)
      * [Lattice](/integrations/all/lattice)
      * [Personio (v2)](/integrations/all/personio)
      * [SAP SuccessFactors](/api-integrations/sap-success-factors)
      * [Zapier](/api-integrations/zapier)
    </Accordion>
  </AccordionGroup>
</Update>

***

<Update label="Resilient integrations" description="December 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/resilient-integrations.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=6051f94774a998e0e63f8f0da389ff94" alt="Resilient integrations illustration" width="1200" height="554" data-path="images/changelog/resilient-integrations.png" />
  </Frame>

  Integration executions are no longer disrupted during runner VM upgrades. The VMs now wait for ongoing executions to complete before proceeding with the upgrade. This enhancement minimizes interruptions, especially for long-running syncs that can take up to 24 hours.
</Update>

***

<Update label="Integration warnings" description="December 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/surface-misconfigured-integrations.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=4ec232a962c4cac574551200fdd28a5a" alt="Surface misconfigured integrations illustration" width="1200" height="555" data-path="images/changelog/surface-misconfigured-integrations.png" />
  </Frame>

  The Nango UI now highlights misconfigured integrations, such as those missing OAuth app credentials. An error icon will appear next to the misconfigured integration in the *Integrations* tab of the [Nango UI](https://app.nango.dev).
</Update>

***

<Update label="Getting started tab" description="December 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/getting-started.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=ee0926f77b84dc85ff77a35f53e5efc1" alt="Getting started illustration" width="1200" height="554" data-path="images/changelog/getting-started.png" />
  </Frame>

  The Nango UI now includes a *Getting Started* tab featuring a 2-minute demo video and essential guides to help you get started. You can dismiss this tab when it's no longer needed, but it will remain accessible from the bottom-left menu.
</Update>

***

<Update label="API catalog" description="December 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/api-catalog.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=60bb6439ada132b1db61783df2aa815f" alt="API catalog illustration" width="1200" height="554" data-path="images/changelog/api-catalog.png" />
  </Frame>

  You can now search through [all the APIs supported by Nango](https://www.nango.dev/api-integrations). This list is automatically updated whenever new APIs are added.
</Update>

***

<Update label="November 2024 roundup" description="November 2024">
  <AccordionGroup>
    <Accordion icon="webhook" title="16 new APIs in November">
      * [Asana (SCIM API)](/api-integrations/asana)
      * [AWS IAM](/integrations/all/aws)
      * [Beehiiv](/integrations/all/beehiiv)
      * [Brevo (API Key)](/integrations/all/brevo-api-key)
      * [BrightCrowd](/integrations/all/brightcrowd)
      * [Emarsys Core API](/integrations/all/emarsys)
      * [Grain](/integrations/all/grain)
      * [Grain (API Key)](/integrations/all/grain)
      * [Mindbody (API Key)](/integrations/all/mindbody)
      * [Okta (Preview)](/integrations/all/okta)
      * [Plain](/integrations/all/plain)
      * [Sage Intacct](/integrations/all/sage)
      * [TapClicks](/integrations/all/tapclicks)
      * [Twenty CRM](/integrations/all/twenty-crm)
      * [Twenty CRM (Self Hosted)](/integrations/all/twenty-crm)
      * [Unipile](/integrations/all/unipile)
    </Accordion>
  </AccordionGroup>
</Update>

***

<Update label="Guides" description="November 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/guides.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=4d9ea1f61d47c0e5d721d57057ff3cb1" alt="Guides illustration" width="1200" height="554" data-path="images/changelog/guides.png" />
  </Frame>

  The [Guides](/getting-started/intro-to-nango) section of the documentation has been improved with a feature-based classification and more comprehensive, detailed guides.
</Update>

***

<Update label="API-specific docs" description="November 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/api-specific-docs.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=c5325e176987f556618e21f5fb6a0c1e" alt="API-specific docs illustration" width="1200" height="554" data-path="images/changelog/api-specific-docs.png" />
  </Frame>

  API-specific documentation has been enhanced to include more details about tooling, template functions, and configurations for each API. For example, see the [Hubspot](/api-integrations/hubspot) documentation. These API-specific docs are automatically generated and kept up-to-date.
</Update>

***

<Update label="Integration docs" description="November 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/integration-docs.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=6306e359f8f1c034ed66858c36fc186b" alt="Integration docs illustration" width="1201" height="554" data-path="images/changelog/integration-docs.png" />
  </Frame>

  Each template function now includes a ReadMe file with detailed information about the function, how to use it, the API reference, and its changelog. For example, see the [Hubspot Create Company template function](https://github.com/NangoHQ/integration-templates/blob/main/integrations/hubspot/actions/create-company.md). These ReadMe files are automatically generated and kept up-to-date.
</Update>

***

<Update label="User and org info" description="November 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/user-and-org-information.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=9902899e077bcaf36ff9d5da490f7ed0" alt="User and org information screenshot" width="1200" height="554" data-path="images/changelog/user-and-org-information.png" />
  </Frame>

  Attach information about your users and organizations to integrations for better visibility in the Nango UI, laying the ground for lays the groundwork for user-specific and customer-specific insights. Learn how to set this up in the [authorization guide](/guides/auth/auth-guide).
</Update>

***

<Update label="October 2024 roundup" description="October 2024">
  <AccordionGroup>
    <Accordion icon="webhook" title="45 new APIs in October">
      * [Acuity Scheduling](/integrations/all/acuity-scheduling)
      * [Adyen](/integrations/all/adyen)
      * [Aircall (Basic Auth)](/integrations/all/aircall)
      * [Apaleo](/integrations/all/apaleo)
      * [Apollo (OAuth)](/api-integrations/apollo)
      * [Bill (Connect API)](/integrations/all/bill)
      * [Bill (Connect API sandbox)](/integrations/all/bill)
      * [Booking.com](/integrations/all/booking-com)
      * [Buildium](/integrations/all/buildium)
      * [Chattermill](/integrations/all/chattermill)
      * [ConnectWise PSA](/api-integrations/connectwise-psa)
      * [ConnectWise PSA (staging)](/integrations/all/connectwise-psa-staging)
      * [Databricks (Account Level)](/integrations/all/databricks-account)
      * [Databricks (Workspace Level)](/integrations/all/databricks-workspace)
      * [Datadog](/api-integrations/datadog)
      * [Dialpad (sandbox)](/integrations/all/dialpad)
      * [Dixa](/integrations/all/dixa)
      * [Eleven Labs](/integrations/all/elevenlabs)
      * [Elevio](/integrations/all/elevio)
      * [fal.ai](/integrations/all/falai)
      * [Firefish](/integrations/all/firefish)
      * [Ghost (Admin API)](/integrations/all/ghost-admin)
      * [Ghost (Content API)](/integrations/all/ghost-content)
      * [Google Analytics](/api-integrations/google-analytics)
      * [Keeper (SCIM)](/integrations/all/keeper-scim)
      * [Loops.so](/integrations/all/loops-so)
      * [Malwarebytes](/integrations/all/malwarebytes)
      * [Miro (SCIM API)](/integrations/all/miro)
      * [Notion (SCIM API)](/integrations/all/notion-scim)
      * [Perimeter81](/integrations/all/perimeter81)
      * [Perplexity](/integrations/all/perplexity)
      * [Quickbooks (sandbox)](/api-integrations/quickbooks)
      * [Ragie AI](/integrations/all/ragieai)
      * [RapidAPI](/integrations/all/rapidapi)
      * [Sage Intacct](/integrations/all/sage)
      * [Sedna (Basic Auth)](/integrations/all/sedna)
      * [Sedna (Oauth2)](/integrations/all/sedna)
      * [ThriveCart (OAuth)](/integrations/all/thrivecart-oauth)
      * [ThriveCart (API Key)](/integrations/all/thrivecart-api-key)
      * [Trello (SCIM API)](/integrations/all/trello)
      * [Typefully](/integrations/all/typefully)
      * [Twenty CRM](/integrations/all/twenty-crm)
      * [UMAPI (Adobe User Management API)](/integrations/all/adobe)
      * [WhatsApp Business](/api-integrations/whatsapp-business)
      * [Workable (OAuth)](/integrations/all/workable)
    </Accordion>
  </AccordionGroup>
</Update>

***

<Update label="Auth input validation" description="October 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/authorization-input-validation.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=177a93c7f4b60feb96ae9b184b406b7c" alt="Authorization input validation screenshot" width="1200" height="554" data-path="images/changelog/authorization-input-validation.png" />
  </Frame>

  When your users authorize integrations, Nango now validates input fields through formatting checks and live API requests, minimizing misconfigurations. This is available in the [default authorization UI](/guides/auth/auth-guide).
</Update>

***

<Update label="OpenTelemetry exporter" description="October 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/opentelemetry-exporter.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=ccf1a72eb7416b0eaaddfbe74b89ae55" alt="OpenTelemetry exporter screenshot" width="1200" height="554" data-path="images/changelog/opentelemetry-exporter.png" />
  </Frame>

  Improve integration observability by exporting Nango logs in real-time to tools like Datadog, New Relic and others. This feature is a paid add-on, reach out on Slack to activate it in your *Environment Settings*, configure the destination URL and headers.
</Update>

***

<Update label="End-user auth guides" description="October 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/end-user-authorization-guides.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=22c8731f8dd3b50fc6f2200c9fb52a49" alt="End-user authorization guides screenshot" width="1200" height="554" data-path="images/changelog/end-user-authorization-guides.png" />
  </Frame>

  Step-by-step guides are now provided to your users to explain how to find and input credentials when they authorize integrations. Each input field ties directly to a relevant section in the guide. This is available in the [default authorization UI](/guides/auth/auth-guide).
</Update>

***

<Update label="Invalid credential detection" description="October 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/invalid-credentials-detection.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=0989a76d18c06e6e24a65319526043f3" alt="Invalid credentials detection screenshot" width="1200" height="554" data-path="images/changelog/invalid-credentials-detection.png" />
  </Frame>

  Nango now periodically detects invalid API keys and basic credentials in addition to expired OAuth tokens. Slack notifications & dashboard callouts are created when credentials fail validation. This feature is live for all users.
</Update>

***

<Update label="Pre-built auth UI" description="October 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/pre-built-authorization-ui.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=cc2ad8876f37ac71e27dc657dc449e28" alt="Pre-built authorization UI screenshot" width="1200" height="554" data-path="images/changelog/pre-built-authorization-ui.png" />
  </Frame>

  The Connect UI is a pre-built interface to streamline how your users authorize integrations. It handles API keys, basic credentials, OAuth and additional API-specific required fields. Check out the [guide](/guides/auth/auth-guide) to use it, or continue using your [custom UI](/guides/auth/customize-connect-ui) without interruption.
</Update>

***

<Update label="September 2024 roundup" description="September 2024">
  <AccordionGroup>
    <Accordion icon="webhook" title="12 new APIs in September">
      * [Replicate](/integrations/all/replicate)
      * [Anthropic](/integrations/all/anthropic)
      * [OpenAI](/integrations/all/openai)
      * [Bit.ly](/integrations/all/bitly)
      * [Odoo](/integrations/all/odoo)
      * [Avalara](/integrations/all/avalara)
      * [Avalara (Sandbox)](/integrations/all/avalara)
      * [Discourse](/integrations/all/discourse)
      * [ShipStation](/integrations/all/shipstation)
      * [Manatal](/integrations/all/manatal)
      * [Coupe Compass](/integrations/all/coupa-compass)
      * [Zoho People](/integrations/all/zoho-people)
    </Accordion>
  </AccordionGroup>
</Update>

***

<Update label="Improved logging" description="September 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/improved-logging.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=b1561806cbfcd82339a7b068c0da2df9" alt="Improved logging screenshot" width="1200" height="554" data-path="images/changelog/improved-logging.png" />
  </Frame>

  All HTTP requests made through your integrations are now logged. Logs have been streamlined for easier navigation, with searchable payloads to pinpoint specific issues. Check out the *Logs* tab in the [Nango UI](https://app.nango.dev).
</Update>

***

<Update label="Higher sync frequency" description="September 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/higher-sync-frequency.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=5f4445aa69aa4813cf7162122b5fe5b3" alt="Higher sync frequency screenshot" width="1200" height="554" data-path="images/changelog/higher-sync-frequency.png" />
  </Frame>

  Nango now offers support for more frequent syncs, down to 30-second intervals. It's available on Growth plans as a paid add-on, and on Enterprise plans.
</Update>

***

<Update label="SOC 2 Type 2" description="September 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/soc-2-type-2.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=5d788b0e40895fc156fc06a7a4fd77a6" alt="SOC 2 Type 2 screenshot" width="1200" height="554" data-path="images/changelog/soc-2-type-2.png" />
  </Frame>

  Nango has achieved SOC 2 Type 2 certification, in addition to GDPR compliance & DPF, allowing us to operate in Europe. Visit our [trust center](https://app.vanta.com/nango.dev/trust/6ldi6a2401gxg3e25and9m) for details.
</Update>

***

<Update label="JSONSchema types" description="September 2024">
  <Frame>
    <img src="https://mintcdn.com/nango/uJwGQbFLD7vfDone/images/changelog/jsonschema-types.png?fit=max&auto=format&n=uJwGQbFLD7vfDone&q=85&s=d1157e66b37f145e774935957de95f47" alt="JSONSchema types screenshot" width="1200" height="554" data-path="images/changelog/jsonschema-types.png" />
  </Frame>

  Nango now lets you generate strongly-typed JSONSchema models for your integrations inputs and outputs, compatible with all programming languages and importable in your codebase. For TypeScript codebases, you can also generate TypeScript and Zod models. Check out this [guide](/guides/functions/data-validation#json-schema-runtime-language-agnostic) to get started.
</Update>
