arazzo: 1.0.1 info: title: Ramp Inspect Transaction Detail summary: List transactions in a date range, pick the first, and retrieve its full record. description: >- The core read chain the Ramp Developer API supports. The workflow lists transactions bounded by a from/to date window, selects the first transaction id from the page, and then retrieves the complete transaction record so downstream automation can read the merchant, amount, state, and the card and user the spend is attributed to. 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: rampApi url: ../openapi/ramp-developer-api-openapi.yml type: openapi workflows: - workflowId: inspect-transaction-detail summary: Resolve a single transaction from a date-bounded list into its full record. description: >- Lists transactions within a date window, captures the first transaction id, and retrieves that transaction's complete detail. inputs: type: object required: - fromDate - toDate properties: accessToken: type: string description: OAuth2 client-credentials bearer token with the transactions:read scope. fromDate: type: string format: date description: Inclusive lower bound for the transaction window (YYYY-MM-DD). toDate: type: string format: date description: Inclusive upper bound for the transaction window (YYYY-MM-DD). steps: - stepId: listTransactions description: >- List transactions for the organization bounded by the supplied from and to dates, returning a page of records. operationId: listTransactions parameters: - name: Authorization in: header value: Bearer $inputs.accessToken - name: from_date in: query value: $inputs.fromDate - name: to_date in: query value: $inputs.toDate successCriteria: - condition: $statusCode == 200 outputs: firstTransactionId: $response.body#/data/0/id nextPage: $response.body#/page/next - stepId: getTransaction description: >- Retrieve the complete transaction record for the first transaction returned by the list step. operationId: getTransaction parameters: - name: Authorization in: header value: Bearer $inputs.accessToken - name: id in: path value: $steps.listTransactions.outputs.firstTransactionId successCriteria: - condition: $statusCode == 200 outputs: transactionId: $response.body#/id amount: $response.body#/amount merchantName: $response.body#/merchant_name state: $response.body#/state cardId: $response.body#/card_id userId: $response.body#/user_id outputs: transactionId: $steps.getTransaction.outputs.transactionId amount: $steps.getTransaction.outputs.amount merchantName: $steps.getTransaction.outputs.merchantName cardId: $steps.getTransaction.outputs.cardId userId: $steps.getTransaction.outputs.userId