Appwrite · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Appwrite Organization API
24 actions
24 updates
phrasing
extends
openapi/appwrite-organization-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.
What the actions change
x-apievangelist-phrasing
Targets 24 · first 16 shown; the file carries all of them
$.info
$.paths['/organization'].get
$.paths['/organization'].put
$.paths['/organization'].delete
$.paths['/organization/installations'].get
$.paths['/organization/installations'].post
$.paths['/organization/installations/{installationId}'].get
$.paths['/organization/installations/{installationId}'].put
$.paths['/organization/installations/{installationId}'].delete
$.paths['/organization/keys'].get
$.paths['/organization/keys'].post
$.paths['/organization/keys/{keyId}'].get
$.paths['/organization/keys/{keyId}'].put
$.paths['/organization/keys/{keyId}'].delete
$.paths['/organization/memberships'].get
$.paths['/organization/memberships'].post
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Appwrite Organization API
version: 1.0.0
extends: openapi/appwrite-organization-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: 23
- target: $.paths['/organization'].get
update:
x-apievangelist-phrasing:
intent: Get the current organization
effect: read
questions:
- What are the details of the organization my key belongs to?
- How can I check the name of my current Appwrite organization?
instructions:
- text: Show my current organization.
- text: Fetch the details of this organization.
method: generated
generated: '2026-09-26'
- target: $.paths['/organization'].put
update:
x-apievangelist-phrasing:
intent: Rename the current organization
effect: write
questions:
- Can I change the name of my organization?
- What can be edited on the current organization besides its name?
instructions:
- text: Rename my organization to {name}.
slots:
name: requestBody.name
- text: Set the current organization's name to {name}.
slots:
name: requestBody.name
method: generated
generated: '2026-09-26'
- target: $.paths['/organization'].delete
update:
x-apievangelist-phrasing:
intent: Delete the current organization
effect: destructive
questions:
- Does deleting my organization also delete every project inside it?
- How do I permanently shut down the organization I'm working in?
instructions:
- text: Delete my current organization and all its projects.
- text: Permanently remove this organization.
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/installations'].get
update:
x-apievangelist-phrasing:
intent: List apps installed on the organization
effect: read
questions:
- Which apps are installed on my organization?
- Can any organization member see the app installations, or only owners?
instructions:
- text: List the app installations on my organization.
- text: Show organization app installs matching {queries}.
slots:
queries: query.queries
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/installations'].post
update:
x-apievangelist-phrasing:
intent: Install an app on the organization
effect: write
questions:
- How do I install an app on my organization?
- Which scopes does a newly installed app get granted?
instructions:
- text: Install app {appId} on my organization.
slots:
appId: requestBody.appId
- text: Install app {appId} with authorization details {authorizationDetails}.
slots:
appId: requestBody.appId
authorizationDetails: requestBody.authorizationDetails
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/installations/{installationId}'].get
update:
x-apievangelist-phrasing:
intent: Get one app installation
effect: read
questions:
- What scopes does a specific app installation on my organization hold?
- Can I look up a single installation by its ID?
instructions:
- text: Show app installation {installationId}.
slots:
installationId: path.installationId
- text: Get the details of installed app {installationId}.
slots:
installationId: path.installationId
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/installations/{installationId}'].put
update:
x-apievangelist-phrasing:
intent: Refresh an app installation's scopes
effect: write
questions:
- When an app starts requesting new scopes, how do I refresh what its installation is granted?
- Who is allowed to update an app installation on the organization?
instructions:
- text: Update installation {installationId} to the app's current scopes.
slots:
installationId: path.installationId
- text: Change the authorization details of installation {installationId} to {authorizationDetails}.
slots:
installationId: path.installationId
authorizationDetails: requestBody.authorizationDetails
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/installations/{installationId}'].delete
update:
x-apievangelist-phrasing:
intent: Uninstall an app from the organization
effect: destructive
questions:
- How do I uninstall an app from my organization?
- Are the access tokens an installed app received revoked when it is removed?
instructions:
- text: Uninstall app installation {installationId}.
slots:
installationId: path.installationId
- text: Remove installed app {installationId} and revoke its tokens.
slots:
installationId: path.installationId
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/keys'].get
update:
x-apievangelist-phrasing:
intent: List organization API keys
effect: read
questions:
- What organization-level API keys exist right now?
- Can I filter the organization's keys with queries?
instructions:
- text: List all organization API keys.
- text: Show organization keys matching {queries}.
slots:
queries: query.queries
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/keys'].post
update:
x-apievangelist-phrasing:
intent: Create an organization API key
effect: write
questions:
- How do I create an API key that works across my whole organization?
- Can an organization key be given limited scopes and an expiry date?
instructions:
- text: Create an organization key {keyId} named {name} with scopes {scopes}.
slots:
keyId: requestBody.keyId
name: requestBody.name
scopes: requestBody.scopes
- text: Issue org key {keyId} called {name} with {scopes} that expires {expire}.
slots:
keyId: requestBody.keyId
name: requestBody.name
scopes: requestBody.scopes
expire: requestBody.expire
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/keys/{keyId}'].get
update:
x-apievangelist-phrasing:
intent: Get an organization API key
effect: read
questions:
- Which scopes does a particular organization key have?
- How can I inspect one org API key by its ID?
instructions:
- text: Show organization key {keyId}.
slots:
keyId: path.keyId
- text: Get the scopes on org key {keyId}.
slots:
keyId: path.keyId
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/keys/{keyId}'].put
update:
x-apievangelist-phrasing:
intent: Update an organization API key
effect: write
questions:
- Can I change the scopes or expiration of an existing organization key?
- How do I rename an org API key without deleting it?
instructions:
- text: Update org key {keyId} to name {name} with scopes {scopes}.
slots:
keyId: path.keyId
name: requestBody.name
scopes: requestBody.scopes
- text: Change the expiry of organization key {keyId} to {expire}, keeping name {name} and scopes {scopes}.
slots:
keyId: path.keyId
expire: requestBody.expire
name: requestBody.name
scopes: requestBody.scopes
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/keys/{keyId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete an organization API key
effect: destructive
questions:
- How do I revoke an organization key so it can no longer call the API?
- What happens to requests that use an org key after it is deleted?
instructions:
- text: Delete organization key {keyId}.
slots:
keyId: path.keyId
- text: Revoke org API key {keyId}.
slots:
keyId: path.keyId
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/memberships'].get
update:
x-apievangelist-phrasing:
intent: List organization members
effect: read
questions:
- Who are the members of my organization?
- Can I search the organization's memberships by name or email?
instructions:
- text: List everyone in my organization.
- text: Search organization members for {search}.
slots:
search: query.search
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/memberships'].post
update:
x-apievangelist-phrasing:
intent: Invite a member to the organization
effect: write
questions:
- How do I invite a teammate to my organization by email?
- Can I assign roles to someone when inviting them to the organization?
instructions:
- text: Invite {email} to the organization with roles {roles}.
slots:
email: requestBody.email
roles: requestBody.roles
- text: Add existing user {userId} to my organization as {roles}.
slots:
userId: requestBody.userId
roles: requestBody.roles
- text: Invite {name} at {email} with roles {roles} and redirect them to {url}.
slots:
name: requestBody.name
email: requestBody.email
roles: requestBody.roles
url: requestBody.url
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/memberships/{membershipId}'].get
update:
x-apievangelist-phrasing:
intent: Get one organization membership
effect: read
questions:
- What roles does a specific member hold in my organization?
- Has a particular invited member accepted yet?
instructions:
- text: Show organization membership {membershipId}.
slots:
membershipId: path.membershipId
- text: Get the roles for org member {membershipId}.
slots:
membershipId: path.membershipId
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/memberships/{membershipId}'].delete
update:
x-apievangelist-phrasing:
intent: Remove a member from the organization
effect: destructive
questions:
- How do I remove someone from my organization?
- Can I cancel an invitation that hasn't been accepted yet?
instructions:
- text: Remove organization member {membershipId}.
slots:
membershipId: path.membershipId
- text: Revoke the pending org invitation {membershipId}.
slots:
membershipId: path.membershipId
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/memberships/{membershipId}'].patch
update:
x-apievangelist-phrasing:
intent: Change an organization member's roles
effect: write
questions:
- How do I promote an organization member to owner?
- Can I change the roles of an existing organization member?
instructions:
- text: Set the roles of org member {membershipId} to {roles}.
slots:
membershipId: path.membershipId
roles: requestBody.roles
- text: Give organization membership {membershipId} the roles {roles}.
slots:
membershipId: path.membershipId
roles: requestBody.roles
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/projects'].get
update:
x-apievangelist-phrasing:
intent: List projects in the organization
effect: read
questions:
- Which projects belong to my organization?
- Can I search the organization's projects by name?
instructions:
- text: List all projects in my organization.
- text: Search organization projects for {search}.
slots:
search: query.search
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/projects'].post
update:
x-apievangelist-phrasing:
intent: Create a project in the organization
effect: write
questions:
- How do I create a new project under my organization?
- Can I choose the region a new project is hosted in?
instructions:
- text: Create project {projectId} named {name}.
slots:
projectId: requestBody.projectId
name: requestBody.name
- text: Create project {projectId} called {name} in region {region}.
slots:
projectId: requestBody.projectId
name: requestBody.name
region: requestBody.region
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/projects/{projectId}'].get
update:
x-apievangelist-phrasing:
intent: Get a project in the organization
effect: read
questions:
- What are the settings of one project in my organization?
- How can I look up an organization project by its ID?
instructions:
- text: Show organization project {projectId}.
slots:
projectId: path.projectId
- text: Get details of project {projectId}.
slots:
projectId: path.projectId
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/projects/{projectId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a project in the organization
effect: destructive
questions:
- How do I delete a single project from my organization?
- Is deleting an organization project permanent?
instructions:
- text: Delete organization project {projectId}.
slots:
projectId: path.projectId
- text: Permanently remove project {projectId} from the organization.
slots:
projectId: path.projectId
method: generated
generated: '2026-09-26'
- target: $.paths['/organization/projects/{projectId}'].patch
update:
x-apievangelist-phrasing:
intent: Rename a project in the organization
effect: write
questions:
- Can I rename a project that belongs to my organization?
- What fields of an organization project can be updated?
instructions:
- text: Rename project {projectId} to {name}.
slots:
projectId: path.projectId
name: requestBody.name
- text: Change organization project {projectId}'s name to {name}.
slots:
projectId: path.projectId
name: requestBody.name
method: generated
generated: '2026-09-26'