arazzo: 1.0.1 info: title: 1Password Read an Item Secret summary: Resolve a vault, locate an item by title, and read its full field values. description: >- The canonical 1Password Connect read pattern for fetching a secret without knowing its UUID up front. The workflow lists the authorized vaults and selects the target vault by name, filters the items in that vault down to a single match by title, and then retrieves the full item including every field and value. Each step spells out its request inline so the flow can be read and executed without opening the underlying OpenAPI description. version: 1.0.0 sourceDescriptions: - name: connectApi url: ../openapi/1password-connect-openapi.yml type: openapi workflows: - workflowId: read-item-secret summary: Find an item by vault name and item title, then read its full secret values. description: >- Resolves the target vault from the list of authorized vaults, searches that vault for an item whose title matches the supplied value, and reads the full item details so its field values can be consumed. inputs: type: object required: - vaultName - itemTitle properties: vaultName: type: string description: The name of the vault that holds the target item. itemTitle: type: string description: The title of the item to read (e.g. "Production Database"). steps: - stepId: listVaults description: >- List every vault the Connect server is authorized to access so the target vault can be matched by name. operationId: listVaults parameters: - name: filter in: query value: title eq "$inputs.vaultName" successCriteria: - condition: $statusCode == 200 outputs: vaultId: $response.body#/0/id - stepId: findItem description: >- List the items in the resolved vault filtered to the single item whose title matches the supplied value. operationId: listItems parameters: - name: vaultUuid in: path value: $steps.listVaults.outputs.vaultId - name: filter in: query value: title eq "$inputs.itemTitle" successCriteria: - condition: $statusCode == 200 outputs: itemId: $response.body#/0/id - stepId: readItem description: >- Retrieve the full item, including all fields, sections, and values, using the resolved vault and item identifiers. operationId: getItemById parameters: - name: vaultUuid in: path value: $steps.listVaults.outputs.vaultId - name: itemUuid in: path value: $steps.findItem.outputs.itemId successCriteria: - condition: $statusCode == 200 outputs: itemId: $response.body#/id title: $response.body#/title category: $response.body#/category fields: $response.body#/fields outputs: vaultId: $steps.listVaults.outputs.vaultId itemId: $steps.readItem.outputs.itemId fields: $steps.readItem.outputs.fields