Skip to main content
POST
Create UDF
Beta Disclaimer: This beta endpoint is evolving; the API contract may change.

Creates a new UDF. See User-defined functions in Cloud.

Authorizations

Authorization
string
header
required

Use key ID and key secret obtained in ClickHouse Cloud console: https://clickhouse.com/docs/cloud/manage/openapi

Path Parameters

organizationId
string<uuid>
required

ID of the requested organization.

Pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$

Body

application/json
uploadId
string<uuid>
required

Identifier of the uploaded source archive.

Pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$
runtime
enum<string>
required
Available options:
python3.11,
native
arguments
object[]
required
returnType
string
required
type
string
required
Allowed value: "executable"
functionName
string
required
Pattern: ^[A-Za-z][A-Za-z0-9_]*$
returnName
string | null
Pattern: ^[A-Za-z][A-Za-z0-9_]*$
commandReadTimeout
integer
default:10000
commandWriteTimeout
integer
default:10000
sendChunkHeader
boolean
default:false
format
string
default:TabSeparated
sandboxType
enum<string>
default:basic
Available options:
basic,
netenable
sandboxVersion
enum<string>
default:v2
Available options:
v1,
v2,
v3
poolSize
null
maxCommandExecutionTime
integer | null
default:10
Required range: x > 0

Response

UDF created and building.

status
integer
required

HTTP status code.

Example:

201

requestId
string<uuid>
required

Unique id assigned to every request. UUIDv4

Pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$
result
object
required
Last modified on August 3, 2026