> ## Documentation Index
> Fetch the complete documentation index at: https://docs.stackone.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Duo Security

> 39 actions available for Duo Security through StackOne. Use via Actions RPC, Toolset SDK, MCP, or A2A.

<div className="not-prose" style={{ display: 'flex', alignItems: 'center', gap: '12px', marginBottom: '24px' }}>
  <img src="https://stackone-logos.com/api/duo/filled/png" alt="Duo Security" className="connector-page-icon" style={{ width: '48px', height: '48px', borderRadius: '10px', padding: '2px' }} />

  <div>
    <div style={{ fontSize: '24px', fontWeight: '600' }}>Duo Security</div>
    <div className="connector-page-subtitle" style={{ fontSize: '14px' }}>39 actions · 1 auth method</div>

    <div style={{ display: 'flex', flexWrap: 'wrap', gap: '6px', marginTop: '8px' }}>
      <span className="connector-page-tag-preview" style={{ display: 'inline-block', padding: '2px 8px', borderRadius: '4px', fontSize: '11px', fontWeight: '500' }}>Preview</span>
      <span className="connector-page-category-tag" style={{ display: 'inline-block', padding: '2px 8px', borderRadius: '4px', fontSize: '11px', fontWeight: '500' }}>IAM</span>
    </div>
  </div>
</div>

## Authentication

<Columns cols={2}>
  <Card title="HMAC-SHA1 Signing">
    Duo uses HMAC-SHA1 signed requests with HTTP Basic Authentication. The integration key is the username and the HMAC-SHA1...

    Guides: [Connector Profile](/connectors/duo/guides/connector-profile/hmac-sha1-signing), [Link Account](/connectors/duo/guides/link-account/hmac-sha1-signing)
  </Card>
</Columns>

<div className="connector-meta-library-section">
  <div className="connector-meta-library-title">Actions</div>

  <div className="connector-actions-controls not-prose" data-connector-actions-controls>
    <div className="connector-actions-controls__row">
      <input type="search" className="connector-actions-search" data-connector-actions-search placeholder="Search actions" aria-label="Search actions" />
    </div>
  </div>

  <div className="meta-library-count" data-connector-actions-count>39 actions</div>

  <div className="not-prose meta-library-table-container" data-connector-actions-table>
    <div className="connector-meta-library-grid" style={{ gridTemplateColumns: '200px 1fr' }}>
      <div className="connector-meta-library-row">
        <div className="meta-library-grid-header-cell">Action</div>
        <div className="meta-library-grid-header-cell">Description</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_list_users" data-action-label="List Users" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>List Users</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_list_users" aria-label="Copy duo_list_users"><code className="connector-page-code">duo\_list\_users</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve a paginated list of Duo users via GET /admin/v1/users</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_create_user" data-action-label="Create User" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Create User</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_create_user" aria-label="Copy duo_create_user"><code className="connector-page-code">duo\_create\_user</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Create a new Duo user via POST /admin/v1/users</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_get_user" data-action-label="Get User" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Get User</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_get_user" aria-label="Copy duo_get_user"><code className="connector-page-code">duo\_get\_user</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve a specific Duo user by ID via GET /admin/v1/users/\{user\_id}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_update_user" data-action-label="Update User" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Update User</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_update_user" aria-label="Copy duo_update_user"><code className="connector-page-code">duo\_update\_user</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Update an existing Duo user via POST /admin/v1/users/\{user\_id}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_delete_user" data-action-label="Delete User" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Delete User</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_delete_user" aria-label="Copy duo_delete_user"><code className="connector-page-code">duo\_delete\_user</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Permanently delete a Duo user via DELETE /admin/v1/users/\{user\_id}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_list_groups" data-action-label="List Groups" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>List Groups</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_list_groups" aria-label="Copy duo_list_groups"><code className="connector-page-code">duo\_list\_groups</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve a paginated list of Duo groups via GET /admin/v1/groups</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_create_group" data-action-label="Create Group" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Create Group</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_create_group" aria-label="Copy duo_create_group"><code className="connector-page-code">duo\_create\_group</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Create a new Duo group via POST /admin/v1/groups</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_get_group" data-action-label="Get Group" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Get Group</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_get_group" aria-label="Copy duo_get_group"><code className="connector-page-code">duo\_get\_group</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve a specific Duo group by ID via GET /admin/v1/groups/\{group\_id}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_update_group" data-action-label="Update Group" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Update Group</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_update_group" aria-label="Copy duo_update_group"><code className="connector-page-code">duo\_update\_group</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Update an existing Duo group via POST /admin/v1/groups/\{group\_id}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_delete_group" data-action-label="Delete Group" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Delete Group</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_delete_group" aria-label="Copy duo_delete_group"><code className="connector-page-code">duo\_delete\_group</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Delete a Duo group via DELETE /admin/v1/groups/\{group\_id}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_list_admins" data-action-label="List Administrators" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>List Administrators</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_list_admins" aria-label="Copy duo_list_admins"><code className="connector-page-code">duo\_list\_admins</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve a paginated list of Duo administrators via GET /admin/v1/admins</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_create_admin" data-action-label="Create Administrator" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Create Administrator</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_create_admin" aria-label="Copy duo_create_admin"><code className="connector-page-code">duo\_create\_admin</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Create a new Duo administrator via POST /admin/v1/admins</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_get_admin" data-action-label="Get Administrator" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Get Administrator</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_get_admin" aria-label="Copy duo_get_admin"><code className="connector-page-code">duo\_get\_admin</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve a specific Duo administrator by ID via GET /admin/v1/admins/\{admin\_id}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_update_admin" data-action-label="Update Administrator" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Update Administrator</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_update_admin" aria-label="Copy duo_update_admin"><code className="connector-page-code">duo\_update\_admin</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Update an existing Duo administrator via POST /admin/v1/admins/\{admin\_id}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_delete_admin" data-action-label="Delete Administrator" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Delete Administrator</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_delete_admin" aria-label="Copy duo_delete_admin"><code className="connector-page-code">duo\_delete\_admin</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Delete a Duo administrator via DELETE /admin/v1/admins/\{admin\_id}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_list_phones" data-action-label="List Phones" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>List Phones</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_list_phones" aria-label="Copy duo_list_phones"><code className="connector-page-code">duo\_list\_phones</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve a paginated list of Duo phones via GET /admin/v1/phones</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_create_phone" data-action-label="Create Phone" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Create Phone</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_create_phone" aria-label="Copy duo_create_phone"><code className="connector-page-code">duo\_create\_phone</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Create a new Duo phone via POST /admin/v1/phones</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_get_phone" data-action-label="Get Phone" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Get Phone</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_get_phone" aria-label="Copy duo_get_phone"><code className="connector-page-code">duo\_get\_phone</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve a specific Duo phone by ID via GET /admin/v1/phones/\{phone\_id}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_update_phone" data-action-label="Update Phone" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Update Phone</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_update_phone" aria-label="Copy duo_update_phone"><code className="connector-page-code">duo\_update\_phone</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Update an existing Duo phone via POST /admin/v1/phones/\{phone\_id}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_delete_phone" data-action-label="Delete Phone" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Delete Phone</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_delete_phone" aria-label="Copy duo_delete_phone"><code className="connector-page-code">duo\_delete\_phone</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Delete a Duo phone via DELETE /admin/v1/phones/\{phone\_id}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_list_tokens" data-action-label="List Hardware Tokens" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>List Hardware Tokens</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_list_tokens" aria-label="Copy duo_list_tokens"><code className="connector-page-code">duo\_list\_tokens</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve a paginated list of Duo hardware tokens via GET /admin/v1/tokens</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_create_token" data-action-label="Create Hardware Token" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Create Hardware Token</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_create_token" aria-label="Copy duo_create_token"><code className="connector-page-code">duo\_create\_token</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Create a new Duo hardware token via POST /admin/v1/tokens</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_get_token" data-action-label="Get Hardware Token" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Get Hardware Token</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_get_token" aria-label="Copy duo_get_token"><code className="connector-page-code">duo\_get\_token</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve a specific Duo hardware token by ID via GET /admin/v1/tokens/\{token\_id}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_update_token" data-action-label="Update Hardware Token" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Update Hardware Token</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_update_token" aria-label="Copy duo_update_token"><code className="connector-page-code">duo\_update\_token</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Update an existing Duo hardware token via POST /admin/v1/tokens/\{token\_id}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_delete_token" data-action-label="Delete Hardware Token" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Delete Hardware Token</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_delete_token" aria-label="Copy duo_delete_token"><code className="connector-page-code">duo\_delete\_token</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Delete a Duo hardware token via DELETE /admin/v1/tokens/\{token\_id}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_list_integrations" data-action-label="List Integrations" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>List Integrations</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_list_integrations" aria-label="Copy duo_list_integrations"><code className="connector-page-code">duo\_list\_integrations</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve a paginated list of Duo integrations via GET /admin/v1/integrations</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_create_integration" data-action-label="Create Integration" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Create Integration</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_create_integration" aria-label="Copy duo_create_integration"><code className="connector-page-code">duo\_create\_integration</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Create a new Duo integration via POST /admin/v1/integrations</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_get_integration" data-action-label="Get Integration" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Get Integration</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_get_integration" aria-label="Copy duo_get_integration"><code className="connector-page-code">duo\_get\_integration</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve a specific Duo integration by key via GET /admin/v1/integrations/\{integration\_key}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_update_integration" data-action-label="Update Integration" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Update Integration</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_update_integration" aria-label="Copy duo_update_integration"><code className="connector-page-code">duo\_update\_integration</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Update an existing Duo integration via POST /admin/v1/integrations/\{integration\_key}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_delete_integration" data-action-label="Delete Integration" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Delete Integration</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_delete_integration" aria-label="Copy duo_delete_integration"><code className="connector-page-code">duo\_delete\_integration</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Delete a Duo integration via DELETE /admin/v1/integrations/\{integration\_key}</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_list_authentication_logs" data-action-label="List Authentication Logs" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>List Authentication Logs</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_list_authentication_logs" aria-label="Copy duo_list_authentication_logs"><code className="connector-page-code">duo\_list\_authentication\_logs</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve authentication log events via GET /admin/v2/logs/authentication</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_list_administrator_logs" data-action-label="List Administrator Logs" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>List Administrator Logs</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_list_administrator_logs" aria-label="Copy duo_list_administrator_logs"><code className="connector-page-code">duo\_list\_administrator\_logs</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve administrator action log events via GET /admin/v1/logs/administrator</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_list_telephony_logs" data-action-label="List Telephony Logs" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>List Telephony Logs</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_list_telephony_logs" aria-label="Copy duo_list_telephony_logs"><code className="connector-page-code">duo\_list\_telephony\_logs</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve telephony log events via GET /admin/v2/logs/telephony</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_list_offline_logs" data-action-label="List Offline Enrollment Logs" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>List Offline Enrollment Logs</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_list_offline_logs" aria-label="Copy duo_list_offline_logs"><code className="connector-page-code">duo\_list\_offline\_logs</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve offline enrollment log events via GET /admin/v1/logs/offline\_enrollment</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_list_activity_logs" data-action-label="List Activity Logs" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>List Activity Logs</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_list_activity_logs" aria-label="Copy duo_list_activity_logs"><code className="connector-page-code">duo\_list\_activity\_logs</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Retrieve activity log events via GET /admin/v2/logs/activity</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_bulk_create_users" data-action-label="Bulk Create Users" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Bulk Create Users</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_bulk_create_users" aria-label="Copy duo_bulk_create_users"><code className="connector-page-code">duo\_bulk\_create\_users</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Create multiple Duo users in a single request via POST /admin/v1/users/bulk\_create</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_bulk_restore_users" data-action-label="Bulk Restore Users" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Bulk Restore Users</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_bulk_restore_users" aria-label="Copy duo_bulk_restore_users"><code className="connector-page-code">duo\_bulk\_restore\_users</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Restore multiple Duo users from the Trash via POST /admin/v1/users/bulk\_restore</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_bulk_send_users_to_trash" data-action-label="Bulk Send Users To Trash" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Bulk Send Users To Trash</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_bulk_send_users_to_trash" aria-label="Copy duo_bulk_send_users_to_trash"><code className="connector-page-code">duo\_bulk\_send\_users\_to\_trash</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Send multiple Duo users to the Trash via POST /admin/v1/users/bulk\_send\_to\_trash</div>
      </div>

      <div className="connector-meta-library-row" data-action-id="duo_bulk_operations" data-action-label="Bulk Operations" data-action-scopes="" data-action-auth="HMAC-SHA1 Signing" data-action-auth-scopes="{&#x22;HMAC-SHA1 Signing&#x22;:[]}">
        <div className="meta-library-grid-cell connector-meta-library-item-cell">
          <div style={{ fontWeight: '500' }}>Bulk Operations</div>
          <div style={{ marginTop: '4px' }}><button type="button" className="connector-page-code-button" data-copy="duo_bulk_operations" aria-label="Copy duo_bulk_operations"><code className="connector-page-code">duo\_bulk\_operations</code></button></div>
        </div>

        <div className="meta-library-grid-cell meta-library-grid-cell--description">Execute multiple Duo API operations in a single request via POST /admin/v1/bulk</div>
      </div>
    </div>
  </div>
</div>

## Getting Started

<Steps>
  <Step title="Create or Select a Project">
    Set up a new project or select an existing one. See [Organizations & Projects](/gateway/concepts/organizations-and-projects).
  </Step>

  <Step title="Configure the Connector">
    Enable the connector and set up a connector profile in your project. See [Managing Connectors](/connect/managing-connectors/overview).

    <Columns cols={2}>
      <Card title="Connector Profile" href="/connectors/duo/guides/connector-profile/hmac-sha1-signing" icon="https://stackone-logos.com/api/duo/filled/png" horizontal>
        Duo Security - HMAC-SHA1 Signing
      </Card>
    </Columns>
  </Step>

  <Step title="Link an Account">
    Connect an account using [StackOne Hub](/embed/account-linking/overview) or [Auth Link](/embed/account-linking/auth-link).

    <Columns cols={2}>
      <Card title="Link Account" href="/connectors/duo/guides/link-account/hmac-sha1-signing" icon="https://stackone-logos.com/api/duo/filled/png" horizontal>
        Duo Security - HMAC-SHA1 Signing
      </Card>
    </Columns>
  </Step>

  <Step title="Use Actions">
    Invoke actions using one of the methods below:

    * [MCP](/embed/call-actions/mcp) – Model Context Protocol for AI assistants
    * [A2A](/embed/call-actions/agent2agent) – Agent-to-Agent protocol
    * [Agent SDK](/embed/call-actions/agent-sdk) – TypeScript and Python SDKs for AI agents
    * [Actions RPC](/platform/api-reference/actions/make-an-rpc-call-to-an-action) – Direct API calls
    * [Playground](/embed/call-actions/troubleshooting/playground) – Test actions in the dashboard
  </Step>
</Steps>
