Appwrite · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Appwrite Databases API

71 actions 71 updates phrasing extends openapi/appwrite-databases-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 71 · first 16 shown; the file carries all of them

$.info
$.paths['/databases'].get
$.paths['/databases'].post
$.paths['/databases/transactions'].get
$.paths['/databases/transactions'].post
$.paths['/databases/transactions/{transactionId}'].get
$.paths['/databases/transactions/{transactionId}'].delete
$.paths['/databases/transactions/{transactionId}'].patch
$.paths['/databases/transactions/{transactionId}/operations'].post
$.paths['/databases/{databaseId}'].get
$.paths['/databases/{databaseId}'].put
$.paths['/databases/{databaseId}'].delete
$.paths['/databases/{databaseId}/collections'].get
$.paths['/databases/{databaseId}/collections'].post
$.paths['/databases/{databaseId}/collections/{collectionId}'].get
$.paths['/databases/{databaseId}/collections/{collectionId}'].put

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 Databases API
  version: 1.0.0
extends: openapi/appwrite-databases-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: 70
- target: $.paths['/databases'].get
  update:
    x-apievangelist-phrasing:
      intent: List databases in the project
      effect: read
      questions:
      - Which databases exist in my Appwrite project?
      - Can I search my databases by name?
      instructions:
      - text: List all databases in this project.
      - text: Search my databases for {search}.
        slots:
          search: query.search
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a database
      effect: write
      questions:
      - How do I create a new database to hold my app's collections?
      - Can I create a database in a disabled state?
      instructions:
      - text: Create database {databaseId} named {name}.
        slots:
          databaseId: requestBody.databaseId
          name: requestBody.name
      - text: Create a new database called {name} with ID {databaseId} and enabled set to {enabled}.
        slots:
          name: requestBody.name
          databaseId: requestBody.databaseId
          enabled: requestBody.enabled
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/transactions'].get
  update:
    x-apievangelist-phrasing:
      intent: List transactions across all databases
      effect: read
      questions:
      - Which database transactions are currently open in my project?
      - Can I filter the list of transactions with queries?
      instructions:
      - text: List all database transactions.
      - text: List transactions matching {queries}.
        slots:
          queries: query.queries
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/transactions'].post
  update:
    x-apievangelist-phrasing:
      intent: Start a database transaction
      effect: write
      questions:
      - How do I make several document writes succeed or fail together?
      - Can I set a time-to-live on a new transaction?
      instructions:
      - text: Start a new database transaction.
      - text: Open a transaction that expires after {ttl} seconds.
        slots:
          ttl: requestBody.ttl
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/transactions/{transactionId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a database transaction
      effect: read
      questions:
      - What is the status of a particular transaction?
      - Can I look up a transaction by its ID?
      instructions:
      - text: Get transaction {transactionId}.
        slots:
          transactionId: path.transactionId
      - text: Show whether transaction {transactionId} is still pending.
        slots:
          transactionId: path.transactionId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/transactions/{transactionId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a database transaction
      effect: destructive
      questions:
      - How do I delete a transaction record I no longer need?
      - Can a transaction be removed by its ID?
      instructions:
      - text: Delete transaction {transactionId}.
        slots:
          transactionId: path.transactionId
      - text: Remove database transaction {transactionId}.
        slots:
          transactionId: path.transactionId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/transactions/{transactionId}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Commit or roll back a database transaction
      effect: write
      questions:
      - How do I commit all the operations staged in a transaction?
      - Can I roll back a transaction instead of committing it?
      instructions:
      - text: Commit transaction {transactionId}.
        slots:
          transactionId: path.transactionId
      - text: Roll back transaction {transactionId} with rollback set to {rollback}.
        slots:
          transactionId: path.transactionId
          rollback: requestBody.rollback
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/transactions/{transactionId}/operations'].post
  update:
    x-apievangelist-phrasing:
      intent: Stage multiple operations in a transaction
      effect: write
      questions:
      - Can I add a batch of document operations to an open transaction in one call?
      - How do I queue several writes inside a transaction before committing?
      instructions:
      - text: Add operations {operations} to transaction {transactionId}.
        slots:
          operations: requestBody.operations
          transactionId: path.transactionId
      - text: 'Stage these operations in transaction {transactionId}: {operations}.'
        slots:
          transactionId: path.transactionId
          operations: requestBody.operations
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a database's metadata
      effect: read
      questions:
      - What are the settings of one specific database?
      - Can I fetch a database by its ID to see whether it is enabled?
      instructions:
      - text: Get database {databaseId}.
        slots:
          databaseId: path.databaseId
      - text: Show the metadata for database {databaseId}.
        slots:
          databaseId: path.databaseId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Rename or enable a database
      effect: write
      questions:
      - How do I rename an existing database?
      - Can I disable a database so clients can no longer access it?
      instructions:
      - text: Rename database {databaseId} to {name}.
        slots:
          databaseId: path.databaseId
          name: requestBody.name
      - text: Set enabled to {enabled} on database {databaseId}.
        slots:
          enabled: requestBody.enabled
          databaseId: path.databaseId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a database
      effect: destructive
      questions:
      - How do I permanently delete a database and all of its collections?
      - Which API key scope do I need to delete a database?
      instructions:
      - text: Delete database {databaseId}.
        slots:
          databaseId: path.databaseId
      - text: Permanently remove database {databaseId} and everything in it.
        slots:
          databaseId: path.databaseId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections'].get
  update:
    x-apievangelist-phrasing:
      intent: List collections in a database
      effect: read
      questions:
      - What collections are in one of my databases?
      - Can I search a database's collections by name?
      instructions:
      - text: List collections in database {databaseId}.
        slots:
          databaseId: path.databaseId
      - text: Search database {databaseId} for collections named {search}.
        slots:
          databaseId: path.databaseId
          search: query.search
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a collection in a database
      effect: write
      questions:
      - How do I add a new collection to a database?
      - Can I define attributes and indexes at the same time I create a collection?
      - Is it possible to enable document-level security on a new collection?
      instructions:
      - text: Create collection {collectionId} named {name} in database {databaseId}.
        slots:
          collectionId: requestBody.collectionId
          name: requestBody.name
          databaseId: path.databaseId
      - text: Create collection {name} ({collectionId}) in {databaseId} with attributes {attributes} and indexes {indexes}.
        slots:
          name: requestBody.name
          collectionId: requestBody.collectionId
          databaseId: path.databaseId
          attributes: requestBody.attributes
          indexes: requestBody.indexes
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a collection's metadata
      effect: read
      questions:
      - What permissions and security settings does a collection have?
      - Can I look up one collection by its ID?
      instructions:
      - text: Get collection {collectionId} in database {databaseId}.
        slots:
          collectionId: path.collectionId
          databaseId: path.databaseId
      - text: Show the settings of collection {collectionId} in {databaseId}.
        slots:
          collectionId: path.collectionId
          databaseId: path.databaseId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a collection's name, permissions or security
      effect: write
      questions:
      - How do I change who can read and write a collection?
      - Can I purge a collection's cache when updating it?
      instructions:
      - text: Rename collection {collectionId} in {databaseId} to {name}.
        slots:
          collectionId: path.collectionId
          databaseId: path.databaseId
          name: requestBody.name
      - text: Set permissions {permissions} on collection {collectionId} in database {databaseId}.
        slots:
          permissions: requestBody.permissions
          collectionId: path.collectionId
          databaseId: path.databaseId
      - text: Turn document security {documentSecurity} on collection {collectionId} in {databaseId}.
        slots:
          documentSecurity: requestBody.documentSecurity
          collectionId: path.collectionId
          databaseId: path.databaseId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a collection
      effect: destructive
      questions:
      - How do I delete an entire collection including its documents?
      - Who has permission to delete a collection?
      instructions:
      - text: Delete collection {collectionId} from database {databaseId}.
        slots:
          collectionId: path.collectionId
          databaseId: path.databaseId
      - text: Drop collection {collectionId} in {databaseId}.
        slots:
          collectionId: path.collectionId
          databaseId: path.databaseId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes'].get
  update:
    x-apievangelist-phrasing:
      intent: List a collection's attributes
      effect: read
      questions:
      - What fields are defined on a collection?
      - Can I filter a collection's attributes with queries?
      instructions:
      - text: List the attributes of collection {collectionId} in {databaseId}.
        slots:
          collectionId: path.collectionId
          databaseId: path.databaseId
      - text: Show attributes of {collectionId} in {databaseId} matching {queries}.
        slots:
          collectionId: path.collectionId
          databaseId: path.databaseId
          queries: query.queries
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/bigint'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a bigint field to a collection
      effect: write
      questions:
      - Which attribute type holds very large whole numbers in a collection?
      - Can a bigint attribute have minimum and maximum bounds?
      instructions:
      - text: Add bigint attribute {key} to collection {collectionId} in {databaseId}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          required: requestBody.required
      - text: Create bigint field {key} on {collectionId} ({databaseId}) with required {required}, min {min} and max {max}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          required: requestBody.required
          min: requestBody.min
          max: requestBody.max
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/bigint/{key}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Change an existing bigint field
      effect: write
      questions:
      - Can I change the bounds of a bigint field that already exists?
      - Does changing a bigint field's default affect documents already saved?
      instructions:
      - text: Update bigint attribute {key} on {collectionId} in {databaseId} to default {default}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          default: requestBody.default
      - text: Set the max of existing bigint field {key} in {collectionId} ({databaseId}) to {max}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          max: requestBody.max
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/boolean'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a true/false field to a collection
      effect: write
      questions:
      - What's the way to add a yes/no flag field to my documents?
      - Can a boolean attribute have a default value?
      instructions:
      - text: Add boolean attribute {key} to collection {collectionId} in {databaseId}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          required: requestBody.required
      - text: Create true/false field {key} on {collectionId} ({databaseId}) defaulting to {default}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          default: requestBody.default
          required: requestBody.required
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/boolean/{key}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Change an existing boolean field
      effect: write
      questions:
      - Can I flip the default of a boolean field I already created?
      - Is it possible to rename an existing boolean attribute?
      instructions:
      - text: Change the default of boolean attribute {key} on {collectionId} in {databaseId} to {default}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          default: requestBody.default
      - text: Rename boolean field {key} in {collectionId} ({databaseId}) to {newKey}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          newKey: requestBody.newKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/datetime'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a date-time field to a collection
      effect: write
      questions:
      - Is there an attribute for ISO 8601 timestamps on a collection?
      - Can a datetime attribute store an array of dates?
      instructions:
      - text: Add datetime attribute {key} to collection {collectionId} in {databaseId}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          required: requestBody.required
      - text: Create date-time field {key} on {collectionId} ({databaseId}) defaulting to {default}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          default: requestBody.default
          required: requestBody.required
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/datetime/{key}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Change an existing datetime field
      effect: write
      questions:
      - Can I change the default timestamp on a datetime field that already exists?
      - How do I rename a datetime attribute?
      instructions:
      - text: Change the default of datetime attribute {key} on {collectionId} in {databaseId} to {default}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          default: requestBody.default
      - text: Rename datetime field {key} in {collectionId} ({databaseId}) to {newKey}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          newKey: requestBody.newKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/email'].post
  update:
    x-apievangelist-phrasing:
      intent: Add an email address field to a collection
      effect: write
      questions:
      - Can I add a field that only accepts valid email addresses?
      - Can an email attribute hold a list of addresses?
      instructions:
      - text: Add email attribute {key} to collection {collectionId} in {databaseId}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          required: requestBody.required
      - text: Create email field {key} on {collectionId} ({databaseId}) as an array {array}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          array: requestBody.array
          required: requestBody.required
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/email/{key}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Change an existing email field
      effect: write
      questions:
      - Can I set a new default address on an email field already in use?
      - How do I make an existing email attribute required?
      instructions:
      - text: Change the default of email attribute {key} on {collectionId} in {databaseId} to {default}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          default: requestBody.default
      - text: Set required to {required} on email field {key} in {collectionId} ({databaseId}).
        slots:
          required: requestBody.required
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/enum'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a fixed-choice enum field to a collection
      effect: write
      questions:
      - How do I restrict a field to a whitelist of allowed values?
      - Can an enum attribute have a default choice?
      instructions:
      - text: Add enum attribute {key} with values {elements} to {collectionId} in {databaseId}, required {required}.
        slots:
          key: requestBody.key
          elements: requestBody.elements
          collectionId: path.collectionId
          databaseId: path.databaseId
          required: requestBody.required
      - text: Create a choice field {key} on {collectionId} ({databaseId}) allowing only {elements}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          elements: requestBody.elements
          required: requestBody.required
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/enum/{key}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Change the allowed values of an enum field
      effect: write
      questions:
      - Can I add new allowed values to an enum field that already exists?
      - How do I change the default choice of an existing enum attribute?
      instructions:
      - text: Set the allowed values of enum attribute {key} on {collectionId} in {databaseId} to {elements}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          elements: requestBody.elements
      - text: Change the default of existing enum field {key} in {collectionId} ({databaseId}) to {default}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          default: requestBody.default
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/float'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a decimal number field to a collection
      effect: write
      questions:
      - Which field type should I use for prices or other decimal numbers?
      - Can a float attribute enforce a minimum and maximum value?
      instructions:
      - text: Add float attribute {key} to collection {collectionId} in {databaseId}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          required: requestBody.required
      - text: Create decimal field {key} on {collectionId} ({databaseId}) between {min} and {max}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          min: requestBody.min
          max: requestBody.max
          required: requestBody.required
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/float/{key}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Change an existing float field
      effect: write
      questions:
      - Can I widen the allowed range of a decimal field already in use?
      - How do I change the default on an existing float attribute?
      instructions:
      - text: Change the default of float attribute {key} on {collectionId} in {databaseId} to {default}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          default: requestBody.default
      - text: Set the min of existing float field {key} in {collectionId} ({databaseId}) to {min}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          min: requestBody.min
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/integer'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a whole number field to a collection
      effect: write
      questions:
      - How do I add a counter or quantity field that holds integers?
      - Can an integer attribute be limited to a range of values?
      instructions:
      - text: Add integer attribute {key} to collection {collectionId} in {databaseId}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          required: requestBody.required
      - text: Create integer field {key} on {collectionId} ({databaseId}) from {min} to {max}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          min: requestBody.min
          max: requestBody.max
          required: requestBody.required
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/integer/{key}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Change an existing integer field
      effect: write
      questions:
      - Can I change the range of an integer field that already exists?
      - Will a new default on an integer attribute backfill existing documents?
      instructions:
      - text: Change the default of integer attribute {key} on {collectionId} in {databaseId} to {default}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          default: requestBody.default
      - text: Set existing integer field {key} in {collectionId} ({databaseId}) to allow {min} through {max}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          min: requestBody.min
          max: requestBody.max
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/ip'].post
  update:
    x-apievangelist-phrasing:
      intent: Add an IP address field to a collection
      effect: write
      questions:
      - Is there a field type that validates IP addresses?
      - Can an IP address attribute store multiple addresses?
      instructions:
      - text: Add IP address attribute {key} to collection {collectionId} in {databaseId}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          required: requestBody.required
      - text: Create IP field {key} on {collectionId} ({databaseId}) defaulting to {default}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          default: requestBody.default
          required: requestBody.required
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/ip/{key}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Change an existing IP address field
      effect: write
      questions:
      - Can I change the default IP on an IP address field already created?
      - How do I rename an existing IP attribute?
      instructions:
      - text: Change the default of IP attribute {key} on {collectionId} in {databaseId} to {default}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          default: requestBody.default
      - text: Rename IP address field {key} in {collectionId} ({databaseId}) to {newKey}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          newKey: requestBody.newKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/line'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a geometric line field to a collection
      effect: write
      questions:
      - How do I store a route or path as a geometric line in my documents?
      - Can a line attribute have a default geometry?
      instructions:
      - text: Add line attribute {key} to collection {collectionId} in {databaseId}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          required: requestBody.required
      - text: Create geo line field {key} on {collectionId} ({databaseId}) defaulting to {default}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          default: requestBody.default
          required: requestBody.required
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/line/{key}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Change an existing line geometry field
      effect: write
      questions:
      - Can I change the default line geometry on an existing field?
      - How do I rename a line attribute I already created?
      instructions:
      - text: Change the default of line attribute {key} on {collectionId} in {databaseId} to {default}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          default: requestBody.default
      - text: Rename geo line field {key} in {collectionId} ({databaseId}) to {newKey}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          newKey: requestBody.newKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/longtext'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a long text field to a collection
      effect: write
      questions:
      - How do I add a field big enough for article bodies or long notes?
      - Can a longtext attribute be encrypted at rest?
      instructions:
      - text: Add longtext attribute {key} to collection {collectionId} in {databaseId}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          required: requestBody.required
      - text: Create longtext field {key} on {collectionId} ({databaseId}) with encryption {encrypt}, required {required}.
        slots:
          key: requestBody.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          encrypt: requestBody.encrypt
          required: requestBody.required
      method: generated
      generated: '2026-09-26'
- target: $.paths['/databases/{databaseId}/collections/{collectionId}/attributes/longtext/{key}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Change an existing longtext field
      effect: write
      questions:
      - Can I set a new default value on a longtext field already in use?
      - How do I rename an existing longtext attribute?
      instructions:
      - text: Change the default of longtext attribute {key} on {collectionId} in {databaseId} to {default}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          default: requestBody.default
      - text: Rename longtext field {key} in {collectionId} ({databaseId}) to {newKey}.
        slots:
          key: path.key
          collectionId: path.collectionId
          databaseId: path.databaseId
          newKey: requestBody.newKey
      method: generated
      generated: '2026-09-26'


# --- truncated at 32 KB (62 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/appwrite/refs/heads/main/overlays/appwrite-databases-api-phrasing-overlay.yaml