@itentialopensource/adapter-onepassword_connect
Version:
This adapter integrates with system described as: 1passwordConnect.
1,658 lines (1,655 loc) • 49.1 kB
YAML
openapi: 3.0.0
info:
title: 1Password Connect
description: REST API interface for 1Password Connect.
contact:
name: 1Password Integrations
url: https://support.1password.com/
email: support@1password.com
version: '1.5.7'
servers:
- url: http://1password.local
variables: {}
- url: http://localhost:8080/v1
variables: {}
- url: http://localhost:8080
variables: {}
paths:
/vaults/{vaultUuid}/items:
get:
tags:
- Items
summary: GetVaultItems
description: ''
operationId: GetVaultItems
parameters:
- name: vaultUuid
in: path
description: The UUID of the Vault to fetch Items from
required: true
style: simple
schema:
pattern: ^[\da-z]{26}$
type: string
- name: filter
in: query
description: Filter the Item collection based on Item name using SCIM eq filter
style: form
explode: true
schema:
type: string
example: title eq "Some Item Name"
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Item'
description: ''
'401':
description: Invalid or missing token
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: Invalid token signature
status: 401
example:
message: Invalid token signature
status: 401
'404':
description: Vault not found
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: vault {vaultUuid} not found
status: 404
example:
message: vault {vaultUuid} not found
status: 404
deprecated: false
security:
- ConnectToken: []
post:
tags:
- Items
summary: CreateVaultItem
description: ''
operationId: CreateVaultItem
parameters:
- name: vaultUuid
in: path
description: The UUID of the Vault to create an Item in
required: true
style: simple
schema:
pattern: ^[\da-z]{26}$
type: string
requestBody:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/FullItem'
required: false
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/FullItem'
'400':
description: Unable to create item due to invalid input
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: Invalid item category
status: 400
example:
message: Invalid item category
status: 400
'401':
description: Invalid or missing token
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: Invalid token signature
status: 401
example:
message: Invalid token signature
status: 401
'403':
description: Unauthorized access
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: vault {vaultUuid} is not in scope
status: 403
example:
message: vault {vaultUuid} is not in scope
status: 403
'404':
description: Item not found
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: vault {vaultUuid} not found
status: 404
examples:
vaultNotFound:
summary: Vault not found
value:
message: vault {vaultUuid} not found
status: 404
deprecated: false
security:
- ConnectToken: []
/vaults/{vaultUuid}/items/{itemUuid}:
delete:
tags:
- Items
summary: DeleteVaultItem
description: ''
operationId: DeleteVaultItem
parameters:
- name: vaultUuid
in: path
description: The UUID of the Vault the item is in
required: true
style: simple
schema:
pattern: ^[\da-z]{26}$
type: string
- name: itemUuid
in: path
description: The UUID of the Item to update
required: true
style: simple
schema:
pattern: ^[\da-z]{26}$
type: string
responses:
'204':
description: Successfully deleted an item
headers: {}
content: {}
'401':
description: Invalid or missing token
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: Invalid token signature
status: 401
example:
message: Invalid token signature
status: 401
'403':
description: Unauthorized access
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: vault {vaultUuid} is not in scope
status: 403
example:
message: vault {vaultUuid} is not in scope
status: 403
'404':
description: Item not found
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: vault {vaultUuid} not found
status: 404
examples:
vaultNotFound:
summary: Vault not found
value:
message: vault {vaultUuid} not found
status: 404
deprecated: false
security:
- ConnectToken: []
get:
tags:
- Items
summary: GetVaultItemById
description: ''
operationId: GetVaultItemById
parameters:
- name: vaultUuid
in: path
description: The UUID of the Vault to fetch Item from
required: true
style: simple
schema:
pattern: ^[\da-z]{26}$
type: string
- name: itemUuid
in: path
description: The UUID of the Item to fetch
required: true
style: simple
schema:
pattern: ^[\da-z]{26}$
type: string
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/FullItem'
'401':
description: Invalid or missing token
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: Invalid token signature
status: 401
example:
message: Invalid token signature
status: 401
'403':
description: Unauthorized access
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: vault {vaultUuid} is not in scope
status: 403
example:
message: vault {vaultUuid} is not in scope
status: 403
'404':
description: Item not found
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: item {itemUuid} not found
status: 404
examples:
itemNotFound:
summary: Item not found
value:
message: item {itemUuid} not found
status: 404
vaultNotFound:
summary: Vault not found
value:
message: vault {vaultUuid} not found
status: 404
deprecated: false
security:
- ConnectToken: []
patch:
tags:
- Items
summary: PatchVaultItem
description: >
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: PatchVaultItem
parameters:
- name: vaultUuid
in: path
description: The UUID of the Vault the item is in
required: true
style: simple
schema:
pattern: ^[\da-z]{26}$
type: string
- name: itemUuid
in: path
description: The UUID of the Item to update
required: true
style: simple
schema:
pattern: ^[\da-z]{26}$
type: string
requestBody:
description: ''
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Patch'
description: ''
examples:
PatchItemField:
summary: Add a new ItemField to the Item
value:
- op: add
path: /fields
value:
label: New Field
type: string
value: hunter2
PatchItemFieldWithID:
summary: Modify or remove an ItemField.
value:
- op: replace
path: /fields/r9qxq7xnhfhukoxsc8ymqr0y11
value:
label: Replacement Title
type: string
value: new value
- op: remove
path: /fields/h2nl155dshi043yse7wa3u1hs7
ReplaceAllAttributes:
summary: Replace an entire Item with new fields. Equivalent to a PUT request.
value:
- op: replace
path: /
value:
'...': Any attr from FullItem schema
favorite: true
tags:
- tag1
- tag2
title: New Title
required: false
responses:
'200':
description: OK - Item updated. If no Patch operations were provided, Item is unmodified.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/FullItem'
'401':
description: Invalid or missing token
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: Invalid token signature
status: 401
example:
message: Invalid token signature
status: 401
'403':
description: Unauthorized access
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: vault {vaultUuid} is not in scope
status: 403
example:
message: vault {vaultUuid} is not in scope
status: 403
'404':
description: Item not found
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: item {itemUuid} not found
status: 404
examples:
itemNotFound:
summary: Item not found
value:
message: item {itemUuid} not found
status: 404
vaultNotFound:
summary: Vault not found
value:
message: vault {vaultUuid} not found
status: 404
deprecated: false
security:
- ConnectToken: []
put:
tags:
- Items
summary: UpdateVaultItem
description: ''
operationId: UpdateVaultItem
parameters:
- name: vaultUuid
in: path
description: The UUID of the Item's Vault
required: true
style: simple
schema:
pattern: ^[\da-z]{26}$
type: string
- name: itemUuid
in: path
description: The UUID of the Item to update
required: true
style: simple
schema:
pattern: ^[\da-z]{26}$
type: string
requestBody:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/FullItem'
required: false
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/FullItem'
'400':
description: Unable to create item due to invalid input
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: The item doesn't have a {example field name} field.
status: 400
example:
message: The item doesn't have a {example field name} field.
status: 400
'401':
description: Invalid or missing token
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: Invalid token signature
status: 401
example:
message: Invalid token signature
status: 401
'403':
description: Unauthorized access
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: vault {vaultUuid} is not in scope
status: 403
example:
message: vault {vaultUuid} is not in scope
status: 403
'404':
description: Item not found
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: item {itemUuid} not found
status: 404
examples:
itemNotFound:
summary: Item not found
value:
message: item {itemUuid} not found
status: 404
vaultNotFound:
summary: Vault not found
value:
message: vault {vaultUuid} not found
status: 404
deprecated: false
security:
- ConnectToken: []
/vaults:
get:
tags:
- Vaults
summary: GetVaults
description: ''
operationId: GetVaults
parameters:
- name: filter
in: query
description: Filter the Vault collection based on Vault name using SCIM eq filter
style: form
explode: true
schema:
type: string
example: name eq "Some Vault Name"
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Vault'
description: ''
'401':
description: Invalid or missing token
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: Invalid token signature
status: 401
example:
message: Invalid token signature
status: 401
deprecated: false
security:
- ConnectToken: []
/vaults/{vaultUuid}:
get:
tags:
- Vaults
summary: GetVaultById
description: ''
operationId: GetVaultById
parameters:
- name: vaultUuid
in: path
description: The UUID of the Vault to fetch Items from
required: true
style: simple
schema:
pattern: ^[\da-z]{26}$
type: string
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/Vault'
'401':
description: Invalid or missing token
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: Invalid token signature
status: 401
example:
message: Invalid token signature
status: 401
'403':
description: Unauthorized access
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: vault {vaultUuid} is not in scope
status: 403
example:
message: vault {vaultUuid} is not in scope
status: 403
'404':
description: Vault not found
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: vault {itemUuid} not found
status: 404
example:
message: vault {itemUuid} not found
status: 404
deprecated: false
security:
- ConnectToken: []
/activity:
get:
tags:
- Activity
summary: GetApiActivity
description: ''
operationId: GetApiActivity
parameters:
- name: limit
in: query
description: How many API Events should be retrieved in a single request.
style: form
explode: true
schema:
type: integer
format: int32
default: 50
example: 10
- name: offset
in: query
description: How far into the collection of API Events should the response start
style: form
explode: true
schema:
type: integer
format: int32
default: 0
example: 50
responses:
'200':
description: OK
headers:
Content-Range:
description: An decription of what part of the collection has been returned as well as the total size.
content:
text/plain:
schema:
type: string
description: An decription of what part of the collection has been returned as well as the total size.
example: 1-50/1134
example: 1-50/1134
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/APIRequest'
description: ''
'401':
description: Invalid or missing token
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: Invalid token signature
status: 401
example:
message: Invalid token signature
status: 401
deprecated: false
security:
- ConnectToken: []
/health:
get:
tags:
- Health
summary: GetServerHealth
description: ''
operationId: GetServerHealth
parameters: []
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/HealthResponse'
- example:
dependencies:
- service: sync
status: TOKEN_NEEDED
- message: Connected to./1password.sqlite
service: sqlite
status: ACTIVE
name: 1Password Connect API
version: 1.2.1
examples:
WaitingForAPIRequest:
summary: API server waiting for first authenticated request
value:
dependencies:
- service: sync
status: TOKEN_NEEDED
- message: Connected to./1password.sqlite
service: sqlite
status: ACTIVE
name: 1Password Connect API
version: 1.2.1
deprecated: false
/heartbeat:
get:
tags:
- Health
summary: GetHeartbeat
description: ''
operationId: GetHeartbeat
parameters: []
responses:
'200':
description: OK
headers: {}
content:
text/plain:
schema:
type: string
deprecated: false
/metrics:
get:
tags:
- Metrics
summary: GetPrometheusMetrics
description: See Prometheus documentation for a complete data model.
operationId: GetPrometheusMetrics
parameters: []
responses:
'200':
description: Successfully returned Prometheus metrics
headers: {}
content:
text/plain:
schema:
type: string
deprecated: false
/vaults/{vaultUuid}/items/{itemUuid}/files:
get:
tags:
- Files
summary: GetItemFiles
description: ''
operationId: GetItemFiles
parameters:
- name: vaultUuid
in: path
description: The UUID of the Vault to fetch Items from
required: true
style: simple
schema:
type: string
format: uuid
- name: itemUuid
in: path
description: The UUID of the Item to fetch files from
required: true
style: simple
schema:
type: string
format: uuid
- name: inline_files
in: query
description: Tells server to return the base64-encoded file contents in the response.
style: form
explode: true
schema:
type: boolean
example: true
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/File'
description: ''
'401':
description: Invalid or missing token
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: Invalid token signature
status: 401
example:
message: Invalid token signature
status: 401
'404':
description: Item not found
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: item {itemUuid} not found
status: 404
examples:
itemNotFound:
summary: Item not found
value:
message: item {itemUuid} not found
status: 404
vaultNotFound:
summary: Vault not found
value:
message: vault {vaultUuid} not found
status: 404
'413':
description: File content too large to display
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: File is too large to inline in request. Use the /v1/vaults/{vaultUUID}/items/{itemUUID}/files/{fileUUID}/content endpoint instead.
status: 413
examples:
fileTooLarge:
summary: File too large
value:
message: File is too large to inline in request. Use the /v1/vaults/{vaultUUID}/items/{itemUUID}/files/{fileUUID}/content endpoint instead.
status: 413
deprecated: false
security:
- ConnectToken: []
/vaults/{vaultUuid}/items/{itemUuid}/files/{fileUuid}:
get:
tags:
- Files
summary: GetDetailsOfFileById
description: ''
operationId: GetDetailsOfFileById
parameters:
- name: vaultUuid
in: path
description: The UUID of the Vault to fetch Item from
required: true
style: simple
schema:
type: string
format: uuid
- name: itemUuid
in: path
description: The UUID of the Item to fetch File from
required: true
style: simple
schema:
type: string
format: uuid
- name: fileUuid
in: path
description: The UUID of the File to fetch
required: true
style: simple
schema:
type: string
format: uuid
- name: inline_files
in: query
description: Tells server to return the base64-encoded file contents in the response.
style: form
explode: true
schema:
type: boolean
example: true
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/File'
'401':
description: Invalid or missing token
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: Invalid token signature
status: 401
example:
message: Invalid token signature
status: 401
'403':
description: Unauthorized access
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: vault {vaultUuid} is not in scope
status: 403
example:
message: vault {vaultUuid} is not in scope
status: 403
'404':
description: File not found
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: file {fileUuid} not found
status: 404
examples:
fileNotFound:
summary: File not found
value:
message: file {fileUuid} not found
status: 404
itemNotFound:
summary: Item not found
value:
message: item {itemUuid} not found
status: 404
vaultNotFound:
summary: Vault not found
value:
message: vault {vaultUuid} not found
status: 404
'413':
description: File content too large to display
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: File is too large to inline in request. Use the /v1/vaults/{vaultUUID}/items/{itemUUID}/files/{fileUUID}/content endpoint instead.
status: 413
examples:
fileTooLarge:
summary: File too large
value:
message: File is too large to inline in request. Use the /v1/vaults/{vaultUUID}/items/{itemUUID}/files/{fileUUID}/content endpoint instead.
status: 413
deprecated: false
security:
- ConnectToken: []
/vaults/{vaultUuid}/items/{itemUuid}/files/{fileUuid}/content:
get:
tags:
- Files
summary: DownloadFileByID
description: ''
operationId: DownloadFileByID
parameters:
- name: vaultUuid
in: path
description: The UUID of the Vault the item is in
required: true
style: simple
schema:
type: string
format: uuid
- name: itemUuid
in: path
description: The UUID of the Item the File is in
required: true
style: simple
schema:
type: string
format: uuid
- name: fileUuid
in: path
description: UUID of the file to get content from
required: true
style: simple
schema:
type: string
responses:
'200':
description: Success
headers:
Content-Disposition:
content:
text/plain:
schema:
type: string
example: attachment; filename="privkey.pem"
example: attachment; filename="privkey.pem"
Content-Length:
content:
text/plain:
schema:
type: string
example: '6432'
example: '6432'
content:
application/octet-stream:
schema:
type: string
format: binary
'401':
description: Invalid or missing token
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: Invalid token signature
status: 401
example:
message: Invalid token signature
status: 401
'404':
description: File not found
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
- example:
message: file {fileUuid} not found
status: 404
examples:
fileNotFound:
summary: File not found
value:
message: file {fileUuid} not found
status: 404
itemNotFound:
summary: Item not found
value:
message: item {itemUuid} not found
status: 404
vaultNotFound:
summary: Vault not found
value:
message: vault {vaultUuid} not found
status: 404
deprecated: false
security:
- ConnectToken: []
components:
schemas:
APIRequest:
title: APIRequest
type: object
properties:
action:
$ref: '#/components/schemas/Action'
actor:
$ref: '#/components/schemas/Actor'
requestId:
type: string
description: The unique id used to identify a single request.
format: uuid
resource:
$ref: '#/components/schemas/Resource'
result:
$ref: '#/components/schemas/Result'
timestamp:
type: string
description: The time at which the request was processed by the server.
format: date-time
readOnly: true
description: Represents a request that was made to the API. Including what Token was used and what resource was accessed.
ErrorResponse:
title: ErrorResponse
type: object
properties:
message:
type: string
description: A message detailing the error
status:
type: integer
description: HTTP Status Code
format: int32
Field:
title: Field
required:
- id
- type
type: object
properties:
entropy:
type: number
description: For fields with a purpose of `PASSWORD` this is the entropy of the value
readOnly: true
generate:
type: boolean
description: If value is not present then a new value should be generated for this field
default: false
id:
type: string
label:
type: string
purpose:
allOf:
- $ref: '#/components/schemas/Purpose'
- description: Some item types, Login and Password, have fields used for autofill. This property indicates that purpose and is required for some item types.
recipe:
allOf:
- $ref: '#/components/schemas/GeneratorRecipe'
- description: The recipe is used in conjunction with the "generate" property to set the character set used to generate a new secure value
section:
$ref: '#/components/schemas/Section'
type:
$ref: '#/components/schemas/Type1'
value:
type: string
File:
title: File
type: object
properties:
content:
type: string
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`.
content_path:
type: string
description: Path of the Connect API that can be used to download the contents of this file.
readOnly: true
id:
type: string
description: ID of the file
name:
type: string
description: Name of the file
section:
allOf:
- $ref: '#/components/schemas/Section1'
- description: For files that are in a section, this field describes the section.
size:
type: integer
description: Size in bytes of the file
format: int32
example:
content: VGhlIGZ1dHVyZSBiZWxvbmdzIHRvIHRoZSBjdXJpb3VzLgo=
content_path: v1/vaults/ionaiwtdvgclrixbt6ztpqcxnq/items/p7eflcy7f5mk7vg6zrzf5rjjyu/files/6r65pjq33banznomn7q22sj44e/content
id: 6r65pjq33banznomn7q22sj44e
name: foo.txt
size: 35
FullItem:
title: FullItem
required:
- category
- vault
type: object
properties:
category:
$ref: '#/components/schemas/Category'
createdAt:
type: string
format: date-time
readOnly: true
favorite:
type: boolean
default: false
id:
pattern: ^[\da-z]{26}$
type: string
lastEditedBy:
type: string
readOnly: true
state:
allOf:
- $ref: '#/components/schemas/State'
- {}
readOnly: true
tags:
type: array
items:
type: string
description: ''
title:
type: string
updatedAt:
type: string
format: date-time
readOnly: true
urls:
type: array
items:
$ref: '#/components/schemas/Url'
description: ''
example:
- href: https://example.com
primary: true
- href: https://example.org
vault:
$ref: '#/components/schemas/Vault1'
version:
type: integer
format: int32
fields:
type: array
items:
$ref: '#/components/schemas/Field'
description: ''
files:
type: array
items:
$ref: '#/components/schemas/File'
description: ''
sections:
type: array
items:
$ref: '#/components/schemas/Section2'
description: ''
GeneratorRecipe:
title: GeneratorRecipe
type: object
properties:
characterSets:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/CharacterSet'
description: ''
excludeCharacters:
type: string
description: List of all characters that should be excluded from generated passwords.
example: abc1
length:
maximum: 64
minimum: 1
type: integer
description: Length of the generated value
format: int32
default: 32
description: The recipe is used in conjunction with the "generate" property to set the character set used to generate a new secure value
Item:
title: Item
required:
- category
- vault
type: object
properties:
category:
$ref: '#/components/schemas/Category'
createdAt:
type: string
format: date-time
readOnly: true
favorite:
type: boolean
default: false
id:
pattern: ^[\da-z]{26}$
type: string
lastEditedBy:
type: string
readOnly: true
state:
allOf:
- $ref: '#/components/schemas/State'
- {}
readOnly: true
tags:
type: array
items:
type: string
description: ''
title:
type: string
updatedAt:
type: string
format: date-time
readOnly: true
urls:
type: array
items:
$ref: '#/components/schemas/Url'
description: ''
example:
- href: https://example.com
primary: true
- href: https://example.org
vault:
$ref: '#/components/schemas/Vault1'
version:
type: integer
format: int32
ServiceDependency:
title: ServiceDependency
type: object
properties:
message:
type: string
description: Human-readable message for explaining the current state.
service:
type: string
status:
type: string
description: The state of a registered server dependency.
Vault:
title: Vault
type: object
properties:
attributeVersion:
type: integer
description: The vault version
format: int32
contentVersion:
type: integer
description: The version of the vault contents
format: int32
createdAt:
type: string
format: date-time
readOnly: true
description:
type: string
id:
pattern: ^[\da-z]{26}$
type: string
items:
type: integer
description: Number of active items in the vault
format: int32
name:
type: string
type:
$ref: '#/components/schemas/Type2'
updatedAt:
type: string
format: date-time
readOnly: true
Action:
title: Action
enum:
- READ
- CREATE
- UPDATE
- DELETE
type: string
Actor:
title: Actor
type: object
properties:
account:
type: string
id:
type: string
format: uuid
jti:
type: string
requestIp:
type: string
userAgent:
type: string
Category:
title: 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
CharacterSet:
title: CharacterSet
enum:
- LETTERS
- DIGITS
- SYMBOLS
type: string
HealthResponse:
title: HealthResponse
required:
- name
- version
type: object
properties:
dependencies:
type: array
items:
$ref: '#/components/schemas/ServiceDependency'
description: ''
name:
type: string
version:
type: string
description: The Connect server's version
Item2:
title: Item2
type: object
properties:
id:
pattern: ^[\da-z]{26}$
type: string
Op:
title: Op
enum:
- add
- remove
- replace
type: string
Patch:
title: Patch
required:
- op
- path
type: object
properties:
op:
$ref: '#/components/schemas/Op'
path:
type: string
description: An RFC6901 JSON Pointer pointing to the Item document, an Item Attribute, and Item Field by Field ID, or an Item Field Attribute
example: /fields/06gnn2b95example10q91512p5/label
value:
type: object
Purpose:
title: 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.
Resource:
title: Resource
type: object
properties:
item:
$ref: '#/components/schemas/Item2'
itemVersion:
type: integer
format: int32
type:
$ref: '#/components/schemas/Type'
vault:
$ref: '#/components/schemas/Vault3'
Result:
title: Result
enum:
- SUCCESS
- DENY
type: string
Section:
title: Section
type: object
properties:
id:
type: string
Section1:
title: Section1
type: object
properties:
id:
type: string
description: For files that are in a section, this field describes the section.
Section2:
title: Section2
type: object
properties:
id:
type: string
label:
type: string
State:
title: State
enum:
- ARCHIVED
- DELETED
type: string
Type:
title: Type
enum:
- ITEM
- VAULT
type: string
Type1:
title: Type1
enum:
- STRING
- EMAIL
- CONCEALED
- URL
- TOTP
- DATE
- MONTH_YEAR
- MENU
type: string
Type2:
title: Type2
enum:
- USER_CREATED
- PERSONAL
- EVERYONE
- TRANSFER
type: string
Url:
title: Url
required:
- href
type: object
properties:
href:
type: string
label:
type: string
primary:
type: boolean
Vault1:
title: Vault1
required:
- id
type: object
properties:
id:
pattern: ^[\da-z]{26}$
type: string
Vault3:
title: Vault3
type: object
properties:
id:
pattern: ^[\da-z]{26}$
type: string
securitySchemes:
ConnectToken:
type: http
scheme: bearer
bearerFormat: jwt
security: []
tags:
- name: Items
description: Access and manage items inside 1Password Vaults
- name: Vaults
description: Access 1Password Vaults
- name: Activity
description: Access API Request Activity
- name: Health
description: ''
- name: Metrics
description: ''
- name: Files
description: ''