Releases: NangoHQ/nango
v0.28.1 - Multiple users & per-record added/updated metadata
🚨 Breaking changes
Title | Issue/PR | Description | |
---|---|---|---|
1 | UPCOMING: nango.batchSend is deprecated |
#764 | Use batchSave instead (drop-in replacement). batchSend will be removed with a future release. |
2 | UPCOMING: returning data at the end of fetchData is deprecated |
#764 | Use await batchSave() instead. See Sync data guide. |
3 | Two parameters changed in /sync/records REST API |
#893 | The recently introduced sortBy parameter is now sort_by and the values have also changed to snake case. See docs |
Please reach out if you need help migrating your Sync scripts!
✨ New features
Title | Issue/PR | Description | |
---|---|---|---|
1 | Multiple users in same account | #874 | On Nango Cloud you can now collaborate with multiple users on the same account |
2 | Get per-record metadata | #893 | Nango can now tell you per record which have been added or updated with the last sync. See docs for details |
3 | Request retries on timeouts | #907 | The nango proxy now automatically retries requests that time out (respecting the retries you set) |
4 | Request retries on network issues | #887 | The nango proxy now automatically retries requests that experience network issues (respecting the retries you set) |
5 | Trigger individual one-off syncs | #891 | When triggering syncs for one-off runs with the API or SDK, you can now specify which syncs should run (see docs) |
6 | Types for metadata | #898 | You can now type your metadata for better type safety |
🐞 Bug fixes
Issue/PR | Description | |
---|---|---|
1 | #908 | Fixed a bug with connection configs not being properly inserted |
2 | #896 | Fixed an issue where sometimes an incremental sync would start, even if an initial sync had not yet finished |
3 | #902 | Fixed a small bug which could cause sync scripts compilation to fail unnecessarily |
v0.27.0 - Custom Metadata & records sort
🚨 Breaking changes
Title | Issue/PR | Description | |
---|---|---|---|
1 | Connection metadata consolidation | #874 | We changed how metadata is stored for Connections. |
✨ New features
Title | Issue/PR | Description | |
---|---|---|---|
1 | Store custom metadata on Connections | #874 | You can now store any custom metadata on a Connection |
2 | Integration templates | #854 | Nango now has Integration templates for many popular use-cases |
3 | Specify sort of getRecords | #842 | You can now tell Nango the sort order of getRecords (see docs) |
4 | Run compilation before nango dryrun |
#867 | Nango will now auto compile your syncs every time you run nango dryrun |
5 | Better sync error reporting | #865 | If you return multiple records with the same id Nango now reports errors better |
6 | Delete connection from node SDK | #825 | You can now delete a connection from the node SDK |
7 | Types for node SDK & frontend SDK | #366 | The node SDK & frontend SDK now have fully typed return values |
8 | Better environment switching | #769 | The environment dropdown in the navigation bar is now smarter |
9 | Faster Activity tab load | #834 | The activity tab in the Nango dashboard now loads faster |
🐞 Bug fixes
Issue/PR | Description | |
---|---|---|
1 | #877 | Resolved a bug that prevented deleting of integrations |
2 | #866 | Fixed a bug with the callback URL on self-hosted instances |
3 | #752 | lastSyncDate is now the start of the last sync (instead of the end) |
4 | #847 | Syncs are now properly deleted when an integration or connection is deleted |
5 | #852 | More space in the DB for long scopes |
6 | #753 | Fixed an issue where some connections would not get syncs added as they should |
7 | #791 | Fixed an issue which could lead to duplicate db sync entries (though they were harmless) |
8 | #809 | Credentials in the dev environment are now also properly encrypted |
9 | #820 | The password in the Basic auth authentication method is now optional |
10 | #822 | We now properly detect connection configuration parameters in the proxy URL |
11 | #832 | In some cases scopes were not properly stored for new Integrations |
12 | #838 | Fixed some links to docs from the dashboard |
API key support
🚨 Breaking changes
Title | Issue/PR | Description | |
---|---|---|---|
1 | providers.yaml schema |
#322 | Proxy-related fields are now nested under the proxy field. |
✨ New features
Title | Issue/PR | Description | |
---|---|---|---|
1 | API keys | #322 | Support API keys and Basic auth to authorize APIs. |
2 | Unit tests | #273 | Add unit tests to Nango (about 30 so far) |
3 | Mixpanel | #608 | Added support for the Mixpanel API. |
4 | Amplitude | #609 | Added support for the Amplitude API. |
5 | Gong | #826 | Added support for the Gong API. |
6 | Ashby | #826 | Added support for the Ashby API. |
7 | Workable | #826 | Added support for the Workable API. |
8 | Shortcut | #322 | Added support for the Shortcut API. |
9 | Zoho | #814 | Added support for Zoho's various API (Books, Invoices, Inventory, CRM, etc.). |
10 | init command |
#815 | The nango init command now generates a fully-functional Github integration example. |
11 | Dynamic proxy URLs | #816 | Support string interpolation in Proxy base URLs, using the connection configuration |
12 | Error handling | #783, #750 | Improve error handling, particularly for external API errors. |
13 | Windows compatibility | #788 | Make the Nango CLI compatible with Windows |
🐞 Bug fixes
Issue/PR | Description | |
---|---|---|
1 | #804 | Remove notion2 test integration. |
2 | #715 | Prevent syncs from re-ordering when paused. |
3 | #716 | Prevent triggering syncs from logging twice in the Activity tab. |
4 | #766 | Fix Activity tab log links (broken by the introduction of environments). |
5 | #720 | Fix bug where the next sync time was unreliable. |
6 | #761 | Connection raw field has the wrong type. |
Data syncing
🚨 7 breaking changes (+ 4 self-hosted only)
1 - Global CLI installation (#740)
The Nango CLI should now be installed globally by running npm install nango -g
(docs). Running CLI commands should no longer require npx
or npm
(e.g. nango generate
instead of npx nango generate
).
2 - Cloud-first developer experience (#760)
You no longer need to run Nango locally. In practice, you no longer have to run nango start
and nango dev
no longer runs Nango locally (simply watches and compiles your integrations files).
3 - Where to run CLI commands from (#760)
The Nango CLI commands should now be run from the ./nango-integrations
folder (instead of one level above), except for the init
command which creates the ./nango-integrations
folder. As a result, your CLI .env
file should be located inside the ./nango-integrations
folder (instead of one level above).
4 - Environment keys (#760)
With the introduction of environments (dev
and prod
), you will now have multiple secret and public keys (cf. docs). The name of the corresponding environment variables has been changes to:
NANGO_SECRET_KEY_PROD='<prod-secret-key>'
NANGO_SECRET_KEY_DEV='<dev-secret-key>'
5 - CLI commands (#760)
CLI commands have changed (run nango
to see the full list of commands), in particular:
sync:run|sr
has becomedryrun
(arguments have changed)deploy
takes an additional "environement" argument (dev
orprod
)- unnecessary commands have been removed
6 - NANGO_HOSTPORT
env var (#760)
By default the NANGO_HOSTPORT
CLI env variable is no longer required (unless if you are using OSS).
7 - Deletes previous Activity logs (#734) & sync runs info
Due to changes in the DB schema for Activity logs & sync runs (introduced by dev environments), the Activity logs & sync runs schema migration would cause too much down time. As a result, Activity logs & sync runs previous to the migration will be dropped. The information about syncs might be missing for the time between the release and your next sync run.
Self-hosted 1 - Required public key (#760)
The Frontend SDK Nango
constructor now requires a publicKey
in all cases. You can find your automatically-generated public key in the dashboard's Project Settings (docs).
Self-hosted 2 - Required private key (#760)
The Backend Node SDK Nango
constructor now requires a secretKey
in all cases. You can find your automatically-generated secret key in the dashboard's Project Settings (docs).
Self-hosted 3 - No Basic auth (#760)
The OSS version no longer uses Basic auth. Similarly to cloud, It uses Bearer headers for authentication. This is handled for you if you use the Backend Node SDK and CLI. Changes are required if you use the REST API (docs).
Self-hosted 4 - .env settings moved to the dashboard
The callback URL & HMAC settings were moved from the env variables to the Nango dashboard (in the Project Settings tab). They are specific to a given environment (dev
vs prod
).
Other features in this release
- Syncs tab + Syncs-related Activities (#712)
- Re-sync a connection in UI + API
- Perform dry runs of syncs with the CLI
- Return data in batches for large datasets in sync scripts
- Field mapping
- Model features (inheritance, nested ojects, array type)
- Webbooks when syncs complete
- Connection-specific auth params (#735)
- Logs in sync scripts
- Auto-update CLI
- Slack-specific user scopes
- Cloud-first DX (cf Quickstart) + simplified CLI
- Align OSS Project Settings on Cloud
- HMAC for cloud
- Dev environments
- Improved docs
- Auth with a link
- Fetch integrations creds from API (#685)
- Configurable websocket path for OSS (#677)
- New integrations: Netsuite, Gumroad, SurveyMonkey, Google Docs
- Pagination on the activity tab
- Import external OAuth creds in Nango with API
- Use the Proxy, even if the base URL is not configured
- Activity tab logs formatting & link to individual activity (#610)
- Listing running syncs on Connection page
- Deployment of syncs to cloud/nango with versioning
- Sync pause/start
- Custom buffer for refreshing tokens (#748)
- Use a link to trigger an OAuth flow (#603)
- Make the backend Node SDK compatible with NextJS, NestJS and Remix (#710)
v0.16.0 (Many improvements)
May 1, 2023
Hi everyone,
This weeks release (v0.16.0
) comes with many improvements:
- Nango Proxy: configurable retries & exponential backoff (🙏 @khaliq Gant)
- Force refresh tokens on the [API](#465) & [dashboard](#544) (🙏 @chakravarthi)
- [Secure frontend requests](#582) with HMAC keys (🙏 @simon Stone)
- Support integrations with [no scopes](#441) (e.g. Calendly)
- Fetch the [list of active connections](#525) for a specific connection ID (🙏 @uncle-tee)
- New integrations: [Timely](#576) (🙏 @timm Stokke), [Smugmug](#599) (🙏 [mrcbns](https://github.com/moracabanas)) & WakaTime (🙏 @ @alan Hamlett)
- [Privacy](https://www.nango.dev/privacy-policy) & [terms](https://www.nango.dev/terms) for Nango Cloud (🙏 @robin)
- More Github Action [checks](#575) (🙏 @khaliq Gant)
- Override database [connection pool](#588) configuration (🙏 [0xRaduan](https://github.com/0xRaduan))
Bug fixes:
- [Server version](#581) was
undefined
in self-hosted logs - Frontend SDK [build issue](#612)
We are continuing to see a steady stream of amazing contributions, with a rapidly growing number of total contributors (now 75!). Thank you!!
Have a great week,
April 24, 2023
Hi everyone,
We have a LOT of improvements this week for version 0.15.0
.
The main improvement is a way to make external API request with [Nango’s proxy](https://docs.nango.dev/reference/proxy)! It automatically handles authentication for you and will soon provide lots of other goodies (retries, monitoring, etc.).
Thanks you to @anand Chowdhary, @tony Xiao, @uncle-tee, @HarrisonJackson for your precious feedback, and most of all to @khaliq Gant for the implementation!
Another contributor has been killing it this week. [Chakravarthyyy](https://github.com/Chakravarthy7102) has made no less than 12 PRs this week, including many of super cool frontend improvements listed below. Thank you for jumping in like this!
Other improvements this week:
- New integrations: [Docusign](https://docs.nango.dev/providers/docusign), [Boldsign](https://docs.nango.dev/providers/boldsign), [BambooHR](https://docs.nango.dev/providers/bamboohr), [Todoist](https://docs.nango.dev/providers/todoist) (🙏 @uncle-tee, @chandra , [dax](https://github.com/dax))
- [Hide sensitive information](#563) in the web app (🙏 [Chakravarthyyy](https://github.com/Chakravarthy7102))
- [Default scopes](#534) (🙏 @uncle-tee)
- [Better UI](#556) for filling in scopes (🙏 [Chakravarthyyy](https://github.com/Chakravarthy7102))
- Make SDK compatible with [server-side rendering](#565) (🙏 [Chakravarthyyy](https://github.com/Chakravarthy7102))
- Experimental [support](#561) for other databases than Postgres (🙏 @desen Meng)
- [Other](cd111b5) [smaller](#557) [improvements](#550) [here](fe37935)
This was an amazing week, mostly thanks to the feedback and help of the community members here. We can’t thank you enough for this.
Have a great week,
April 17, 2023
Hi everyone,
Today we are release version 0.14.0
, bringing the count to 96 integrations (hopefully 100+ next week 😎). These new integrations are:
- [Accelo](https://docs.nango.dev/providers/accelo)
- [Battlenet](https://docs.nango.dev/providers/battlenet)
- [Deel](https://docs.nango.dev/providers/deel)
- [Health Gorilla](https://docs.nango.dev/providers/healthgorilla)
- [Keap](https://docs.nango.dev/providers/keap)
- [Outreach](https://docs.nango.dev/providers/outreach)
- [Pandadoc](https://docs.nango.dev/providers/pandadoc)
- [Squareup](https://docs.nango.dev/providers/squareup)
- [Teamwork](https://docs.nango.dev/providers/teamwork)
- [Uber](https://docs.nango.dev/providers/uber)
- [Zoho Desk](https://docs.nango.dev/providers/zoho-desk)
In addition, we improved Nango’s reliability by adding [persistence storage for OAuth sessions](#426) (thank you @uncle-tee!)
Finally, we improved the onboarding by creating a default Github integration upon signing up to let you test an OAuth flow faster!
A huge shoutout for @uncle-tee who has been shipping integrations like crazy, as well as
Have a great week :)
April 11, 2023
Hi everyone,
Today we are releasing the version 0.13.4
and bring to total integration count to 88 with the following integrations:
- [Adobe](https://docs.nango.dev/providers/adobe) ([PR](#463))
- [Amazon](https://docs.nango.dev/providers/amazon) ([PR](#496))
- [Figma / Figjam](https://docs.nango.dev/providers/figma) ([PR](#440))
- [Gorgias](https://docs.nango.dev/providers/gorgias) ([PR](#483))
- [Gusto](https://docs.nango.dev/providers/gusto) ([PR](#473))
- [Mural](https://docs.nango.dev/providers/mural) ([PR](#464))
- [Miro](https://docs.nango.dev/providers/miro) ([PR](#457))
- [OneDrive](https://docs.nango.dev/providers/one-drive) ([PR](#498))
- [Payfit](https://docs.nango.dev/providers/payfit) ([PR](#485))
- [Typeform](https://docs.nango.dev/providers/typeform) ([PR](#484))
- [Zenefits](https://docs.nango.dev/providers/zenefits) ([PR](#472))
We will continue to steadily increase the number of supported integrations. And don’t hesitate to request any specific one.
Have a great week!
April 3rd, 2023
Hi all!
We are excited to release 0.13.0
today with a bunch of new integrations:
- [Atlassian](https://docs.nango.dev/providers/atlassian) ([PR](#432))
- [Factorial](https://docs.nango.dev/providers/factorial) ([PR](#387))
- [[Mailchim...
v0.9.0 - Many improvements
It’s been a while since we officially released a new Nango version. But we have been hard at work and wanted to share the latest improvements coming with v0.9.0!
Unified Cloud lets you easily get started with Nango, without the hassle of self-hosting. We have seen that companies who use it build integrations faster. Get started with Nango Cloud for free.
55+ supported APIs including Brex, Stripe, Ramp, Confluence, Instagram, YouTube and many others.
Custom callback URL for Cloud makes Nango totally transparent for users, who now only see your domain while authorizing external providers.
Revamped frontend SDK using WebSocket (vs. window messages) which makes it much more robust and flexible.
1-click deployment with Heroku/Render and more detailed self-hosting documentation.
The biggest feature is coming soon: A dashboard where you can easily manage provider configurations & connections. This will also be the groundwork for many more improvements to the way you work with external APIs.
v0.3.6 - Full rewrite
We rewrote Pizzly to make the code more maintainable and accelerate future development.
It already works, and supports:
- OAuth 1 & 2
- a Docker container for the Pizzly server
- a CLI to configure integrations
- a Node SDK + REST API to fetch fresh tokens
- a frontend SDK to initiate OAuth flows
v0.2.2
Update Dockerfile