- Machine-to-Machine (M2M) for backend integrations
- OAuth 2.0 for user-authorized apps.
Machine-to-Machine (M2M) Authentication
M2M authentication is designed for backend services, internal automations, and server-to-server integrations. It uses access tokens that are scoped to your organization and expire automatically.How It Works
-
Request an Access Token
Use your
client_idandclient_secretto request an access token: -
Include the Token in API Requests
Add the access token to the
Authorizationheader: - Tokens Expire Access tokens are short-lived and expire after approximately 1 hour. You can safely request a new one when needed.
Example (cURL)
OAuth 2.0 Authentication
OAuth 2.0 is ideal for user-authorized applications, such as browser-based integrations, AI agents, and no-code tools.How It Works
- Redirect to Login & Consent Your app redirects the user to Profile’s secure login page.
- Token Exchange After login, your app receives a short-lived access token representing that user.
-
Make API Requests
Use the access token in the
Authorizationheader to act on behalf of the user: - Role-Based Access Permissions are based on the user’s role (e.g., admin, manager) in your Profile account.
Example OAuth Request
Which Authentication Method Should I Use?
| Use Case | Auth Type |
|---|---|
| Backend services & servers | ✅ M2M |
| Cron jobs & internal automation | ✅ M2M |
| AI agents, Zapier, Make.com | ✅ OAuth |
| User-facing apps & dashboards | ✅ OAuth |
Security Notes
- Never expose client secrets in frontend apps or browser-based code.
- Access tokens are short-lived and should be refreshed automatically.
- OAuth users must authenticate through Profile’s secure login — passwords are never shared with external tools.