arazzo: 1.0.1 info: title: Amazon Neptune openCypher Create and Read Node summary: Create a node over the openCypher HTTP endpoint, then read nodes back to confirm the write. description: >- A write-then-verify pattern over the Neptune openCypher HTTP endpoint. The workflow creates a node with the supplied label and name using a CREATE statement submitted as a form-encoded query, then runs a MATCH query to read nodes back and confirm the write landed. Both requests use the application/x-www-form-urlencoded content type required by the openCypher HTTP endpoint. Every 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: neptuneOpenCypherApi url: ../openapi/amazon-neptune-opencypher-openapi.yml type: openapi workflows: - workflowId: opencypher-create-and-read-node summary: Create a node via openCypher HTTP, then match nodes to confirm. description: >- Creates a node with a CREATE statement, then runs a MATCH query to read nodes back. inputs: type: object required: - label - name properties: label: type: string description: The node label to create (e.g. Person). name: type: string description: The value for the node's name property. steps: - stepId: createNode description: >- Create a node with the supplied label and name property using a CREATE statement on the form-encoded openCypher endpoint. operationId: executeOpenCypherQuery requestBody: contentType: application/x-www-form-urlencoded payload: query: "CREATE (n:$inputs.label {name: '$inputs.name'}) RETURN n" successCriteria: - condition: $statusCode == 200 outputs: created: $response.body#/results - stepId: readNodes description: >- Run a MATCH query to read nodes back and confirm the new node exists. operationId: executeOpenCypherQuery requestBody: contentType: application/x-www-form-urlencoded payload: query: "MATCH (n:$inputs.label) RETURN n LIMIT 10" successCriteria: - condition: $statusCode == 200 outputs: results: $response.body#/results outputs: created: $steps.createNode.outputs.created results: $steps.readNodes.outputs.results