Scope3 · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for AI impact measurement Gpu API

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

What the actions change

x-apievangelist-phrasing

Targets 6

$.info
$.paths['/gpu'].get
$.paths['/gpu'].post
$.paths['/gpu/{gpuId}'].get
$.paths['/gpu/{gpuId}'].put
$.paths['/gpu/{gpuId}'].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 AI impact measurement Gpu API
  version: 1.0.0
extends: openapi/scope3-gpu-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['/gpu'].get
  update:
    x-apievangelist-phrasing:
      intent: List GPUs
      effect: read
      questions:
      - Which GPUs are available for AI impact calculations?
      - Can I see both global and custom GPU definitions?
      instructions:
      - text: List all GPUs.
      - text: Show the GPU catalog used for impact estimates.
      method: generated
      generated: '2026-10-01'
- target: $.paths['/gpu'].post
  update:
    x-apievangelist-phrasing:
      intent: Register a custom GPU
      effect: write
      questions:
      - How do I add a GPU that isn't in the catalog?
      - What power and embodied emissions figures does a new GPU need?
      instructions:
      - text: Create GPU {id} named {name} at {max_power_w} W, {embodied_emissions_kgco2e} kgCO2e and {embodied_water_mlh2o} mL water embodied.
        slots:
          id: requestBody.id
          name: requestBody.name
          max_power_w: requestBody.max_power_w
          embodied_emissions_kgco2e: requestBody.embodied_emissions_kgco2e
          embodied_water_mlh2o: requestBody.embodied_water_mlh2o
      - text: Set GPU {id} performance vs H200 to {performance_ratio_to_h200}, OLS coefficient {ols_coefficient_gpu_count}, intercept {ols_intercept}.
        slots:
          id: requestBody.id
          performance_ratio_to_h200: requestBody.performance_ratio_to_h200
          ols_coefficient_gpu_count: requestBody.ols_coefficient_gpu_count
          ols_intercept: requestBody.ols_intercept
      method: generated
      generated: '2026-10-01'
- target: $.paths['/gpu/{gpuId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a GPU's specs
      effect: read
      questions:
      - What max power and embodied emissions are recorded for a GPU?
      - Can I look up one GPU by ID?
      instructions:
      - text: Get GPU {gpuId}.
        slots:
          gpuId: path.gpuId
      - text: Show the power draw of GPU {gpuId}.
        slots:
          gpuId: path.gpuId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/gpu/{gpuId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a GPU
      effect: write
      questions:
      - Can I correct a GPU's max power figure?
      - How do I change a GPU's performance ratio to the H200?
      instructions:
      - text: Set max power of GPU {gpuId} to {max_power_w} W.
        slots:
          gpuId: path.gpuId
          max_power_w: requestBody.max_power_w
      - text: Update GPU {gpuId} performance ratio to {performance_ratio_to_h200}.
        slots:
          gpuId: path.gpuId
          performance_ratio_to_h200: requestBody.performance_ratio_to_h200
      method: generated
      generated: '2026-10-01'
- target: $.paths['/gpu/{gpuId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a GPU
      effect: destructive
      questions:
      - Can I remove a custom GPU I added?
      - Is deleting a GPU definition reversible?
      instructions:
      - text: Delete GPU {gpuId}.
        slots:
          gpuId: path.gpuId
      - text: Remove custom GPU {gpuId}.
        slots:
          gpuId: path.gpuId
      method: generated
      generated: '2026-10-01'