ClickHouse · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for OpenAPI spec for ClickHouse Cloud User management API

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

What the actions change

x-apievangelist-phrasing

Targets 9

$.info
$.paths['/v1/organizations/{organizationId}/members'].get
$.paths['/v1/organizations/{organizationId}/members/{userId}'].get
$.paths['/v1/organizations/{organizationId}/members/{userId}'].delete
$.paths['/v1/organizations/{organizationId}/members/{userId}'].patch
$.paths['/v1/organizations/{organizationId}/invitations'].get
$.paths['/v1/organizations/{organizationId}/invitations'].post
$.paths['/v1/organizations/{organizationId}/invitations/{invitationId}'].get
$.paths['/v1/organizations/{organizationId}/invitations/{invitationId}'].delete

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 OpenAPI spec for ClickHouse Cloud User management API
  version: 1.0.0
extends: openapi/clickhouse-user-management-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: 8
- target: $.paths['/v1/organizations/{organizationId}/members'].get
  update:
    x-apievangelist-phrasing:
      intent: List organization members
      effect: read
      questions:
      - Who are the members of my ClickHouse Cloud organization?
      - Which people currently have access to our org?
      instructions:
      - text: List all members of organization {org}.
        slots:
          org: path.organizationId
      - text: Show everyone who belongs to org {org} and their roles.
        slots:
          org: path.organizationId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/organizations/{organizationId}/members/{userId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one member's details
      effect: read
      questions:
      - What role does a specific member have in our organization?
      - Which custom roles are assigned to one particular user?
      instructions:
      - text: Show member {userId} in organization {org}.
        slots:
          userId: path.userId
          org: path.organizationId
      - text: Get the role assigned to user {userId} in org {org}.
        slots:
          userId: path.userId
          org: path.organizationId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/organizations/{organizationId}/members/{userId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Remove a member from the organization
      effect: destructive
      questions:
      - How do I remove someone who left the company from our organization?
      - Can I revoke a user's membership in the org?
      instructions:
      - text: Remove user {userId} from organization {org}.
        slots:
          userId: path.userId
          org: path.organizationId
      - text: Revoke member {userId}'s access to org {org}.
        slots:
          userId: path.userId
          org: path.organizationId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/organizations/{organizationId}/members/{userId}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Change a member's role
      effect: write
      questions:
      - How do I promote a member to admin?
      - Can I assign custom roles to an existing member?
      instructions:
      - text: Change member {userId}'s role in org {org} to {role}.
        slots:
          userId: path.userId
          org: path.organizationId
          role: requestBody.role
      - text: Assign role IDs {assignedRoleIds} to existing member {userId} in organization {org}.
        slots:
          assignedRoleIds: requestBody.assignedRoleIds
          userId: path.userId
          org: path.organizationId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/organizations/{organizationId}/invitations'].get
  update:
    x-apievangelist-phrasing:
      intent: List pending organization invitations
      effect: read
      questions:
      - Which invitations to our organization are still outstanding?
      - Who have we invited to the org that hasn't joined yet?
      instructions:
      - text: List all invitations for organization {org}.
        slots:
          org: path.organizationId
      - text: Show outstanding invites in org {org}.
        slots:
          org: path.organizationId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/organizations/{organizationId}/invitations'].post
  update:
    x-apievangelist-phrasing:
      intent: Invite someone to the organization
      effect: write
      questions:
      - How do I invite a teammate to our ClickHouse Cloud org by email?
      - Can I pick the role a new invitee will get when they join?
      instructions:
      - text: Invite {email} to organization {org}.
        slots:
          email: requestBody.email
          org: path.organizationId
      - text: Send an invitation to {email} for org {org} with role {role}.
        slots:
          email: requestBody.email
          org: path.organizationId
          role: requestBody.role
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/organizations/{organizationId}/invitations/{invitationId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one invitation's details
      effect: read
      questions:
      - What email and role is a specific invitation for?
      - Which role will a particular pending invite grant?
      instructions:
      - text: Show invitation {invitationId} in organization {org}.
        slots:
          invitationId: path.invitationId
          org: path.organizationId
      - text: Get details of invite {invitationId} for org {org}.
        slots:
          invitationId: path.invitationId
          org: path.organizationId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/organizations/{organizationId}/invitations/{invitationId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Cancel an organization invitation
      effect: destructive
      questions:
      - How do I cancel an invite I sent to the wrong email address?
      - Can I withdraw a pending invitation before it's accepted?
      instructions:
      - text: Delete invitation {invitationId} from organization {org}.
        slots:
          invitationId: path.invitationId
          org: path.organizationId
      - text: Withdraw pending invite {invitationId} in org {org}.
        slots:
          invitationId: path.invitationId
          org: path.organizationId
      method: generated
      generated: '2026-09-26'