# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Snapd REST Asynchronous API version: 1.0.0 extends: openapi/canonical-asynchronous-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: 8 - target: $.paths['/v2/confdb/{account}/{confdb-schema}/{view}'].get update: x-apievangelist-phrasing: intent: Read configuration values from confdb effect: read questions: - How do I read values from a confdb view on a snapd device? - Can I fetch only certain keys from a confdb view? instructions: - text: Read confdb view {view} of schema {schema} for account {account}. slots: view: path.view schema: path.confdb-schema account: path.account - text: Get keys {keys} from confdb view {view} in schema {schema} owned by {account}. slots: keys: query.keys view: path.view schema: path.confdb-schema account: path.account method: generated generated: '2026-09-26' - target: $.paths['/v2/confdb/{account}/{confdb-schema}/{view}'].put update: x-apievangelist-phrasing: intent: Write configuration values to confdb effect: write questions: - How do I set configuration values through a confdb view? - Is writing to confdb an asynchronous change in snapd? instructions: - text: Set {values} in confdb view {view} of schema {schema} for account {account}. slots: values: requestBody.values view: path.view schema: path.confdb-schema account: path.account - text: Write confdb values {values} to view {view}, schema {schema}, account {account}. slots: values: requestBody.values view: path.view schema: path.confdb-schema account: path.account method: generated generated: '2026-09-26' - target: $.paths['/v2/interfaces'].post update: x-apievangelist-phrasing: intent: Connect or disconnect snap interfaces effect: write questions: - How do I connect a snap's plug to a slot? - Can I disconnect an interface and have snapd forget the connection? instructions: - text: Connect plugs {plugs} to slots {slots}. slots: plugs: requestBody.plugs slots: requestBody.slots - text: Run interface action {action} on plugs {plugs} and slots {slots}. slots: action: requestBody.action plugs: requestBody.plugs slots: requestBody.slots - text: 'Disconnect plugs {plugs} and forget the connection: {forget}.' slots: plugs: requestBody.plugs forget: requestBody.forget method: generated generated: '2026-09-26' - target: $.paths['/v2/quotas'].post update: x-apievangelist-phrasing: intent: Create, change or remove a quota group effect: write questions: - How do I limit the resources a group of snaps can use? - Can I remove a quota group I created earlier? instructions: - text: Apply quota action {action} to group {group}. slots: action: requestBody.action group: requestBody.quota-group - text: Create quota group {group}. slots: group: requestBody.quota-group method: generated generated: '2026-09-26' - target: $.paths['/v2/snaps'].post update: x-apievangelist-phrasing: intent: Install, refresh or remove several snaps effect: write questions: - How do I install or refresh several snaps in one request? - Can I sideload a local snap file instead of pulling from the store? - Can multiple snap refreshes run as a single transaction? instructions: - text: Run action {action} on snaps {snaps}. slots: action: requestBody.action snaps: requestBody.snaps - text: 'Sideload the snap file at {snap_path} in dangerous mode: {dangerous}.' slots: snap_path: requestBody.snap-path dangerous: requestBody.dangerous - text: Refresh snaps {snaps} as transaction {transaction}. slots: snaps: requestBody.snaps transaction: requestBody.transaction method: generated generated: '2026-09-26' - target: $.paths['/v2/snaps/{name}'].post update: x-apievangelist-phrasing: intent: Install, refresh or remove one snap effect: write questions: - How do I install a single snap from a specific channel? - Can I revert one snap to an earlier revision? - Does removing a snap with purge skip the automatic snapshot? instructions: - text: Install snap {name} from channel {channel}. slots: name: path.name channel: requestBody.channel - text: Perform {action} on snap {name} at revision {revision}. slots: action: requestBody.action name: path.name revision: requestBody.revision - text: Remove snap {name} with purge set to {purge}. slots: name: path.name purge: requestBody.purge method: generated generated: '2026-09-26' - target: $.paths['/v2/snaps/{name}/conf'].put update: x-apievangelist-phrasing: intent: Set an installed snap's configuration effect: write questions: - How do I change configuration options of an installed snap? - Can I set system-wide snapd options through the snap config endpoint? instructions: - text: Update the configuration of snap {name}. slots: name: path.name - text: Set options on snap {name}; use system for core system settings. slots: name: path.name method: generated generated: '2026-09-26' - target: $.paths['/v2/snapshots'].post update: x-apievangelist-phrasing: intent: Restore, check, forget or import snapshots effect: write questions: - How do I restore a saved snapshot set of my snaps' data? - Can I verify a snapshot set is intact before relying on it? - Can I restore a snapshot for only certain users? instructions: - text: Restore snapshot set {set}. slots: set: requestBody.set - text: Run snapshot action {action} on set {set} for snaps {snaps}. slots: action: requestBody.action set: requestBody.set snaps: requestBody.snaps - text: Restore snapshot set {set} only for users {users}. slots: set: requestBody.set users: requestBody.users method: generated generated: '2026-09-26'