Out of the box, authentication to your developer portal uses Zuplo's test Auth0 account. The test Auth0 account cannot be used in production. The test account is limited to a small number of users per month per project so you will want to change this to use your own identity provider. The developer portal supports authenticating with any standard-compliant OpenID Connect identity provider such as Auth0, Okta, AWS Cognito, etc.
If you don't have an Auth0 account, you can sign up for a free Auth0 account that will provide you will 7,000 monthly active users.
1/ Create Auth0 Application
Create a new Auth0 application in the Auth0 dashboard. When creating the application select type "Single Page Web Applications"
2/ Configure Auth0 Application
You must set the following fields in the Auth0 application:
- Allowed Callback URLs: Add your docs site url (i.e.
- Allowed Logout URLs: Add your docs site url (i.e.
- Allowed Web Origins: Add your docs site url without the path (i.e.
Refresh Token Rotation
- Rotation: Enabled
- Reuse Interval: Leave at
Refresh Token Expiration
- Absolute Expiration: Enabled
- Absolute Lifetime: Can be whatever time you want, default is
- Inactivity Expiration: Enabled
- Inactivity Lifetime: Can be whatever you want, default is
3/ Create an Auth0 API
Create an API in the Auth0 portal. Set the Identifier to something like
The identifier is commonly a URI, but it doesn't have to be, nor does the URI have to match where your API is hosted. It is common practice to use the same identifier for all different environments of your API even if they are on different URLs.
4/ Configure the Developer Portal
Inside of the Zuplo Developer portal navigate to the Code Editor tab and open the
dev-portal.json file. You can edit the JSON manually, but in this tutorial we will use the UI editor.
Set the following settings:
- Enable Authentication: Checked
- Authority: This is your Auth0 domain (i.e.
my-company.us.auth0.com) in URL format like
https://my-company.us.auth0.com/. The trailing slash is required.
- Client ID: The client ID of the Auth0 application that was created in the earlier steps. This is a string of letters an numbers. The Client ID is not a secret value.
- Audience: This is the value for
audiencethat you set when creating the Auth0 API earlier.