1Password Connect

Secrets management and password manager API

developer.1password.com/docs/connect ↗
Version
1.5.7
OpenAPI
3.0.2
Endpoints
15
Schemas
18
Updated
3 days ago
Security security secrets passwords
Use this API in your AI agent

Query structured spec data via REST or MCP. Get exactly what your agent needs.

Get API Key

Server URLs

http://localhost:8080/v1

Authentication

bearer

Endpoints

Clear filters

Items 1 endpoints

PATCH /vaults/{vaultUuid}/items/{itemUuid}

Applies a modified [RFC6902 JSON Patch](https://tools.ietf.org/html/rfc6902) document to an Item or ItemField. This endpoint only supports `add`, `remove` and `replace` operations. When modifying a specific ItemField, the ItemField's ID in the `path` attribute of the operation object: `/fields/{fieldId}`

operationId: Items_updateSubsetAttributes

Parameters

Name In Required Type Description
vaultUuid path required string The UUID of the Vault the item is in
itemUuid path required string The UUID of the Item to update

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/Patch"
      },
      "examples": {
        "PatchItemAttr": {
          "value": [
            {
              "op": "replace",
              "path": "/favorite",
              "value": true
            },
            {
              "op": "remove",
              "path": "/tags/1"
            }
          ],
          "summary": "Update specific Item attributes"
        },
        "PatchItemField": {
          "value": [
            {
              "op": "add",
              "path": "/fields",
              "value": {
                "type": "string",
                "label": "New Field",
                "value": "hunter2"
              }
            }
          ],
          "summary": "Add a new ItemField to the Item"
        },
        "PatchItemFieldAttr": {
          "value": [
            {
              "op": "add",
              "path": "/fields/s2ju540zlna8bdj4uro7sj64rk/label",
              "value": "New field name"
            },
            {
              "op": "remove",
              "path": "/fields/s2ju540zlna8bdj4uro7sj64rk/value"
            }
          ],
          "summary": "Modify a specific ItemField attribute."
        },
        "PatchItemFieldWithID": {
          "value": [
            {
              "op": "replace",
              "path": "/fields/r9qxq7xnhfhukoxsc8ymqr0y11",
              "value": {
                "type": "string",
                "label": "Replacement Title",
                "value": "new value"
              }
            },
            {
              "op": "remove",
              "path": "/fields/h2nl155dshi043yse7wa3u1hs7"
            }
          ],
          "summary": "Modify or remove an ItemField."
        },
        "ReplaceAllAttributes": {
          "value": [
            {
              "op": "replace",
              "path": "/",
              "value": {
                "...": "Any attr from FullItem schema",
                "tags": [
                  "tag1",
                  "tag2"
                ],
                "title": "New Title",
                "favorite": true
              }
            }
          ],
          "summary": "Replace an entire Item with new fields. Equivalent to a PUT request."
        }
      }
    }
  }
}

Responses

200 OK - Item updated. If no Patch operations were provided, Item is unmodified.
401 Invalid or missing token
403 Unauthorized access
404 Item not found
PATCH /vaults/{vaultUuid}/items/{itemUuid}

Schemas

object APIRequest
{
  "type": "object",
  "properties": {
    "actor": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid"
        },
        "jti": {
          "type": "string"
        },
        "account": {
          "type": "string"
        },
        "requestIp": {
          "type": "string"
        },
        "userAgent": {
          "type": "string"
        }
      }
    },
    "action": {
      "enum": [
        "READ",
        "CREATE",
        "UPDATE",
        "DELETE"
      ],
      "type": "string"
    },
    "result": {
      "enum": [
        "SUCCESS",
        "DENY"
      ],
      "type": "string"
    },
    "resource": {
      "type": "object",
      "properties": {
        "item": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string",
              "pattern": "^[\\da-z]{26}$"
            }
          }
        },
        "type": {
          "enum": [
            "ITEM",
            "VAULT"
          ],
          "type": "string"
        },
        "vault": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string",
              "pattern": "^[\\da-z]{26}$"
            }
          }
        },
        "itemVersion": {
          "type": "integer"
        }
      }
    },
    "requestId": {
      "type": "string",
      "format": "uuid",
      "description": "The unique id used to identify a single request."
    },
    "timestamp": {
      "type": "string",
      "format": "date-time",
      "readOnly": true,
      "description": "The time at which the request was processed by the server."
    }
  },
  "description": "Represents a request that was made to the API. Including what Token was used and what resource was accessed."
}
array ActivityGetApiRequestsResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/APIRequest"
  }
}
object ErrorResponse
{
  "type": "object",
  "properties": {
    "status": {
      "type": "integer",
      "description": "HTTP Status Code"
    },
    "message": {
      "type": "string",
      "description": "A message detailing the error"
    }
  }
}
object Field
{
  "type": "object",
  "required": [
    "id",
    "type"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "type": {
      "enum": [
        "STRING",
        "EMAIL",
        "CONCEALED",
        "URL",
        "TOTP",
        "DATE",
        "MONTH_YEAR",
        "MENU"
      ],
      "type": "string",
      "default": "STRING"
    },
    "label": {
      "type": "string"
    },
    "value": {
      "type": "string"
    },
    "recipe": {
      "$ref": "#/components/schemas/GeneratorRecipe"
    },
    "entropy": {
      "type": "number",
      "readOnly": true,
      "description": "For fields with a purpose of `PASSWORD` this is the entropy of the value"
    },
    "purpose": {
      "enum": [
        "",
        "USERNAME",
        "PASSWORD",
        "NOTES"
      ],
      "type": "string",
      "description": "Some item types, Login and Password, have fields used for autofill. This property indicates that purpose and is required for some item types."
    },
    "section": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      }
    },
    "generate": {
      "type": "boolean",
      "default": false,
      "description": "If value is not present then a new value should be generated for this field"
    }
  }
}
object File
{
  "type": "object",
  "example": {
    "id": "6r65pjq33banznomn7q22sj44e",
    "name": "foo.txt",
    "size": 35,
    "content": "VGhlIGZ1dHVyZSBiZWxvbmdzIHRvIHRoZSBjdXJpb3VzLgo=",
    "content_path": "v1/vaults/ionaiwtdvgclrixbt6ztpqcxnq/items/p7eflcy7f5mk7vg6zrzf5rjjyu/files/6r65pjq33banznomn7q22sj44e/content"
  },
  "properties": {
    "id": {
      "type": "string",
      "description": "ID of the file"
    },
    "name": {
      "type": "string",
      "description": "Name of the file"
    },
    "size": {
      "type": "integer",
      "description": "Size in bytes of the file"
    },
    "content": {
      "type": "string",
      "format": "byte",
      "description": "Base64-encoded contents of the file. Only set if size <= OP_MAX_INLINE_FILE_SIZE_KB kb and `inline_files` is set to `true`."
    },
    "section": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        }
      },
      "description": "For files that are in a section, this field describes the section."
    },
    "content_path": {
      "type": "string",
      "readOnly": true,
      "description": "Path of the Connect API that can be used to download the contents of this file."
    }
  }
}
array FilesGetAllFilesInsideItemResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/File"
  }
}
string FilesGetContentResponse
{
  "type": "string",
  "format": "binary"
}
object FullItem
{
  "allOf": [
    {
      "$ref": "#/components/schemas/Item"
    },
    {
      "type": "object",
      "properties": {
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/File"
          }
        },
        "fields": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/Field"
          }
        },
        "sections": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "label": {
                "type": "string"
              }
            }
          }
        }
      }
    }
  ]
}
object GeneratorRecipe
{
  "type": "object",
  "properties": {
    "length": {
      "type": "integer",
      "default": 32,
      "maximum": 64,
      "minimum": 1,
      "description": "Length of the generated value"
    },
    "characterSets": {
      "type": "array",
      "items": {
        "enum": [
          "LETTERS",
          "DIGITS",
          "SYMBOLS"
        ],
        "type": "string"
      },
      "maximum": 3,
      "minimum": 0,
      "uniqueItems": true
    },
    "excludeCharacters": {
      "type": "string",
      "example": "abc1",
      "description": "List of all characters that should be excluded from generated passwords."
    }
  },
  "description": "The recipe is used in conjunction with the \"generate\" property to set the character set used to generate a new secure value"
}
string HealthCheckLivenessResponse
{
  "type": "string",
  "example": "."
}
object HealthServerStateCheckResponse
{
  "type": "object",
  "required": [
    "name",
    "version"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "version": {
      "type": "string",
      "description": "The Connect server's version"
    },
    "dependencies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ServiceDependency"
      }
    }
  }
}
object Item
{
  "type": "object",
  "required": [
    "vault",
    "category"
  ],
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[\\da-z]{26}$"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "urls": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "href"
        ],
        "properties": {
          "href": {
            "type": "string",
            "format": "url"
          },
          "label": {
            "type": "string"
          },
          "primary": {
            "type": "boolean"
          }
        }
      },
      "example": [
        {
          "href": "https://example.com",
          "primary": true
        },
        {
          "href": "https://example.org"
        }
      ]
    },
    "state": {
      "enum": [
        "ARCHIVED",
        "DELETED"
      ],
      "type": "string",
      "readOnly": true
    },
    "title": {
      "type": "string"
    },
    "vault": {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "pattern": "^[\\da-z]{26}$"
        }
      }
    },
    "version": {
      "type": "integer"
    },
    "category": {
      "enum": [
        "LOGIN",
        "PASSWORD",
        "API_CREDENTIAL",
        "SERVER",
        "DATABASE",
        "CREDIT_CARD",
        "MEMBERSHIP",
        "PASSPORT",
        "SOFTWARE_LICENSE",
        "OUTDOOR_LICENSE",
        "SECURE_NOTE",
        "WIRELESS_ROUTER",
        "BANK_ACCOUNT",
        "DRIVER_LICENSE",
        "IDENTITY",
        "REWARD_PROGRAM",
        "DOCUMENT",
        "EMAIL_ACCOUNT",
        "SOCIAL_SECURITY_NUMBER",
        "MEDICAL_RECORD",
        "SSH_KEY",
        "CUSTOM"
      ],
      "type": "string"
    },
    "favorite": {
      "type": "boolean",
      "default": false
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "lastEditedBy": {
      "type": "string",
      "readOnly": true
    }
  }
}
array ItemsGetAllResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/Item"
  }
}
string MetricsQueryServerMetricsResponse
{
  "type": "string",
  "example": "# HELP go_gc_duration_seconds A summary of the pause duration of garbage collection cycles.\n# TYPE go_gc_duration_seconds summary\ngo_gc_duration_seconds{quantile=\"0\"} 2.9153e-05\ngo_gc_duration_seconds{quantile=\"0.25\"} 6.2832e-05\ngo_gc_duration_seconds{quantile=\"0.5\"} 9.7187e-05\ngo_gc_duration_seconds{quantile=\"0.75\"} 0.000112967\ngo_gc_duration_seconds{quantile=\"1\"} 0.000215819\ngo_gc_duration_seconds_sum 0.001376862\ngo_gc_duration_seconds_count 14\n"
}
array Patch
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "op",
      "path"
    ],
    "properties": {
      "op": {
        "enum": [
          "add",
          "remove",
          "replace"
        ],
        "type": "string"
      },
      "path": {
        "type": "string",
        "example": "/fields/06gnn2b95example10q91512p5/label",
        "description": "An RFC6901 JSON Pointer pointing to the Item document, an Item Attribute, and Item Field by Field ID, or an Item Field Attribute"
      },
      "value": {
        "type": "object"
      }
    }
  }
}
object ServiceDependency
{
  "type": "object",
  "properties": {
    "status": {
      "type": "string"
    },
    "message": {
      "type": "string",
      "description": "Human-readable message for explaining the current state."
    },
    "service": {
      "type": "string"
    }
  },
  "description": "The state of a registered server dependency."
}
object Vault
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[\\da-z]{26}$"
    },
    "name": {
      "type": "string"
    },
    "type": {
      "enum": [
        "USER_CREATED",
        "PERSONAL",
        "EVERYONE",
        "TRANSFER"
      ],
      "type": "string"
    },
    "items": {
      "type": "integer",
      "description": "Number of active items in the vault"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "description": {
      "type": "string"
    },
    "contentVersion": {
      "type": "integer",
      "description": "The version of the vault contents"
    },
    "attributeVersion": {
      "type": "integer",
      "description": "The vault version"
    }
  }
}
array VaultsListAllResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/Vault"
  }
}