You can build integrations, applications, and scripts that programmatically interact with 1Password using two primary interfaces: 1Password CLI and 1Password SDKs. Both tools allow you to access and manage items, vaults, users, and secrets in your 1Password account. You can also deploy a self-hosted Connect server to access your items.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.
Choose your interface
1Password CLI
1Password CLI is a command-line tool that you can call from scripts, build tools, or any process that can run shell commands. 1Password CLI is the best fit when you want to:- Write shell scripts that access or manage your information in 1Password.
- Access 1Password interactively from the terminal with biometric authentication.
- Access 1Password from CI/CD pipelines or infrastructure-as-code workflows using automated authentication with service accounts.
- Explore or test before committing to an SDK integration.
1Password SDKs
1Password SDKs provide native libraries for Go, JavaScript, and Python that let you interact with 1Password directly in your application code. 1Password SDKs are the best fit when you want to:- Build an application that needs to manage items, vaults, groups, or secrets at runtime.
- Embed 1Password in an integration that other people will use, with convenient authentication through their 1Password desktop app.
- Build a Go, JavaScript, or Python integration with the type safety, error handling, and conventions of your preferred language.
Connect server
1Password Connect allows you to deploy a private REST API in your own infrastructure that provides access to your 1Password items. After the initial fetch, secrets are served locally, reducing latency and dependency on external API availability. Connect has its own Go, JavaScript, and Python SDKs that allow you to get vaults and manage items.Choose your authentication method
1Password desktop app
Authenticate with prompts from the 1Password desktop app, so you can approve requests with Touch ID, Windows Hello, Linux system authentication, or your 1Password account password. Best for: Integrations that run locally, where a human is present to approve requests. Use the 1Password app to authenticate when you want minimal setup, human-in-the-loop approval, user-specific auditing, access to your full account including personal vaults, and the ability to authenticate with biometrics. Works with: 1Password CLI, 1Password SDKsService accounts
Service accounts allow you to authenticate using a token scoped to specific vaults or Environments in your 1Password account, with no user interaction required. You can also control which actions a service account can perform in the vaults it can access. Best for: Integrations that run without a human present and following the principle of least privilege in your project. Use service accounts for automated access, shared building, headless authentication, or when you want to authenticate with a credential that isn’t tied to an individual user. Service accounts can’t access your built-in Personal, Private, or Employee vault. Works with: 1Password CLI, 1Password SDKsConnect server token
If you deploy a Connect server, you can use your Connect server token and host to authenticate 1Password CLI and certain pre-built integrations, like the 1Password Connect Ansible collection. Best for: When you want to interact with your 1Password Connect deployment using other tools and integrations. Works with: 1Password CLI, integrations that support ConnectCompatibility
| Authentication method | 1Password CLI | 1Password SDKs | Connect SDKs |
|---|---|---|---|
| Desktop app | Yes | Yes | No |
| Service account | Yes | Yes | No |
| Connect server token | Yes | No | Yes |
Start building
After you choose an interface and authentication method, learn how to get started with your preferred workflow:Get started with 1Password CLI
Install the CLI and authenticate with the desktop app, a service account, or Connect server.
Get started with 1Password SDKs
Install an SDK and authenticate with the desktop app or a service account.
Create a service account
Set up token-based authentication for automated workflows.
Deploy a Connect server
Host a private REST API for secret access in your own infrastructure.
Examples
1Password CLI scripts
Example shell scripts that use the CLI in real workflows.
1Password SDK tutorials
Step-by-step guides for building with the Go, JavaScript, and Python SDKs.