Snowflake · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Snowflake Database Role API

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

What the actions change

x-apievangelist-phrasing

Targets 14

$.info
$.paths['/api/v2/databases/{database}/database-roles'].get
$.paths['/api/v2/databases/{database}/database-roles'].post
$.paths['/api/v2/databases/{database}/database-roles/{name}'].delete
$.paths['/api/v2/databases/{database}/database-roles/{name}:clone'].post
$.paths['/api/v2/databases/{database}/database-roles/{name}/grants'].get
$.paths['/api/v2/databases/{database}/database-roles/{name}/grants'].post
$.paths['/api/v2/databases/{database}/database-roles/{name}/grants:revoke'].post
$.paths['/api/v2/databases/{database}/database-roles/{name}/future-grants'].get
$.paths['/api/v2/databases/{database}/database-roles/{name}/future-grants'].post
$.paths['/api/v2/databases/{database}/database-roles/{name}/future-grants:revoke'].post
$.paths['/api/v2/databases/{database}/database-roles/{name}:set-tags'].post
$.paths['/api/v2/databases/{database}/database-roles/{name}:unset-tags'].post
$.paths['/api/v2/databases/{database}/database-roles/{name}:get-tags'].get

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 Snowflake Database Role API
  version: 1.0.0
extends: openapi/snowflake-database-role-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: 13
- target: $.paths['/api/v2/databases/{database}/database-roles'].get
  update:
    x-apievangelist-phrasing:
      intent: List database roles in a database
      effect: read
      questions:
      - Which database roles are defined in this Snowflake database?
      - Can I see every database-scoped role that exists?
      instructions:
      - text: List the database roles in database {database}.
        slots:
          database: path.database
      - text: Show me all database roles defined in the database I named.
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v2/databases/{database}/database-roles'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a database role
      effect: write
      questions:
      - How do I create a role scoped to a single database?
      - Can I add a comment when creating a database role?
      instructions:
      - text: Create a database role named {name} in database {database}.
        slots:
          database: path.database
          name: requestBody.name
      - text: Create database role {name} with comment {comment}.
        slots:
          name: requestBody.name
          comment: requestBody.comment
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v2/databases/{database}/database-roles/{name}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a database role
      effect: destructive
      questions:
      - How do I remove a database role I no longer need?
      - What happens to grants when a database role is dropped?
      instructions:
      - text: Delete database role {role} from database {database}.
        slots:
          database: path.database
          role: path.name
      - text: Drop this database role from the database.
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v2/databases/{database}/database-roles/{name}:clone'].post
  update:
    x-apievangelist-phrasing:
      intent: Clone a database role
      effect: write
      questions:
      - Can I create a new database role by copying an existing one?
      - Is it possible to clone a database role into another database?
      instructions:
      - text: Clone database role {role} in {database} as {name}.
        slots:
          database: path.database
          role: path.name
          name: requestBody.name
      - text: Clone the database role into database {targetDatabase} as {name}.
        slots:
          targetDatabase: query.targetDatabase
          name: requestBody.name
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v2/databases/{database}/database-roles/{name}/grants'].get
  update:
    x-apievangelist-phrasing:
      intent: List privileges granted to a database role
      effect: read
      questions:
      - What privileges does a database role currently hold?
      - Which objects has a given database role been granted access to?
      instructions:
      - text: List all current grants to database role {role} in {database}.
        slots:
          database: path.database
          role: path.name
      - text: Show the existing privileges held by the database role I named.
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v2/databases/{database}/database-roles/{name}/grants'].post
  update:
    x-apievangelist-phrasing:
      intent: Grant privileges to a database role
      effect: write
      questions:
      - How do I give a database role SELECT on a table?
      - Can I grant privileges with the grant option to a database role?
      instructions:
      - text: Grant {privileges} on {securable_type} {securable} to database role {role} in {database}.
        slots:
          privileges: requestBody.privileges
          securable_type: requestBody.securable_type
          securable: requestBody.securable
          role: path.name
          database: path.database
      - text: Give the database role privileges on the {securable_type} object with grant option {grant_option}.
        slots:
          securable_type: requestBody.securable_type
          grant_option: requestBody.grant_option
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v2/databases/{database}/database-roles/{name}/grants:revoke'].post
  update:
    x-apievangelist-phrasing:
      intent: Revoke privileges from a database role
      effect: destructive
      questions:
      - How do I take away a privilege a database role already has?
      - Can I revoke access on one object from a database role?
      instructions:
      - text: Revoke {privileges} on {securable_type} {securable} from database role {role} in {database}.
        slots:
          database: path.database
          role: path.name
          privileges: requestBody.privileges
          securable_type: requestBody.securable_type
          securable: requestBody.securable
      - text: Remove the database role's existing grants on the {securable_type} object.
        slots:
          securable_type: requestBody.securable_type
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v2/databases/{database}/database-roles/{name}/future-grants'].get
  update:
    x-apievangelist-phrasing:
      intent: List future grants on a database role
      effect: read
      questions:
      - Which future grants apply to a database role for objects not yet created?
      - Can I see what a database role will automatically get on new tables?
      instructions:
      - text: List all future grants to database role {role} in {database}.
        slots:
          database: path.database
          role: path.name
      - text: Show the privileges the database role will receive on objects created later.
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v2/databases/{database}/database-roles/{name}/future-grants'].post
  update:
    x-apievangelist-phrasing:
      intent: Grant future privileges to a database role
      effect: write
      questions:
      - How do I make a database role automatically get SELECT on tables created in the future?
      - Can I set future grants for every new object of a type in a schema?
      instructions:
      - text: Grant future {privileges} on new {securable_type} objects to database role {role} in {database}.
        slots:
          database: path.database
          role: path.name
          privileges: requestBody.privileges
          securable_type: requestBody.securable_type
      - text: Give the database role future privileges on every {securable_type} created in {containing_scope}.
        slots:
          securable_type: requestBody.securable_type
          containing_scope: requestBody.containing_scope
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v2/databases/{database}/database-roles/{name}/future-grants:revoke'].post
  update:
    x-apievangelist-phrasing:
      intent: Revoke future grants from a database role
      effect: destructive
      questions:
      - How do I stop a database role from automatically getting access to new objects?
      - Can I remove a future grant on a schema from a database role?
      instructions:
      - text: Revoke future {privileges} on new {securable_type} objects from database role {role} in {database}.
        slots:
          database: path.database
          role: path.name
          privileges: requestBody.privileges
          securable_type: requestBody.securable_type
      - text: Remove the database role's future grants for {securable_type} objects in {containing_scope}.
        slots:
          securable_type: requestBody.securable_type
          containing_scope: requestBody.containing_scope
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v2/databases/{database}/database-roles/{name}:set-tags'].post
  update:
    x-apievangelist-phrasing:
      intent: Set tags on a database role
      effect: write
      questions:
      - How do I attach tags to a database role?
      - Can I label a database role with an owning team tag?
      instructions:
      - text: Set tags on database role {role} in {database}.
        slots:
          database: path.database
          role: path.name
      - text: Tag the database role I named with our team tag.
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v2/databases/{database}/database-roles/{name}:unset-tags'].post
  update:
    x-apievangelist-phrasing:
      intent: Remove tags from a database role
      effect: write
      questions:
      - How can I remove a tag from a database role?
      - Can I clear tag assignments on a database role?
      instructions:
      - text: Unset tags from database role {role} in {database}.
        slots:
          database: path.database
          role: path.name
      - text: Remove the team tag from the database role I named.
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v2/databases/{database}/database-roles/{name}:get-tags'].get
  update:
    x-apievangelist-phrasing:
      intent: Get tag assignments for a database role
      effect: read
      questions:
      - Which tags are assigned to a database role?
      - Does reading a database role's tags require an active warehouse?
      instructions:
      - text: Show all tags assigned to database role {role} in {database}.
        slots:
          database: path.database
          role: path.name
      - text: List the tag assignments on the database role I named.
      method: generated
      generated: '2026-10-01'