Canonical · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for LXD external REST Cluster Groups API

8 actions 8 updates phrasing extends openapi/canonical-cluster-groups-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 8

$.info
$.paths['/1.0/cluster/groups'].get
$.paths['/1.0/cluster/groups/{name}'].get
$.paths['/1.0/cluster/groups/{name}'].put
$.paths['/1.0/cluster/groups/{name}'].post
$.paths['/1.0/cluster/groups/{name}'].delete
$.paths['/1.0/cluster/groups/{name}'].patch
$.paths['/1.0/cluster/groups?recursion=1'].get

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 LXD external REST Cluster Groups API
  version: 1.0.0
extends: openapi/canonical-cluster-groups-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: 7
- target: $.paths['/1.0/cluster/groups'].get
  update:
    x-apievangelist-phrasing:
      intent: List cluster group URLs
      effect: read
      questions:
      - Which cluster groups are defined in my LXD cluster?
      - How do I get links to all cluster groups?
      instructions:
      - text: List the URLs of all cluster groups.
      - text: Show me the names of my LXD cluster groups.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/1.0/cluster/groups/{name}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one cluster group
      effect: read
      questions:
      - Which members belong to a specific cluster group?
      - What is the description of a given cluster group?
      instructions:
      - text: Show the details of cluster group {name}.
        slots:
          name: path.name
      - text: List the members of the named cluster group.
      method: generated
      generated: '2026-10-01'
- target: $.paths['/1.0/cluster/groups/{name}'].put
  update:
    x-apievangelist-phrasing:
      intent: Replace a cluster group's members
      effect: write
      questions:
      - Can I replace the whole member list of a cluster group?
      - How do I overwrite a cluster group's configuration entirely?
      instructions:
      - text: Set the members of cluster group {name} to exactly {members}.
        slots:
          name: path.name
          members: requestBody.members
      - text: Replace the cluster group description with {description}.
        slots:
          description: requestBody.description
      method: generated
      generated: '2026-10-01'
- target: $.paths['/1.0/cluster/groups/{name}'].post
  update:
    x-apievangelist-phrasing:
      intent: Rename a cluster group
      effect: write
      questions:
      - How do I rename a cluster group?
      - Can a cluster group get a new name while keeping its members?
      instructions:
      - text: Rename cluster group {name} to {new_name}.
        slots:
          name: path.name
          new_name: requestBody.name
      - text: Give that cluster group the name {name}.
        slots:
          name: requestBody.name
      method: generated
      generated: '2026-10-01'
- target: $.paths['/1.0/cluster/groups/{name}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a cluster group
      effect: destructive
      questions:
      - How do I remove a cluster group?
      - Can I delete a cluster group I no longer target?
      instructions:
      - text: Delete cluster group {name}.
        slots:
          name: path.name
      - text: Remove the named cluster group from the cluster.
      method: generated
      generated: '2026-10-01'
- target: $.paths['/1.0/cluster/groups/{name}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update part of a cluster group
      effect: write
      questions:
      - Can I change only a cluster group's description?
      - How do I partially update a cluster group's members?
      instructions:
      - text: Patch the description of cluster group {name} to {description}.
        slots:
          name: path.name
          description: requestBody.description
      - text: Partially update the cluster group with members {members}.
        slots:
          members: requestBody.members
      method: generated
      generated: '2026-10-01'
- target: $.paths['/1.0/cluster/groups?recursion=1'].get
  update:
    x-apievangelist-phrasing:
      intent: List cluster groups with members
      effect: read
      questions:
      - Can I list every cluster group along with its members in one call?
      - How do I get full records of all cluster groups?
      instructions:
      - text: List all cluster groups with their full details.
      - text: Give me every cluster group's members and description.
      method: generated
      generated: '2026-09-26'