DoiT · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for DoiT Budgets API

6 actions 6 updates phrasing extends openapi/doit-budgets-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for DoiT's API. It is a proposal applied on top of the contract, not a document DoiT publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 6

$.info
$.paths['/analytics/v1/budgets'].get
$.paths['/analytics/v1/budgets'].post
$.paths['/analytics/v1/budgets/{id}'].get
$.paths['/analytics/v1/budgets/{id}'].delete
$.paths['/analytics/v1/budgets/{id}'].patch

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for DoiT Budgets API
  version: 1.0.0
extends: openapi/doit-budgets-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 5
- target: $.paths['/analytics/v1/budgets'].get
  update:
    x-apievangelist-phrasing:
      intent: List budgets
      effect: read
      questions:
      - What budgets do we have for cloud spend?
      - Can I list only budgets created in a given period?
      instructions:
      - text: List all budgets.
      - text: List budgets created after {since}.
        slots:
          since: query.minCreationTime
      method: generated
      generated: '2026-10-01'
- target: $.paths['/analytics/v1/budgets'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a budget
      effect: write
      questions:
      - How do I set a monthly cloud spend budget?
      - Can a new budget send alerts to a Slack channel?
      - Can I make a budget grow by a percentage each period?
      instructions:
      - text: Create budget {name} for {amount} {currency}.
        slots:
          name: requestBody.name
          amount: requestBody.amount
          currency: requestBody.currency
      - text: Create a {timeInterval} budget {name} with alerts {alerts}.
        slots:
          timeInterval: requestBody.timeInterval
          name: requestBody.name
          alerts: requestBody.alerts
      method: generated
      generated: '2026-10-01'
- target: $.paths['/analytics/v1/budgets/{id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Check a budget's utilization
      effect: read
      questions:
      - How much of a budget have we used so far?
      - What is the current configuration of a specific budget?
      instructions:
      - text: Get budget {id}.
        slots:
          id: path.id
      - text: Show current utilization for budget {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/analytics/v1/budgets/{id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a budget
      effect: destructive
      questions:
      - How do I delete a budget we no longer track?
      - Can I remove a budget permanently?
      instructions:
      - text: Delete budget {id}.
        slots:
          id: path.id
      - text: Remove budget {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/analytics/v1/budgets/{id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update an existing budget
      effect: write
      questions:
      - How do I raise the amount on a budget I already have?
      - Can I change who gets notified by an existing budget?
      instructions:
      - text: Change budget {id} amount to {amount}.
        slots:
          id: path.id
          amount: requestBody.amount
      - text: Set recipients of budget {id} to {recipients}.
        slots:
          id: path.id
          recipients: requestBody.recipients
      method: generated
      generated: '2026-10-01'