"1Password Connect API skill. Use when working with 1Password Connect for activity, vaults, heartbeat. Covers 15 endpoints."
Resources
1Install
npx skillscat add lap-platform/claude-marketplace/plugins-1password-local-connect-skills-api Install via the SkillsCat registry.
SKILL.md
1Password Connect
API version: 1.5.7
Auth
Bearer bearer
Base URL
Setup
- Set Authorization header with your Bearer token
- GET /activity -- verify access
- POST /vaults/{vaultUuid}/items -- create first items
Endpoints
15 endpoints across 5 groups. See references/api-spec.lap for full details.
activity
| Method | Path | Description |
|---|---|---|
| GET | /activity | Retrieve a list of API Requests that have been made. |
vaults
| Method | Path | Description |
|---|---|---|
| GET | /vaults | Get all Vaults |
| GET | /vaults/{vaultUuid} | Get Vault details and metadata |
| GET | /vaults/{vaultUuid}/items | Get all items for inside a Vault |
| POST | /vaults/{vaultUuid}/items | Create a new Item |
| GET | /vaults/{vaultUuid}/items/{itemUuid} | Get the details of an Item |
| PUT | /vaults/{vaultUuid}/items/{itemUuid} | Update an Item |
| DELETE | /vaults/{vaultUuid}/items/{itemUuid} | Delete an Item |
| PATCH | /vaults/{vaultUuid}/items/{itemUuid} | Update a subset of Item attributes |
| GET | /vaults/{vaultUuid}/items/{itemUuid}/files | Get all the files inside an Item |
| GET | /vaults/{vaultUuid}/items/{itemUuid}/files/{fileUuid} | Get the details of a File |
| GET | /vaults/{vaultUuid}/items/{itemUuid}/files/{fileUuid}/content | Get the content of a File |
heartbeat
| Method | Path | Description |
|---|---|---|
| GET | /heartbeat | Ping the server for liveness |
health
| Method | Path | Description |
|---|---|---|
| GET | /health | Get state of the server and its dependencies. |
metrics
| Method | Path | Description |
|---|---|---|
| GET | /metrics | Query server for exposed Prometheus metrics |
Enhanced Skill Content
Question Mapping
- "What vaults do I have access to?" -> GET /vaults
- "Show me the details of a specific vault" -> GET /vaults/{vaultUuid}
- "List all items in a vault" -> GET /vaults/{vaultUuid}/items
- "Find items matching a title in a vault" -> GET /vaults/{vaultUuid}/items (with filter param)
- "Get a specific item's full details including fields and sections" -> GET /vaults/{vaultUuid}/items/{itemUuid}
- "Create a new login item in a vault" -> POST /vaults/{vaultUuid}/items
- "Update an existing item completely" -> PUT /vaults/{vaultUuid}/items/{itemUuid}
- "Change just one field on an item without replacing everything" -> PATCH /vaults/{vaultUuid}/items/{itemUuid}
- "Delete an item from a vault" -> DELETE /vaults/{vaultUuid}/items/{itemUuid}
- "List files attached to an item" -> GET /vaults/{vaultUuid}/items/{itemUuid}/files
- "Download a specific file's content" -> GET /vaults/{vaultUuid}/items/{itemUuid}/files/{fileUuid}/content
- "Is the Connect server running?" -> GET /heartbeat
- "Check the health and dependency status of the server" -> GET /health
- "Show recent activity and audit events" -> GET /activity
Response Tips
- Vaults/Items listing: Responses are arrays; use
filterparam (SCIM-style, e.g.title eq "MyLogin") to narrow results server-side rather than fetching all and filtering client-side. - Single vault/item: Returns full object with nested
sections,fields, andurlsarrays; credentials live insidefields-- look forpurposeorlabelto identify username/password. - Files: Set
inline_files=trueto get base64-encodedcontentinline; without it you get metadata only and must call the/contentendpoint separately. Watch for 413 errors on large files. - DELETE: Returns 204 with no body on success -- do not attempt to parse a response.
- Health: The
dependenciesarray contains objects withserviceandstatusfields indicating backend connectivity (e.g., to the 1Password service). - Activity: Supports
limit/offsetpagination; default limit is 50. Iterate by incrementing offset until fewer results than limit are returned.
Anomaly Flags
- 401 on any endpoint: Bearer token is missing, expired, or invalid -- surface immediately and suggest checking the
OP_CONNECT_TOKENenvironment variable. - 403 Forbidden: The token lacks permission for the target vault -- flag that the Connect server's token-vault access scope needs updating in 1Password.
- 413 Payload Too Large: Returned on file endpoints when content exceeds size limits -- alert the user and suggest using the
/contentstreaming endpoint instead ofinline_files. - Health dependency degradation: If
GET /healthreturns dependencies with non-healthy status, proactively warn that the Connect server cannot reach the 1Password backend. - Heartbeat failure: If
GET /heartbeatreturns non-200 or times out, surface that the Connect server may be down before attempting any other operations. - Empty vault list: If
GET /vaultsreturns an empty array, flag that the Connect token may not have any vaults assigned to it. - 404 on item operations: Could indicate the item was deleted externally or the UUID is stale -- suggest re-listing items to confirm existence.
Playbook
1. Retrieve a Password from a Known Vault
GET /vaultsto list available vaults and find the target vault'sid.GET /vaults/{vaultUuid}/items?filter=title eq "ServiceName"to find the item by title.GET /vaults/{vaultUuid}/items/{itemUuid}to get full item details including credential fields.- Parse the
fieldsarray: look for entries withpurpose: "USERNAME"andpurpose: "PASSWORD".
2. Create a New Login Item
GET /vaultsto identify the destination vault UUID.POST /vaults/{vaultUuid}/itemswith a body containingcategory: "LOGIN", atitle, and afieldsarray with username and password field objects.- Confirm success by checking for a 200 response with the created item's
id. - Optionally
GET /vaults/{vaultUuid}/items/{itemUuid}to verify the item was stored correctly.
3. Rotate a Secret
GET /vaults/{vaultUuid}/items?filter=title eq "TargetItem"to find the item.GET /vaults/{vaultUuid}/items/{itemUuid}to retrieve the current item structure.PATCH /vaults/{vaultUuid}/items/{itemUuid}with an update operation targeting the password field'svalueto set the new secret.- Verify with
GET /vaults/{vaultUuid}/items/{itemUuid}that the field was updated.
4. Download a File Attachment
GET /vaults/{vaultUuid}/items/{itemUuid}/filesto list all attached files and get their UUIDs and names.GET /vaults/{vaultUuid}/items/{itemUuid}/files/{fileUuid}?inline_files=trueto get metadata with base64 content inline, ORGET /vaults/{vaultUuid}/items/{itemUuid}/files/{fileUuid}/contentto stream the raw file content directly.
5. Health Check and Diagnostics
GET /heartbeatto confirm the Connect server process is responding.GET /healthto check server version and dependency connectivity status.GET /metricsto pull Prometheus-format metrics for monitoring integration.- If any check fails, inspect Connect server logs and verify network connectivity to the 1Password service.
Response Tips
- Check response schemas in references/api-spec.lap for field details
- List endpoints may support pagination; check for limit, offset, or cursor params
- Create/update endpoints typically return the created/updated object
References
- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas
Generated from the official API spec by LAP