> ## Documentation Index
> Fetch the complete documentation index at: https://www.1password.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Build with 1Password Agentic Autofill

> An integration guide for AI agents that sign in to websites using the logins people keep in 1Password.

export const StatusBadge = ({children}) => <span className="op-status-badge not-prose">{children}</span>;

<StatusBadge>Partner preview</StatusBadge>

With Agentic Autofill, your agent signs in to websites on a person's behalf using the logins they already keep in 1Password. The person reviews each access request in 1Password on their own device and chooses which logins, if any, to grant. The 1Password browser extension then fills sign-in forms with those logins, so neither your platform nor the model handles credential values.

<Warning>
  This guide is for partners building against Agentic Autofill before general availability. Endpoints, response shapes, and dates can change. Check with your 1Password contact before you rely on anything this guide marks as not yet available.
</Warning>

## How it works

<Steps>
  <Step title="Connect once" icon="link">
    The person selects **Connect 1Password** in your product. They sign in to 1Password on the web and approve a consent screen. You receive OAuth tokens and an integration key for that person. You can now ask them for logins, but you can't read anything yet.
  </Step>

  <Step title="Ask for the logins a task needs" icon="list-check">
    When a task needs to sign in somewhere, your agent creates an access request: a goal for the task and up to five logins, each with a website and a reason.
  </Step>

  <Step title="The person approves in 1Password" icon="fingerprint">
    You send the approval link to the person's device. Their 1Password app opens, shows who is asking and why, and lets them pick the exact logins to grant. This is the last time the person needs to be present.
  </Step>

  <Step title="Fill and continue the task" icon="wand-magic-sparkles">
    Your agent asks the 1Password extension in its browser to fill a granted login. The extension fetches the login from 1Password, fills the form, and submits it. The values never reach your code or the model.
  </Step>
</Steps>

```mermaid theme={null}
flowchart LR
    A["Connect<br/>once per person"] --> B["Request<br/>per task"]
    B --> C["Approve<br/>in the 1Password app"]
    C --> D["Fill<br/>with the extension"]
    D -. next task .-> B
```

## Build on the browser extension

Your agent works with 1Password through the 1Password browser extension. It creates access requests, waits for the person's decision, and fills granted logins into the page. Your code never handles credential values.

If your product needs the 1Password SDK instead, for example to ask for access before a browser exists, contact 1Password before you build with it. We can review the security requirements with you. See [Use the SDK](/agentic-autofill/partners/sdk).

## What you build

<CardGroup cols={2}>
  <Card title="Test the flow end to end" icon="rocket" href="/agentic-autofill/partners/quickstart">
    Register your OAuth client, connect a test user on 1password.com, approve a request, and fill a login.
  </Card>

  <Card title="Connect a user" icon="link" href="/agentic-autofill/partners/connect">
    Run the OAuth authorization code flow with PKCE and receive the integration key.
  </Card>

  <Card title="Store keys and tokens" icon="key" href="/agentic-autofill/partners/keys-and-tokens">
    Hold the integration key and tokens per user, and give each browser session only what it needs.
  </Card>

  <Card title="Create an access request" icon="list-check" href="/agentic-autofill/partners/access-requests">
    Describe the task and the logins it needs, within the field limits.
  </Card>

  <Card title="Get the user's approval" icon="fingerprint" href="/agentic-autofill/partners/approval">
    Deliver the approval link to the user's device and wait for their decision.
  </Card>

  <Card title="Fill with the browser extension" icon="window-maximize" href="/agentic-autofill/partners/fill">
    Load the extension, call it over CDP, and fill a granted login into a tab.
  </Card>
</CardGroup>

## Supported today

| Area | Supported | Not supported yet |
| - | - | - |
| Accounts | Individual and Family accounts on 1password.com, in the US | Business accounts, other regions |
| Vaults | The person's own vault: Personal in an Individual account, Private in a Family account | Shared vaults |
| Credentials | Logins: username, password, and one-time password | Passkeys, social sign-in, payment cards, addresses |
| Browsers | Chromium builds that support extensions, in the cloud or on a local machine | Other browser engines |
| Approval | The 1Password app on the person's device | Approval inside your own app |
| Revocation | You revoke the entire connection from your backend | Revoking a single login, or revoking from inside 1Password |

## Get help

Ask your 1Password contact in your shared Slack channel. The [FAQ](/agentic-autofill/partners/faq) answers the questions partners ask most, and [Errors and troubleshooting](/agentic-autofill/partners/troubleshooting) lists the error messages you're likely to see while you build.


## Related topics

- [Build integrations with 1Password](/get-started/build-integrations.md)
- [Tutorial: Get started with 1Password SDKs and 1Password Service Accounts](/sdks/setup-tutorial.md)
- [Set up your team to use 1Password developer tools](/get-started/secure-developers.md)
