Guide to letting your users authorize an external API from your application.
Authorization overview.
ℹ️ Details on end user and organization information
end_user
and organization
information fields help identify which connection belongs to which end user and organization. This information is also used for display purposes in the Nango UI.end_user.id
is required. Pass in your internal ID of the user who initiated the authorization flow. This ID, and potentially the organization.id
, are necessary for reconciling the connection details that your backend receives from Nango after the connection is created (as described in the section 3).A
with user ID X
and email a@a.com
, then connection B
with the same user ID X
and email b@b.com
, both connections will reflect the latest data: b@b.com
. The same applies to org data—editing it updates all connections tied to that org ID.allowed_integrations
will display a list of integrations that the end user can pick from:
Connect UI with list of allowed integration ids
allowed_integrations
will send the end user directly to this integration’s authorization flow:
Connect UI with one allowed integration id.
Connection flow with Nango's pre-built Connect UI
👩🏻💻 Simplified flow for development
nango.openConnectUI()
method in the frontend SDK, the connection ID is available in the event
parameter of the callback:connection id
< - > [owner object]
in your application.From Nango’s perspective, every connection is treated the same and unique. Data is never shared between connections.POST
requests with the following JSON body:
connectionId
value with the object you want to the attribute the connection to in your application.
api.nango.dev
. Some APIs (e.g. Google and Zoom) require domain verification for the callback URL and will not accept the api.nango.dev
value for your app.
Some API providers (e.g. Google) also show the domain of the callback URL to the user during the OAuth flow.
Setting up a custom callback URL lets you use https://yourdomain.com/oauth-callback
as your callback URL and takes only a few minutes.
https://EXAMPLE.com/oauth-callback
https://api.nango.dev/oauth/callback
and pass along all original parametersGET /connection
endpoint:
Auth Webhook
from Nango with operation = override