Pro plans include password authentication.Enterprise plans include all authentication methods.
Configure authentication
Select the handshake method that you want to configure.- Password
- Mintlify dashboard
- OAuth 2.0
- JWT
Password authentication provides access control only and does not support user-specific features like group-based access control or API playground pre-filling.
Prerequisites
- Your security requirements allow sharing passwords among users.
Set up
1
Create a password.
- In your dashboard, go to Authentication.
- Enable authentication.
- In the Password Protection section, enter a secure password
2
Distribute access.
Securely share the password and documentation URL with authorized users.
Example
You host your documentation atdocs.foo.com and you need basic access control without tracking individual users. You want to prevent public access while keeping setup simple.Create a strong password in your dashboard. Share credentials with authorized users.Make pages public
When using authentication, all pages require authentication to access by default. You can make specific pages viewable without authentication at the page or group level with thepublic property.
Individual pages
To make a page public, addpublic: true to the page’s frontmatter.
Public page example
Groups of pages
To make all pages in a group public, add"public": true beneath the group’s name in the navigation object of your docs.json.
Public group example
Control access with groups
When you use OAuth or JWT authentication, you can restrict specific pages to certain user groups. This is useful when you want different users to see different content based on their role or attributes. Manage groups through user data passed during authentication. See User data format for details.Example user info
groups property in frontmatter.
Example page restricted to the admin group
How groups interact with public pages
- All pages require authentication by default.
- Pages with a
groupsproperty are only accessible to authenticated users in those groups. - Pages without a
groupsproperty are accessible to all authenticated users. - Pages with
public: trueand nogroupsproperty are accessible to everyone.
User data format
When using OAuth or JWT authentication, your system returns user data that controls session length, group membership, and content personalization.Session expiration time in seconds since epoch. When the current time passes this value, the user must re-authenticate.
List of groups the user belongs to. Pages with matching
groups in their frontmatter are accessible to this user.Example: A user with groups: ["admin", "engineering"] can access pages tagged with either the admin or engineering groups.Custom data accessible in MDX pages via the
user variable for personalized content.Pre-fills API playground fields with user-specific values. When a user authenticates, these values populate the corresponding input fields in the API playground. Users can override pre-filled values, and their overrides persist in local storage.Only values that match the current endpoint’s security scheme are applied.