Appwrite · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Appwrite Sites API

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

What the actions change

x-apievangelist-phrasing

Targets 28 · first 16 shown; the file carries all of them

$.info
$.paths['/sites'].get
$.paths['/sites'].post
$.paths['/sites/frameworks'].get
$.paths['/sites/specifications'].get
$.paths['/sites/templates'].get
$.paths['/sites/templates/{templateId}'].get
$.paths['/sites/{siteId}'].get
$.paths['/sites/{siteId}'].put
$.paths['/sites/{siteId}'].delete
$.paths['/sites/{siteId}/deployment'].patch
$.paths['/sites/{siteId}/deployments'].get
$.paths['/sites/{siteId}/deployments'].post
$.paths['/sites/{siteId}/deployments/duplicate'].post
$.paths['/sites/{siteId}/deployments/template'].post
$.paths['/sites/{siteId}/deployments/vcs'].post

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 Appwrite Sites API
  version: 1.0.0
extends: openapi/appwrite-sites-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: 27
- target: $.paths['/sites'].get
  update:
    x-apievangelist-phrasing:
      intent: List the project's sites
      effect: read
      questions:
      - Which sites are hosted in my Appwrite project?
      - Can I search my sites by name?
      instructions:
      - text: List all sites in this project.
      - text: Search my sites for {search}.
        slots:
          search: query.search
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a new site
      effect: write
      questions:
      - How do I create a site for my Next.js or Astro app?
      - Can I connect a new site to a Git repository and branch when creating it?
      - What build commands and output directory can I set up front?
      instructions:
      - text: Create site {name} with ID {siteId} using framework {framework} and build runtime {buildRuntime}.
        slots:
          name: requestBody.name
          siteId: requestBody.siteId
          framework: requestBody.framework
          buildRuntime: requestBody.buildRuntime
      - text: Create site {siteId} named {name} ({framework}, runtime {buildRuntime}) deploying from repository {providerRepositoryId} branch {providerBranch}.
        slots:
          siteId: requestBody.siteId
          name: requestBody.name
          framework: requestBody.framework
          buildRuntime: requestBody.buildRuntime
          providerRepositoryId: requestBody.providerRepositoryId
          providerBranch: requestBody.providerBranch
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/frameworks'].get
  update:
    x-apievangelist-phrasing:
      intent: List supported site frameworks
      effect: read
      questions:
      - Which web frameworks can I host as a site?
      - Is my framework supported on this server instance?
      instructions:
      - text: List the frameworks available for sites.
      - text: Show me every site framework this instance supports.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/specifications'].get
  update:
    x-apievangelist-phrasing:
      intent: List allowed site compute specifications
      effect: read
      questions:
      - What CPU and memory sizes can a site use?
      - Which build or runtime specifications are allowed on this instance?
      instructions:
      - text: List the allowed site specifications.
      - text: List site specifications of type {type}.
        slots:
          type: query.type
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/templates'].get
  update:
    x-apievangelist-phrasing:
      intent: Browse site starter templates
      effect: read
      questions:
      - Are there starter templates I can deploy a site from?
      - Can I find site templates for a specific framework or use case?
      instructions:
      - text: List available site templates.
      - text: Show site templates for frameworks {frameworks} and use cases {useCases}.
        slots:
          frameworks: query.frameworks
          useCases: query.useCases
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/templates/{templateId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a site template's details
      effect: read
      questions:
      - What does a particular site template include?
      - Which repository and framework does a template use?
      instructions:
      - text: Show site template {templateId}.
        slots:
          templateId: path.templateId
      - text: Get the repository details of template {templateId} so I can deploy it.
        slots:
          templateId: path.templateId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a site's configuration
      effect: read
      questions:
      - What is the current configuration of one of my sites?
      - Which deployment is active on a given site?
      instructions:
      - text: Show site {siteId}.
        slots:
          siteId: path.siteId
      - text: Tell me the framework and build commands configured for site {siteId}.
        slots:
          siteId: path.siteId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a site's settings
      effect: write
      questions:
      - How do I change a site's build command or output directory?
      - Can I switch the Git branch an existing site deploys from?
      instructions:
      - text: 'Update site {siteId}: name {name}, framework {framework}, build command {buildCommand}.'
        slots:
          siteId: path.siteId
          name: requestBody.name
          framework: requestBody.framework
          buildCommand: requestBody.buildCommand
      - text: Point site {siteId} ({name}, {framework}) at branch {providerBranch}.
        slots:
          siteId: path.siteId
          name: requestBody.name
          framework: requestBody.framework
          providerBranch: requestBody.providerBranch
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a site
      effect: destructive
      questions:
      - How do I take a site down and delete it?
      - Can I remove a site by its ID?
      instructions:
      - text: Delete site {siteId}.
        slots:
          siteId: path.siteId
      - text: Permanently remove site {siteId} from the project.
        slots:
          siteId: path.siteId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/deployment'].patch
  update:
    x-apievangelist-phrasing:
      intent: Switch a site's live deployment
      effect: write
      questions:
      - How do I roll my site back to an earlier deployment?
      - Can I choose which deployment visitors see?
      instructions:
      - text: Make deployment {deploymentId} live on site {siteId}.
        slots:
          deploymentId: requestBody.deploymentId
          siteId: path.siteId
      - text: Roll site {siteId} back to deployment {deploymentId}.
        slots:
          siteId: path.siteId
          deploymentId: requestBody.deploymentId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/deployments'].get
  update:
    x-apievangelist-phrasing:
      intent: List a site's deployments
      effect: read
      questions:
      - What deployments have been made to my site?
      - Can I filter a site's deployment history?
      instructions:
      - text: List the deployments of site {siteId}.
        slots:
          siteId: path.siteId
      - text: List deployments of site {siteId} matching {queries}.
        slots:
          siteId: path.siteId
          queries: query.queries
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/deployments'].post
  update:
    x-apievangelist-phrasing:
      intent: Upload new site code as a deployment
      effect: write
      questions:
      - How do I upload a new version of my site's code?
      - Can I activate an uploaded deployment immediately?
      instructions:
      - text: Upload {code} as a new deployment of site {siteId}.
        slots:
          code: requestBody.code
          siteId: path.siteId
      - text: Deploy code archive {code} to site {siteId} and activate it right away with activate {activate}.
        slots:
          code: requestBody.code
          siteId: path.siteId
          activate: requestBody.activate
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/deployments/duplicate'].post
  update:
    x-apievangelist-phrasing:
      intent: Rebuild an existing site deployment
      effect: write
      questions:
      - How do I rebuild an old deployment with my site's updated settings?
      - Can I redeploy the same code after changing environment variables?
      instructions:
      - text: Rebuild deployment {deploymentId} of site {siteId} with the current configuration.
        slots:
          deploymentId: requestBody.deploymentId
          siteId: path.siteId
      - text: Duplicate deployment {deploymentId} on site {siteId} as a fresh build.
        slots:
          deploymentId: requestBody.deploymentId
          siteId: path.siteId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/deployments/template'].post
  update:
    x-apievangelist-phrasing:
      intent: Deploy a site from a template
      effect: write
      questions:
      - How do I deploy a starter template to my site?
      - Which template repository fields do I need to deploy from a template?
      instructions:
      - text: Deploy template repository {owner}/{repository} from {rootDirectory} at {type} {reference} to site {siteId}.
        slots:
          owner: requestBody.owner
          repository: requestBody.repository
          rootDirectory: requestBody.rootDirectory
          type: requestBody.type
          reference: requestBody.reference
          siteId: path.siteId
      - text: Deploy the {repository} template by {owner} (directory {rootDirectory}, {type} {reference}) to site {siteId} and activate it.
        slots:
          repository: requestBody.repository
          owner: requestBody.owner
          rootDirectory: requestBody.rootDirectory
          type: requestBody.type
          reference: requestBody.reference
          siteId: path.siteId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/deployments/vcs'].post
  update:
    x-apievangelist-phrasing:
      intent: Deploy a site from a Git branch, commit or tag
      effect: write
      questions:
      - How do I deploy a specific Git commit to my connected site?
      - Can I deploy from a tag instead of a branch?
      instructions:
      - text: Deploy {type} {reference} from the connected repository to site {siteId}.
        slots:
          type: requestBody.type
          reference: requestBody.reference
          siteId: path.siteId
      - text: Build site {siteId} from Git {type} {reference} and activate it.
        slots:
          siteId: path.siteId
          type: requestBody.type
          reference: requestBody.reference
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/deployments/{deploymentId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a site deployment's details
      effect: read
      questions:
      - Did my latest site build succeed?
      - Can I check the status of a single site deployment?
      instructions:
      - text: Show deployment {deploymentId} of site {siteId}.
        slots:
          deploymentId: path.deploymentId
          siteId: path.siteId
      - text: Tell me the build status of deployment {deploymentId} on site {siteId}.
        slots:
          deploymentId: path.deploymentId
          siteId: path.siteId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/deployments/{deploymentId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a site deployment
      effect: destructive
      questions:
      - How do I delete an old site deployment?
      - Can I clean up deployments I no longer need?
      instructions:
      - text: Delete deployment {deploymentId} of site {siteId}.
        slots:
          deploymentId: path.deploymentId
          siteId: path.siteId
      - text: Remove the old deployment {deploymentId} from site {siteId}.
        slots:
          deploymentId: path.deploymentId
          siteId: path.siteId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/deployments/{deploymentId}/download'].get
  update:
    x-apievangelist-phrasing:
      intent: Download a site deployment's files
      effect: read
      questions:
      - How do I download the source or build output of a site deployment?
      - Can I get the built output instead of the uploaded source?
      instructions:
      - text: Download deployment {deploymentId} of site {siteId}.
        slots:
          deploymentId: path.deploymentId
          siteId: path.siteId
      - text: Download the {type} archive of deployment {deploymentId} on site {siteId}.
        slots:
          type: query.type
          deploymentId: path.deploymentId
          siteId: path.siteId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/deployments/{deploymentId}/status'].patch
  update:
    x-apievangelist-phrasing:
      intent: Cancel an ongoing site build
      effect: destructive
      questions:
      - How do I stop a site build that is still running?
      - Can I cancel a deployment build before it starts?
      instructions:
      - text: Cancel the build of deployment {deploymentId} on site {siteId}.
        slots:
          deploymentId: path.deploymentId
          siteId: path.siteId
      - text: Stop the in-progress site build {deploymentId} for site {siteId}.
        slots:
          deploymentId: path.deploymentId
          siteId: path.siteId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/logs'].get
  update:
    x-apievangelist-phrasing:
      intent: List a site's request logs
      effect: read
      questions:
      - Where can I see the request logs for my site?
      - Can I filter site logs with queries?
      instructions:
      - text: List request logs for site {siteId}.
        slots:
          siteId: path.siteId
      - text: Show logs of site {siteId} matching {queries}.
        slots:
          siteId: path.siteId
          queries: query.queries
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/logs/{logId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a single site request log
      effect: read
      questions:
      - What happened in one specific request to my site?
      - Can I open a single site log entry by ID?
      instructions:
      - text: Show log {logId} for site {siteId}.
        slots:
          logId: path.logId
          siteId: path.siteId
      - text: Open the request log entry {logId} of site {siteId}.
        slots:
          logId: path.logId
          siteId: path.siteId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/logs/{logId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a site log entry
      effect: destructive
      questions:
      - How do I delete a request log from my site?
      - Can individual site log entries be removed?
      instructions:
      - text: Delete log {logId} from site {siteId}.
        slots:
          logId: path.logId
          siteId: path.siteId
      - text: Remove the request log entry {logId} of site {siteId}.
        slots:
          logId: path.logId
          siteId: path.siteId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/variables'].get
  update:
    x-apievangelist-phrasing:
      intent: List a site's environment variables
      effect: read
      questions:
      - What environment variables are set on my site?
      - Can I list a site's variables with a filter?
      instructions:
      - text: List the environment variables of site {siteId}.
        slots:
          siteId: path.siteId
      - text: Show variables of site {siteId} matching {queries}.
        slots:
          siteId: path.siteId
          queries: query.queries
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/variables'].post
  update:
    x-apievangelist-phrasing:
      intent: Add an environment variable to a site
      effect: write
      questions:
      - How do I add an environment variable available during build and server-side rendering?
      - Can I mark a site variable as secret?
      instructions:
      - text: Add variable {key} = {value} with ID {variableId} to site {siteId}.
        slots:
          key: requestBody.key
          value: requestBody.value
          variableId: requestBody.variableId
          siteId: path.siteId
      - text: Create a secret variable {key} with value {value} and ID {variableId} on site {siteId}.
        slots:
          key: requestBody.key
          value: requestBody.value
          variableId: requestBody.variableId
          siteId: path.siteId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/variables/{variableId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one site environment variable
      effect: read
      questions:
      - What value does a particular site variable have?
      - Can I look up a single site variable by ID?
      instructions:
      - text: Show variable {variableId} of site {siteId}.
        slots:
          variableId: path.variableId
          siteId: path.siteId
      - text: Get the key and value of site variable {variableId} on {siteId}.
        slots:
          variableId: path.variableId
          siteId: path.siteId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/variables/{variableId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Change a site environment variable
      effect: write
      questions:
      - How do I change the value of an existing site variable?
      - Can I rename a site variable's key?
      instructions:
      - text: Set variable {variableId} on site {siteId} to {value}.
        slots:
          variableId: path.variableId
          siteId: path.siteId
          value: requestBody.value
      - text: Rename variable {variableId} on site {siteId} to key {key}.
        slots:
          variableId: path.variableId
          siteId: path.siteId
          key: requestBody.key
      method: generated
      generated: '2026-09-26'
- target: $.paths['/sites/{siteId}/variables/{variableId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a site environment variable
      effect: destructive
      questions:
      - How do I remove an environment variable from my site?
      - Can I delete a site variable by ID?
      instructions:
      - text: Delete variable {variableId} from site {siteId}.
        slots:
          variableId: path.variableId
          siteId: path.siteId
      - text: Remove the environment variable {variableId} on site {siteId}.
        slots:
          variableId: path.variableId
          siteId: path.siteId
      method: generated
      generated: '2026-09-26'