Custom social connection with Instagram

Hi! I am writing to continue this topic brought up here: Instagram Basic Display API

I need to implement Instagram login but I am not quite sure on how to do this with instagram and custom social connection. According to the docs I need to choose a social provider after i click on the Custom Social Connections. But there is no option for instagram social provider. So how can I implement instagram login?

Also, when Auth0 will work with the Instagram Basic Display API?

According to the docs I need to choose a social provider

Which docs are you referring to, because this is not correct for the custom social connection extension?

You don’t choose from a pre-selection, you need to create/enter the details for a IdP of your choice on your own, that’s the whole point about Custom Social Connection extension as opposed to the ones out of the box (under Dashboard > Connections > Social).

So you would basically configure the respective authorization and token endpoints as per documentation of the respective IdP, in this case Instagram, which can be taken from the

You can take a look at the existing configuration examples that already come with the Custom Social Connection extension to get an idea of how such connection is configured, incl. the fetch-user-info script (which of course is always unique to the IdP).

Also, when Auth0 will work with the Instagram Basic Display API?

My guess is that it doesn’t take a high priority (for a standard social connection in the dashboard) on the product roadmap, because Instagram isn’t even recommended as IdP anymore by Facebook. So, I wouldn’t expect anything out of the box soon.

This one: docs

After I click the custom social connections box I see many options to toggle on and off (Uber, Twitch, Dropbox … and so on)

But I understand I can go straight to +New Connection after i click on the connections box. But why those options?

Thank you for your answer!

But why those options?

Not sure I understand the question. Do you mean, what these options mean (they refer to standard OAuth2/OpenID Connect configurations)? Or why Auth0 doesn’t provide it out of the box?

Yes, you would need to create a new connection via +New Connection, because it’s not supported by Auth0 out of the box (either due to low demand, deprecation, or recent changes by the IdP; in this case the latter and the recommendation by Facebook to use Facebook instead of Instragram). Otherwise, it would’ve already been under the standard Dashboard > Connections > Social Connections.

The docs are confusing. I understand I need to create a new custom connection but this part from the docs doesn’t make sense for me:

Click the slider next to the social provider(s) you want to set up. The slider will turn from grey to green, indicating that a connection to that provider exists.

Why do I need to click a social provider to set up a new custom connection if my connection is custom. Because if it is a custom connection than I do not need to choose a social provider from a pre-selection.

I have another question. When I choose a custom social connection does Auth0 provide me an Authorization URL and a Token URL? If they do how can I get them?

That documentation page is confusing, no idea what it’s referring to, as the New Connection you are about to create doesn’t exist yet, so there’s no toggle to slide available yet. I’ll inform our docs team about it, so it can be revised.

When I choose a custom social connection does Auth0 provide me an Authorization URL and a Token URL? If they do how can I get them?

You get this information from the IdP you want to integrate, in this case, Instagram.

In general, if the identity provider supports OIDC (OpenID Connect) you can simply go by the OIDC Discovery page, i.e. for FB and MS it’s like this

for example. It’s always at the IdP domain with /.well-known/openid-configuration at the end.

However, since Instagram only supports OAuth2 but not OIDC, you’ll need to get the info from the documentation, which is at the links I referred to earlier.

So looking at these docs and further links, you come to the page Get Access Tokens and Permissions - Instagram Platform - Documentation - Meta for Developers

where you see the the authorize endpoint is https://api.instagram.com/oauth/authorize and the token endpoint is https://api.instagram.com/oauth/access_token

1 Like