Ramp · Arazzo Workflow

Ramp Inspect Transaction Detail

Version 1.0.0

List transactions in a date range, pick the first, and retrieve its full record.

1 workflow 1 source API 1 provider
View Spec View on GitHub FinanceSpend ManagementCorporate CardsExpense ManagementAccounts PayableBill PayAccountingReimbursementsArazzoWorkflows

Provider

ramp

Workflows

inspect-transaction-detail
Resolve a single transaction from a date-bounded list into its full record.
Lists transactions within a date window, captures the first transaction id, and retrieves that transaction's complete detail.
2 steps inputs: accessToken, fromDate, toDate outputs: amount, cardId, merchantName, transactionId, userId
1
listTransactions
listTransactions
List transactions for the organization bounded by the supplied from and to dates, returning a page of records.
2
getTransaction
getTransaction
Retrieve the complete transaction record for the first transaction returned by the list step.

Source API Descriptions

Arazzo Workflow Specification

ramp-inspect-transaction-detail-workflow.yml Raw ↑
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