DoiT · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for DoiT Contract Templates API

6 actions 6 updates phrasing extends openapi/doit-contract-templates-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['/billing/v1/contract-templates'].get
$.paths['/billing/v1/contract-templates'].post
$.paths['/billing/v1/contract-templates/{templateID}'].get
$.paths['/billing/v1/contract-templates/{templateID}'].put
$.paths['/billing/v1/contract-templates/{templateID}'].delete

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 Contract Templates API
  version: 1.0.0
extends: openapi/doit-contract-templates-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['/billing/v1/contract-templates'].get
  update:
    x-apievangelist-phrasing:
      intent: List contract templates
      effect: read
      questions:
      - Which contract templates does our tenant own?
      - Where can I see all our reusable contract templates?
      instructions:
      - text: List our contract templates.
      - text: Show every contract template for this tenant.
      method: generated
      generated: '2026-10-01'
- target: $.paths['/billing/v1/contract-templates'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a contract template
      effect: write
      questions:
      - How do I create a reusable contract template?
      - Can I include price books and billing rules in a template?
      instructions:
      - text: Create template {name} for {platform} eligible from {eligibleFrom}.
        slots:
          name: requestBody.name
          platform: requestBody.platform
          eligibleFrom: requestBody.eligibleFrom
      - text: Create contract template {name} on {platform} from {eligibleFrom} with price books {priceBooks}.
        slots:
          name: requestBody.name
          platform: requestBody.platform
          eligibleFrom: requestBody.eligibleFrom
          priceBooks: requestBody.priceBooks
      method: generated
      generated: '2026-10-01'
- target: $.paths['/billing/v1/contract-templates/{templateID}'].get
  update:
    x-apievangelist-phrasing:
      intent: Retrieve a contract template
      effect: read
      questions:
      - How do I see the terms in one contract template?
      - Can I fetch a template by its ID?
      instructions:
      - text: Get contract template {templateID}.
        slots:
          templateID: path.templateID
      - text: Show the billing rules in template {templateID}.
        slots:
          templateID: path.templateID
      method: generated
      generated: '2026-10-01'
- target: $.paths['/billing/v1/contract-templates/{templateID}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a contract template
      effect: write
      questions:
      - How do I change the eligibility dates on a template?
      - Can I edit an existing template's billing rules?
      instructions:
      - text: 'Update template {templateID}: name {name}, platform {platform}, eligible from {eligibleFrom}.'
        slots:
          templateID: path.templateID
          name: requestBody.name
          platform: requestBody.platform
          eligibleFrom: requestBody.eligibleFrom
      - text: Set template {templateID} eligibility end to {eligibleTo}, keeping {name}, {platform}, {eligibleFrom}.
        slots:
          templateID: path.templateID
          eligibleTo: requestBody.eligibleTo
          name: requestBody.name
          platform: requestBody.platform
          eligibleFrom: requestBody.eligibleFrom
      method: generated
      generated: '2026-10-01'
- target: $.paths['/billing/v1/contract-templates/{templateID}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Archive a contract template
      effect: destructive
      questions:
      - Does archiving a template affect contracts already created from it?
      - How do I retire a contract template?
      instructions:
      - text: Archive contract template {templateID}.
        slots:
          templateID: path.templateID
      - text: Retire template {templateID}.
        slots:
          templateID: path.templateID
      method: generated
      generated: '2026-10-01'