Canonical · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Test Observer Issues API

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

What the actions change

x-apievangelist-phrasing

Targets 10

$.info
$.paths['/v1/issues/{issue_id}/attach'].post
$.paths['/v1/issues/{issue_id}/detach'].post
$.paths['/v1/issues/{issue_id}/attachment-rules'].post
$.paths['/v1/issues/{issue_id}/attachment-rules/{attachment_rule_id}'].delete
$.paths['/v1/issues/{issue_id}/attachment-rules/{attachment_rule_id}'].patch
$.paths['/v1/issues'].get
$.paths['/v1/issues'].put
$.paths['/v1/issues/{issue_id}'].get
$.paths['/v1/issues/{issue_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 Test Observer Issues API
  version: 1.0.0
extends: openapi/canonical-issues-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 9
- target: $.paths['/v1/issues/{issue_id}/attach'].post
  update:
    x-apievangelist-phrasing:
      intent: Attach test results to an issue
      effect: write
      questions:
      - How do I link failing test results to a known issue?
      - Can I attach test results matching a filter to an issue instead of listing them?
      instructions:
      - text: Attach test results {test_results} to issue {issue_id}.
        slots:
          test_results: requestBody.test_results
          issue_id: path.issue_id
      - text: Link all test results matching {filters} to issue {issue_id}.
        slots:
          filters: requestBody.test_results_filters
          issue_id: path.issue_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/issues/{issue_id}/detach'].post
  update:
    x-apievangelist-phrasing:
      intent: Detach test results from an issue
      effect: write
      questions:
      - Can I unlink test results that were wrongly attached to an issue?
      - How do I detach results that match a filter from an issue?
      instructions:
      - text: Detach test results {test_results} from issue {issue_id}.
        slots:
          test_results: requestBody.test_results
          issue_id: path.issue_id
      - text: Unlink results matching {filters} from issue {issue_id}.
        slots:
          filters: requestBody.test_results_filters
          issue_id: path.issue_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/issues/{issue_id}/attachment-rules'].post
  update:
    x-apievangelist-phrasing:
      intent: Create an auto-attachment rule for an issue
      effect: write
      questions:
      - Can new test results be attached to an issue automatically when they match certain criteria?
      - What criteria can an attachment rule match on, such as test case names or environments?
      instructions:
      - text: Create an attachment rule on issue {issue_id} for test cases {test_case_names}.
        slots:
          issue_id: path.issue_id
          test_case_names: requestBody.test_case_names
      - text: Auto-attach results from environments {envs} with status {statuses} to issue {issue_id}.
        slots:
          envs: requestBody.environment_names
          statuses: requestBody.test_result_statuses
          issue_id: path.issue_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/issues/{issue_id}/attachment-rules/{attachment_rule_id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete an issue attachment rule
      effect: destructive
      questions:
      - How do I remove an automatic attachment rule from an issue?
      - Can I stop an issue from auto-collecting test results by deleting its rule?
      instructions:
      - text: Delete attachment rule {rule_id} on issue {issue_id}.
        slots:
          rule_id: path.attachment_rule_id
          issue_id: path.issue_id
      - text: Remove rule {rule_id} from issue {issue_id}.
        slots:
          rule_id: path.attachment_rule_id
          issue_id: path.issue_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/issues/{issue_id}/attachment-rules/{attachment_rule_id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Enable or disable an attachment rule
      effect: write
      questions:
      - Can I temporarily pause an issue's attachment rule without deleting it?
      - Is there a way to switch an attachment rule back on?
      instructions:
      - text: Set attachment rule {rule_id} on issue {issue_id} to enabled = {enabled}.
        slots:
          rule_id: path.attachment_rule_id
          issue_id: path.issue_id
          enabled: requestBody.enabled
      - text: Disable attachment rule {rule_id} of issue {issue_id}.
        slots:
          rule_id: path.attachment_rule_id
          issue_id: path.issue_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/issues'].get
  update:
    x-apievangelist-phrasing:
      intent: List tracked issues
      effect: read
      questions:
      - Which known issues are being tracked against test results?
      - Can I filter issues by source, project or status?
      - Is there a text search across issues?
      instructions:
      - text: List issues from project {project} with status {status}.
        slots:
          project: query.project
          status: query.status
      - text: Search issues for {q}.
        slots:
          q: query.q
      - text: Show {limit} issues from source {source}.
        slots:
          limit: query.limit
          source: query.source
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/issues'].put
  update:
    x-apievangelist-phrasing:
      intent: Create or update an issue by URL
      effect: write
      questions:
      - How do I register a bug tracker issue so test results can be linked to it?
      - Does sending an issue URL that already exists update it instead of duplicating it?
      instructions:
      - text: Register the issue at {url}.
        slots:
          url: requestBody.url
      - text: Create or update the issue {url} with title {title} and status {status}.
        slots:
          url: requestBody.url
          title: requestBody.title
          status: requestBody.status
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/issues/{issue_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one issue
      effect: read
      questions:
      - Where can I see a tracked issue and its attached test results?
      - Can I look up a single issue by its ID?
      instructions:
      - text: Show issue {issue_id}.
        slots:
          issue_id: path.issue_id
      - text: Get the details and attachment rules of issue {issue_id}.
        slots:
          issue_id: path.issue_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/issues/{issue_id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update an issue's title, status or auto-rerun
      effect: write
      questions:
      - Can I turn on automatic reruns for tests linked to an issue?
      - How do I change the status of a tracked issue?
      instructions:
      - text: Set the status of issue {issue_id} to {status}.
        slots:
          issue_id: path.issue_id
          status: requestBody.status
      - text: Enable auto-rerun ({auto_rerun}) on issue {issue_id}.
        slots:
          auto_rerun: requestBody.auto_rerun_enabled
          issue_id: path.issue_id
      - text: Retitle issue {issue_id} to {title}.
        slots:
          issue_id: path.issue_id
          title: requestBody.title
      method: generated
      generated: '2026-09-26'