# 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 UDF API version: 1.0.0 extends: openapi/clickhouse-udf-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: 12 - target: $.paths['/v1/organizations/{organizationId}/udfs/{functionName}/attachments/{serviceId}'].get update: x-apievangelist-phrasing: intent: Check a UDF's attachment to one service effect: read questions: - Which version of a user-defined function is attached to a particular service? - Is my UDF currently attached to this service? instructions: - text: Get the attachment of UDF {functionName} to service {service} in org {org}. slots: functionName: path.functionName service: path.serviceId org: path.organizationId - text: Show which version of function {functionName} runs on service {service} in organization {org}. slots: functionName: path.functionName service: path.serviceId org: path.organizationId method: generated generated: '2026-09-26' - target: $.paths['/v1/organizations/{organizationId}/udfs/{functionName}/attachments/{serviceId}'].put update: x-apievangelist-phrasing: intent: Attach a UDF version to a service effect: write questions: - How do I make a user-defined function available on one of my services? - If I don't specify a version, which UDF version gets attached? instructions: - text: Attach UDF {functionName} to service {service} in org {org}. slots: functionName: path.functionName service: path.serviceId org: path.organizationId - text: Attach version {version} of function {functionName} to service {service} in organization {org}. slots: version: requestBody.version functionName: path.functionName service: path.serviceId org: path.organizationId method: generated generated: '2026-09-26' - target: $.paths['/v1/organizations/{organizationId}/udfs/{functionName}/attachments/{serviceId}'].delete update: x-apievangelist-phrasing: intent: Detach a UDF from a service effect: destructive questions: - How do I remove a user-defined function from just one service? - Can I stop a UDF running on a service without deleting the function? instructions: - text: Detach UDF {functionName} from service {service} in org {org}. slots: functionName: path.functionName service: path.serviceId org: path.organizationId - text: Unhook function {functionName} from service {service} in organization {org}, keeping the UDF itself. slots: functionName: path.functionName service: path.serviceId org: path.organizationId method: generated generated: '2026-09-26' - target: $.paths['/v1/organizations/{organizationId}/udfs/{functionName}/attachments'].get update: x-apievangelist-phrasing: intent: List the services a UDF is attached to effect: read questions: - Which services is a given user-defined function attached to? - Can I page through a UDF's attachments with a cursor? instructions: - text: List all service attachments for UDF {functionName} in org {org}. slots: functionName: path.functionName org: path.organizationId - text: Show {limit} attachments of function {functionName} in organization {org} after cursor {cursor}. slots: limit: query.limit functionName: path.functionName org: path.organizationId cursor: query.cursor method: generated generated: '2026-09-26' - target: $.paths['/v1/organizations/{organizationId}/udfs'].get update: x-apievangelist-phrasing: intent: List the organization's UDFs effect: read questions: - What user-defined functions exist in my ClickHouse Cloud organization? - Can I see the latest version of every UDF we've built? instructions: - text: List all UDFs in organization {org}. slots: org: path.organizationId - text: Show {limit} user-defined functions in org {org} starting at cursor {cursor}. slots: limit: query.limit org: path.organizationId cursor: query.cursor method: generated generated: '2026-09-26' - target: $.paths['/v1/organizations/{organizationId}/udfs'].post update: x-apievangelist-phrasing: intent: Create a new UDF effect: write questions: - How do I create a brand-new user-defined function in ClickHouse Cloud? - What's the first step to deploy my own function code as a UDF? instructions: - text: Create a new UDF in organization {org}. slots: org: path.organizationId - text: Register a brand-new user-defined function for org {org} from my uploaded archive. slots: org: path.organizationId method: generated generated: '2026-09-26' - target: $.paths['/v1/organizations/{organizationId}/udfs/{functionName}'].get update: x-apievangelist-phrasing: intent: Get the latest version of a UDF effect: read questions: - What is the latest version of a particular user-defined function? - Is my UDF's newest build ready? instructions: - text: Get UDF {functionName} in org {org}. slots: functionName: path.functionName org: path.organizationId - text: Show the latest version details for function {functionName} in organization {org}. slots: functionName: path.functionName org: path.organizationId method: generated generated: '2026-09-26' - target: $.paths['/v1/organizations/{organizationId}/udfs/{functionName}'].delete update: x-apievangelist-phrasing: intent: Delete a UDF and all its versions effect: destructive questions: - How do I delete a user-defined function everywhere it's used? - Does deleting a UDF also detach it from every service? instructions: - text: Delete UDF {functionName} and all its versions in org {org}. slots: functionName: path.functionName org: path.organizationId - text: Remove function {functionName} entirely from organization {org}, detaching it from all services. slots: functionName: path.functionName org: path.organizationId method: generated generated: '2026-09-26' - target: $.paths['/v1/organizations/{organizationId}/udfUploads/url'].post update: x-apievangelist-phrasing: intent: Get a presigned URL to upload UDF code effect: write questions: - Where do I upload the zip archive containing my UDF source code? - Can I reuse an upload URL if creating my UDF fails? instructions: - text: Create a UDF upload URL for organization {org}. slots: org: path.organizationId - text: Give me a fresh presigned zip upload link for UDF code in org {org}. slots: org: path.organizationId method: generated generated: '2026-09-26' - target: $.paths['/v1/organizations/{organizationId}/udfs/{functionName}/versions'].get update: x-apievangelist-phrasing: intent: List every version of a UDF effect: read questions: - What versions of a user-defined function have been built? - Can I see the full version history of one UDF? instructions: - text: List all versions of UDF {functionName} in org {org}. slots: functionName: path.functionName org: path.organizationId - text: Show {limit} versions of function {functionName} in organization {org} after cursor {cursor}. slots: limit: query.limit functionName: path.functionName org: path.organizationId cursor: query.cursor method: generated generated: '2026-09-26' - target: $.paths['/v1/organizations/{organizationId}/udfs/{functionName}/versions'].post update: x-apievangelist-phrasing: intent: Build a new version of an existing UDF effect: write questions: - How do I ship updated code for a user-defined function that already exists? - Does a new UDF version inherit configuration from the previous version? instructions: - text: Create a new version of UDF {functionName} in org {org} from my uploaded archive. slots: functionName: path.functionName org: path.organizationId - text: Start a build of the next version of function {functionName} in organization {org}. slots: functionName: path.functionName org: path.organizationId method: generated generated: '2026-09-26' - target: $.paths['/v1/organizations/{organizationId}/udfs/{functionName}/versions/{version}'].delete update: x-apievangelist-phrasing: intent: Delete one version of a UDF effect: destructive questions: - How do I delete an old version of a user-defined function? - Can I remove a UDF version while it's still attached to a service? instructions: - text: Delete version {version} of UDF {functionName} in org {org}. slots: version: path.version functionName: path.functionName org: path.organizationId - text: Remove build {version} of function {functionName} from organization {org}. slots: version: path.version functionName: path.functionName org: path.organizationId method: generated generated: '2026-09-26'