# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Appwrite Webhooks API version: 1.0.0 extends: openapi/appwrite-webhooks-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: 6 - target: $.paths['/webhooks'].get update: x-apievangelist-phrasing: intent: List the project's webhooks effect: read questions: - Which webhooks are configured on my project? - Can I filter my webhooks with queries? instructions: - text: List all webhooks in this project. - text: List webhooks matching {queries}. slots: queries: query.queries method: generated generated: '2026-09-26' - target: $.paths['/webhooks'].post update: x-apievangelist-phrasing: intent: Create a webhook for project events effect: write questions: - How do I get notified at my URL when a document is created or a user signs up? - Can I protect webhook deliveries with basic auth or a signing secret? instructions: - text: Create webhook {name} with ID {webhookId} sending {events} to {url}. slots: name: requestBody.name webhookId: requestBody.webhookId events: requestBody.events url: requestBody.url - text: Add webhook {webhookId} named {name} posting {events} to {url} with basic auth user {authUsername}. slots: webhookId: requestBody.webhookId name: requestBody.name events: requestBody.events url: requestBody.url authUsername: requestBody.authUsername method: generated generated: '2026-09-26' - target: $.paths['/webhooks/{webhookId}'].get update: x-apievangelist-phrasing: intent: Get a webhook's configuration effect: read questions: - What events and URL is a particular webhook set up with? - Is a given webhook enabled? instructions: - text: Show webhook {webhookId}. slots: webhookId: path.webhookId - text: Tell me which events webhook {webhookId} subscribes to. slots: webhookId: path.webhookId method: generated generated: '2026-09-26' - target: $.paths['/webhooks/{webhookId}'].put update: x-apievangelist-phrasing: intent: Update a webhook's URL, events or status effect: write questions: - How do I change the URL or events on an existing webhook? - Can I disable a webhook without deleting it? instructions: - text: 'Update webhook {webhookId}: name {name}, URL {url}, events {events}.' slots: webhookId: path.webhookId name: requestBody.name url: requestBody.url events: requestBody.events - text: Set enabled to {enabled} on webhook {webhookId} ({name}, {url}, {events}). slots: enabled: requestBody.enabled webhookId: path.webhookId name: requestBody.name url: requestBody.url events: requestBody.events method: generated generated: '2026-09-26' - target: $.paths['/webhooks/{webhookId}'].delete update: x-apievangelist-phrasing: intent: Delete a webhook effect: destructive questions: - How do I stop a webhook from receiving events permanently? - Can I remove a webhook by its ID? instructions: - text: Delete webhook {webhookId}. slots: webhookId: path.webhookId - text: Remove webhook {webhookId} so it stops receiving events. slots: webhookId: path.webhookId method: generated generated: '2026-09-26' - target: $.paths['/webhooks/{webhookId}/secret'].patch update: x-apievangelist-phrasing: intent: Rotate a webhook's signing secret effect: write questions: - How do I rotate the key used to sign webhook payloads? - Can I set my own webhook signing secret? instructions: - text: Regenerate the signing secret for webhook {webhookId}. slots: webhookId: path.webhookId - text: Set the signing secret of webhook {webhookId} to {secret}. slots: webhookId: path.webhookId secret: requestBody.secret method: generated generated: '2026-09-26'