About Duo Security
Cisco Duo is a multi-factor authentication and device-trust platform. The Serval Duo integration connects to your Duo account’s Admin API application, giving workflows typed access to users, groups, phones, hardware tokens, WebAuthn credentials, bypass codes, administrators, logs, and account settings. Optionally, you can also attach an Auth API application to send Duo Push prompts and run pre-authentication checks from workflows. The integration is marked Beta in Serval’s connect UI. Authentication: Duo’s signed-request scheme. Every API call is individually signed with HMAC using your application’s integration key and secret key; there are no bearer tokens to rotate. Admin API and Auth API are separate Duo application types with separate key pairs, and Serval automatically signs each request with the right pair based on the endpoint. Data sync: On demand only. There is no background user or group sync.What the Duo integration enables
Get your credentials
You need your Duo API hostname and an Admin API application’s integration key and secret key. Optionally, add an Auth API application’s keys to enable/auth/v2 workflows.
Sign in to the Duo Admin Panel
Create the Admin API application
Choose permission grants
Copy the credentials
api-xxxxxxxx.duosecurity.com) from the application page.Optional: create an Auth API application
Connect in Serval
Open the Duo Security connect form
API hostname
api-xxxxxxxx.duosecurity.com (api-xxxxxxxx.duofederal.com for federal accounts).Admin API integration key and secret key
/admin and /accounts endpoints.Auth API integration key and secret key
/auth/v2 endpoints. Both must be provided together; leave both blank to skip.Save and verify
Verifying the connection
Three health checks run after you connect:- Test Duo Admin API Connection — fetches one user from
/admin/v1/users. Confirms the hostname, integration key, and secret key are correct. Skipped (reported as healthy) when Admin API credentials are not configured. - List Duo Groups — fetches one group. Confirms resource read access. Skipped when Admin API credentials are not configured.
- Test Duo Auth API Connection — calls
/auth/v2/checkwith the Auth API credentials. Skipped when no Auth API credentials are configured.
Gotchas and troubleshooting
Admin API and Auth API are different applications
Admin API and Auth API are different applications
/auth/v2 endpoints and vice versa. Serval routes each request to the right pair automatically, but both must be configured in the connection for both APIs to work.List parameters are comma-separated strings
List parameters are comma-separated strings
403 responses reflect missing permission grants
403 responses reflect missing permission grants
Deleting users is a two-step trash flow
Deleting users is a two-step trash flow
DELETE /admin/v1/users/{user_id} moves the user to the trash, where they remain restorable for 30 days before permanent deletion. Use the bulk restore endpoint to recover.Rate limits
Rate limits
limit/offset rather than issuing per-user calls where a list endpoint exists.Need help? Contact support@serval.com for assistance with your Duo Security integration.

