Vantage · Arazzo Workflow

Vantage Create a Resource Report and List Its Resources

Version 1.0.0

Create a Resource Report and retrieve the resource-level cost data it captures.

1 workflow 1 source API 1 provider
View Spec View on GitHub BudgetsCloud PricingCost ManagementCostsFinOpsArazzoWorkflows

Provider

vantage

Workflows

resource-report-and-resources
Create a Resource Report and list the resources it captures.
Creates a Resource Report, fetches it back by token, and retrieves the resource records scoped to that report.
3 steps inputs: apiToken, filter, title, workspaceToken outputs: resourceReportToken, resources
1
createResourceReport
createResourceReport
Create a Resource Report scoped by the supplied VQL filter.
2
getResourceReport
getResourceReport
Read the Resource Report back by token to confirm it persisted.
3
getResources
getResources
Retrieve the resource records captured by the report.

Source API Descriptions

Arazzo Workflow Specification

vantage-resource-report-and-resources-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Vantage Create a Resource Report and List Its Resources
  summary: Create a Resource Report and retrieve the resource-level cost data it captures.
  description: >-
    A Vantage resource-inventory pattern. The workflow creates a Resource Report
    scoped to a VQL filter, reads it back by token to confirm it persisted, and
    then lists the resource-level cost and usage records the report captures.
    Every step spells out its request inline — including the Bearer token — so
    the flow can be read and executed without opening the underlying OpenAPI
    description.
  version: 1.0.0
sourceDescriptions:
- name: costManagementApi
  url: ../openapi/vantage-cost-management-api-openapi.yml
  type: openapi
workflows:
- workflowId: resource-report-and-resources
  summary: Create a Resource Report and list the resources it captures.
  description: >-
    Creates a Resource Report, fetches it back by token, and retrieves the
    resource records scoped to that report.
  inputs:
    type: object
    required:
    - apiToken
    - title
    - filter
    - workspaceToken
    properties:
      apiToken:
        type: string
        description: Vantage API token used as the Bearer credential.
      title:
        type: string
        description: Title for the new Resource Report.
      filter:
        type: string
        description: A VQL filter expression scoping the Resource Report.
      workspaceToken:
        type: string
        description: The workspace token the Resource Report belongs to.
  steps:
  - stepId: createResourceReport
    description: Create a Resource Report scoped by the supplied VQL filter.
    operationId: createResourceReport
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.apiToken
    requestBody:
      contentType: application/json
      payload:
        title: $inputs.title
        filter: $inputs.filter
        workspace_token: $inputs.workspaceToken
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      resourceReportToken: $response.body#/token
  - stepId: getResourceReport
    description: Read the Resource Report back by token to confirm it persisted.
    operationId: getResourceReport
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.apiToken
    - name: resource_report_token
      in: path
      value: $steps.createResourceReport.outputs.resourceReportToken
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      title: $response.body#/title
  - stepId: getResources
    description: Retrieve the resource records captured by the report.
    operationId: getResources
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.apiToken
    - name: resource_report_token
      in: query
      value: $steps.createResourceReport.outputs.resourceReportToken
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      resources: $response.body#/resources
  outputs:
    resourceReportToken: $steps.createResourceReport.outputs.resourceReportToken
    resources: $steps.getResources.outputs.resources