# 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 Network Acls API version: 1.0.0 extends: openapi/canonical-network-acls-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: 9 - target: $.paths['/1.0/network-acls'].get update: x-apievangelist-phrasing: intent: List URLs of network ACLs effect: read questions: - Which network ACLs are defined in a project, as links? - Can I list ACL URLs across every project at once? instructions: - text: List network ACL URLs in project {project}. slots: project: query.project - text: Give me ACL links across all projects with all-projects {all-projects}. slots: all-projects: query.all-projects method: generated generated: '2026-09-26' - target: $.paths['/1.0/network-acls'].post update: x-apievangelist-phrasing: intent: Create a network ACL effect: write questions: - How do I create a firewall ACL for LXD networks? - Can I define ingress and egress rules when creating an ACL? instructions: - text: Create network ACL {name} with ingress rules {ingress}. slots: name: requestBody.name ingress: requestBody.ingress - text: Add ACL {name} in project {project} with egress rules {egress}. slots: name: requestBody.name project: query.project egress: requestBody.egress method: generated generated: '2026-09-26' - target: $.paths['/1.0/network-acls/{name}'].get update: x-apievangelist-phrasing: intent: Get one network ACL effect: read questions: - What rules does a specific network ACL have? - Can I look up one ACL by name in a given project? instructions: - text: Show the network ACL I name in project {project}. slots: project: query.project - text: Look up a single ACL and its rules. - text: Show network ACL {acl} and its rules. slots: acl: path.name method: generated generated: '2026-10-01' - target: $.paths['/1.0/network-acls/{name}'].put update: x-apievangelist-phrasing: intent: Replace a network ACL's full rule set effect: write questions: - How do I replace all of an ACL's rules at once? - Does a full ACL update remove rules I don't include? instructions: - text: Replace the ACL's rules entirely with ingress {ingress} and egress {egress}. slots: ingress: requestBody.ingress egress: requestBody.egress - text: Overwrite the whole ACL config with {config}. slots: config: requestBody.config - text: Replace all rules of ACL {acl} with ingress {ingress} and egress {egress}. slots: acl: path.name ingress: requestBody.ingress egress: requestBody.egress method: generated generated: '2026-10-01' - target: $.paths['/1.0/network-acls/{name}'].post update: x-apievangelist-phrasing: intent: Rename a network ACL effect: write questions: - Can I rename a network ACL? - What's the call to give an ACL a new name? instructions: - text: Rename the network ACL to {name}. slots: name: requestBody.name - text: Give this ACL the new name {name} in project {project}. slots: name: requestBody.name project: query.project - text: Rename network ACL {acl} to {name}. slots: acl: path.name name: requestBody.name method: generated generated: '2026-10-01' - target: $.paths['/1.0/network-acls/{name}'].delete update: x-apievangelist-phrasing: intent: Delete a network ACL effect: destructive questions: - How do I remove a network ACL I no longer need? - Can I delete an ACL from a specific project? instructions: - text: Delete the network ACL I name. - text: Remove the ACL from project {project}. slots: project: query.project - text: Delete network ACL {acl}. slots: acl: path.name method: generated generated: '2026-10-01' - target: $.paths['/1.0/network-acls/{name}'].patch update: x-apievangelist-phrasing: intent: Change part of a network ACL effect: write questions: - Can I update only an ACL's description or config keys? - Is a partial update possible for a network ACL? instructions: - text: Patch just the ACL's description to {description}. slots: description: requestBody.description - text: Partially update the ACL's config keys {config}. slots: config: requestBody.config - text: Patch ACL {acl}, changing only its description to {description}. slots: acl: path.name description: requestBody.description method: generated generated: '2026-10-01' - target: $.paths['/1.0/network-acls/{name}/log'].get update: x-apievangelist-phrasing: intent: Read a network ACL's log effect: read questions: - Which traffic did a network ACL block or allow? - Where can I read the log entries for an ACL? instructions: - text: Show the log entries for the network ACL I name. - text: Get the ACL's traffic log in project {project}. slots: project: query.project - text: Show the traffic log of network ACL {acl}. slots: acl: path.name method: generated generated: '2026-10-01' - target: $.paths['/1.0/network-acls?recursion=1'].get update: x-apievangelist-phrasing: intent: List network ACLs with full rules effect: read questions: - Can I see every ACL's ingress and egress rules in one call? - What firewall rules do all my network ACLs contain? instructions: - text: Fetch all network ACLs with their full rules in project {project}. slots: project: query.project - text: Show every ACL's ingress and egress rules, not just URLs. method: generated generated: '2026-09-26'