@alvera-ai/platform-sdk 0.9.0 → 0.10.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":["lastEventId: string | undefined","retryDelay: number","requestInit: RequestInit","dataLines: Array<string>","eventName: string | undefined","data: unknown","joinedValues","v","values: string[]","style: ArraySeparatorStyle","search: string[]","buildUrl: Client['buildUrl']","entries: Array<[string, string]>","v","config","request: Client['request']","requestInit: ReqInit","request","response: Response","error","finalError","emptyData: any","data: any","jsonError: unknown","url","_buildUrl: Client['buildUrl']"],"sources":["../src/generated/core/bodySerializer.gen.ts","../src/generated/core/serverSentEvents.gen.ts","../src/generated/core/pathSerializer.gen.ts","../src/generated/core/utils.gen.ts","../src/generated/core/auth.gen.ts","../src/generated/client/utils.gen.ts","../src/generated/client/client.gen.ts","../src/generated/client.gen.ts","../src/generated/valibot.gen.ts","../src/generated/sdk.gen.ts","../src/client.ts","../src/environments.generated.ts"],"sourcesContent":["// This file is auto-generated by @hey-api/openapi-ts\n\nimport type { ArrayStyle, ObjectStyle, SerializerOptions } from './pathSerializer.gen';\n\nexport type QuerySerializer = (query: Record<string, unknown>) => string;\n\nexport type BodySerializer = (body: unknown) => unknown;\n\ntype QuerySerializerOptionsObject = {\n allowReserved?: boolean;\n array?: Partial<SerializerOptions<ArrayStyle>>;\n object?: Partial<SerializerOptions<ObjectStyle>>;\n};\n\nexport type QuerySerializerOptions = QuerySerializerOptionsObject & {\n /**\n * Per-parameter serialization overrides. When provided, these settings\n * override the global array/object settings for specific parameter names.\n */\n parameters?: Record<string, QuerySerializerOptionsObject>;\n};\n\nconst serializeFormDataPair = (data: FormData, key: string, value: unknown): void => {\n if (typeof value === 'string' || value instanceof Blob) {\n data.append(key, value);\n } else if (value instanceof Date) {\n data.append(key, value.toISOString());\n } else {\n data.append(key, JSON.stringify(value));\n }\n};\n\nconst serializeUrlSearchParamsPair = (data: URLSearchParams, key: string, value: unknown): void => {\n if (typeof value === 'string') {\n data.append(key, value);\n } else {\n data.append(key, JSON.stringify(value));\n }\n};\n\nexport const formDataBodySerializer = {\n bodySerializer: (body: unknown): FormData => {\n const data = new FormData();\n\n Object.entries(body as Record<string, unknown>).forEach(([key, value]) => {\n if (value === undefined || value === null) {\n return;\n }\n if (Array.isArray(value)) {\n value.forEach((v) => serializeFormDataPair(data, key, v));\n } else {\n serializeFormDataPair(data, key, value);\n }\n });\n\n return data;\n },\n};\n\nexport const jsonBodySerializer = {\n bodySerializer: (body: unknown): string =>\n JSON.stringify(body, (_key, value) => (typeof value === 'bigint' ? value.toString() : value)),\n};\n\nexport const urlSearchParamsBodySerializer = {\n bodySerializer: (body: unknown): string => {\n const data = new URLSearchParams();\n\n Object.entries(body as Record<string, unknown>).forEach(([key, value]) => {\n if (value === undefined || value === null) {\n return;\n }\n if (Array.isArray(value)) {\n value.forEach((v) => serializeUrlSearchParamsPair(data, key, v));\n } else {\n serializeUrlSearchParamsPair(data, key, value);\n }\n });\n\n return data.toString();\n },\n};\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport type { Config } from './types.gen';\n\nexport type ServerSentEventsOptions<TData = unknown> = Omit<RequestInit, 'method'> &\n Pick<Config, 'method' | 'responseTransformer' | 'responseValidator'> & {\n /**\n * Fetch API implementation. You can use this option to provide a custom\n * fetch instance.\n *\n * @default globalThis.fetch\n */\n fetch?: typeof fetch;\n /**\n * Implementing clients can call request interceptors inside this hook.\n */\n onRequest?: (url: string, init: RequestInit) => Promise<Request>;\n /**\n * Callback invoked when a network or parsing error occurs during streaming.\n *\n * This option applies only if the endpoint returns a stream of events.\n *\n * @param error The error that occurred.\n */\n onSseError?: (error: unknown) => void;\n /**\n * Callback invoked when an event is streamed from the server.\n *\n * This option applies only if the endpoint returns a stream of events.\n *\n * @param event Event streamed from the server.\n * @returns Nothing (void).\n */\n onSseEvent?: (event: StreamEvent<TData>) => void;\n serializedBody?: RequestInit['body'];\n /**\n * Default retry delay in milliseconds.\n *\n * This option applies only if the endpoint returns a stream of events.\n *\n * @default 3000\n */\n sseDefaultRetryDelay?: number;\n /**\n * Maximum number of retry attempts before giving up.\n */\n sseMaxRetryAttempts?: number;\n /**\n * Maximum retry delay in milliseconds.\n *\n * Applies only when exponential backoff is used.\n *\n * This option applies only if the endpoint returns a stream of events.\n *\n * @default 30000\n */\n sseMaxRetryDelay?: number;\n /**\n * Optional sleep function for retry backoff.\n *\n * Defaults to using `setTimeout`.\n */\n sseSleepFn?: (ms: number) => Promise<void>;\n url: string;\n };\n\nexport interface StreamEvent<TData = unknown> {\n data: TData;\n event?: string;\n id?: string;\n retry?: number;\n}\n\nexport type ServerSentEventsResult<TData = unknown, TReturn = void, TNext = unknown> = {\n stream: AsyncGenerator<\n TData extends Record<string, unknown> ? TData[keyof TData] : TData,\n TReturn,\n TNext\n >;\n};\n\nexport function createSseClient<TData = unknown>({\n onRequest,\n onSseError,\n onSseEvent,\n responseTransformer,\n responseValidator,\n sseDefaultRetryDelay,\n sseMaxRetryAttempts,\n sseMaxRetryDelay,\n sseSleepFn,\n url,\n ...options\n}: ServerSentEventsOptions): ServerSentEventsResult<TData> {\n let lastEventId: string | undefined;\n\n const sleep = sseSleepFn ?? ((ms: number) => new Promise((resolve) => setTimeout(resolve, ms)));\n\n const createStream = async function* () {\n let retryDelay: number = sseDefaultRetryDelay ?? 3000;\n let attempt = 0;\n const signal = options.signal ?? new AbortController().signal;\n\n while (true) {\n if (signal.aborted) break;\n\n attempt++;\n\n const headers =\n options.headers instanceof Headers\n ? options.headers\n : new Headers(options.headers as Record<string, string> | undefined);\n\n if (lastEventId !== undefined) {\n headers.set('Last-Event-ID', lastEventId);\n }\n\n try {\n const requestInit: RequestInit = {\n redirect: 'follow',\n ...options,\n body: options.serializedBody,\n headers,\n signal,\n };\n let request = new Request(url, requestInit);\n if (onRequest) {\n request = await onRequest(url, requestInit);\n }\n // fetch must be assigned here, otherwise it would throw the error:\n // TypeError: Failed to execute 'fetch' on 'Window': Illegal invocation\n const _fetch = options.fetch ?? globalThis.fetch;\n const response = await _fetch(request);\n\n if (!response.ok) throw new Error(`SSE failed: ${response.status} ${response.statusText}`);\n\n if (!response.body) throw new Error('No body in SSE response');\n\n const reader = response.body.pipeThrough(new TextDecoderStream()).getReader();\n\n let buffer = '';\n\n const abortHandler = () => {\n try {\n reader.cancel();\n } catch {\n // noop\n }\n };\n\n signal.addEventListener('abort', abortHandler);\n\n try {\n while (true) {\n const { done, value } = await reader.read();\n if (done) break;\n buffer += value;\n buffer = buffer.replace(/\\r\\n?/g, '\\n'); // normalize line endings\n\n const chunks = buffer.split('\\n\\n');\n buffer = chunks.pop() ?? '';\n\n for (const chunk of chunks) {\n const lines = chunk.split('\\n');\n const dataLines: Array<string> = [];\n let eventName: string | undefined;\n\n for (const line of lines) {\n if (line.startsWith('data:')) {\n dataLines.push(line.replace(/^data:\\s*/, ''));\n } else if (line.startsWith('event:')) {\n eventName = line.replace(/^event:\\s*/, '');\n } else if (line.startsWith('id:')) {\n lastEventId = line.replace(/^id:\\s*/, '');\n } else if (line.startsWith('retry:')) {\n const parsed = Number.parseInt(line.replace(/^retry:\\s*/, ''), 10);\n if (!Number.isNaN(parsed)) {\n retryDelay = parsed;\n }\n }\n }\n\n let data: unknown;\n let parsedJson = false;\n\n if (dataLines.length) {\n const rawData = dataLines.join('\\n');\n try {\n data = JSON.parse(rawData);\n parsedJson = true;\n } catch {\n data = rawData;\n }\n }\n\n if (parsedJson) {\n if (responseValidator) {\n await responseValidator(data);\n }\n\n if (responseTransformer) {\n data = await responseTransformer(data);\n }\n }\n\n onSseEvent?.({\n data,\n event: eventName,\n id: lastEventId,\n retry: retryDelay,\n });\n\n if (dataLines.length) {\n yield data as any;\n }\n }\n }\n } finally {\n signal.removeEventListener('abort', abortHandler);\n reader.releaseLock();\n }\n\n break; // exit loop on normal completion\n } catch (error) {\n // connection failed or aborted; retry after delay\n onSseError?.(error);\n\n if (sseMaxRetryAttempts !== undefined && attempt >= sseMaxRetryAttempts) {\n break; // stop after firing error\n }\n\n // exponential backoff: double retry each attempt, cap at 30s\n const backoff = Math.min(retryDelay * 2 ** (attempt - 1), sseMaxRetryDelay ?? 30000);\n await sleep(backoff);\n }\n }\n };\n\n const stream = createStream();\n\n return { stream };\n}\n","// This file is auto-generated by @hey-api/openapi-ts\n\ninterface SerializeOptions<T> extends SerializePrimitiveOptions, SerializerOptions<T> {}\n\ninterface SerializePrimitiveOptions {\n allowReserved?: boolean;\n name: string;\n}\n\nexport interface SerializerOptions<T> {\n /**\n * @default true\n */\n explode: boolean;\n style: T;\n}\n\nexport type ArrayStyle = 'form' | 'spaceDelimited' | 'pipeDelimited' | 'deepObject';\nexport type ArraySeparatorStyle = ArrayStyle | MatrixStyle;\ntype MatrixStyle = 'label' | 'matrix' | 'simple';\nexport type ObjectStyle = 'form' | 'deepObject';\ntype ObjectSeparatorStyle = ObjectStyle | MatrixStyle;\n\ninterface SerializePrimitiveParam extends SerializePrimitiveOptions {\n value: string;\n}\n\nexport const separatorArrayExplode = (style: ArraySeparatorStyle) => {\n switch (style) {\n case 'label':\n return '.';\n case 'matrix':\n return ';';\n case 'simple':\n return ',';\n default:\n return '&';\n }\n};\n\nexport const separatorArrayNoExplode = (style: ArraySeparatorStyle) => {\n switch (style) {\n case 'form':\n return ',';\n case 'pipeDelimited':\n return '|';\n case 'spaceDelimited':\n return '%20';\n default:\n return ',';\n }\n};\n\nexport const separatorObjectExplode = (style: ObjectSeparatorStyle) => {\n switch (style) {\n case 'label':\n return '.';\n case 'matrix':\n return ';';\n case 'simple':\n return ',';\n default:\n return '&';\n }\n};\n\nexport const serializeArrayParam = ({\n allowReserved,\n explode,\n name,\n style,\n value,\n}: SerializeOptions<ArraySeparatorStyle> & {\n value: unknown[];\n}) => {\n if (!explode) {\n const joinedValues = (\n allowReserved ? value : value.map((v) => encodeURIComponent(v as string))\n ).join(separatorArrayNoExplode(style));\n switch (style) {\n case 'label':\n return `.${joinedValues}`;\n case 'matrix':\n return `;${name}=${joinedValues}`;\n case 'simple':\n return joinedValues;\n default:\n return `${name}=${joinedValues}`;\n }\n }\n\n const separator = separatorArrayExplode(style);\n const joinedValues = value\n .map((v) => {\n if (style === 'label' || style === 'simple') {\n return allowReserved ? v : encodeURIComponent(v as string);\n }\n\n return serializePrimitiveParam({\n allowReserved,\n name,\n value: v as string,\n });\n })\n .join(separator);\n return style === 'label' || style === 'matrix' ? separator + joinedValues : joinedValues;\n};\n\nexport const serializePrimitiveParam = ({\n allowReserved,\n name,\n value,\n}: SerializePrimitiveParam) => {\n if (value === undefined || value === null) {\n return '';\n }\n\n if (typeof value === 'object') {\n throw new Error(\n 'Deeply-nested arrays/objects aren’t supported. Provide your own `querySerializer()` to handle these.',\n );\n }\n\n return `${name}=${allowReserved ? value : encodeURIComponent(value)}`;\n};\n\nexport const serializeObjectParam = ({\n allowReserved,\n explode,\n name,\n style,\n value,\n valueOnly,\n}: SerializeOptions<ObjectSeparatorStyle> & {\n value: Record<string, unknown> | Date;\n valueOnly?: boolean;\n}) => {\n if (value instanceof Date) {\n return valueOnly ? value.toISOString() : `${name}=${value.toISOString()}`;\n }\n\n if (style !== 'deepObject' && !explode) {\n let values: string[] = [];\n Object.entries(value).forEach(([key, v]) => {\n values = [...values, key, allowReserved ? (v as string) : encodeURIComponent(v as string)];\n });\n const joinedValues = values.join(',');\n switch (style) {\n case 'form':\n return `${name}=${joinedValues}`;\n case 'label':\n return `.${joinedValues}`;\n case 'matrix':\n return `;${name}=${joinedValues}`;\n default:\n return joinedValues;\n }\n }\n\n const separator = separatorObjectExplode(style);\n const joinedValues = Object.entries(value)\n .map(([key, v]) =>\n serializePrimitiveParam({\n allowReserved,\n name: style === 'deepObject' ? `${name}[${key}]` : key,\n value: v as string,\n }),\n )\n .join(separator);\n return style === 'label' || style === 'matrix' ? separator + joinedValues : joinedValues;\n};\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport type { BodySerializer, QuerySerializer } from './bodySerializer.gen';\nimport {\n type ArraySeparatorStyle,\n serializeArrayParam,\n serializeObjectParam,\n serializePrimitiveParam,\n} from './pathSerializer.gen';\n\nexport interface PathSerializer {\n path: Record<string, unknown>;\n url: string;\n}\n\nexport const PATH_PARAM_RE = /\\{[^{}]+\\}/g;\n\nexport const defaultPathSerializer = ({ path, url: _url }: PathSerializer) => {\n let url = _url;\n const matches = _url.match(PATH_PARAM_RE);\n if (matches) {\n for (const match of matches) {\n let explode = false;\n let name = match.substring(1, match.length - 1);\n let style: ArraySeparatorStyle = 'simple';\n\n if (name.endsWith('*')) {\n explode = true;\n name = name.substring(0, name.length - 1);\n }\n\n if (name.startsWith('.')) {\n name = name.substring(1);\n style = 'label';\n } else if (name.startsWith(';')) {\n name = name.substring(1);\n style = 'matrix';\n }\n\n const value = path[name];\n\n if (value === undefined || value === null) {\n continue;\n }\n\n if (Array.isArray(value)) {\n url = url.replace(match, serializeArrayParam({ explode, name, style, value }));\n continue;\n }\n\n if (typeof value === 'object') {\n url = url.replace(\n match,\n serializeObjectParam({\n explode,\n name,\n style,\n value: value as Record<string, unknown>,\n valueOnly: true,\n }),\n );\n continue;\n }\n\n if (style === 'matrix') {\n url = url.replace(\n match,\n `;${serializePrimitiveParam({\n name,\n value: value as string,\n })}`,\n );\n continue;\n }\n\n const replaceValue = encodeURIComponent(\n style === 'label' ? `.${value as string}` : (value as string),\n );\n url = url.replace(match, replaceValue);\n }\n }\n return url;\n};\n\nexport const getUrl = ({\n baseUrl,\n path,\n query,\n querySerializer,\n url: _url,\n}: {\n baseUrl?: string;\n path?: Record<string, unknown>;\n query?: Record<string, unknown>;\n querySerializer: QuerySerializer;\n url: string;\n}) => {\n const pathUrl = _url.startsWith('/') ? _url : `/${_url}`;\n let url = (baseUrl ?? '') + pathUrl;\n if (path) {\n url = defaultPathSerializer({ path, url });\n }\n let search = query ? querySerializer(query) : '';\n if (search.startsWith('?')) {\n search = search.substring(1);\n }\n if (search) {\n url += `?${search}`;\n }\n return url;\n};\n\nexport function getValidRequestBody(options: {\n body?: unknown;\n bodySerializer?: BodySerializer | null;\n serializedBody?: unknown;\n}) {\n const hasBody = options.body !== undefined;\n const isSerializedBody = hasBody && options.bodySerializer;\n\n if (isSerializedBody) {\n if ('serializedBody' in options) {\n const hasSerializedBody =\n options.serializedBody !== undefined && options.serializedBody !== '';\n\n return hasSerializedBody ? options.serializedBody : null;\n }\n\n // not all clients implement a serializedBody property (i.e., client-axios)\n return options.body !== '' ? options.body : null;\n }\n\n // plain/text body\n if (hasBody) {\n return options.body;\n }\n\n // no body was provided\n return undefined;\n}\n","// This file is auto-generated by @hey-api/openapi-ts\n\nexport type AuthToken = string | undefined;\n\nexport interface Auth {\n /**\n * Which part of the request do we use to send the auth?\n *\n * @default 'header'\n */\n in?: 'header' | 'query' | 'cookie';\n /**\n * Header or query parameter name.\n *\n * @default 'Authorization'\n */\n name?: string;\n scheme?: 'basic' | 'bearer';\n type: 'apiKey' | 'http';\n}\n\nexport const getAuthToken = async (\n auth: Auth,\n callback: ((auth: Auth) => Promise<AuthToken> | AuthToken) | AuthToken,\n): Promise<string | undefined> => {\n const token = typeof callback === 'function' ? await callback(auth) : callback;\n\n if (!token) {\n return;\n }\n\n if (auth.scheme === 'bearer') {\n return `Bearer ${token}`;\n }\n\n if (auth.scheme === 'basic') {\n return `Basic ${btoa(token)}`;\n }\n\n return token;\n};\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport { getAuthToken } from '../core/auth.gen';\nimport type { QuerySerializerOptions } from '../core/bodySerializer.gen';\nimport { jsonBodySerializer } from '../core/bodySerializer.gen';\nimport {\n serializeArrayParam,\n serializeObjectParam,\n serializePrimitiveParam,\n} from '../core/pathSerializer.gen';\nimport { getUrl } from '../core/utils.gen';\nimport type { Client, ClientOptions, Config, RequestOptions } from './types.gen';\n\nexport const createQuerySerializer = <T = unknown>({\n parameters = {},\n ...args\n}: QuerySerializerOptions = {}) => {\n const querySerializer = (queryParams: T) => {\n const search: string[] = [];\n if (queryParams && typeof queryParams === 'object') {\n for (const name in queryParams) {\n const value = queryParams[name];\n\n if (value === undefined || value === null) {\n continue;\n }\n\n const options = parameters[name] || args;\n\n if (Array.isArray(value)) {\n const serializedArray = serializeArrayParam({\n allowReserved: options.allowReserved,\n explode: true,\n name,\n style: 'form',\n value,\n ...options.array,\n });\n if (serializedArray) search.push(serializedArray);\n } else if (typeof value === 'object') {\n const serializedObject = serializeObjectParam({\n allowReserved: options.allowReserved,\n explode: true,\n name,\n style: 'deepObject',\n value: value as Record<string, unknown>,\n ...options.object,\n });\n if (serializedObject) search.push(serializedObject);\n } else {\n const serializedPrimitive = serializePrimitiveParam({\n allowReserved: options.allowReserved,\n name,\n value: value as string,\n });\n if (serializedPrimitive) search.push(serializedPrimitive);\n }\n }\n }\n return search.join('&');\n };\n return querySerializer;\n};\n\n/**\n * Infers parseAs value from provided Content-Type header.\n */\nexport const getParseAs = (contentType: string | null): Exclude<Config['parseAs'], 'auto'> => {\n if (!contentType) {\n // If no Content-Type header is provided, the best we can do is return the raw response body,\n // which is effectively the same as the 'stream' option.\n return 'stream';\n }\n\n const cleanContent = contentType.split(';')[0]?.trim();\n\n if (!cleanContent) {\n return;\n }\n\n if (cleanContent.startsWith('application/json') || cleanContent.endsWith('+json')) {\n return 'json';\n }\n\n if (cleanContent === 'multipart/form-data') {\n return 'formData';\n }\n\n if (\n ['application/', 'audio/', 'image/', 'video/'].some((type) => cleanContent.startsWith(type))\n ) {\n return 'blob';\n }\n\n if (cleanContent.startsWith('text/')) {\n return 'text';\n }\n\n return;\n};\n\nconst checkForExistence = (\n options: Pick<RequestOptions, 'auth' | 'query'> & {\n headers: Headers;\n },\n name?: string,\n): boolean => {\n if (!name) {\n return false;\n }\n if (\n options.headers.has(name) ||\n options.query?.[name] ||\n options.headers.get('Cookie')?.includes(`${name}=`)\n ) {\n return true;\n }\n return false;\n};\n\nexport const setAuthParams = async ({\n security,\n ...options\n}: Pick<Required<RequestOptions>, 'security'> &\n Pick<RequestOptions, 'auth' | 'query'> & {\n headers: Headers;\n }) => {\n for (const auth of security) {\n if (checkForExistence(options, auth.name)) {\n continue;\n }\n\n const token = await getAuthToken(auth, options.auth);\n\n if (!token) {\n continue;\n }\n\n const name = auth.name ?? 'Authorization';\n\n switch (auth.in) {\n case 'query':\n if (!options.query) {\n options.query = {};\n }\n options.query[name] = token;\n break;\n case 'cookie':\n options.headers.append('Cookie', `${name}=${token}`);\n break;\n case 'header':\n default:\n options.headers.set(name, token);\n break;\n }\n }\n};\n\nexport const buildUrl: Client['buildUrl'] = (options) =>\n getUrl({\n baseUrl: options.baseUrl as string,\n path: options.path,\n query: options.query,\n querySerializer:\n typeof options.querySerializer === 'function'\n ? options.querySerializer\n : createQuerySerializer(options.querySerializer),\n url: options.url,\n });\n\nexport const mergeConfigs = (a: Config, b: Config): Config => {\n const config = { ...a, ...b };\n if (config.baseUrl?.endsWith('/')) {\n config.baseUrl = config.baseUrl.substring(0, config.baseUrl.length - 1);\n }\n config.headers = mergeHeaders(a.headers, b.headers);\n return config;\n};\n\nconst headersEntries = (headers: Headers): Array<[string, string]> => {\n const entries: Array<[string, string]> = [];\n headers.forEach((value, key) => {\n entries.push([key, value]);\n });\n return entries;\n};\n\nexport const mergeHeaders = (\n ...headers: Array<Required<Config>['headers'] | undefined>\n): Headers => {\n const mergedHeaders = new Headers();\n for (const header of headers) {\n if (!header) {\n continue;\n }\n\n const iterator = header instanceof Headers ? headersEntries(header) : Object.entries(header);\n\n for (const [key, value] of iterator) {\n if (value === null) {\n mergedHeaders.delete(key);\n } else if (Array.isArray(value)) {\n for (const v of value) {\n mergedHeaders.append(key, v as string);\n }\n } else if (value !== undefined) {\n // assume object headers are meant to be JSON stringified, i.e., their\n // content value in OpenAPI specification is 'application/json'\n mergedHeaders.set(\n key,\n typeof value === 'object' ? JSON.stringify(value) : (value as string),\n );\n }\n }\n }\n return mergedHeaders;\n};\n\ntype ErrInterceptor<Err, Res, Req, Options> = (\n error: Err,\n response: Res,\n request: Req,\n options: Options,\n) => Err | Promise<Err>;\n\ntype ReqInterceptor<Req, Options> = (request: Req, options: Options) => Req | Promise<Req>;\n\ntype ResInterceptor<Res, Req, Options> = (\n response: Res,\n request: Req,\n options: Options,\n) => Res | Promise<Res>;\n\nclass Interceptors<Interceptor> {\n fns: Array<Interceptor | null> = [];\n\n clear(): void {\n this.fns = [];\n }\n\n eject(id: number | Interceptor): void {\n const index = this.getInterceptorIndex(id);\n if (this.fns[index]) {\n this.fns[index] = null;\n }\n }\n\n exists(id: number | Interceptor): boolean {\n const index = this.getInterceptorIndex(id);\n return Boolean(this.fns[index]);\n }\n\n getInterceptorIndex(id: number | Interceptor): number {\n if (typeof id === 'number') {\n return this.fns[id] ? id : -1;\n }\n return this.fns.indexOf(id);\n }\n\n update(id: number | Interceptor, fn: Interceptor): number | Interceptor | false {\n const index = this.getInterceptorIndex(id);\n if (this.fns[index]) {\n this.fns[index] = fn;\n return id;\n }\n return false;\n }\n\n use(fn: Interceptor): number {\n this.fns.push(fn);\n return this.fns.length - 1;\n }\n}\n\nexport interface Middleware<Req, Res, Err, Options> {\n error: Interceptors<ErrInterceptor<Err, Res, Req, Options>>;\n request: Interceptors<ReqInterceptor<Req, Options>>;\n response: Interceptors<ResInterceptor<Res, Req, Options>>;\n}\n\nexport const createInterceptors = <Req, Res, Err, Options>(): Middleware<\n Req,\n Res,\n Err,\n Options\n> => ({\n error: new Interceptors<ErrInterceptor<Err, Res, Req, Options>>(),\n request: new Interceptors<ReqInterceptor<Req, Options>>(),\n response: new Interceptors<ResInterceptor<Res, Req, Options>>(),\n});\n\nconst defaultQuerySerializer = createQuerySerializer({\n allowReserved: false,\n array: {\n explode: true,\n style: 'form',\n },\n object: {\n explode: true,\n style: 'deepObject',\n },\n});\n\nconst defaultHeaders = {\n 'Content-Type': 'application/json',\n};\n\nexport const createConfig = <T extends ClientOptions = ClientOptions>(\n override: Config<Omit<ClientOptions, keyof T> & T> = {},\n): Config<Omit<ClientOptions, keyof T> & T> => ({\n ...jsonBodySerializer,\n headers: defaultHeaders,\n parseAs: 'auto',\n querySerializer: defaultQuerySerializer,\n ...override,\n});\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport { createSseClient } from '../core/serverSentEvents.gen';\nimport type { HttpMethod } from '../core/types.gen';\nimport { getValidRequestBody } from '../core/utils.gen';\nimport type { Client, Config, RequestOptions, ResolvedRequestOptions } from './types.gen';\nimport {\n buildUrl,\n createConfig,\n createInterceptors,\n getParseAs,\n mergeConfigs,\n mergeHeaders,\n setAuthParams,\n} from './utils.gen';\n\ntype ReqInit = Omit<RequestInit, 'body' | 'headers'> & {\n body?: any;\n headers: ReturnType<typeof mergeHeaders>;\n};\n\nexport const createClient = (config: Config = {}): Client => {\n let _config = mergeConfigs(createConfig(), config);\n\n const getConfig = (): Config => ({ ..._config });\n\n const setConfig = (config: Config): Config => {\n _config = mergeConfigs(_config, config);\n return getConfig();\n };\n\n const interceptors = createInterceptors<Request, Response, unknown, ResolvedRequestOptions>();\n\n const beforeRequest = async <\n TData = unknown,\n TResponseStyle extends 'data' | 'fields' = 'fields',\n ThrowOnError extends boolean = boolean,\n Url extends string = string,\n >(\n options: RequestOptions<TData, TResponseStyle, ThrowOnError, Url>,\n ) => {\n const opts = {\n ..._config,\n ...options,\n fetch: options.fetch ?? _config.fetch ?? globalThis.fetch,\n headers: mergeHeaders(_config.headers, options.headers),\n serializedBody: undefined as string | undefined,\n };\n\n if (opts.security) {\n await setAuthParams({\n ...opts,\n security: opts.security,\n });\n }\n\n if (opts.requestValidator) {\n await opts.requestValidator(opts);\n }\n\n if (opts.body !== undefined && opts.bodySerializer) {\n opts.serializedBody = opts.bodySerializer(opts.body) as string | undefined;\n }\n\n // remove Content-Type header if body is empty to avoid sending invalid requests\n if (opts.body === undefined || opts.serializedBody === '') {\n opts.headers.delete('Content-Type');\n }\n\n const resolvedOpts = opts as typeof opts &\n ResolvedRequestOptions<TResponseStyle, ThrowOnError, Url>;\n const url = buildUrl(resolvedOpts);\n\n return { opts: resolvedOpts, url };\n };\n\n const request: Client['request'] = async (options) => {\n const { opts, url } = await beforeRequest(options);\n const requestInit: ReqInit = {\n redirect: 'follow',\n ...opts,\n body: getValidRequestBody(opts),\n };\n\n let request = new Request(url, requestInit);\n\n for (const fn of interceptors.request.fns) {\n if (fn) {\n request = await fn(request, opts);\n }\n }\n\n // fetch must be assigned here, otherwise it would throw the error:\n // TypeError: Failed to execute 'fetch' on 'Window': Illegal invocation\n const _fetch = opts.fetch!;\n let response: Response;\n\n try {\n response = await _fetch(request);\n } catch (error) {\n // Handle fetch exceptions (AbortError, network errors, etc.)\n let finalError = error;\n\n for (const fn of interceptors.error.fns) {\n if (fn) {\n finalError = (await fn(error, undefined as any, request, opts)) as unknown;\n }\n }\n\n finalError = finalError || ({} as unknown);\n\n if (opts.throwOnError) {\n throw finalError;\n }\n\n // Return error response\n return opts.responseStyle === 'data'\n ? undefined\n : {\n error: finalError,\n request,\n response: undefined as any,\n };\n }\n\n for (const fn of interceptors.response.fns) {\n if (fn) {\n response = await fn(response, request, opts);\n }\n }\n\n const result = {\n request,\n response,\n };\n\n if (response.ok) {\n const parseAs =\n (opts.parseAs === 'auto'\n ? getParseAs(response.headers.get('Content-Type'))\n : opts.parseAs) ?? 'json';\n\n if (response.status === 204 || response.headers.get('Content-Length') === '0') {\n let emptyData: any;\n switch (parseAs) {\n case 'arrayBuffer':\n case 'blob':\n case 'text':\n emptyData = await response[parseAs]();\n break;\n case 'formData':\n emptyData = new FormData();\n break;\n case 'stream':\n emptyData = response.body;\n break;\n case 'json':\n default:\n emptyData = {};\n break;\n }\n return opts.responseStyle === 'data'\n ? emptyData\n : {\n data: emptyData,\n ...result,\n };\n }\n\n let data: any;\n switch (parseAs) {\n case 'arrayBuffer':\n case 'blob':\n case 'formData':\n case 'text':\n data = await response[parseAs]();\n break;\n case 'json': {\n // Some servers return 200 with no Content-Length and empty body.\n // response.json() would throw; read as text and parse if non-empty.\n const text = await response.text();\n data = text ? JSON.parse(text) : {};\n break;\n }\n case 'stream':\n return opts.responseStyle === 'data'\n ? response.body\n : {\n data: response.body,\n ...result,\n };\n }\n\n if (parseAs === 'json') {\n if (opts.responseValidator) {\n await opts.responseValidator(data);\n }\n\n if (opts.responseTransformer) {\n data = await opts.responseTransformer(data);\n }\n }\n\n return opts.responseStyle === 'data'\n ? data\n : {\n data,\n ...result,\n };\n }\n\n const textError = await response.text();\n let jsonError: unknown;\n\n try {\n jsonError = JSON.parse(textError);\n } catch {\n // noop\n }\n\n const error = jsonError ?? textError;\n let finalError = error;\n\n for (const fn of interceptors.error.fns) {\n if (fn) {\n finalError = (await fn(error, response, request, opts)) as string;\n }\n }\n\n finalError = finalError || ({} as string);\n\n if (opts.throwOnError) {\n throw finalError;\n }\n\n // TODO: we probably want to return error and improve types\n return opts.responseStyle === 'data'\n ? undefined\n : {\n error: finalError,\n ...result,\n };\n };\n\n const makeMethodFn = (method: Uppercase<HttpMethod>) => (options: RequestOptions) =>\n request({ ...options, method });\n\n const makeSseFn = (method: Uppercase<HttpMethod>) => async (options: RequestOptions) => {\n const { opts, url } = await beforeRequest(options);\n return createSseClient({\n ...opts,\n body: opts.body as BodyInit | null | undefined,\n headers: opts.headers as unknown as Record<string, string>,\n method,\n onRequest: async (url, init) => {\n let request = new Request(url, init);\n for (const fn of interceptors.request.fns) {\n if (fn) {\n request = await fn(request, opts);\n }\n }\n return request;\n },\n serializedBody: getValidRequestBody(opts) as BodyInit | null | undefined,\n url,\n });\n };\n\n const _buildUrl: Client['buildUrl'] = (options) => buildUrl({ ..._config, ...options });\n\n return {\n buildUrl: _buildUrl,\n connect: makeMethodFn('CONNECT'),\n delete: makeMethodFn('DELETE'),\n get: makeMethodFn('GET'),\n getConfig,\n head: makeMethodFn('HEAD'),\n interceptors,\n options: makeMethodFn('OPTIONS'),\n patch: makeMethodFn('PATCH'),\n post: makeMethodFn('POST'),\n put: makeMethodFn('PUT'),\n request,\n setConfig,\n sse: {\n connect: makeSseFn('CONNECT'),\n delete: makeSseFn('DELETE'),\n get: makeSseFn('GET'),\n head: makeSseFn('HEAD'),\n options: makeSseFn('OPTIONS'),\n patch: makeSseFn('PATCH'),\n post: makeSseFn('POST'),\n put: makeSseFn('PUT'),\n trace: makeSseFn('TRACE'),\n },\n trace: makeMethodFn('TRACE'),\n } as Client;\n};\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport { type ClientOptions, type Config, createClient, createConfig } from './client';\nimport type { ClientOptions as ClientOptions2 } from './types.gen';\n\n/**\n * The `createClientConfig()` function will be called on client initialization\n * and the returned object will become the client's initial configuration.\n *\n * You may want to initialize your client this way instead of calling\n * `setConfig()`. This is useful for example if you're using Next.js\n * to ensure your client always has the correct values.\n */\nexport type CreateClientConfig<T extends ClientOptions = ClientOptions2> = (override?: Config<ClientOptions & T>) => Config<Required<ClientOptions> & T>;\n\nexport const client = createClient(createConfig<ClientOptions2>({ baseUrl: 'http://localhost:4000' }));\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport * as v from 'valibot';\n\n/**\n * UserSearchResponse\n *\n * User SQL search resource. Created via `POST /datasets/:dataset/user-searches`\n * with a `WHERE`-clause body in `search_query`; the platform executes\n * `INSERT INTO search_results SELECT … WHERE <body>` to populate\n * `search_results` and reports back `status`, `results_count`, and\n * `error_message`.\n *\n * UserSearch carries no `data_access_mode` of its own — the capability check\n * runs at query time via `Platform.RegulatedDatalakeRepo.prepare_query/3`,\n * which reads the ambient session and raises 403 when the ceiling is\n * insufficient. ExOpenApiUtils derives `UserSearchRequest` (writeable subset)\n * and `UserSearchResponse` (full readable shape) from this declaration via\n * the readOnly/writeOnly markers on each property.\n *\n */\nexport const vUserSearchResponse = v.pipe(v.object({\n error_message: v.nullish(v.pipe(v.string(), v.readonly())),\n generic_table_id: v.nullish(v.pipe(v.string(), v.uuid())),\n id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n resource_type: v.nullish(v.pipe(v.string(), v.readonly())),\n results_count: v.nullish(v.pipe(v.pipe(v.number(), v.integer()), v.readonly())),\n search_query: v.pipe(v.string(), v.minLength(1)),\n status: v.nullish(v.pipe(v.picklist([\n 'new',\n 'in_progress',\n 'completed',\n 'error'\n ]), v.readonly()))\n}), v.readonly());\n\n/**\n * ActionExecutionLogResponse\n *\n * Per-action execution log — child of a WorkflowExecutionLog, one row per scheduled action.\n */\nexport const vActionExecutionLogResponse = v.pipe(v.object({\n action_id: v.pipe(v.string(), v.uuid()),\n action_type: v.picklist([\n 'sms',\n 'email',\n 'voice',\n 'data_exchange'\n ]),\n batch_id: v.nullish(v.string()),\n completed_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n context_key: v.nullish(v.string()),\n decision_key: v.nullish(v.string()),\n error_message: v.nullish(v.string()),\n external_id: v.nullish(v.string()),\n id: v.pipe(v.string(), v.uuid()),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n message_body: v.nullish(v.pipe(v.string(), v.readonly())),\n message_id: v.nullish(v.pipe(v.string(), v.uuid())),\n mode: v.picklist(['live', 'dry_run']),\n retry_count: v.nullish(v.pipe(v.number(), v.integer())),\n runtime_filter_result: v.nullish(v.boolean()),\n scheduled_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n started_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n status: v.picklist([\n 'pending',\n 'executing',\n 'completed',\n 'failed',\n 'skipped',\n 'filtered',\n 'cancelled'\n ]),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n workflow_execution_log_id: v.pipe(v.string(), v.uuid()),\n workflow_id: v.pipe(v.string(), v.uuid())\n}), v.readonly());\n\n/**\n * ManualUploadRequest\n *\n * Manual upload marker tool — no configuration fields, just an identity marker for manual ingestion workflows. Request\n */\nexport const vManualUploadRequest = v.record(v.string(), v.unknown());\n\n/**\n * ContextDatasetResponse\n *\n * Context dataset for a workflow — declares which records the context builder should load (and under what filter) before the enrichment and decision stages.\n */\nexport const vContextDatasetResponse = v.pipe(v.object({\n dataset_type: v.string(),\n generic_table_id: v.nullish(v.pipe(v.string(), v.uuid())),\n id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n inserted_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n limit: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n position: v.nullish(v.pipe(v.number(), v.integer()), 0),\n updated_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n where_clause: v.nullish(v.string()),\n workflow_id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly()))\n}), v.readonly());\n\n/**\n * DatalakeRequest\n *\n * Datalake configuration. Secrets (DB passwords, credentials) are write-only — accepted on create but never returned in responses. Request\n */\nexport const vDatalakeRequest = v.object({\n slug: v.nullish(v.string()),\n unregulated_db_reader_auth_method: v.picklist(['password', 'iam_role']),\n regulated_data_db_reader_host: v.string(),\n regulated_data_db_reader_name: v.string(),\n regulated_data_db_reader_port: v.pipe(v.number(), v.integer()),\n unregulated_db_writer_schema: v.string(),\n unregulated_db_writer_name: v.string(),\n regulated_data_db_reader_schema: v.string(),\n unregulated_db_writer_host: v.string(),\n regulated_data_db_writer_name: v.string(),\n unregulated_db_reader_name: v.string(),\n unregulated_db_writer_auth_method: v.picklist(['password', 'iam_role']),\n name: v.string(),\n description: v.nullish(v.string()),\n pool_size: v.nullable(v.pipe(v.number(), v.integer())),\n unregulated_db_reader_port: v.pipe(v.number(), v.integer()),\n unregulated_db_reader_host: v.string(),\n regulated_data_db_reader_enable_ssl: v.boolean(),\n unregulated_db_reader_enable_ssl: v.boolean(),\n regulated_data_db_writer_port: v.pipe(v.number(), v.integer()),\n unregulated_db_writer_port: v.pipe(v.number(), v.integer()),\n unregulated_db_writer_enable_ssl: v.boolean(),\n unregulated_db_reader_schema: v.string(),\n regulated_data_db_writer_enable_ssl: v.boolean(),\n regulated_data_db_writer_schema: v.string(),\n regulated_data_db_writer_auth_method: v.picklist(['password', 'iam_role']),\n regulated_data_db_writer_host: v.string(),\n regulated_data_db_reader_auth_method: v.picklist(['password', 'iam_role']),\n timezone: v.nullable(v.string()),\n data_domain: v.picklist([\n 'healthcare',\n 'core_banking',\n 'payment_risk',\n 'accounts_receivable',\n 'service_commerce',\n 'trading',\n 'foundation'\n ])\n});\n\n/**\n * CloudWatchLogGroupResponse\n *\n * AWS CloudWatch Logs authentication credential store. Referenced by ActionStatusUpdater for log-group polling.\n */\nexport const vCloudWatchLogGroupResponse = v.pipe(v.object({\n access_key_id: v.nullish(v.string()),\n assume_role_arn: v.nullish(v.pipe(v.string(), v.regex(/^arn:aws:iam::\\d{12}:role\\/.+$/))),\n assume_role_external_id: v.nullish(v.string()),\n auth_method: v.picklist([\n 'access_key',\n 'iam_role',\n 'assume_role'\n ]),\n endpoint_url: v.nullish(v.string()),\n region: v.string()\n}), v.readonly());\n\n/**\n * S3CallRequest\n *\n * S3 file-path descriptor — identifies an object for downstream validation/read. Request\n */\nexport const vS3CallRequest = v.object({\n file_path: v.string()\n});\n\n/**\n * CloudflarePagesConfigResponse\n *\n * Cloudflare Pages deployment configuration for managed Connected Apps\n */\nexport const vCloudflarePagesConfigResponse = v.pipe(v.object({\n account_id: v.string(),\n build_command: v.nullish(v.string()),\n destination_dir: v.nullish(v.string()),\n github_auth_method: v.picklist(['github_app', 'pat']),\n production_branch: v.nullish(v.string()),\n project_name: v.nullish(v.pipe(v.string(), v.readonly()))\n}), v.readonly());\n\n/**\n * TenantResponse\n *\n * Tenant resource. The auto-generated `TenantRequest` shape carries only\n * the writable fields (`name`, `description`); `TenantResponse` returns the\n * full read surface (`id`, `slug`, `name`, `description`).\n *\n */\nexport const vTenantResponse = v.pipe(v.object({\n description: v.nullish(v.pipe(v.string(), v.maxLength(1000))),\n id: v.pipe(v.pipe(v.string(), v.uuid()), v.readonly()),\n name: v.pipe(v.string(), v.minLength(1), v.maxLength(160)),\n slug: v.pipe(v.string(), v.readonly())\n}), v.readonly());\n\n/**\n * MembershipResponse\n *\n * Tenant membership — binds a user to a tenant with a role.\n */\nexport const vMembershipResponse = v.pipe(v.object({\n id: v.pipe(v.pipe(v.string(), v.uuid()), v.readonly()),\n role: v.pipe(v.picklist([\n 'member',\n 'researcher',\n 'admin'\n ]), v.readonly()),\n tenant: v.nullish(vTenantResponse)\n}), v.readonly());\n\n/**\n * S3CallResponse\n *\n * S3 file-path descriptor — identifies an object for downstream validation/read.\n */\nexport const vS3CallResponse = v.pipe(v.object({\n file_path: v.string()\n}), v.readonly());\n\n/**\n * IngestRequest\n *\n * Request body for data ingestion\n */\nexport const vIngestRequest = v.object({\n data: v.record(v.string(), v.unknown())\n});\n\n/**\n * AWSLambdaResponse\n *\n * AWS Lambda tool configuration supporting managed (CloudFormation-deployed) and external (user-provided ARN) modes.\n */\nexport const vAwsLambdaResponse = v.pipe(v.object({\n access_key_id: v.nullish(v.string()),\n auth_method: v.nullish(v.picklist([\n 'access_key',\n 'iam_role',\n 'cloudformation'\n ])),\n env_vars: v.nullish(v.array(v.unknown())),\n error: v.nullish(v.pipe(v.string(), v.readonly())),\n function_arn: v.nullish(v.string()),\n secrets: v.nullish(v.array(v.unknown())),\n secrets_manager_secret_arn: v.nullish(v.pipe(v.string(), v.readonly())),\n ssm_config_key: v.nullish(v.string()),\n stack_id: v.nullish(v.pipe(v.string(), v.readonly())),\n stack_name: v.nullish(v.pipe(v.string(), v.readonly())),\n stack_status: v.nullish(v.pipe(v.picklist([\n 'create_in_progress',\n 'create_complete',\n 'create_failed',\n 'rollback_in_progress',\n 'rollback_complete',\n 'rollback_failed',\n 'delete_in_progress',\n 'delete_complete',\n 'delete_failed',\n 'update_in_progress',\n 'update_complete',\n 'update_failed',\n 'update_rollback_complete',\n 'update_rollback_failed'\n ]), v.readonly())),\n type: v.picklist(['managed', 'external'])\n}), v.readonly());\n\n/**\n * UserResponse\n *\n * Lean user reference — id, email, and names\n */\nexport const vUserResponse = v.pipe(v.object({\n email: v.pipe(v.string(), v.email()),\n first_name: v.nullish(v.string()),\n id: v.pipe(v.pipe(v.string(), v.uuid()), v.readonly()),\n last_name: v.nullish(v.string())\n}), v.readonly());\n\n/**\n * ExecuteActionRequest\n *\n * Request body for executing a workflow action for a dataset record\n */\nexport const vExecuteActionRequest = v.object({\n dataset_id: v.pipe(v.string(), v.uuid()),\n decision_key: v.string(),\n manual_override: v.nullish(v.boolean(), false),\n mode: v.nullish(v.picklist(['live', 'dry_run']), 'live')\n});\n\n/**\n * MDMNotVerified\n */\nexport const vMdmNotVerified = v.object({\n errors: v.record(v.string(), v.array(v.string())),\n status: v.picklist(['not_verified']),\n subject_id: v.pipe(v.string(), v.uuid()),\n verified_at: v.pipe(v.string(), v.isoTimestamp())\n});\n\n/**\n * TemplateConfigResponse\n *\n * Inline Liquid template configuration\n */\nexport const vTemplateConfigResponse = v.pipe(v.object({\n body: v.nullish(v.string()),\n path: v.nullish(v.string()),\n type: v.picklist([\n 'system',\n 'custom',\n 'identity',\n 'null'\n ])\n}), v.readonly());\n\n/**\n * InteroperabilityRunResponse\n *\n * Pipeline output for a single row. `stage` indicates the last pipeline stage reached; `transformed`/`mdm_input` are populated only when that stage executed successfully.\n */\nexport const vInteroperabilityRunResponse = v.object({\n filter_result: v.picklist(['pass', 'skip']),\n mdm_input: v.nullish(v.record(v.string(), v.unknown())),\n stage: v.picklist(['completed', 'filtered']),\n transformed: v.nullish(v.record(v.string(), v.unknown()))\n});\n\n/**\n * ErrorResponse\n *\n * Error response\n */\nexport const vErrorResponse = v.object({\n errors: v.nullish(v.object({}))\n});\n\n/**\n * ResolvePageResponse\n *\n * Resolved page token details for the connected app to render\n */\nexport const vResolvePageResponse = v.object({\n additional_context: v.nullish(v.record(v.string(), v.unknown())),\n expires_at: v.pipe(v.string(), v.isoTimestamp()),\n message: v.nullish(v.object({\n body: v.nullish(v.string()),\n channel: v.picklist([\n 'sms',\n 'email',\n 'voice',\n 'web_form',\n 'push'\n ]),\n delivered_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n external_id: v.nullish(v.string()),\n failure_reason: v.nullish(v.string()),\n form_submitted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n id: v.pipe(v.string(), v.uuid()),\n metadata: v.nullish(v.record(v.string(), v.unknown())),\n opened_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n queued_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n read_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n sent_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n sms_carrier: v.nullish(v.string()),\n status: v.picklist([\n 'pending',\n 'queued',\n 'sent',\n 'delivered',\n 'failed',\n 'received',\n 'clicked'\n ]),\n subject: v.nullish(v.string())\n })),\n route_path: v.string(),\n subject_id: v.pipe(v.string(), v.uuid()),\n url_hash: v.string(),\n user_agent: v.nullish(v.string())\n});\n\n/**\n * MDMVerifyRequest\n *\n * Request body for MDM subject identity verification\n */\nexport const vMdmVerifyRequest = v.object({\n birth_date: v.nullish(v.pipe(v.string(), v.isoDate())),\n family_name: v.nullish(v.string()),\n given_name: v.nullish(v.string()),\n identifiers: v.nullish(v.array(v.object({\n system: v.string(),\n value: v.string()\n }))),\n subject_id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * ManualUploadCallRequest\n *\n * Identity manual-upload marker. No fields — the discriminator alone indicates the tool call is a manual upload. Request\n */\nexport const vManualUploadCallRequest = v.record(v.string(), v.unknown());\n\n/**\n * InteroperabilityContractResponse\n *\n * Declarative execution spec binding a `(datalake, resource_type)` pair to the ingestion pipeline: filter → transform → mdm_input → resolve → upsert.\n */\nexport const vInteroperabilityContractResponse = v.pipe(v.object({\n datalake_id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n description: v.nullish(v.string()),\n filter_template: v.nullish(v.string()),\n generic_table_id: v.nullish(v.pipe(v.string(), v.uuid())),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n name: v.string(),\n resource_type: v.string(),\n slug: v.nullish(v.string()),\n type: v.nullish(v.picklist([\n 'system',\n 'custom',\n 'identity',\n 'null'\n ])),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp()))\n}), v.readonly());\n\n/**\n * DownloadLinkRequest\n *\n * Request body for presigning a GET URL against a datalake's cloud storage. `bucket` must match either the regulated or unregulated storage config of the path-scoped datalake; `key` is the object key within that bucket.\n */\nexport const vDownloadLinkRequest = v.object({\n bucket: v.pipe(v.string(), v.minLength(1)),\n key: v.pipe(v.string(), v.minLength(1))\n});\n\n/**\n * ToolAWSLambdaResponse\n */\nexport const vToolAwsLambdaResponse = v.intersect([vAwsLambdaResponse, v.object({\n tool_body_type: v.picklist(['aws_lambda'])\n })]);\n\n/**\n * UpdatePageRequest\n *\n * Request body for updating message tracking fields on a resolved page\n */\nexport const vUpdatePageRequest = v.object({\n form_submitted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n opened_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n short_path: v.string()\n});\n\n/**\n * InvitationResponse\n *\n * Pending tenant invitation — resolved into a Membership on accept.\n */\nexport const vInvitationResponse = v.pipe(v.object({\n email: v.pipe(v.string(), v.email()),\n id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n role: v.picklist([\n 'member',\n 'researcher',\n 'admin'\n ]),\n tenant: v.nullish(vTenantResponse)\n}), v.readonly());\n\n/**\n * ToolRequest\n *\n * Tool — a configurable capability reference for external services. Request\n */\nexport const vToolRequest = v.object({\n data_source_id: v.nullish(v.pipe(v.string(), v.uuid())),\n datalake_id: v.nullish(v.pipe(v.string(), v.uuid())),\n description: v.nullish(v.string()),\n intent: v.nullish(v.picklist([\n 'sms',\n 'email',\n 'export',\n 'voice',\n 'data_exchange',\n 'status_poller',\n 'chat_completion',\n 'context_extraction'\n ])),\n name: v.nullish(v.string()),\n status: v.nullish(v.picklist([\n 'draft',\n 'active',\n 'inactive',\n 'error',\n 'marked_for_deletion'\n ]))\n});\n\n/**\n * AWSLambdaRequest\n *\n * AWS Lambda tool configuration supporting managed (CloudFormation-deployed) and external (user-provided ARN) modes. Request\n */\nexport const vAwsLambdaRequest = v.object({\n access_key_id: v.nullish(v.string()),\n auth_method: v.nullish(v.picklist([\n 'access_key',\n 'iam_role',\n 'cloudformation'\n ])),\n env_vars: v.nullish(v.array(v.unknown())),\n function_arn: v.nullish(v.string()),\n secrets: v.nullish(v.array(v.unknown())),\n ssm_config_key: v.nullish(v.string()),\n type: v.picklist(['managed', 'external'])\n});\n\n/**\n * DownloadUrlResponse\n *\n * Presigned download URL for a stored cloud-storage artifact.\n */\nexport const vDownloadUrlResponse = v.object({\n url: v.pipe(v.string(), v.url())\n});\n\n/**\n * MDMVerified\n */\nexport const vMdmVerified = v.object({\n status: v.picklist(['verified']),\n subject_id: v.pipe(v.string(), v.uuid()),\n verified_at: v.pipe(v.string(), v.isoTimestamp())\n});\n\n/**\n * SMSCallResponse\n *\n * SMS tool-call config — Liquid-templated recipient and body plus transactional/promotional category.\n */\nexport const vSmsCallResponse = v.pipe(v.object({\n body: vTemplateConfigResponse,\n sms_type: v.nullish(v.picklist(['transactional', 'promotional']), 'transactional'),\n to: vTemplateConfigResponse\n}), v.readonly());\n\n/**\n * ActionSMSCallResponse\n */\nexport const vActionSmsCallResponse = v.intersect([vSmsCallResponse, v.object({\n tool_call_type: v.picklist(['sms_request'])\n })]);\n\n/**\n * ResolvePageRequest\n *\n * Request body for resolving a connected app page from a short URL token\n */\nexport const vResolvePageRequest = v.object({\n country: v.nullish(v.string()),\n ip: v.nullish(v.string()),\n metadata: v.nullish(v.record(v.string(), v.unknown())),\n short_path: v.string(),\n user_agent: v.nullish(v.string())\n});\n\n/**\n * ActionRequest\n *\n * Workflow action — executes when the decision table routes to this `decision_key`. Polymorphic `tool_call` payload is variant-specific via `tool_call_type` discriminator. Request\n */\nexport const vActionRequest = v.object({\n action_type: v.picklist([\n 'sms',\n 'email',\n 'voice',\n 'data_exchange'\n ]),\n action_window_end: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(0), v.maxValue(23))),\n action_window_start: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(0), v.maxValue(23))),\n connected_app_id: v.nullish(v.pipe(v.string(), v.uuid())),\n connected_app_metadata_template: v.nullish(v.string()),\n connected_app_route: v.nullish(v.string()),\n decision_key: v.string(),\n idempotency_template: v.string(),\n position: v.nullish(v.pipe(v.number(), v.integer()), 0),\n runtime_filter: v.nullish(v.string()),\n tool_id: v.pipe(v.string(), v.uuid()),\n trigger_template: v.string()\n});\n\n/**\n * AWSLambdaCallResponse\n *\n * AWS Lambda invocation descriptor — Liquid-templated payload + timeout.\n */\nexport const vAwsLambdaCallResponse = v.pipe(v.object({\n timeout_ms: v.nullish(v.pipe(v.number(), v.integer()))\n}), v.readonly());\n\n/**\n * RESTCallResponse\n *\n * REST API call descriptor — HTTP method, path, body, params, and pagination context template. Reused across ActionStatusUpdater polling, data activation clients, tool protocols, OAuth token fetching, and chat completion.\n */\nexport const vRestCallResponse = v.pipe(v.object({\n body: v.nullish(vTemplateConfigResponse),\n method: v.picklist([\n 'head',\n 'get',\n 'put',\n 'post',\n 'delete',\n 'patch'\n ]),\n pagination_context_template: vTemplateConfigResponse,\n params: v.nullish(vTemplateConfigResponse),\n path: vTemplateConfigResponse\n}), v.readonly());\n\n/**\n * CloudStorageCustomResponse\n *\n * Custom S3-compatible cloud storage configuration — for MinIO, DigitalOcean Spaces, Backblaze B2, and other S3-compatible services. Requires a custom endpoint URL.\n */\nexport const vCloudStorageCustomResponse = v.pipe(v.object({\n access_key_id: v.string(),\n base_path: v.nullish(v.string()),\n bucket: v.string(),\n endpoint: v.string(),\n region: v.string()\n}), v.readonly());\n\n/**\n * DatalakeCloudStorageCustomResponse\n */\nexport const vDatalakeCloudStorageCustomResponse = v.intersect([vCloudStorageCustomResponse, v.object({\n cloud_storage_type: v.picklist(['custom'])\n })]);\n\n/**\n * WorkflowAiAgentRequest\n *\n * Join entry linking an AI agent to a workflow at a specific execution position in the enrichment pipeline. Request\n */\nexport const vWorkflowAiAgentRequest = v.object({\n ai_agent_id: v.pipe(v.string(), v.uuid()),\n position: v.pipe(v.number(), v.integer())\n});\n\n/**\n * AiAgentRequest\n *\n * AI Agent configuration — reusable chat-completion resource Request\n */\nexport const vAiAgentRequest = v.object({\n data_access: v.picklist(['regulated', 'unregulated']),\n description: v.nullish(v.string()),\n enabled: v.boolean(),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n max_tokens: v.pipe(v.number(), v.integer()),\n model: v.string(),\n name: v.string(),\n slug: v.nullish(v.string()),\n temperature: v.number(),\n tool_id: v.pipe(v.string(), v.uuid()),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp()))\n});\n\n/**\n * UploadLinkRequest\n *\n * Request body for creating a presigned upload link for bulk ingest\n */\nexport const vUploadLinkRequest = v.object({\n content_type: v.picklist(['application/x-ndjson', 'text/csv']),\n filename: v.pipe(v.string(), v.minLength(1), v.maxLength(255))\n});\n\n/**\n * DataActivationClientManualUploadCallRequest\n */\nexport const vDataActivationClientManualUploadCallRequest = v.intersect([vManualUploadCallRequest, v.object({\n tool_call_type: v.picklist(['manual_upload'])\n })]);\n\n/**\n * SharePointResponse\n *\n * Microsoft SharePoint integration via the Microsoft Graph API. Supports sites, document libraries, and lists with client-credential or managed-identity auth.\n */\nexport const vSharePointResponse = v.pipe(v.object({\n auth_method: v.picklist(['client_credentials', 'managed_identity']),\n azure_tenant_id: v.string(),\n client_id: v.nullish(v.string()),\n drive_id: v.nullish(v.string()),\n drive_path: v.nullish(v.string()),\n resource_type: v.picklist([\n 'site',\n 'library',\n 'list'\n ]),\n site_url: v.nullish(v.string())\n}), v.readonly());\n\n/**\n * RESTAPIResponse\n *\n * REST API tool configuration with OpenAPI-compliant authentication (API key, basic, bearer, OAuth2, OIDC) plus base Liquid templates.\n */\nexport const vRestapiResponse = v.pipe(v.object({\n api_key_location: v.nullish(v.picklist(['header', 'query'])),\n api_key_name: v.nullish(v.string()),\n auth_method: v.picklist([\n 'none',\n 'api_key',\n 'basic',\n 'bearer',\n 'oauth2',\n 'oidc'\n ]),\n base_url: v.string(),\n oauth2_client_id: v.nullish(v.string()),\n oauth2_grant_type: v.nullish(v.picklist(['client_credentials', 'authorization_code'])),\n oauth2_scope: v.nullish(v.string()),\n oauth2_token_ttl: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n oauth2_token_url: v.nullish(v.string()),\n oidc_client_id: v.nullish(v.string()),\n oidc_issuer_url: v.nullish(v.string()),\n oidc_token_ttl: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n request_type: v.picklist([\n 'json',\n 'xml',\n 'form_urlencoded',\n 'multipart_form'\n ]),\n response_type: v.picklist([\n 'json',\n 'xml',\n 'text',\n 'binary'\n ]),\n timeout_ms: v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(300000)),\n username: v.nullish(v.string())\n}), v.readonly());\n\n/**\n * DataActivationClientRESTCallResponse\n */\nexport const vDataActivationClientRestCallResponse = v.intersect([vRestCallResponse, v.object({\n tool_call_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * DataActivationClientS3CallResponse\n */\nexport const vDataActivationClientS3CallResponse = v.intersect([vS3CallResponse, v.object({\n tool_call_type: v.picklist(['s3_request'])\n })]);\n\n/**\n * EmailRequest\n *\n * Email tool configuration — SES, Mailgun, SendGrid, or SMTP provider plus base Liquid templates. Request\n */\nexport const vEmailRequest = v.object({\n access_key_id: v.nullish(v.string()),\n domain: v.nullish(v.string()),\n from_email: v.pipe(v.string(), v.email()),\n from_name: v.nullish(v.string()),\n provider: v.picklist([\n 'ses',\n 'mailgun',\n 'sendgrid',\n 'smtp'\n ]),\n region: v.nullish(v.string()),\n reply_to: v.nullish(v.string()),\n smtp_host: v.nullish(v.string()),\n smtp_port: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(65535))),\n smtp_username: v.nullish(v.string())\n});\n\n/**\n * EmailCallResponse\n *\n * Email tool-call config — Liquid-templated recipient, subject, and body.\n */\nexport const vEmailCallResponse = v.pipe(v.object({\n body: vTemplateConfigResponse,\n subject: vTemplateConfigResponse,\n to: vTemplateConfigResponse\n}), v.readonly());\n\n/**\n * SFTPCallResponse\n *\n * SFTP file descriptor — remote path + expected MIME content type.\n */\nexport const vSftpCallResponse = v.pipe(v.object({\n content_type: v.string(),\n path: v.string()\n}), v.readonly());\n\n/**\n * GenericTableRequest\n *\n * Generic Table — custom or system dataset table with column definitions. Request\n */\nexport const vGenericTableRequest = v.object({\n columns: v.nullish(v.array(v.unknown())),\n data_domain: v.nullish(v.picklist([\n 'healthcare',\n 'core_banking',\n 'payment_risk',\n 'accounts_receivable',\n 'service_commerce',\n 'trading',\n 'foundation'\n ])),\n description: v.nullish(v.string()),\n title: v.nullish(v.string())\n});\n\n/**\n * ManualToolInvocationEmailCallResponse\n */\nexport const vManualToolInvocationEmailCallResponse = v.intersect([vEmailCallResponse, v.object({\n tool_call_type: v.picklist(['email_request'])\n })]);\n\n/**\n * ToolSharePointResponse\n */\nexport const vToolSharePointResponse = v.intersect([vSharePointResponse, v.object({\n tool_body_type: v.picklist(['sharepoint'])\n })]);\n\n/**\n * UpdatePageResponse\n *\n * Confirmation of message tracking update\n */\nexport const vUpdatePageResponse = v.object({\n message: v.object({\n form_submitted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n id: v.pipe(v.string(), v.uuid()),\n opened_at: v.nullish(v.pipe(v.string(), v.isoTimestamp()))\n })\n});\n\n/**\n * SharePointExcelCallRequest\n *\n * Microsoft SharePoint request descriptor — drive URL + Excel sheet + search params. Request\n */\nexport const vSharePointExcelCallRequest = v.object({\n azure_tenant_id: v.pipe(v.string(), v.uuid()),\n drive_url: v.string(),\n search_params: v.string(),\n sheet_number: v.pipe(v.number(), v.integer())\n});\n\n/**\n * DataActivationClientSharePointExcelCallRequest\n */\nexport const vDataActivationClientSharePointExcelCallRequest = v.intersect([vSharePointExcelCallRequest, v.object({\n tool_call_type: v.picklist(['microsoft_share_point_excel_request'])\n })]);\n\n/**\n * DACRawLogFileResponse\n *\n * A single merged NDJSON archive produced by BatchMergeWorker, tagged by bucket mode.\n */\nexport const vDacRawLogFileResponse = v.pipe(v.object({\n mode: v.picklist(['regulated', 'unregulated']),\n object_key: v.string()\n}), v.readonly());\n\n/**\n * DataActivationClientLogResponse\n *\n * One log row per `(batch_id, dataset_table)`. A batch fans out into one log per dataset table — so a single run (one `batch_id`) produces multiple log rows, one per table the DAC writes into. `output_files` carries the merged NDJSON URI once `BatchMergeWorker` has finished; use `/logs/:id/download` to fetch a presigned URL.\n */\nexport const vDataActivationClientLogResponse = v.pipe(v.object({\n batch_id: v.pipe(v.string(), v.uuid()),\n client_id: v.pipe(v.pipe(v.string(), v.uuid()), v.readonly()),\n dataset_table: v.string(),\n dataset_updated: v.nullish(v.pipe(v.number(), v.integer()), 0),\n id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n input_files: v.nullish(v.array(v.string()), []),\n inserted_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n output_files: v.nullish(v.pipe(v.array(vDacRawLogFileResponse), v.readonly())),\n rows_ingested: v.nullish(v.pipe(v.number(), v.integer()), 0),\n updated_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly()))\n}), v.readonly());\n\n/**\n * ManualToolInvocationSMSCallResponse\n */\nexport const vManualToolInvocationSmsCallResponse = v.intersect([vSmsCallResponse, v.object({\n tool_call_type: v.picklist(['sms_request'])\n })]);\n\n/**\n * BatchLogResponse\n *\n * Batch-level workflow run log — aggregation of per-event execution logs\n */\nexport const vBatchLogResponse = v.pipe(v.object({\n batch_id: v.string(),\n completed_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n completed_wels: v.nullish(v.pipe(v.number(), v.integer())),\n datalake_id: v.nullish(v.pipe(v.string(), v.uuid())),\n expected_events: v.nullish(v.pipe(v.number(), v.integer())),\n failed_wels: v.nullish(v.pipe(v.number(), v.integer())),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n last_refreshed_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n started_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n status: v.picklist([\n 'pending',\n 'completed',\n 'partial',\n 'failed'\n ]),\n tenant_id: v.nullish(v.pipe(v.string(), v.uuid())),\n total_wels: v.nullish(v.pipe(v.number(), v.integer())),\n workflow_id: v.nullish(v.pipe(v.string(), v.uuid()))\n}), v.readonly());\n\n/**\n * AWSLambdaCallRequest\n *\n * AWS Lambda invocation descriptor — Liquid-templated payload + timeout. Request\n */\nexport const vAwsLambdaCallRequest = v.object({\n timeout_ms: v.nullish(v.pipe(v.number(), v.integer()))\n});\n\n/**\n * ManualUploadCallResponse\n *\n * Identity manual-upload marker. No fields — the discriminator alone indicates the tool call is a manual upload.\n */\nexport const vManualUploadCallResponse = v.pipe(v.record(v.string(), v.unknown()), v.readonly());\n\n/**\n * DataActivationClientManualUploadCallResponse\n */\nexport const vDataActivationClientManualUploadCallResponse = v.intersect([vManualUploadCallResponse, v.object({\n tool_call_type: v.picklist(['manual_upload'])\n })]);\n\n/**\n * ActionStatusUpdaterRESTCallResponse\n */\nexport const vActionStatusUpdaterRestCallResponse = v.intersect([vRestCallResponse, v.object({\n updater_body_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * DataActivationClientAWSLambdaCallRequest\n */\nexport const vDataActivationClientAwsLambdaCallRequest = v.intersect([vAwsLambdaCallRequest, v.object({\n tool_call_type: v.picklist(['aws_lambda_request'])\n })]);\n\n/**\n * ConnectedAppUrlResponse\n *\n * URL entry for a Connected App\n */\nexport const vConnectedAppUrlResponse = v.pipe(v.object({\n is_primary: v.nullish(v.boolean()),\n label: v.nullish(v.string()),\n url: v.string()\n}), v.readonly());\n\n/**\n * DataActivationClientS3CallRequest\n */\nexport const vDataActivationClientS3CallRequest = v.intersect([vS3CallRequest, v.object({\n tool_call_type: v.picklist(['s3_request'])\n })]);\n\n/**\n * InvitationRequest\n *\n * Pending tenant invitation — resolved into a Membership on accept. Request\n */\nexport const vInvitationRequest = v.object({\n email: v.pipe(v.string(), v.email()),\n role: v.picklist([\n 'member',\n 'researcher',\n 'admin'\n ])\n});\n\n/**\n * ActionAWSLambdaCallResponse\n */\nexport const vActionAwsLambdaCallResponse = v.intersect([vAwsLambdaCallResponse, v.object({\n tool_call_type: v.picklist(['aws_lambda_request'])\n })]);\n\n/**\n * DataActivationClientSFTPCallResponse\n */\nexport const vDataActivationClientSftpCallResponse = v.intersect([vSftpCallResponse, v.object({\n tool_call_type: v.picklist(['sftp_request'])\n })]);\n\n/**\n * CloudStorageR2Request\n *\n * Cloudflare R2 cloud storage configuration — S3-compatible with auto region and account-scoped endpoints. Request\n */\nexport const vCloudStorageR2Request = v.object({\n access_key_id: v.string(),\n base_path: v.nullish(v.string()),\n bucket: v.string(),\n endpoint: v.nullish(v.string()),\n region: v.nullish(v.string())\n});\n\n/**\n * DatalakeCloudStorageR2Request\n */\nexport const vDatalakeCloudStorageR2Request = v.intersect([vCloudStorageR2Request, v.object({\n cloud_storage_type: v.picklist(['r2'])\n })]);\n\n/**\n * S3CloudStorageR2Request\n */\nexport const vS3CloudStorageR2Request = v.intersect([vCloudStorageR2Request, v.object({\n storage_config_type: v.picklist(['r2'])\n })]);\n\n/**\n * DataSourceRequest\n *\n * Data source — connection to a third-party system or API Request\n */\nexport const vDataSourceRequest = v.object({\n description: v.nullish(v.string()),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n image_url: v.nullish(v.string()),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n is_default: v.boolean(),\n name: v.string(),\n status: v.picklist([\n 'draft',\n 'active',\n 'inactive'\n ]),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n uri: v.string()\n});\n\n/**\n * ToolManualUploadRequest\n */\nexport const vToolManualUploadRequest = v.intersect([vManualUploadRequest, v.object({\n tool_body_type: v.picklist(['manual_upload'])\n })]);\n\n/**\n * SharePointRequest\n *\n * Microsoft SharePoint integration via the Microsoft Graph API. Supports sites, document libraries, and lists with client-credential or managed-identity auth. Request\n */\nexport const vSharePointRequest = v.object({\n auth_method: v.picklist(['client_credentials', 'managed_identity']),\n azure_tenant_id: v.string(),\n client_id: v.nullish(v.string()),\n drive_id: v.nullish(v.string()),\n drive_path: v.nullish(v.string()),\n resource_type: v.picklist([\n 'site',\n 'library',\n 'list'\n ]),\n site_url: v.nullish(v.string())\n});\n\n/**\n * ToolSharePointRequest\n */\nexport const vToolSharePointRequest = v.intersect([vSharePointRequest, v.object({\n tool_body_type: v.picklist(['sharepoint'])\n })]);\n\n/**\n * ManualToolInvocationRequest\n *\n * A manual test invocation of a tool. The request body carries only `tool_call` (polymorphic on `__type__`); all other fields are server-populated and returned in the response. Request\n */\nexport const vManualToolInvocationRequest = v.record(v.string(), v.unknown());\n\n/**\n * ActionManualUploadCallResponse\n */\nexport const vActionManualUploadCallResponse = v.intersect([vManualUploadCallResponse, v.object({\n tool_call_type: v.picklist(['manual_upload'])\n })]);\n\n/**\n * SQLQueryCallRequest\n *\n * SQL query descriptor — Liquid-templated query body. Request\n */\nexport const vSqlQueryCallRequest = v.record(v.string(), v.unknown());\n\n/**\n * ActionSQLQueryCallRequest\n */\nexport const vActionSqlQueryCallRequest = v.intersect([vSqlQueryCallRequest, v.object({\n tool_call_type: v.picklist(['sql_query'])\n })]);\n\n/**\n * AlveraAPIError\n *\n * Uniform JSON:API error response for the Alvera API. See module docs for pointer format, title/detail semantics, and pipeline error codes.\n */\nexport const vAlveraApiError = v.object({\n errors: v.pipe(v.array(v.object({\n detail: v.string(),\n source: v.object({\n pointer: v.string()\n }),\n title: v.string()\n })), v.minLength(1))\n});\n\n/**\n * CloudStorageAwsResponse\n *\n * AWS S3 cloud storage configuration supporting access key and IAM role authentication.\n */\nexport const vCloudStorageAwsResponse = v.pipe(v.object({\n access_key_id: v.nullish(v.string()),\n auth_method: v.nullish(v.picklist(['access_key', 'iam_role'])),\n base_path: v.nullish(v.string()),\n bucket: v.string(),\n endpoint: v.nullish(v.string()),\n region: v.string()\n}), v.readonly());\n\n/**\n * SFTPResponse\n *\n * SFTP (SSH File Transfer Protocol) server connection configuration with password or SSH key auth.\n */\nexport const vSftpResponse = v.pipe(v.object({\n auth_method: v.picklist(['password', 'ssh_key']),\n base_path: v.string(),\n host: v.string(),\n port: v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(65535)),\n user_name: v.string()\n}), v.readonly());\n\n/**\n * UserSearchRequest\n *\n * User SQL search resource. Created via `POST /datasets/:dataset/user-searches`\n * with a `WHERE`-clause body in `search_query`; the platform executes\n * `INSERT INTO search_results SELECT … WHERE <body>` to populate\n * `search_results` and reports back `status`, `results_count`, and\n * `error_message`.\n *\n * UserSearch carries no `data_access_mode` of its own — the capability check\n * runs at query time via `Platform.RegulatedDatalakeRepo.prepare_query/3`,\n * which reads the ambient session and raises 403 when the ceiling is\n * insufficient. ExOpenApiUtils derives `UserSearchRequest` (writeable subset)\n * and `UserSearchResponse` (full readable shape) from this declaration via\n * the readOnly/writeOnly markers on each property.\n * Request\n */\nexport const vUserSearchRequest = v.object({\n generic_table_id: v.nullish(v.pipe(v.string(), v.uuid())),\n search_query: v.pipe(v.string(), v.minLength(1))\n});\n\n/**\n * SQLQueryCallResponse\n *\n * SQL query descriptor — Liquid-templated query body.\n */\nexport const vSqlQueryCallResponse = v.pipe(v.record(v.string(), v.unknown()), v.readonly());\n\n/**\n * DataActivationClientSQLQueryCallResponse\n */\nexport const vDataActivationClientSqlQueryCallResponse = v.intersect([vSqlQueryCallResponse, v.object({\n tool_call_type: v.picklist(['sql_query'])\n })]);\n\n/**\n * ActionSQLQueryCallResponse\n */\nexport const vActionSqlQueryCallResponse = v.intersect([vSqlQueryCallResponse, v.object({\n tool_call_type: v.picklist(['sql_query'])\n })]);\n\n/**\n * ActionSFTPCallResponse\n */\nexport const vActionSftpCallResponse = v.intersect([vSftpCallResponse, v.object({\n tool_call_type: v.picklist(['sftp_request'])\n })]);\n\n/**\n * ManualUploadResponse\n *\n * Manual upload marker tool — no configuration fields, just an identity marker for manual ingestion workflows.\n */\nexport const vManualUploadResponse = v.pipe(v.record(v.string(), v.unknown()), v.readonly());\n\n/**\n * ToolManualUploadResponse\n */\nexport const vToolManualUploadResponse = v.intersect([vManualUploadResponse, v.object({\n tool_body_type: v.picklist(['manual_upload'])\n })]);\n\n/**\n * CloudWatchLogGroupRequest\n *\n * AWS CloudWatch Logs authentication credential store. Referenced by ActionStatusUpdater for log-group polling. Request\n */\nexport const vCloudWatchLogGroupRequest = v.object({\n access_key_id: v.nullish(v.string()),\n assume_role_arn: v.nullish(v.pipe(v.string(), v.regex(/^arn:aws:iam::\\d{12}:role\\/.+$/))),\n assume_role_external_id: v.nullish(v.string()),\n auth_method: v.picklist([\n 'access_key',\n 'iam_role',\n 'assume_role'\n ]),\n endpoint_url: v.nullish(v.string()),\n region: v.string()\n});\n\n/**\n * ToolCloudWatchLogGroupRequest\n */\nexport const vToolCloudWatchLogGroupRequest = v.intersect([vCloudWatchLogGroupRequest, v.object({\n tool_body_type: v.picklist(['cloud_watch_log_group'])\n })]);\n\n/**\n * SNSRequest\n *\n * AWS SNS tool configuration for sending SMS messages via the SNS Publish API. Request\n */\nexport const vSnsRequest = v.object({\n access_key_id: v.nullish(v.string()),\n assume_role_arn: v.nullish(v.pipe(v.string(), v.regex(/^arn:aws:iam::\\d{12}:role\\/.+$/))),\n assume_role_external_id: v.nullish(v.string()),\n auth_method: v.picklist([\n 'access_key',\n 'iam_role',\n 'assume_role'\n ]),\n endpoint_url: v.nullish(v.string()),\n phone_number: v.string(),\n region: v.string()\n});\n\n/**\n * ManualToolInvocationAWSLambdaCallResponse\n */\nexport const vManualToolInvocationAwsLambdaCallResponse = v.intersect([vAwsLambdaCallResponse, v.object({\n tool_call_type: v.picklist(['aws_lambda_request'])\n })]);\n\n/**\n * PingResponse\n *\n * Health check response with version and database connectivity status\n */\nexport const vPingResponse = v.object({\n database_status: v.picklist(['connected', 'disconnected']),\n status: v.picklist(['ok', 'error']),\n timestamp: v.pipe(v.string(), v.isoTimestamp()),\n version: v.string()\n});\n\n/**\n * UploadLinkResponse\n *\n * Response containing a presigned PUT URL for uploading a file to object storage\n */\nexport const vUploadLinkResponse = v.object({\n expires_in: v.pipe(v.number(), v.integer()),\n key: v.string(),\n url: v.string()\n});\n\n/**\n * ActionEmailCallResponse\n */\nexport const vActionEmailCallResponse = v.intersect([vEmailCallResponse, v.object({\n tool_call_type: v.picklist(['email_request'])\n })]);\n\n/**\n * RunWorkflowRequest\n *\n * Request body for bulk workflow execution via SQL WHERE clause\n */\nexport const vRunWorkflowRequest = v.object({\n manual_override: v.nullish(v.boolean(), false),\n mode: v.nullish(v.picklist(['live', 'dry_run']), 'live'),\n sql_where_clause: v.string()\n});\n\n/**\n * ConnectedAppRouteResponse\n *\n * Discovered route from a Connected App's .well-known/routes.json\n */\nexport const vConnectedAppRouteResponse = v.pipe(v.object({\n description: v.nullish(v.string()),\n name: v.string(),\n path: v.string()\n}), v.readonly());\n\n/**\n * SFTPCallRequest\n *\n * SFTP file descriptor — remote path + expected MIME content type. Request\n */\nexport const vSftpCallRequest = v.object({\n content_type: v.string(),\n path: v.string()\n});\n\n/**\n * ActionSFTPCallRequest\n */\nexport const vActionSftpCallRequest = v.intersect([vSftpCallRequest, v.object({\n tool_call_type: v.picklist(['sftp_request'])\n })]);\n\n/**\n * ToolEmailRequest\n */\nexport const vToolEmailRequest = v.intersect([vEmailRequest, v.object({\n tool_body_type: v.picklist(['email'])\n })]);\n\n/**\n * ManualToolInvocationRESTCallResponse\n */\nexport const vManualToolInvocationRestCallResponse = v.intersect([vRestCallResponse, v.object({\n tool_call_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * ManualToolInvocationResponse\n *\n * A manual test invocation of a tool. The request body carries only `tool_call` (polymorphic on `__type__`); all other fields are server-populated and returned in the response.\n */\nexport const vManualToolInvocationResponse = v.pipe(v.object({\n error_message: v.nullish(v.pipe(v.string(), v.readonly())),\n id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n inserted_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n status: v.nullish(v.pipe(v.picklist([\n 'pending',\n 'success',\n 'error'\n ]), v.readonly())),\n tool_call: v.nullish(v.union([\n v.intersect([v.object({\n tool_call_type: v.literal('sms_request')\n }), vManualToolInvocationSmsCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('email_request')\n }), vManualToolInvocationEmailCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('restapi_request')\n }), vManualToolInvocationRestCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('aws_lambda_request')\n }), vManualToolInvocationAwsLambdaCallResponse])\n ])),\n updated_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly()))\n}), v.readonly());\n\n/**\n * IngestResponse\n *\n * Response from data ingestion\n */\nexport const vIngestResponse = v.object({\n batch_id: v.pipe(v.string(), v.uuid()),\n jobs_count: v.pipe(v.number(), v.integer()),\n key: v.string()\n});\n\n/**\n * SQSRequest\n *\n * AWS SQS (Simple Queue Service) tool configuration for sending and receiving queue messages. Request\n */\nexport const vSqsRequest = v.object({\n access_key_id: v.nullish(v.string()),\n auth_method: v.picklist(['access_key', 'iam_role']),\n fifo: v.nullish(v.boolean()),\n queue_name: v.nullish(v.string()),\n queue_url: v.string(),\n region: v.string()\n});\n\n/**\n * ToolSQSRequest\n */\nexport const vToolSqsRequest = v.intersect([vSqsRequest, v.object({\n tool_body_type: v.picklist(['sqs'])\n })]);\n\n/**\n * DataActivationClientAWSLambdaCallResponse\n */\nexport const vDataActivationClientAwsLambdaCallResponse = v.intersect([vAwsLambdaCallResponse, v.object({\n tool_call_type: v.picklist(['aws_lambda_request'])\n })]);\n\n/**\n * IngestFileResponse\n *\n * Response from scheduling a bulk file ingest. Row extraction and per-row processing jobs are created asynchronously by the EnqueueRows worker.\n */\nexport const vIngestFileResponse = v.object({\n job_id: v.pipe(v.number(), v.integer()),\n key: v.string(),\n status: v.string()\n});\n\n/**\n * ToolAWSLambdaRequest\n */\nexport const vToolAwsLambdaRequest = v.intersect([vAwsLambdaRequest, v.object({\n tool_body_type: v.picklist(['aws_lambda'])\n })]);\n\n/**\n * OuterPagination\n *\n * Outer page over the cached search_results table — chunks of up to 1 000 dataset IDs.\n */\nexport const vOuterPagination = v.strictObject({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1)), 1),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(1000)), 1000)\n});\n\n/**\n * ActionManualUploadCallRequest\n */\nexport const vActionManualUploadCallRequest = v.intersect([vManualUploadCallRequest, v.object({\n tool_call_type: v.picklist(['manual_upload'])\n })]);\n\n/**\n * SharePointExcelCallResponse\n *\n * Microsoft SharePoint request descriptor — drive URL + Excel sheet + search params.\n */\nexport const vSharePointExcelCallResponse = v.pipe(v.object({\n azure_tenant_id: v.pipe(v.string(), v.uuid()),\n drive_url: v.string(),\n search_params: v.string(),\n sheet_number: v.pipe(v.number(), v.integer())\n}), v.readonly());\n\n/**\n * ActionSharePointExcelCallResponse\n */\nexport const vActionSharePointExcelCallResponse = v.intersect([vSharePointExcelCallResponse, v.object({\n tool_call_type: v.picklist(['microsoft_share_point_excel_request'])\n })]);\n\n/**\n * SNSResponse\n *\n * AWS SNS tool configuration for sending SMS messages via the SNS Publish API.\n */\nexport const vSnsResponse = v.pipe(v.object({\n access_key_id: v.nullish(v.string()),\n assume_role_arn: v.nullish(v.pipe(v.string(), v.regex(/^arn:aws:iam::\\d{12}:role\\/.+$/))),\n assume_role_external_id: v.nullish(v.string()),\n auth_method: v.picklist([\n 'access_key',\n 'iam_role',\n 'assume_role'\n ]),\n endpoint_url: v.nullish(v.string()),\n phone_number: v.string(),\n region: v.string()\n}), v.readonly());\n\n/**\n * ToolSNSResponse\n */\nexport const vToolSnsResponse = v.intersect([vSnsResponse, v.object({\n tool_body_type: v.picklist(['sns'])\n })]);\n\n/**\n * InteroperabilityRunRequest\n *\n * Raw source-row payload to run through a contract's filter → transform → mdm_input pipeline. Stateless: no DB writes. Accepts arbitrary keys by design — validation is deferred to the contract.\n */\nexport const vInteroperabilityRunRequest = v.record(v.string(), v.unknown());\n\n/**\n * ActionSharePointExcelCallRequest\n */\nexport const vActionSharePointExcelCallRequest = v.intersect([vSharePointExcelCallRequest, v.object({\n tool_call_type: v.picklist(['microsoft_share_point_excel_request'])\n })]);\n\n/**\n * DatalakeMigrateResponse\n *\n * Accepted response for an enqueued datalake migration job\n */\nexport const vDatalakeMigrateResponse = v.object({\n datalake_id: v.pipe(v.string(), v.uuid()),\n enqueued_at: v.pipe(v.string(), v.isoTimestamp()),\n job_id: v.pipe(v.number(), v.integer()),\n status: v.picklist(['enqueued'])\n});\n\n/**\n * SQLDatabaseResponse\n *\n * SQL database connection configuration (PostgreSQL, MySQL, MSSQL, SQLite, Snowflake).\n */\nexport const vSqlDatabaseResponse = v.pipe(v.object({\n db_host: v.string(),\n db_name: v.string(),\n db_type: v.picklist([\n 'postgres',\n 'mysql',\n 'mssql',\n 'sqlite',\n 'snowflake'\n ]),\n pool_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(99))),\n port: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(65535))),\n ssl: v.nullish(v.boolean()),\n ssl_mode: v.nullish(v.string()),\n user_name: v.string()\n}), v.readonly());\n\n/**\n * ToolSQLDatabaseResponse\n */\nexport const vToolSqlDatabaseResponse = v.intersect([vSqlDatabaseResponse, v.object({\n tool_body_type: v.picklist(['sql_database'])\n })]);\n\n/**\n * MDMVerifyResponse\n *\n * Result of MDM subject identity verification\n */\nexport const vMdmVerifyResponse = v.union([v.object({\n status: v.picklist(['verified']),\n subject_id: v.pipe(v.string(), v.uuid()),\n verified_at: v.pipe(v.string(), v.isoTimestamp())\n }), v.object({\n errors: v.record(v.string(), v.array(v.string())),\n status: v.picklist(['not_verified']),\n subject_id: v.pipe(v.string(), v.uuid()),\n verified_at: v.pipe(v.string(), v.isoTimestamp())\n })]);\n\n/**\n * S3CloudStorageAwsResponse\n */\nexport const vS3CloudStorageAwsResponse = v.intersect([vCloudStorageAwsResponse, v.object({\n storage_config_type: v.picklist(['aws'])\n })]);\n\n/**\n * ContextDatasetRequest\n *\n * Context dataset for a workflow — declares which records the context builder should load (and under what filter) before the enrichment and decision stages. Request\n */\nexport const vContextDatasetRequest = v.object({\n dataset_type: v.string(),\n generic_table_id: v.nullish(v.pipe(v.string(), v.uuid())),\n limit: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n position: v.nullish(v.pipe(v.number(), v.integer()), 0),\n where_clause: v.nullish(v.string())\n});\n\n/**\n * SQSResponse\n *\n * AWS SQS (Simple Queue Service) tool configuration for sending and receiving queue messages.\n */\nexport const vSqsResponse = v.pipe(v.object({\n access_key_id: v.nullish(v.string()),\n auth_method: v.picklist(['access_key', 'iam_role']),\n fifo: v.nullish(v.boolean()),\n queue_name: v.nullish(v.string()),\n queue_url: v.string(),\n region: v.string()\n}), v.readonly());\n\n/**\n * TemplateConfigRequest\n *\n * Inline Liquid template configuration Request\n */\nexport const vTemplateConfigRequest = v.object({\n body: v.nullish(v.string()),\n path: v.nullish(v.string()),\n type: v.picklist([\n 'system',\n 'custom',\n 'identity',\n 'null'\n ])\n});\n\n/**\n * EmailCallRequest\n *\n * Email tool-call config — Liquid-templated recipient, subject, and body. Request\n */\nexport const vEmailCallRequest = v.object({\n body: vTemplateConfigRequest,\n subject: vTemplateConfigRequest,\n to: vTemplateConfigRequest\n});\n\n/**\n * ActionEmailCallRequest\n */\nexport const vActionEmailCallRequest = v.intersect([vEmailCallRequest, v.object({\n tool_call_type: v.picklist(['email_request'])\n })]);\n\n/**\n * InteroperabilityContractRequest\n *\n * Declarative execution spec binding a `(datalake, resource_type)` pair to the ingestion pipeline: filter → transform → mdm_input → resolve → upsert. Request\n */\nexport const vInteroperabilityContractRequest = v.object({\n description: v.nullish(v.string()),\n filter_template: v.nullish(v.string()),\n generic_table_id: v.nullish(v.pipe(v.string(), v.uuid())),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n mdm_input_config: v.nullish(vTemplateConfigRequest),\n name: v.string(),\n resource_type: v.string(),\n slug: v.nullish(v.string()),\n template_config: vTemplateConfigRequest,\n type: v.nullish(v.picklist([\n 'system',\n 'custom',\n 'identity',\n 'null'\n ])),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp()))\n});\n\n/**\n * RESTCallRequest\n *\n * REST API call descriptor — HTTP method, path, body, params, and pagination context template. Reused across ActionStatusUpdater polling, data activation clients, tool protocols, OAuth token fetching, and chat completion. Request\n */\nexport const vRestCallRequest = v.object({\n body: v.nullish(vTemplateConfigRequest),\n method: v.picklist([\n 'head',\n 'get',\n 'put',\n 'post',\n 'delete',\n 'patch'\n ]),\n pagination_context_template: vTemplateConfigRequest,\n params: v.nullish(vTemplateConfigRequest),\n path: vTemplateConfigRequest\n});\n\n/**\n * DataActivationClientRESTCallRequest\n */\nexport const vDataActivationClientRestCallRequest = v.intersect([vRestCallRequest, v.object({\n tool_call_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * ActionRESTCallRequest\n */\nexport const vActionRestCallRequest = v.intersect([vRestCallRequest, v.object({\n tool_call_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * ActionStatusUpdaterRESTCallRequest\n */\nexport const vActionStatusUpdaterRestCallRequest = v.intersect([vRestCallRequest, v.object({\n updater_body_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * RESTAPIRequest\n *\n * REST API tool configuration with OpenAPI-compliant authentication (API key, basic, bearer, OAuth2, OIDC) plus base Liquid templates. Request\n */\nexport const vRestapiRequest = v.object({\n api_key_location: v.nullish(v.picklist(['header', 'query'])),\n api_key_name: v.nullish(v.string()),\n auth_method: v.picklist([\n 'none',\n 'api_key',\n 'basic',\n 'bearer',\n 'oauth2',\n 'oidc'\n ]),\n base_url: v.string(),\n oauth2_client_id: v.nullish(v.string()),\n oauth2_grant_type: v.nullish(v.picklist(['client_credentials', 'authorization_code'])),\n oauth2_scope: v.nullish(v.string()),\n oauth2_token_ttl: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n oauth2_token_url: v.nullish(v.string()),\n oidc_client_id: v.nullish(v.string()),\n oidc_issuer_url: v.nullish(v.string()),\n oidc_token_ttl: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n request_type: v.picklist([\n 'json',\n 'xml',\n 'form_urlencoded',\n 'multipart_form'\n ]),\n response_type: v.picklist([\n 'json',\n 'xml',\n 'text',\n 'binary'\n ]),\n timeout_ms: v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(300000)),\n username: v.nullish(v.string())\n});\n\n/**\n * ToolRESTAPIRequest\n */\nexport const vToolRestapiRequest = v.intersect([vRestapiRequest, v.object({\n tool_body_type: v.picklist(['rest_api'])\n })]);\n\n/**\n * PaginationMeta\n *\n * Pagination metadata for list responses\n */\nexport const vPaginationMeta = v.object({\n page: v.pipe(v.number(), v.integer()),\n page_size: v.pipe(v.number(), v.integer()),\n total_count: v.pipe(v.number(), v.integer()),\n total_pages: v.pipe(v.number(), v.integer())\n});\n\n/**\n * DatasetSearchResponse\n *\n * Double-paginated dataset search results scoped to a `UserSearch`. The\n * `meta` object carries two `Flop.Meta`-shaped sub-objects:\n *\n * - `sql` — outer page over `search_results` (up to 1000 dataset IDs per\n * chunk; cap dictated by Postgres' `WHERE id IN (^ids)` plan). `null`\n * when the request was not bound to a `user_search_id`.\n * - `flop` — inner Flop page over the resource (default 20 rows).\n *\n */\nexport const vDatasetSearchResponse = v.object({\n data: v.array(v.record(v.string(), v.unknown())),\n meta: v.object({\n flop: vPaginationMeta,\n sql: v.nullish(v.union([vPaginationMeta, v.unknown()]))\n }),\n user_search: vUserSearchResponse\n});\n\n/**\n * TenantListResponse\n *\n * Paginated list of tenants\n */\nexport const vTenantListResponse = v.object({\n data: v.array(vTenantResponse),\n meta: vPaginationMeta\n});\n\n/**\n * DataActivationClientSharePointExcelCallResponse\n */\nexport const vDataActivationClientSharePointExcelCallResponse = v.intersect([vSharePointExcelCallResponse, v.object({\n tool_call_type: v.picklist(['microsoft_share_point_excel_request'])\n })]);\n\n/**\n * ConnectedAppRouteRequest\n *\n * Discovered route from a Connected App's .well-known/routes.json Request\n */\nexport const vConnectedAppRouteRequest = v.object({\n description: v.nullish(v.string()),\n name: v.string(),\n path: v.string()\n});\n\n/**\n * EmailResponse\n *\n * Email tool configuration — SES, Mailgun, SendGrid, or SMTP provider plus base Liquid templates.\n */\nexport const vEmailResponse = v.pipe(v.object({\n access_key_id: v.nullish(v.string()),\n domain: v.nullish(v.string()),\n from_email: v.pipe(v.string(), v.email()),\n from_name: v.nullish(v.string()),\n provider: v.picklist([\n 'ses',\n 'mailgun',\n 'sendgrid',\n 'smtp'\n ]),\n region: v.nullish(v.string()),\n reply_to: v.nullish(v.string()),\n smtp_host: v.nullish(v.string()),\n smtp_port: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(65535))),\n smtp_username: v.nullish(v.string())\n}), v.readonly());\n\n/**\n * ToolEmailResponse\n */\nexport const vToolEmailResponse = v.intersect([vEmailResponse, v.object({\n tool_body_type: v.picklist(['email'])\n })]);\n\n/**\n * WorkflowLogResponse\n *\n * Workflow execution log — per-event execution detail\n */\nexport const vWorkflowLogResponse = v.pipe(v.object({\n action_execution_logs: v.nullish(v.pipe(v.array(vActionExecutionLogResponse), v.readonly())),\n actions_completed: v.nullish(v.pipe(v.number(), v.integer())),\n actions_failed: v.nullish(v.pipe(v.number(), v.integer())),\n actions_pending: v.nullish(v.pipe(v.number(), v.integer())),\n actions_total: v.nullish(v.pipe(v.number(), v.integer())),\n batch_id: v.nullish(v.string()),\n completed_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n context_cloud_storage_key: v.nullish(v.string()),\n datalake_id: v.nullish(v.pipe(v.string(), v.uuid())),\n error_message: v.nullish(v.string()),\n filter_result: v.nullish(v.boolean()),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n mode: v.picklist(['live', 'dry_run']),\n sampled_event_id: v.nullish(v.pipe(v.string(), v.uuid())),\n started_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n status: v.picklist([\n 'filtered',\n 'pending',\n 'executing',\n 'completed',\n 'failed',\n 'partial'\n ]),\n subject_id: v.nullish(v.pipe(v.string(), v.uuid())),\n subject_type: v.nullish(v.string()),\n tenant_id: v.nullish(v.pipe(v.string(), v.uuid())),\n workflow_id: v.nullish(v.pipe(v.string(), v.uuid()))\n}), v.readonly());\n\n/**\n * WorkflowLogListResponse\n *\n * Paginated list of workflow execution logs\n */\nexport const vWorkflowLogListResponse = v.object({\n data: v.array(vWorkflowLogResponse),\n meta: vPaginationMeta\n});\n\n/**\n * CloudStorageAwsRequest\n *\n * AWS S3 cloud storage configuration supporting access key and IAM role authentication. Request\n */\nexport const vCloudStorageAwsRequest = v.object({\n access_key_id: v.nullish(v.string()),\n auth_method: v.nullish(v.picklist(['access_key', 'iam_role'])),\n base_path: v.nullish(v.string()),\n bucket: v.string(),\n endpoint: v.nullish(v.string()),\n region: v.string()\n});\n\n/**\n * S3CloudStorageAwsRequest\n */\nexport const vS3CloudStorageAwsRequest = v.intersect([vCloudStorageAwsRequest, v.object({\n storage_config_type: v.picklist(['aws'])\n })]);\n\n/**\n * ToolSQSResponse\n */\nexport const vToolSqsResponse = v.intersect([vSqsResponse, v.object({\n tool_body_type: v.picklist(['sqs'])\n })]);\n\n/**\n * ApiKeyResponse\n *\n * Lean API key reference — id, name, last_four, and data_access_mode (no plaintext)\n */\nexport const vApiKeyResponse = v.pipe(v.object({\n data_access_mode: v.picklist(['regulated', 'unregulated']),\n id: v.pipe(v.pipe(v.string(), v.uuid()), v.readonly()),\n last_four: v.pipe(v.string(), v.readonly()),\n name: v.string()\n}), v.readonly());\n\n/**\n * SyncRoutesResponse\n *\n * Accepted response for an enqueued route sync job\n */\nexport const vSyncRoutesResponse = v.object({\n connected_app_id: v.pipe(v.string(), v.uuid()),\n enqueued_at: v.pipe(v.string(), v.isoTimestamp()),\n job_id: v.pipe(v.number(), v.integer()),\n status: v.picklist(['enqueued'])\n});\n\n/**\n * DataActivationClientResponse\n *\n * Data Activation Client — binds a (datalake, data_source, tool) triple with a polymorphic `tool_call` config describing how to fetch data from the external system, plus optional cron schedule, row-level filter, downstream triggers, and interop contracts for row-level transformation.\n */\nexport const vDataActivationClientResponse = v.pipe(v.object({\n cron_expressions: v.nullish(v.array(v.string()), []),\n data_source_id: v.pipe(v.string(), v.uuid()),\n datalake_id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n description: v.nullish(v.string()),\n downstream_connection_ids: v.nullish(v.array(v.pipe(v.string(), v.uuid())), []),\n id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n inserted_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n interoperability_contract_ids: v.nullish(v.array(v.pipe(v.string(), v.uuid())), []),\n is_default: v.nullish(v.pipe(v.boolean(), v.readonly())),\n loop_over: v.nullish(v.array(v.picklist([\n 'services',\n 'locations',\n 'providers'\n ])), []),\n name: v.string(),\n row_filter: v.nullish(v.string()),\n slug: v.nullish(v.pipe(v.string(), v.readonly())),\n tool_call: v.union([\n v.intersect([v.object({\n tool_call_type: v.literal('restapi_request')\n }), vDataActivationClientRestCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('sql_query')\n }), vDataActivationClientSqlQueryCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('sftp_request')\n }), vDataActivationClientSftpCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('microsoft_share_point_excel_request')\n }), vDataActivationClientSharePointExcelCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('aws_lambda_request')\n }), vDataActivationClientAwsLambdaCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('manual_upload')\n }), vDataActivationClientManualUploadCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('s3_request')\n }), vDataActivationClientS3CallResponse])\n ]),\n tool_id: v.pipe(v.string(), v.uuid()),\n updated_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly()))\n}), v.readonly());\n\n/**\n * DataActivationClientListResponse\n *\n * Paginated list of data activation clients\n */\nexport const vDataActivationClientListResponse = v.object({\n data: v.array(vDataActivationClientResponse),\n meta: vPaginationMeta\n});\n\n/**\n * SFTPRequest\n *\n * SFTP (SSH File Transfer Protocol) server connection configuration with password or SSH key auth. Request\n */\nexport const vSftpRequest = v.object({\n auth_method: v.picklist(['password', 'ssh_key']),\n base_path: v.string(),\n host: v.string(),\n port: v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(65535)),\n user_name: v.string()\n});\n\n/**\n * ToolSFTPRequest\n */\nexport const vToolSftpRequest = v.intersect([vSftpRequest, v.object({\n tool_body_type: v.picklist(['sftp'])\n })]);\n\n/**\n * InnerSearch\n *\n * Inner search input over the resource. Defaults: page 1, page_size 20, order_direction asc. All keys optional; absent values fall through to the resource's `Flop.Schema` defaults.\n */\nexport const vInnerSearch = v.strictObject({\n global_search: v.nullish(v.string()),\n order_direction: v.nullish(v.picklist(['asc', 'desc'])),\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1)), 1),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100)), 20)\n});\n\n/**\n * CloudStorageCustomRequest\n *\n * Custom S3-compatible cloud storage configuration — for MinIO, DigitalOcean Spaces, Backblaze B2, and other S3-compatible services. Requires a custom endpoint URL. Request\n */\nexport const vCloudStorageCustomRequest = v.object({\n access_key_id: v.string(),\n base_path: v.nullish(v.string()),\n bucket: v.string(),\n endpoint: v.string(),\n region: v.string()\n});\n\n/**\n * DatalakeCloudStorageCustomRequest\n */\nexport const vDatalakeCloudStorageCustomRequest = v.intersect([vCloudStorageCustomRequest, v.object({\n cloud_storage_type: v.picklist(['custom'])\n })]);\n\n/**\n * RunWorkflowResponse\n *\n * Response from bulk workflow execution\n */\nexport const vRunWorkflowResponse = v.object({\n batch_id: v.string(),\n enqueued_count: v.pipe(v.number(), v.integer()),\n workflow_run_log_id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * ExecuteActionResponse\n *\n * Response from executing a workflow action\n */\nexport const vExecuteActionResponse = v.object({\n scheduled_count: v.nullish(v.pipe(v.number(), v.integer())),\n status: v.nullish(v.picklist([\n 'pending',\n 'completed',\n 'filtered',\n 'failed'\n ])),\n workflow_execution_log_id: v.nullish(v.pipe(v.string(), v.uuid()))\n});\n\n/**\n * DatalakeCloudStorageAwsResponse\n */\nexport const vDatalakeCloudStorageAwsResponse = v.intersect([vCloudStorageAwsResponse, v.object({\n cloud_storage_type: v.picklist(['aws'])\n })]);\n\n/**\n * ActionRESTCallResponse\n */\nexport const vActionRestCallResponse = v.intersect([vRestCallResponse, v.object({\n tool_call_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * ActionResponse\n *\n * Workflow action — executes when the decision table routes to this `decision_key`. Polymorphic `tool_call` payload is variant-specific via `tool_call_type` discriminator.\n */\nexport const vActionResponse = v.pipe(v.object({\n action_type: v.picklist([\n 'sms',\n 'email',\n 'voice',\n 'data_exchange'\n ]),\n action_window_end: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(0), v.maxValue(23))),\n action_window_start: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(0), v.maxValue(23))),\n connected_app_id: v.nullish(v.pipe(v.string(), v.uuid())),\n connected_app_metadata_template: v.nullish(v.string()),\n connected_app_route: v.nullish(v.string()),\n decision_key: v.string(),\n id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n idempotency_template: v.string(),\n inserted_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n position: v.nullish(v.pipe(v.number(), v.integer()), 0),\n runtime_filter: v.nullish(v.string()),\n tool_call: v.union([\n v.intersect([v.object({\n tool_call_type: v.literal('sms_request')\n }), vActionSmsCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('email_request')\n }), vActionEmailCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('sql_query')\n }), vActionSqlQueryCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('restapi_request')\n }), vActionRestCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('sftp_request')\n }), vActionSftpCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('microsoft_share_point_excel_request')\n }), vActionSharePointExcelCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('aws_lambda_request')\n }), vActionAwsLambdaCallResponse]),\n v.intersect([v.object({\n tool_call_type: v.literal('manual_upload')\n }), vActionManualUploadCallResponse])\n ]),\n tool_id: v.pipe(v.string(), v.uuid()),\n trigger_template: v.string(),\n updated_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n workflow_id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly()))\n}), v.readonly());\n\n/**\n * AgenticWorkflowRequest\n *\n * Agentic Workflow — event-driven automation pipeline Request\n */\nexport const vAgenticWorkflowRequest = v.object({\n actions: v.nullish(v.array(vActionResponse)),\n context_datasets: v.nullish(v.array(vContextDatasetResponse)),\n dataset_type: v.string(),\n description: v.string(),\n generic_table_id: v.nullish(v.pipe(v.string(), v.uuid())),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n name: v.string(),\n skip_mdm_resolution: v.nullish(v.boolean()),\n status: v.picklist(['live', 'draft']),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp()))\n});\n\n/**\n * DataActivationClientRequest\n *\n * Data Activation Client — binds a (datalake, data_source, tool) triple with a polymorphic `tool_call` config describing how to fetch data from the external system, plus optional cron schedule, row-level filter, downstream triggers, and interop contracts for row-level transformation. Request\n */\nexport const vDataActivationClientRequest = v.object({\n cron_expressions: v.nullish(v.array(v.string()), []),\n data_source_id: v.pipe(v.string(), v.uuid()),\n description: v.nullish(v.string()),\n downstream_connection_ids: v.nullish(v.array(v.pipe(v.string(), v.uuid())), []),\n filter_config: v.nullish(vTemplateConfigRequest),\n interoperability_contract_ids: v.nullish(v.array(v.pipe(v.string(), v.uuid())), []),\n loop_over: v.nullish(v.array(v.picklist([\n 'services',\n 'locations',\n 'providers'\n ])), []),\n name: v.string(),\n row_filter: v.nullish(v.string()),\n tool_id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * IngestFileRequest\n *\n * Request body for ingesting a file that was previously uploaded via a presigned upload link\n */\nexport const vIngestFileRequest = v.object({\n key: v.string()\n});\n\n/**\n * ToolCloudWatchLogGroupResponse\n */\nexport const vToolCloudWatchLogGroupResponse = v.intersect([vCloudWatchLogGroupResponse, v.object({\n tool_body_type: v.picklist(['cloud_watch_log_group'])\n })]);\n\n/**\n * ActionAWSLambdaCallRequest\n */\nexport const vActionAwsLambdaCallRequest = v.intersect([vAwsLambdaCallRequest, v.object({\n tool_call_type: v.picklist(['aws_lambda_request'])\n })]);\n\n/**\n * CloudWatchQueryRequest\n *\n * CloudWatch log group query descriptor — log group name plus Liquid-templated time window. Reusable across any caller that needs CloudWatch polling (currently ActionStatusUpdater.updater_body). Title is CloudWatchQuery (not CloudWatchRequest) to avoid triple-`Request` stacking in the library-generated parent-contextual sibling module names (e.g. ActionStatusUpdaterCloudWatchQueryRequest). Request\n */\nexport const vCloudWatchQueryRequest = v.object({\n end_time: v.string(),\n log_group_name: v.string(),\n start_time: v.string()\n});\n\n/**\n * ActionStatusUpdaterCloudWatchQueryRequest\n */\nexport const vActionStatusUpdaterCloudWatchQueryRequest = v.intersect([vCloudWatchQueryRequest, v.object({\n updater_body_type: v.picklist(['cloud_watch_request'])\n })]);\n\n/**\n * GenericTableResponse\n *\n * Generic Table — custom or system dataset table with column definitions.\n */\nexport const vGenericTableResponse = v.pipe(v.object({\n columns: v.nullish(v.array(v.unknown())),\n data_domain: v.nullish(v.picklist([\n 'healthcare',\n 'core_banking',\n 'payment_risk',\n 'accounts_receivable',\n 'service_commerce',\n 'trading',\n 'foundation'\n ])),\n datalake_id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n description: v.nullish(v.string()),\n id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n inserted_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n name: v.nullish(v.pipe(v.string(), v.readonly())),\n status: v.nullish(v.pipe(v.picklist([\n 'new',\n 'stale',\n 'processing',\n 'deployed'\n ]), v.readonly())),\n tenant_id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n title: v.nullish(v.string()),\n type: v.nullish(v.pipe(v.picklist(['custom', 'system']), v.readonly())),\n updated_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly()))\n}), v.readonly());\n\n/**\n * GenericTableListResponse\n *\n * Paginated list of generic tables\n */\nexport const vGenericTableListResponse = v.object({\n data: v.array(vGenericTableResponse),\n meta: vPaginationMeta\n});\n\n/**\n * InteroperabilityContractListResponse\n *\n * Paginated list of interoperability contracts\n */\nexport const vInteroperabilityContractListResponse = v.object({\n data: v.array(vInteroperabilityContractResponse),\n meta: vPaginationMeta\n});\n\n/**\n * TenantRequest\n *\n * Tenant resource. The auto-generated `TenantRequest` shape carries only\n * the writable fields (`name`, `description`); `TenantResponse` returns the\n * full read surface (`id`, `slug`, `name`, `description`).\n * Request\n */\nexport const vTenantRequest = v.object({\n description: v.nullish(v.pipe(v.string(), v.maxLength(1000))),\n name: v.pipe(v.string(), v.minLength(1), v.maxLength(160))\n});\n\n/**\n * CloudflarePagesConfigRequest\n *\n * Cloudflare Pages deployment configuration for managed Connected Apps Request\n */\nexport const vCloudflarePagesConfigRequest = v.object({\n account_id: v.string(),\n build_command: v.nullish(v.string()),\n destination_dir: v.nullish(v.string()),\n github_auth_method: v.picklist(['github_app', 'pat']),\n production_branch: v.nullish(v.string())\n});\n\n/**\n * DataActivationClientSFTPCallRequest\n */\nexport const vDataActivationClientSftpCallRequest = v.intersect([vSftpCallRequest, v.object({\n tool_call_type: v.picklist(['sftp_request'])\n })]);\n\n/**\n * ManualToolInvocationEmailCallRequest\n */\nexport const vManualToolInvocationEmailCallRequest = v.intersect([vEmailCallRequest, v.object({\n tool_call_type: v.picklist(['email_request'])\n })]);\n\n/**\n * ConnectedAppResponse\n *\n * External web application connected to the platform via M2M API key\n */\nexport const vConnectedAppResponse = v.pipe(v.object({\n cloudflare_pages_config: v.nullish(v.object({\n account_id: v.string(),\n build_command: v.nullish(v.string()),\n destination_dir: v.nullish(v.string()),\n github_auth_method: v.nullish(v.picklist(['github_app', 'pat'])),\n production_branch: v.nullish(v.string()),\n project_name: v.nullish(v.pipe(v.string(), v.readonly()))\n })),\n description: v.nullish(v.string()),\n error: v.nullish(v.pipe(v.string(), v.readonly())),\n id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n inserted_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n last_synced_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n mode: v.picklist(['managed', 'self_hosted']),\n name: v.string(),\n repo_url: v.nullish(v.string()),\n routes: v.nullish(v.pipe(v.array(v.object({\n description: v.nullish(v.string()),\n name: v.string(),\n path: v.string()\n })), v.readonly())),\n slug: v.nullish(v.pipe(v.string(), v.readonly())),\n status: v.nullish(v.pipe(v.picklist([\n 'pending',\n 'deploying',\n 'deployed',\n 'synced',\n 'error'\n ]), v.readonly())),\n updated_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n urls: v.nullish(v.array(v.object({\n is_primary: v.nullish(v.boolean()),\n label: v.nullish(v.string()),\n url: v.string()\n })))\n}), v.readonly());\n\n/**\n * ConnectedAppListResponse\n *\n * Paginated list of connected apps\n */\nexport const vConnectedAppListResponse = v.object({\n data: v.array(vConnectedAppResponse),\n meta: vPaginationMeta\n});\n\n/**\n * DatalakeCloudStorageAwsRequest\n */\nexport const vDatalakeCloudStorageAwsRequest = v.intersect([vCloudStorageAwsRequest, v.object({\n cloud_storage_type: v.picklist(['aws'])\n })]);\n\n/**\n * RoleResponse\n *\n * Lean role reference — id, name, and description\n */\nexport const vRoleResponse = v.pipe(v.object({\n description: v.nullish(v.string()),\n id: v.pipe(v.pipe(v.string(), v.uuid()), v.readonly()),\n name: v.string()\n}), v.readonly());\n\n/**\n * SessionResponse\n *\n * Authenticated session — issued at sign-in (`POST /api/v1/sessions`) or\n * derived from an `X-API-Key` header. The `session_token` field carries the\n * plaintext Bearer on creation responses and is null on verify responses.\n * `tenant`, `role`, and `user` are nullable for tenant-less / pre-tenant\n * sessions; `api_key` is populated for M2M sessions only.\n *\n */\nexport const vSessionResponse = v.pipe(v.object({\n api_key: v.nullish(vApiKeyResponse),\n data_access_mode: v.picklist(['regulated', 'unregulated']),\n expires_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n role: v.nullish(vRoleResponse),\n session_token: v.nullish(v.pipe(v.string(), v.readonly())),\n tenant: v.nullish(vTenantResponse),\n type: v.pipe(v.picklist(['user', 'api']), v.readonly()),\n user: v.nullish(vUserResponse)\n}), v.readonly());\n\n/**\n * BatchLogListResponse\n *\n * Paginated list of batch run logs\n */\nexport const vBatchLogListResponse = v.object({\n data: v.array(vBatchLogResponse),\n meta: vPaginationMeta\n});\n\n/**\n * RunManuallyResponse\n *\n * Acknowledgement of an enqueued manual run. The `batch_id` can be used to poll per-dataset processing logs (via upcoming runs list/show endpoints).\n */\nexport const vRunManuallyResponse = v.object({\n batch_id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * ManualToolInvocationAWSLambdaCallRequest\n */\nexport const vManualToolInvocationAwsLambdaCallRequest = v.intersect([vAwsLambdaCallRequest, v.object({\n tool_call_type: v.picklist(['aws_lambda_request'])\n })]);\n\n/**\n * ToolSFTPResponse\n */\nexport const vToolSftpResponse = v.intersect([vSftpResponse, v.object({\n tool_body_type: v.picklist(['sftp'])\n })]);\n\n/**\n * SignInRequest\n *\n * Exchange user credentials for a Bearer session token.\n *\n * `tenant_slug` is optional — when omitted, returns a tenant-less Bearer for\n * use on `/api/v1/admin/...` operations and pre-tenant flows like\n * `POST /api/v1/tenants` (creating your first tenant). When provided,\n * returns a tenant-scoped Bearer with the caller's membership role.\n *\n * For M2M authentication, use the `X-API-Key` header directly instead.\n * Request\n */\nexport const vSignInRequest = v.object({\n email: v.pipe(v.string(), v.email()),\n expires_in: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(60), v.maxValue(2592000))),\n password: v.pipe(v.string(), v.minLength(1)),\n tenant_slug: v.nullish(v.string())\n});\n\n/**\n * ManualToolInvocationRESTCallRequest\n */\nexport const vManualToolInvocationRestCallRequest = v.intersect([vRestCallRequest, v.object({\n tool_call_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * CloudWatchQueryResponse\n *\n * CloudWatch log group query descriptor — log group name plus Liquid-templated time window. Reusable across any caller that needs CloudWatch polling (currently ActionStatusUpdater.updater_body). Title is CloudWatchQuery (not CloudWatchRequest) to avoid triple-`Request` stacking in the library-generated parent-contextual sibling module names (e.g. ActionStatusUpdaterCloudWatchQueryRequest).\n */\nexport const vCloudWatchQueryResponse = v.pipe(v.object({\n end_time: v.string(),\n log_group_name: v.string(),\n start_time: v.string()\n}), v.readonly());\n\n/**\n * ActionStatusUpdaterCloudWatchQueryResponse\n */\nexport const vActionStatusUpdaterCloudWatchQueryResponse = v.intersect([vCloudWatchQueryResponse, v.object({\n updater_body_type: v.picklist(['cloud_watch_request'])\n })]);\n\n/**\n * ActionStatusUpdaterResponse\n *\n * Action Status Updater — automated polling for delivery status updates.\n */\nexport const vActionStatusUpdaterResponse = v.pipe(v.object({\n cron_expression: v.nullish(v.string()),\n datalake_id: v.nullish(v.pipe(v.string(), v.uuid())),\n id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n inserted_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n name: v.nullish(v.string()),\n sender_tool_ids: v.nullish(v.array(v.pipe(v.string(), v.uuid()))),\n tenant_id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n updated_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n updater_body: v.nullish(v.union([v.intersect([v.object({\n updater_body_type: v.literal('cloud_watch_request')\n }), vActionStatusUpdaterCloudWatchQueryResponse]), v.intersect([v.object({\n updater_body_type: v.literal('restapi_request')\n }), vActionStatusUpdaterRestCallResponse])])),\n updater_tool_id: v.nullish(v.pipe(v.string(), v.uuid())),\n updater_type: v.nullish(v.picklist(['cloud_watch', 'restapi']))\n}), v.readonly());\n\n/**\n * ActionStatusUpdaterListResponse\n *\n * Paginated list of action status updaters\n */\nexport const vActionStatusUpdaterListResponse = v.object({\n data: v.array(vActionStatusUpdaterResponse),\n meta: vPaginationMeta\n});\n\n/**\n * SignUpRequest\n *\n * Register a new user account. Mirrors the `/auth/register` LiveView form\n * submission shape. The created user is **unconfirmed** — caller must\n * confirm separately (e.g. via the email confirmation flow, or via\n * `PUT /api/v1/admin/users/:id/confirm` for tests) before signing in.\n *\n * No authentication is required.\n * Request\n */\nexport const vSignUpRequest = v.object({\n email: v.pipe(v.string(), v.email()),\n first_name: v.nullable(v.string()),\n last_name: v.nullable(v.string())\n});\n\n/**\n * DataActivationClientSQLQueryCallRequest\n */\nexport const vDataActivationClientSqlQueryCallRequest = v.intersect([vSqlQueryCallRequest, v.object({\n tool_call_type: v.picklist(['sql_query'])\n })]);\n\n/**\n * RunManuallyRequest\n *\n * Optional polymorphic tool_call override for this run. When omitted or empty, the DAC's persisted tool_call is used.\n */\nexport const vRunManuallyRequest = v.object({\n tool_call: v.nullish(v.union([\n v.intersect([v.object({\n tool_call_type: v.literal('DataActivationClientRESTCallRequest')\n }), vDataActivationClientRestCallRequest]),\n v.intersect([v.object({\n tool_call_type: v.literal('DataActivationClientSQLQueryCallRequest')\n }), vDataActivationClientSqlQueryCallRequest]),\n v.intersect([v.object({\n tool_call_type: v.literal('DataActivationClientSFTPCallRequest')\n }), vDataActivationClientSftpCallRequest]),\n v.intersect([v.object({\n tool_call_type: v.literal('DataActivationClientSharePointExcelCallRequest')\n }), vDataActivationClientSharePointExcelCallRequest]),\n v.intersect([v.object({\n tool_call_type: v.literal('DataActivationClientAWSLambdaCallRequest')\n }), vDataActivationClientAwsLambdaCallRequest]),\n v.intersect([v.object({\n tool_call_type: v.literal('DataActivationClientManualUploadCallRequest')\n }), vDataActivationClientManualUploadCallRequest]),\n v.intersect([v.object({\n tool_call_type: v.literal('DataActivationClientS3CallRequest')\n }), vDataActivationClientS3CallRequest])\n ]))\n});\n\n/**\n * ToolSNSRequest\n */\nexport const vToolSnsRequest = v.intersect([vSnsRequest, v.object({\n tool_body_type: v.picklist(['sns'])\n })]);\n\n/**\n * InvitationListResponse\n *\n * Paginated list of invitations\n */\nexport const vInvitationListResponse = v.object({\n data: v.array(vInvitationResponse),\n meta: vPaginationMeta\n});\n\n/**\n * ActionStatusUpdaterRequest\n *\n * Action Status Updater — automated polling for delivery status updates. Request\n */\nexport const vActionStatusUpdaterRequest = v.object({\n cron_expression: v.nullish(v.string()),\n datalake_id: v.nullish(v.pipe(v.string(), v.uuid())),\n name: v.nullish(v.string()),\n sender_tool_ids: v.nullish(v.array(v.pipe(v.string(), v.uuid()))),\n updater_tool_id: v.nullish(v.pipe(v.string(), v.uuid())),\n updater_type: v.nullish(v.picklist(['cloud_watch', 'restapi']))\n});\n\n/**\n * DataActivationClientLogListResponse\n *\n * Paginated list of data activation client logs\n */\nexport const vDataActivationClientLogListResponse = v.object({\n data: v.array(vDataActivationClientLogResponse),\n meta: vPaginationMeta\n});\n\n/**\n * ConnectedAppUrlRequest\n *\n * URL entry for a Connected App Request\n */\nexport const vConnectedAppUrlRequest = v.object({\n is_primary: v.nullish(v.boolean()),\n label: v.nullish(v.string()),\n url: v.string()\n});\n\n/**\n * ConnectedAppRequest\n *\n * External web application connected to the platform via M2M API key Request\n */\nexport const vConnectedAppRequest = v.object({\n cloudflare_pages_config: v.nullish(v.object({\n account_id: v.string(),\n build_command: v.nullish(v.string()),\n destination_dir: v.nullish(v.string()),\n github_auth_method: v.nullish(v.picklist(['github_app', 'pat'])),\n production_branch: v.nullish(v.string()),\n project_name: v.nullish(v.pipe(v.string(), v.readonly()))\n })),\n description: v.nullish(v.string()),\n mode: v.picklist(['managed', 'self_hosted']),\n name: v.string(),\n repo_url: v.nullish(v.string()),\n urls: v.nullish(v.array(v.object({\n is_primary: v.nullish(v.boolean()),\n label: v.nullish(v.string()),\n url: v.string()\n })))\n});\n\n/**\n * CloudStorageR2Response\n *\n * Cloudflare R2 cloud storage configuration — S3-compatible with auto region and account-scoped endpoints.\n */\nexport const vCloudStorageR2Response = v.pipe(v.object({\n access_key_id: v.string(),\n base_path: v.nullish(v.string()),\n bucket: v.string(),\n endpoint: v.nullish(v.string()),\n region: v.nullish(v.string())\n}), v.readonly());\n\n/**\n * DatalakeCloudStorageR2Response\n */\nexport const vDatalakeCloudStorageR2Response = v.intersect([vCloudStorageR2Response, v.object({\n cloud_storage_type: v.picklist(['r2'])\n })]);\n\n/**\n * DatalakeResponse\n *\n * Datalake configuration. Secrets (DB passwords, credentials) are write-only — accepted on create but never returned in responses.\n */\nexport const vDatalakeResponse = v.pipe(v.object({\n slug: v.nullish(v.string()),\n unregulated_db_reader_auth_method: v.picklist(['password', 'iam_role']),\n regulated_data_db_reader_host: v.string(),\n regulated_data_db_reader_name: v.string(),\n regulated_cloud_storage: v.union([\n v.intersect([v.object({\n cloud_storage_type: v.literal('aws')\n }), vDatalakeCloudStorageAwsResponse]),\n v.intersect([v.object({\n cloud_storage_type: v.literal('r2')\n }), vDatalakeCloudStorageR2Response]),\n v.intersect([v.object({\n cloud_storage_type: v.literal('custom')\n }), vDatalakeCloudStorageCustomResponse])\n ]),\n unregulated_cloud_storage: v.union([\n v.intersect([v.object({\n cloud_storage_type: v.literal('aws')\n }), vDatalakeCloudStorageAwsResponse]),\n v.intersect([v.object({\n cloud_storage_type: v.literal('r2')\n }), vDatalakeCloudStorageR2Response]),\n v.intersect([v.object({\n cloud_storage_type: v.literal('custom')\n }), vDatalakeCloudStorageCustomResponse])\n ]),\n regulated_data_db_reader_port: v.pipe(v.number(), v.integer()),\n unregulated_db_writer_schema: v.string(),\n unregulated_db_writer_name: v.string(),\n regulated_data_db_reader_schema: v.string(),\n unregulated_db_writer_host: v.string(),\n regulated_data_db_writer_name: v.string(),\n unregulated_db_reader_name: v.string(),\n unregulated_db_writer_auth_method: v.picklist(['password', 'iam_role']),\n tenant: v.nullish(vTenantResponse),\n id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n name: v.string(),\n description: v.nullish(v.string()),\n pool_size: v.nullable(v.pipe(v.number(), v.integer())),\n updated_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n status: v.nullish(v.pipe(v.picklist([\n 'new',\n 'processing',\n 'ready'\n ]), v.readonly())),\n unregulated_db_reader_port: v.pipe(v.number(), v.integer()),\n unregulated_db_reader_host: v.string(),\n regulated_data_db_reader_enable_ssl: v.boolean(),\n unregulated_db_reader_enable_ssl: v.boolean(),\n regulated_data_db_writer_port: v.pipe(v.number(), v.integer()),\n unregulated_db_writer_port: v.pipe(v.number(), v.integer()),\n unregulated_db_writer_enable_ssl: v.boolean(),\n unregulated_db_reader_schema: v.string(),\n regulated_data_db_writer_enable_ssl: v.boolean(),\n regulated_data_db_writer_schema: v.string(),\n regulated_data_db_writer_auth_method: v.picklist(['password', 'iam_role']),\n inserted_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n regulated_data_db_writer_host: v.string(),\n regulated_data_db_reader_auth_method: v.picklist(['password', 'iam_role']),\n timezone: v.nullable(v.string()),\n data_domain: v.picklist([\n 'healthcare',\n 'core_banking',\n 'payment_risk',\n 'accounts_receivable',\n 'service_commerce',\n 'trading',\n 'foundation'\n ])\n}), v.readonly());\n\n/**\n * S3CloudStorageR2Response\n */\nexport const vS3CloudStorageR2Response = v.intersect([vCloudStorageR2Response, v.object({\n storage_config_type: v.picklist(['r2'])\n })]);\n\n/**\n * S3Response\n *\n * S3-compatible storage tool configuration with a nested polymorphic provider config (AWS or R2).\n */\nexport const vS3Response = v.pipe(v.object({\n config: v.union([v.intersect([v.object({\n storage_config_type: v.literal('aws')\n }), vS3CloudStorageAwsResponse]), v.intersect([v.object({\n storage_config_type: v.literal('r2')\n }), vS3CloudStorageR2Response])])\n}), v.readonly());\n\n/**\n * ToolS3Response\n */\nexport const vToolS3Response = v.intersect([vS3Response, v.object({\n tool_body_type: v.picklist(['s3'])\n })]);\n\n/**\n * DatalakeListResponse\n *\n * Paginated list of datalakes\n */\nexport const vDatalakeListResponse = v.object({\n data: v.array(vDatalakeResponse),\n meta: vPaginationMeta\n});\n\n/**\n * S3Request\n *\n * S3-compatible storage tool configuration with a nested polymorphic provider config (AWS or R2). Request\n */\nexport const vS3Request = v.record(v.string(), v.unknown());\n\n/**\n * ToolS3Request\n */\nexport const vToolS3Request = v.intersect([vS3Request, v.object({\n tool_body_type: v.picklist(['s3'])\n })]);\n\n/**\n * DataSourceResponse\n *\n * Data source — connection to a third-party system or API\n */\nexport const vDataSourceResponse = v.pipe(v.object({\n datalake: v.nullish(vDatalakeResponse),\n description: v.nullish(v.string()),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n image_url: v.nullish(v.string()),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n is_default: v.boolean(),\n name: v.string(),\n status: v.picklist([\n 'draft',\n 'active',\n 'inactive'\n ]),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n uri: v.string()\n}), v.readonly());\n\n/**\n * DataSourceListResponse\n *\n * Paginated list of data sources\n */\nexport const vDataSourceListResponse = v.object({\n data: v.array(vDataSourceResponse),\n meta: vPaginationMeta\n});\n\n/**\n * SQLDatabaseRequest\n *\n * SQL database connection configuration (PostgreSQL, MySQL, MSSQL, SQLite, Snowflake). Request\n */\nexport const vSqlDatabaseRequest = v.object({\n db_host: v.string(),\n db_name: v.string(),\n db_type: v.picklist([\n 'postgres',\n 'mysql',\n 'mssql',\n 'sqlite',\n 'snowflake'\n ]),\n pool_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(99))),\n port: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(65535))),\n ssl: v.nullish(v.boolean()),\n ssl_mode: v.nullish(v.string()),\n user_name: v.string()\n});\n\n/**\n * ToolSQLDatabaseRequest\n */\nexport const vToolSqlDatabaseRequest = v.intersect([vSqlDatabaseRequest, v.object({\n tool_body_type: v.picklist(['sql_database'])\n })]);\n\n/**\n * SMSCallRequest\n *\n * SMS tool-call config — Liquid-templated recipient and body plus transactional/promotional category. Request\n */\nexport const vSmsCallRequest = v.object({\n body: vTemplateConfigRequest,\n sms_type: v.nullish(v.picklist(['transactional', 'promotional']), 'transactional'),\n to: vTemplateConfigRequest\n});\n\n/**\n * ActionSMSCallRequest\n */\nexport const vActionSmsCallRequest = v.intersect([vSmsCallRequest, v.object({\n tool_call_type: v.picklist(['sms_request'])\n })]);\n\n/**\n * ManualToolInvocationSMSCallRequest\n */\nexport const vManualToolInvocationSmsCallRequest = v.intersect([vSmsCallRequest, v.object({\n tool_call_type: v.picklist(['sms_request'])\n })]);\n\n/**\n * ToolRESTAPIResponse\n */\nexport const vToolRestapiResponse = v.intersect([vRestapiResponse, v.object({\n tool_body_type: v.picklist(['rest_api'])\n })]);\n\n/**\n * ToolResponse\n *\n * Tool — a configurable capability reference for external services.\n */\nexport const vToolResponse = v.pipe(v.object({\n body: v.nullish(v.union([\n v.intersect([v.object({\n tool_body_type: v.literal('email')\n }), vToolEmailResponse]),\n v.intersect([v.object({\n tool_body_type: v.literal('sns')\n }), vToolSnsResponse]),\n v.intersect([v.object({\n tool_body_type: v.literal('rest_api')\n }), vToolRestapiResponse]),\n v.intersect([v.object({\n tool_body_type: v.literal('s3')\n }), vToolS3Response]),\n v.intersect([v.object({\n tool_body_type: v.literal('aws_lambda')\n }), vToolAwsLambdaResponse]),\n v.intersect([v.object({\n tool_body_type: v.literal('sql_database')\n }), vToolSqlDatabaseResponse]),\n v.intersect([v.object({\n tool_body_type: v.literal('sqs')\n }), vToolSqsResponse]),\n v.intersect([v.object({\n tool_body_type: v.literal('sftp')\n }), vToolSftpResponse]),\n v.intersect([v.object({\n tool_body_type: v.literal('sharepoint')\n }), vToolSharePointResponse]),\n v.intersect([v.object({\n tool_body_type: v.literal('cloud_watch_log_group')\n }), vToolCloudWatchLogGroupResponse]),\n v.intersect([v.object({\n tool_body_type: v.literal('manual_upload')\n }), vToolManualUploadResponse])\n ])),\n data_source_id: v.nullish(v.pipe(v.string(), v.uuid())),\n datalake_id: v.nullish(v.pipe(v.string(), v.uuid())),\n description: v.nullish(v.string()),\n id: v.nullish(v.pipe(v.pipe(v.string(), v.uuid()), v.readonly())),\n inserted_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n intent: v.nullish(v.picklist([\n 'sms',\n 'email',\n 'export',\n 'voice',\n 'data_exchange',\n 'status_poller',\n 'chat_completion',\n 'context_extraction'\n ])),\n name: v.nullish(v.string()),\n status: v.nullish(v.picklist([\n 'draft',\n 'active',\n 'inactive',\n 'error',\n 'marked_for_deletion'\n ])),\n updated_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly()))\n}), v.readonly());\n\n/**\n * MinimalAiAgentResponse\n *\n * AI Agent — identifier and runtime fields only (no tenant/datalake nesting)\n */\nexport const vMinimalAiAgentResponse = v.pipe(v.object({\n data_access: v.picklist(['regulated', 'unregulated']),\n description: v.nullish(v.string()),\n enabled: v.boolean(),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n max_tokens: v.pipe(v.number(), v.integer()),\n model: v.string(),\n name: v.string(),\n slug: v.nullish(v.string()),\n temperature: v.number(),\n tool: v.nullish(vToolResponse),\n tool_id: v.pipe(v.string(), v.uuid()),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp()))\n}), v.readonly());\n\n/**\n * WorkflowAiAgentResponse\n *\n * Join entry linking an AI agent to a workflow at a specific execution position in the enrichment pipeline.\n */\nexport const vWorkflowAiAgentResponse = v.pipe(v.object({\n ai_agent: v.nullish(vMinimalAiAgentResponse),\n ai_agent_id: v.pipe(v.string(), v.uuid()),\n inserted_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly())),\n position: v.pipe(v.number(), v.integer()),\n updated_at: v.nullish(v.pipe(v.pipe(v.string(), v.isoTimestamp()), v.readonly()))\n}), v.readonly());\n\n/**\n * AgenticWorkflowResponse\n *\n * Agentic Workflow — event-driven automation pipeline\n */\nexport const vAgenticWorkflowResponse = v.pipe(v.object({\n actions: v.nullish(v.array(vActionResponse)),\n context_datasets: v.nullish(v.array(vContextDatasetResponse)),\n datalake: v.nullish(vDatalakeResponse),\n dataset_type: v.string(),\n description: v.string(),\n generic_table_id: v.nullish(v.pipe(v.string(), v.uuid())),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n name: v.string(),\n skip_mdm_resolution: v.nullish(v.boolean()),\n slug: v.nullish(v.pipe(v.string(), v.readonly())),\n status: v.picklist(['live', 'draft']),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n workflow_ai_agents: v.nullish(v.pipe(v.array(vWorkflowAiAgentResponse), v.readonly()))\n}), v.readonly());\n\n/**\n * ToolListResponse\n *\n * Paginated list of tools\n */\nexport const vToolListResponse = v.object({\n data: v.array(vToolResponse),\n meta: vPaginationMeta\n});\n\n/**\n * AgenticWorkflowListResponse\n *\n * Paginated list of agentic workflows\n */\nexport const vAgenticWorkflowListResponse = v.object({\n data: v.array(vAgenticWorkflowResponse),\n meta: vPaginationMeta\n});\n\n/**\n * AiAgentResponse\n *\n * AI Agent configuration — reusable chat-completion resource\n */\nexport const vAiAgentResponse = v.pipe(v.object({\n data_access: v.picklist(['regulated', 'unregulated']),\n datalake: v.nullish(vDatalakeResponse),\n description: v.nullish(v.string()),\n enabled: v.boolean(),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n max_tokens: v.pipe(v.number(), v.integer()),\n model: v.string(),\n name: v.string(),\n slug: v.nullish(v.string()),\n temperature: v.number(),\n tenant: v.nullish(vTenantResponse),\n tool: v.nullish(vToolResponse),\n tool_id: v.pipe(v.string(), v.uuid()),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp()))\n}), v.readonly());\n\n/**\n * AiAgentListResponse\n *\n * Paginated list of AI agents\n */\nexport const vAiAgentListResponse = v.object({\n data: v.array(vAiAgentResponse),\n meta: vPaginationMeta\n});\n\n/**\n * UserSearchResponse\n *\n * User SQL search resource. Created via `POST /datasets/:dataset/user-searches`\n * with a `WHERE`-clause body in `search_query`; the platform executes\n * `INSERT INTO search_results SELECT … WHERE <body>` to populate\n * `search_results` and reports back `status`, `results_count`, and\n * `error_message`.\n *\n * UserSearch carries no `data_access_mode` of its own — the capability check\n * runs at query time via `Platform.RegulatedDatalakeRepo.prepare_query/3`,\n * which reads the ambient session and raises 403 when the ceiling is\n * insufficient. ExOpenApiUtils derives `UserSearchRequest` (writeable subset)\n * and `UserSearchResponse` (full readable shape) from this declaration via\n * the readOnly/writeOnly markers on each property.\n *\n */\nexport const vUserSearchResponseWritable = v.pipe(v.object({\n generic_table_id: v.nullish(v.pipe(v.string(), v.uuid())),\n search_query: v.pipe(v.string(), v.minLength(1))\n}), v.readonly());\n\n/**\n * ActionExecutionLogResponse\n *\n * Per-action execution log — child of a WorkflowExecutionLog, one row per scheduled action.\n */\nexport const vActionExecutionLogResponseWritable = v.pipe(v.object({\n action_id: v.pipe(v.string(), v.uuid()),\n action_type: v.picklist([\n 'sms',\n 'email',\n 'voice',\n 'data_exchange'\n ]),\n batch_id: v.nullish(v.string()),\n completed_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n context_key: v.nullish(v.string()),\n decision_key: v.nullish(v.string()),\n error_message: v.nullish(v.string()),\n external_id: v.nullish(v.string()),\n id: v.pipe(v.string(), v.uuid()),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n message_id: v.nullish(v.pipe(v.string(), v.uuid())),\n mode: v.picklist(['live', 'dry_run']),\n retry_count: v.nullish(v.pipe(v.number(), v.integer())),\n runtime_filter_result: v.nullish(v.boolean()),\n scheduled_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n started_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n status: v.picklist([\n 'pending',\n 'executing',\n 'completed',\n 'failed',\n 'skipped',\n 'filtered',\n 'cancelled'\n ]),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n workflow_execution_log_id: v.pipe(v.string(), v.uuid()),\n workflow_id: v.pipe(v.string(), v.uuid())\n}), v.readonly());\n\n/**\n * ContextDatasetResponse\n *\n * Context dataset for a workflow — declares which records the context builder should load (and under what filter) before the enrichment and decision stages.\n */\nexport const vContextDatasetResponseWritable = v.pipe(v.object({\n dataset_type: v.string(),\n generic_table_id: v.nullish(v.pipe(v.string(), v.uuid())),\n limit: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n position: v.nullish(v.pipe(v.number(), v.integer()), 0),\n where_clause: v.nullish(v.string())\n}), v.readonly());\n\n/**\n * DatalakeCloudStorageCustomResponse\n */\nexport const vDatalakeCloudStorageCustomResponseWritable = v.intersect([vCloudStorageCustomResponse, v.object({\n cloud_storage_type: v.picklist(['custom'])\n })]);\n\n/**\n * ManualToolInvocationResponse\n *\n * A manual test invocation of a tool. The request body carries only `tool_call` (polymorphic on `__type__`); all other fields are server-populated and returned in the response.\n */\nexport const vManualToolInvocationResponseWritable = v.pipe(v.record(v.string(), v.unknown()), v.readonly());\n\n/**\n * CloudWatchLogGroupResponse\n *\n * AWS CloudWatch Logs authentication credential store. Referenced by ActionStatusUpdater for log-group polling.\n */\nexport const vCloudWatchLogGroupResponseWritable = v.pipe(v.object({\n access_key_id: v.nullish(v.string()),\n assume_role_arn: v.nullish(v.pipe(v.string(), v.regex(/^arn:aws:iam::\\d{12}:role\\/.+$/))),\n assume_role_external_id: v.nullish(v.string()),\n auth_method: v.picklist([\n 'access_key',\n 'iam_role',\n 'assume_role'\n ]),\n endpoint_url: v.nullish(v.string()),\n region: v.string()\n}), v.readonly());\n\n/**\n * CloudflarePagesConfigResponse\n *\n * Cloudflare Pages deployment configuration for managed Connected Apps\n */\nexport const vCloudflarePagesConfigResponseWritable = v.pipe(v.object({\n account_id: v.string(),\n build_command: v.nullish(v.string()),\n destination_dir: v.nullish(v.string()),\n github_auth_method: v.picklist(['github_app', 'pat']),\n production_branch: v.nullish(v.string())\n}), v.readonly());\n\n/**\n * TenantResponse\n *\n * Tenant resource. The auto-generated `TenantRequest` shape carries only\n * the writable fields (`name`, `description`); `TenantResponse` returns the\n * full read surface (`id`, `slug`, `name`, `description`).\n *\n */\nexport const vTenantResponseWritable = v.pipe(v.object({\n description: v.nullish(v.pipe(v.string(), v.maxLength(1000))),\n name: v.pipe(v.string(), v.minLength(1), v.maxLength(160))\n}), v.readonly());\n\n/**\n * MembershipResponse\n *\n * Tenant membership — binds a user to a tenant with a role.\n */\nexport const vMembershipResponseWritable = v.pipe(v.object({\n tenant: v.nullish(vTenantResponseWritable)\n}), v.readonly());\n\n/**\n * DataActivationClientLogResponse\n *\n * One log row per `(batch_id, dataset_table)`. A batch fans out into one log per dataset table — so a single run (one `batch_id`) produces multiple log rows, one per table the DAC writes into. `output_files` carries the merged NDJSON URI once `BatchMergeWorker` has finished; use `/logs/:id/download` to fetch a presigned URL.\n */\nexport const vDataActivationClientLogResponseWritable = v.pipe(v.object({\n batch_id: v.pipe(v.string(), v.uuid()),\n dataset_table: v.string(),\n dataset_updated: v.nullish(v.pipe(v.number(), v.integer()), 0),\n input_files: v.nullish(v.array(v.string()), []),\n rows_ingested: v.nullish(v.pipe(v.number(), v.integer()), 0)\n}), v.readonly());\n\n/**\n * ActionStatusUpdaterResponse\n *\n * Action Status Updater — automated polling for delivery status updates.\n */\nexport const vActionStatusUpdaterResponseWritable = v.pipe(v.object({\n cron_expression: v.nullish(v.string()),\n datalake_id: v.nullish(v.pipe(v.string(), v.uuid())),\n name: v.nullish(v.string()),\n sender_tool_ids: v.nullish(v.array(v.pipe(v.string(), v.uuid()))),\n updater_tool_id: v.nullish(v.pipe(v.string(), v.uuid())),\n updater_type: v.nullish(v.picklist(['cloud_watch', 'restapi']))\n}), v.readonly());\n\n/**\n * DataActivationClientSharePointExcelCallRequest\n */\nexport const vDataActivationClientSharePointExcelCallRequestWritable = v.intersect([vSharePointExcelCallRequest, v.object({\n tool_call_type: v.picklist(['microsoft_share_point_excel_request'])\n })]);\n\n/**\n * AWSLambdaResponse\n *\n * AWS Lambda tool configuration supporting managed (CloudFormation-deployed) and external (user-provided ARN) modes.\n */\nexport const vAwsLambdaResponseWritable = v.pipe(v.object({\n access_key_id: v.nullish(v.string()),\n auth_method: v.nullish(v.picklist([\n 'access_key',\n 'iam_role',\n 'cloudformation'\n ])),\n env_vars: v.nullish(v.array(v.unknown())),\n function_arn: v.nullish(v.string()),\n secrets: v.nullish(v.array(v.unknown())),\n ssm_config_key: v.nullish(v.string()),\n type: v.picklist(['managed', 'external'])\n}), v.readonly());\n\n/**\n * ActionSharePointExcelCallResponse\n */\nexport const vActionSharePointExcelCallResponseWritable = v.intersect([vSharePointExcelCallResponse, v.object({\n tool_call_type: v.picklist(['microsoft_share_point_excel_request'])\n })]);\n\n/**\n * UserResponse\n *\n * Lean user reference — id, email, and names\n */\nexport const vUserResponseWritable = v.pipe(v.object({\n email: v.pipe(v.string(), v.email()),\n first_name: v.nullish(v.string()),\n last_name: v.nullish(v.string())\n}), v.readonly());\n\n/**\n * TemplateConfigResponse\n *\n * Inline Liquid template configuration\n */\nexport const vTemplateConfigResponseWritable = v.pipe(v.object({\n body: v.nullish(v.string()),\n path: v.nullish(v.string()),\n type: v.picklist([\n 'system',\n 'custom',\n 'identity',\n 'null'\n ])\n}), v.readonly());\n\n/**\n * ActionResponse\n *\n * Workflow action — executes when the decision table routes to this `decision_key`. Polymorphic `tool_call` payload is variant-specific via `tool_call_type` discriminator.\n */\nexport const vActionResponseWritable = v.pipe(v.object({\n action_type: v.picklist([\n 'sms',\n 'email',\n 'voice',\n 'data_exchange'\n ]),\n action_window_end: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(0), v.maxValue(23))),\n action_window_start: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(0), v.maxValue(23))),\n connected_app_id: v.nullish(v.pipe(v.string(), v.uuid())),\n connected_app_metadata_template: v.nullish(v.string()),\n connected_app_route: v.nullish(v.string()),\n decision_key: v.string(),\n idempotency_template: v.string(),\n position: v.nullish(v.pipe(v.number(), v.integer()), 0),\n runtime_filter: v.nullish(v.string()),\n tool_id: v.pipe(v.string(), v.uuid()),\n trigger_template: v.string()\n}), v.readonly());\n\n/**\n * InteroperabilityContractResponse\n *\n * Declarative execution spec binding a `(datalake, resource_type)` pair to the ingestion pipeline: filter → transform → mdm_input → resolve → upsert.\n */\nexport const vInteroperabilityContractResponseWritable = v.pipe(v.object({\n description: v.nullish(v.string()),\n filter_template: v.nullish(v.string()),\n generic_table_id: v.nullish(v.pipe(v.string(), v.uuid())),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n name: v.string(),\n resource_type: v.string(),\n slug: v.nullish(v.string()),\n type: v.nullish(v.picklist([\n 'system',\n 'custom',\n 'identity',\n 'null'\n ])),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp()))\n}), v.readonly());\n\n/**\n * ToolAWSLambdaResponse\n */\nexport const vToolAwsLambdaResponseWritable = v.intersect([vAwsLambdaResponseWritable, v.object({\n tool_body_type: v.picklist(['aws_lambda'])\n })]);\n\n/**\n * InvitationResponse\n *\n * Pending tenant invitation — resolved into a Membership on accept.\n */\nexport const vInvitationResponseWritable = v.pipe(v.object({\n email: v.pipe(v.string(), v.email()),\n role: v.picklist([\n 'member',\n 'researcher',\n 'admin'\n ]),\n tenant: v.nullish(vTenantResponseWritable)\n}), v.readonly());\n\n/**\n * AWSLambdaRequest\n *\n * AWS Lambda tool configuration supporting managed (CloudFormation-deployed) and external (user-provided ARN) modes. Request\n */\nexport const vAwsLambdaRequestWritable = v.object({\n access_key_id: v.nullish(v.string()),\n auth_method: v.nullish(v.picklist([\n 'access_key',\n 'iam_role',\n 'cloudformation'\n ])),\n env_vars: v.nullish(v.array(v.unknown())),\n function_arn: v.nullish(v.string()),\n secret_access_key: v.nullish(v.string()),\n secrets: v.nullish(v.array(v.unknown())),\n ssm_config_key: v.nullish(v.string()),\n type: v.picklist(['managed', 'external'])\n});\n\n/**\n * SMSCallResponse\n *\n * SMS tool-call config — Liquid-templated recipient and body plus transactional/promotional category.\n */\nexport const vSmsCallResponseWritable = v.pipe(v.object({\n body: vTemplateConfigResponseWritable,\n sms_type: v.nullish(v.picklist(['transactional', 'promotional']), 'transactional'),\n to: vTemplateConfigResponseWritable\n}), v.readonly());\n\n/**\n * ActionSMSCallResponse\n */\nexport const vActionSmsCallResponseWritable = v.intersect([vSmsCallResponseWritable, v.object({\n tool_call_type: v.picklist(['sms_request'])\n })]);\n\n/**\n * AWSLambdaCallResponse\n *\n * AWS Lambda invocation descriptor — Liquid-templated payload + timeout.\n */\nexport const vAwsLambdaCallResponseWritable = v.pipe(v.object({\n timeout_ms: v.nullish(v.pipe(v.number(), v.integer()))\n}), v.readonly());\n\n/**\n * RESTCallResponse\n *\n * REST API call descriptor — HTTP method, path, body, params, and pagination context template. Reused across ActionStatusUpdater polling, data activation clients, tool protocols, OAuth token fetching, and chat completion.\n */\nexport const vRestCallResponseWritable = v.pipe(v.object({\n body: v.nullish(vTemplateConfigResponseWritable),\n method: v.picklist([\n 'head',\n 'get',\n 'put',\n 'post',\n 'delete',\n 'patch'\n ]),\n pagination_context_template: vTemplateConfigResponseWritable,\n params: v.nullish(vTemplateConfigResponseWritable),\n path: vTemplateConfigResponseWritable\n}), v.readonly());\n\n/**\n * WorkflowAiAgentRequest\n *\n * Join entry linking an AI agent to a workflow at a specific execution position in the enrichment pipeline. Request\n */\nexport const vWorkflowAiAgentRequestWritable = v.object({\n ai_agent_id: v.pipe(v.string(), v.uuid()),\n position: v.pipe(v.number(), v.integer())\n});\n\n/**\n * AgenticWorkflowRequest\n *\n * Agentic Workflow — event-driven automation pipeline Request\n */\nexport const vAgenticWorkflowRequestWritable = v.object({\n actions: v.nullish(v.array(vActionResponseWritable)),\n ai_agents: v.nullish(v.array(vWorkflowAiAgentRequestWritable)),\n context_datasets: v.nullish(v.array(vContextDatasetResponseWritable)),\n dataset_type: v.string(),\n description: v.string(),\n generic_table_id: v.nullish(v.pipe(v.string(), v.uuid())),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n name: v.string(),\n skip_mdm_resolution: v.nullish(v.boolean()),\n status: v.picklist(['live', 'draft']),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp()))\n});\n\n/**\n * AiAgentRequest\n *\n * AI Agent configuration — reusable chat-completion resource Request\n */\nexport const vAiAgentRequestWritable = v.object({\n data_access: v.picklist(['regulated', 'unregulated']),\n description: v.nullish(v.string()),\n enabled: v.boolean(),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n max_tokens: v.pipe(v.number(), v.integer()),\n model: v.string(),\n name: v.string(),\n slug: v.nullish(v.string()),\n temperature: v.number(),\n tool_id: v.pipe(v.string(), v.uuid()),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp()))\n});\n\n/**\n * SharePointResponse\n *\n * Microsoft SharePoint integration via the Microsoft Graph API. Supports sites, document libraries, and lists with client-credential or managed-identity auth.\n */\nexport const vSharePointResponseWritable = v.pipe(v.object({\n auth_method: v.picklist(['client_credentials', 'managed_identity']),\n azure_tenant_id: v.string(),\n client_id: v.nullish(v.string()),\n drive_id: v.nullish(v.string()),\n drive_path: v.nullish(v.string()),\n resource_type: v.picklist([\n 'site',\n 'library',\n 'list'\n ]),\n site_url: v.nullish(v.string())\n}), v.readonly());\n\n/**\n * RESTAPIResponse\n *\n * REST API tool configuration with OpenAPI-compliant authentication (API key, basic, bearer, OAuth2, OIDC) plus base Liquid templates.\n */\nexport const vRestapiResponseWritable = v.pipe(v.object({\n api_key_location: v.nullish(v.picklist(['header', 'query'])),\n api_key_name: v.nullish(v.string()),\n auth_method: v.picklist([\n 'none',\n 'api_key',\n 'basic',\n 'bearer',\n 'oauth2',\n 'oidc'\n ]),\n base_url: v.string(),\n oauth2_client_id: v.nullish(v.string()),\n oauth2_grant_type: v.nullish(v.picklist(['client_credentials', 'authorization_code'])),\n oauth2_scope: v.nullish(v.string()),\n oauth2_token_ttl: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n oauth2_token_url: v.nullish(v.string()),\n oidc_client_id: v.nullish(v.string()),\n oidc_issuer_url: v.nullish(v.string()),\n oidc_token_ttl: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n request_type: v.picklist([\n 'json',\n 'xml',\n 'form_urlencoded',\n 'multipart_form'\n ]),\n response_type: v.picklist([\n 'json',\n 'xml',\n 'text',\n 'binary'\n ]),\n timeout_ms: v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(300000)),\n username: v.nullish(v.string())\n}), v.readonly());\n\n/**\n * DataActivationClientRESTCallResponse\n */\nexport const vDataActivationClientRestCallResponseWritable = v.intersect([vRestCallResponseWritable, v.object({\n tool_call_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * DataActivationClientS3CallResponse\n */\nexport const vDataActivationClientS3CallResponseWritable = v.intersect([vS3CallResponse, v.object({\n tool_call_type: v.picklist(['s3_request'])\n })]);\n\n/**\n * EmailRequest\n *\n * Email tool configuration — SES, Mailgun, SendGrid, or SMTP provider plus base Liquid templates. Request\n */\nexport const vEmailRequestWritable = v.object({\n access_key_id: v.nullish(v.string()),\n api_key: v.nullish(v.string()),\n domain: v.nullish(v.string()),\n from_email: v.pipe(v.string(), v.email()),\n from_name: v.nullish(v.string()),\n provider: v.picklist([\n 'ses',\n 'mailgun',\n 'sendgrid',\n 'smtp'\n ]),\n region: v.nullish(v.string()),\n reply_to: v.nullish(v.string()),\n secret_access_key: v.nullish(v.string()),\n smtp_host: v.nullish(v.string()),\n smtp_password: v.nullish(v.string()),\n smtp_port: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(65535))),\n smtp_username: v.nullish(v.string())\n});\n\n/**\n * EmailCallResponse\n *\n * Email tool-call config — Liquid-templated recipient, subject, and body.\n */\nexport const vEmailCallResponseWritable = v.pipe(v.object({\n body: vTemplateConfigResponseWritable,\n subject: vTemplateConfigResponseWritable,\n to: vTemplateConfigResponseWritable\n}), v.readonly());\n\n/**\n * GenericTableRequest\n *\n * Generic Table — custom or system dataset table with column definitions. Request\n */\nexport const vGenericTableRequestWritable = v.object({\n columns: v.nullish(v.array(v.unknown())),\n data_domain: v.nullish(v.picklist([\n 'healthcare',\n 'core_banking',\n 'payment_risk',\n 'accounts_receivable',\n 'service_commerce',\n 'trading',\n 'foundation'\n ])),\n description: v.nullish(v.string()),\n title: v.nullish(v.string())\n});\n\n/**\n * ManualToolInvocationEmailCallResponse\n */\nexport const vManualToolInvocationEmailCallResponseWritable = v.intersect([vEmailCallResponseWritable, v.object({\n tool_call_type: v.picklist(['email_request'])\n })]);\n\n/**\n * ToolSharePointResponse\n */\nexport const vToolSharePointResponseWritable = v.intersect([vSharePointResponseWritable, v.object({\n tool_body_type: v.picklist(['sharepoint'])\n })]);\n\n/**\n * ManualToolInvocationSMSCallResponse\n */\nexport const vManualToolInvocationSmsCallResponseWritable = v.intersect([vSmsCallResponseWritable, v.object({\n tool_call_type: v.picklist(['sms_request'])\n })]);\n\n/**\n * ActionStatusUpdaterCloudWatchQueryResponse\n */\nexport const vActionStatusUpdaterCloudWatchQueryResponseWritable = v.intersect([vCloudWatchQueryResponse, v.object({\n updater_body_type: v.picklist(['cloud_watch_request'])\n })]);\n\n/**\n * ActionSFTPCallRequest\n */\nexport const vActionSftpCallRequestWritable = v.intersect([vSftpCallRequest, v.object({\n tool_call_type: v.picklist(['sftp_request'])\n })]);\n\n/**\n * BatchLogResponse\n *\n * Batch-level workflow run log — aggregation of per-event execution logs\n */\nexport const vBatchLogResponseWritable = v.pipe(v.object({\n batch_id: v.string(),\n completed_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n completed_wels: v.nullish(v.pipe(v.number(), v.integer())),\n datalake_id: v.nullish(v.pipe(v.string(), v.uuid())),\n expected_events: v.nullish(v.pipe(v.number(), v.integer())),\n failed_wels: v.nullish(v.pipe(v.number(), v.integer())),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n last_refreshed_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n started_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n status: v.picklist([\n 'pending',\n 'completed',\n 'partial',\n 'failed'\n ]),\n tenant_id: v.nullish(v.pipe(v.string(), v.uuid())),\n total_wels: v.nullish(v.pipe(v.number(), v.integer())),\n workflow_id: v.nullish(v.pipe(v.string(), v.uuid()))\n}), v.readonly());\n\n/**\n * AWSLambdaCallRequest\n *\n * AWS Lambda invocation descriptor — Liquid-templated payload + timeout. Request\n */\nexport const vAwsLambdaCallRequestWritable = v.object({\n timeout_ms: v.nullish(v.pipe(v.number(), v.integer()))\n});\n\n/**\n * ActionStatusUpdaterRESTCallResponse\n */\nexport const vActionStatusUpdaterRestCallResponseWritable = v.intersect([vRestCallResponseWritable, v.object({\n updater_body_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * DataActivationClientAWSLambdaCallRequest\n */\nexport const vDataActivationClientAwsLambdaCallRequestWritable = v.intersect([vAwsLambdaCallRequestWritable, v.object({\n tool_call_type: v.picklist(['aws_lambda_request'])\n })]);\n\n/**\n * DataActivationClientS3CallRequest\n */\nexport const vDataActivationClientS3CallRequestWritable = v.intersect([vS3CallRequest, v.object({\n tool_call_type: v.picklist(['s3_request'])\n })]);\n\n/**\n * DatasetSearchResponse\n *\n * Double-paginated dataset search results scoped to a `UserSearch`. The\n * `meta` object carries two `Flop.Meta`-shaped sub-objects:\n *\n * - `sql` — outer page over `search_results` (up to 1000 dataset IDs per\n * chunk; cap dictated by Postgres' `WHERE id IN (^ids)` plan). `null`\n * when the request was not bound to a `user_search_id`.\n * - `flop` — inner Flop page over the resource (default 20 rows).\n *\n */\nexport const vDatasetSearchResponseWritable = v.object({\n data: v.array(v.record(v.string(), v.unknown())),\n meta: v.object({\n flop: vPaginationMeta,\n sql: v.nullish(v.union([vPaginationMeta, v.unknown()]))\n }),\n user_search: vUserSearchResponseWritable\n});\n\n/**\n * ActionAWSLambdaCallResponse\n */\nexport const vActionAwsLambdaCallResponseWritable = v.intersect([vAwsLambdaCallResponseWritable, v.object({\n tool_call_type: v.picklist(['aws_lambda_request'])\n })]);\n\n/**\n * DataActivationClientSFTPCallResponse\n */\nexport const vDataActivationClientSftpCallResponseWritable = v.intersect([vSftpCallResponse, v.object({\n tool_call_type: v.picklist(['sftp_request'])\n })]);\n\n/**\n * CloudStorageR2Request\n *\n * Cloudflare R2 cloud storage configuration — S3-compatible with auto region and account-scoped endpoints. Request\n */\nexport const vCloudStorageR2RequestWritable = v.object({\n access_key_id: v.string(),\n base_path: v.nullish(v.string()),\n bucket: v.string(),\n endpoint: v.nullish(v.string()),\n region: v.nullish(v.string()),\n secret_access_key: v.string()\n});\n\n/**\n * DatalakeCloudStorageR2Request\n */\nexport const vDatalakeCloudStorageR2RequestWritable = v.intersect([vCloudStorageR2RequestWritable, v.object({\n cloud_storage_type: v.picklist(['r2'])\n })]);\n\n/**\n * S3CloudStorageR2Request\n */\nexport const vS3CloudStorageR2RequestWritable = v.intersect([vCloudStorageR2RequestWritable, v.object({\n storage_config_type: v.picklist(['r2'])\n })]);\n\n/**\n * SharePointRequest\n *\n * Microsoft SharePoint integration via the Microsoft Graph API. Supports sites, document libraries, and lists with client-credential or managed-identity auth. Request\n */\nexport const vSharePointRequestWritable = v.object({\n auth_method: v.picklist(['client_credentials', 'managed_identity']),\n azure_tenant_id: v.string(),\n client_id: v.nullish(v.string()),\n client_secret: v.nullish(v.string()),\n drive_id: v.nullish(v.string()),\n drive_path: v.nullish(v.string()),\n resource_type: v.picklist([\n 'site',\n 'library',\n 'list'\n ]),\n site_url: v.nullish(v.string())\n});\n\n/**\n * ToolSharePointRequest\n */\nexport const vToolSharePointRequestWritable = v.intersect([vSharePointRequestWritable, v.object({\n tool_body_type: v.picklist(['sharepoint'])\n })]);\n\n/**\n * SQLQueryCallRequest\n *\n * SQL query descriptor — Liquid-templated query body. Request\n */\nexport const vSqlQueryCallRequestWritable = v.record(v.string(), v.unknown());\n\n/**\n * ActionSQLQueryCallRequest\n */\nexport const vActionSqlQueryCallRequestWritable = v.intersect([vSqlQueryCallRequestWritable, v.object({\n tool_call_type: v.picklist(['sql_query'])\n })]);\n\n/**\n * DatalakeResponse\n *\n * Datalake configuration. Secrets (DB passwords, credentials) are write-only — accepted on create but never returned in responses.\n */\nexport const vDatalakeResponseWritable = v.pipe(v.object({\n slug: v.nullish(v.string()),\n unregulated_db_reader_auth_method: v.picklist(['password', 'iam_role']),\n regulated_data_db_reader_host: v.string(),\n regulated_data_db_reader_name: v.string(),\n regulated_data_db_reader_port: v.pipe(v.number(), v.integer()),\n unregulated_db_writer_schema: v.string(),\n unregulated_db_writer_name: v.string(),\n regulated_data_db_reader_schema: v.string(),\n unregulated_db_writer_host: v.string(),\n regulated_data_db_writer_name: v.string(),\n unregulated_db_reader_name: v.string(),\n unregulated_db_writer_auth_method: v.picklist(['password', 'iam_role']),\n tenant: v.nullish(vTenantResponseWritable),\n name: v.string(),\n description: v.nullish(v.string()),\n pool_size: v.nullable(v.pipe(v.number(), v.integer())),\n unregulated_db_reader_port: v.pipe(v.number(), v.integer()),\n unregulated_db_reader_host: v.string(),\n regulated_data_db_reader_enable_ssl: v.boolean(),\n unregulated_db_reader_enable_ssl: v.boolean(),\n regulated_data_db_writer_port: v.pipe(v.number(), v.integer()),\n unregulated_db_writer_port: v.pipe(v.number(), v.integer()),\n unregulated_db_writer_enable_ssl: v.boolean(),\n unregulated_db_reader_schema: v.string(),\n regulated_data_db_writer_enable_ssl: v.boolean(),\n regulated_data_db_writer_schema: v.string(),\n regulated_data_db_writer_auth_method: v.picklist(['password', 'iam_role']),\n regulated_data_db_writer_host: v.string(),\n regulated_data_db_reader_auth_method: v.picklist(['password', 'iam_role']),\n timezone: v.nullable(v.string()),\n data_domain: v.picklist([\n 'healthcare',\n 'core_banking',\n 'payment_risk',\n 'accounts_receivable',\n 'service_commerce',\n 'trading',\n 'foundation'\n ])\n}), v.readonly());\n\n/**\n * AgenticWorkflowResponse\n *\n * Agentic Workflow — event-driven automation pipeline\n */\nexport const vAgenticWorkflowResponseWritable = v.pipe(v.object({\n actions: v.nullish(v.array(vActionResponseWritable)),\n context_datasets: v.nullish(v.array(vContextDatasetResponseWritable)),\n datalake: v.nullish(vDatalakeResponseWritable),\n dataset_type: v.string(),\n description: v.string(),\n generic_table_id: v.nullish(v.pipe(v.string(), v.uuid())),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n name: v.string(),\n skip_mdm_resolution: v.nullish(v.boolean()),\n status: v.picklist(['live', 'draft']),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp()))\n}), v.readonly());\n\n/**\n * SFTPResponse\n *\n * SFTP (SSH File Transfer Protocol) server connection configuration with password or SSH key auth.\n */\nexport const vSftpResponseWritable = v.pipe(v.object({\n auth_method: v.picklist(['password', 'ssh_key']),\n base_path: v.string(),\n host: v.string(),\n port: v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(65535)),\n user_name: v.string()\n}), v.readonly());\n\n/**\n * SQLQueryCallResponse\n *\n * SQL query descriptor — Liquid-templated query body.\n */\nexport const vSqlQueryCallResponseWritable = v.pipe(v.record(v.string(), v.unknown()), v.readonly());\n\n/**\n * DataActivationClientSQLQueryCallResponse\n */\nexport const vDataActivationClientSqlQueryCallResponseWritable = v.intersect([vSqlQueryCallResponseWritable, v.object({\n tool_call_type: v.picklist(['sql_query'])\n })]);\n\n/**\n * ActionSQLQueryCallResponse\n */\nexport const vActionSqlQueryCallResponseWritable = v.intersect([vSqlQueryCallResponseWritable, v.object({\n tool_call_type: v.picklist(['sql_query'])\n })]);\n\n/**\n * ActionSFTPCallResponse\n */\nexport const vActionSftpCallResponseWritable = v.intersect([vSftpCallResponse, v.object({\n tool_call_type: v.picklist(['sftp_request'])\n })]);\n\n/**\n * DatalakeCloudStorageR2Response\n */\nexport const vDatalakeCloudStorageR2ResponseWritable = v.intersect([vCloudStorageR2Response, v.object({\n cloud_storage_type: v.picklist(['r2'])\n })]);\n\n/**\n * CloudWatchLogGroupRequest\n *\n * AWS CloudWatch Logs authentication credential store. Referenced by ActionStatusUpdater for log-group polling. Request\n */\nexport const vCloudWatchLogGroupRequestWritable = v.object({\n access_key_id: v.nullish(v.string()),\n assume_role_arn: v.nullish(v.pipe(v.string(), v.regex(/^arn:aws:iam::\\d{12}:role\\/.+$/))),\n assume_role_external_id: v.nullish(v.string()),\n auth_method: v.picklist([\n 'access_key',\n 'iam_role',\n 'assume_role'\n ]),\n endpoint_url: v.nullish(v.string()),\n region: v.string(),\n secret_access_key: v.nullish(v.string())\n});\n\n/**\n * ToolCloudWatchLogGroupRequest\n */\nexport const vToolCloudWatchLogGroupRequestWritable = v.intersect([vCloudWatchLogGroupRequestWritable, v.object({\n tool_body_type: v.picklist(['cloud_watch_log_group'])\n })]);\n\n/**\n * SNSRequest\n *\n * AWS SNS tool configuration for sending SMS messages via the SNS Publish API. Request\n */\nexport const vSnsRequestWritable = v.object({\n access_key_id: v.nullish(v.string()),\n assume_role_arn: v.nullish(v.pipe(v.string(), v.regex(/^arn:aws:iam::\\d{12}:role\\/.+$/))),\n assume_role_external_id: v.nullish(v.string()),\n auth_method: v.picklist([\n 'access_key',\n 'iam_role',\n 'assume_role'\n ]),\n endpoint_url: v.nullish(v.string()),\n phone_number: v.string(),\n region: v.string(),\n secret_access_key: v.nullish(v.string())\n});\n\n/**\n * ManualToolInvocationAWSLambdaCallResponse\n */\nexport const vManualToolInvocationAwsLambdaCallResponseWritable = v.intersect([vAwsLambdaCallResponseWritable, v.object({\n tool_call_type: v.picklist(['aws_lambda_request'])\n })]);\n\n/**\n * TenantListResponse\n *\n * Paginated list of tenants\n */\nexport const vTenantListResponseWritable = v.object({\n data: v.array(vTenantResponseWritable),\n meta: vPaginationMeta\n});\n\n/**\n * ActionEmailCallResponse\n */\nexport const vActionEmailCallResponseWritable = v.intersect([vEmailCallResponseWritable, v.object({\n tool_call_type: v.picklist(['email_request'])\n })]);\n\n/**\n * S3Response\n *\n * S3-compatible storage tool configuration with a nested polymorphic provider config (AWS or R2).\n */\nexport const vS3ResponseWritable = v.pipe(v.record(v.string(), v.unknown()), v.readonly());\n\n/**\n * ToolS3Response\n */\nexport const vToolS3ResponseWritable = v.intersect([vS3ResponseWritable, v.object({\n tool_body_type: v.picklist(['s3'])\n })]);\n\n/**\n * ToolEmailRequest\n */\nexport const vToolEmailRequestWritable = v.intersect([vEmailRequestWritable, v.object({\n tool_body_type: v.picklist(['email'])\n })]);\n\n/**\n * ManualToolInvocationRESTCallResponse\n */\nexport const vManualToolInvocationRestCallResponseWritable = v.intersect([vRestCallResponseWritable, v.object({\n tool_call_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * ActionStatusUpdaterCloudWatchQueryRequest\n */\nexport const vActionStatusUpdaterCloudWatchQueryRequestWritable = v.intersect([vCloudWatchQueryRequest, v.object({\n updater_body_type: v.picklist(['cloud_watch_request'])\n })]);\n\n/**\n * SQSRequest\n *\n * AWS SQS (Simple Queue Service) tool configuration for sending and receiving queue messages. Request\n */\nexport const vSqsRequestWritable = v.object({\n access_key_id: v.nullish(v.string()),\n auth_method: v.picklist(['access_key', 'iam_role']),\n fifo: v.nullish(v.boolean()),\n queue_name: v.nullish(v.string()),\n queue_url: v.string(),\n region: v.string(),\n secret_access_key: v.nullish(v.string())\n});\n\n/**\n * ToolSQSRequest\n */\nexport const vToolSqsRequestWritable = v.intersect([vSqsRequestWritable, v.object({\n tool_body_type: v.picklist(['sqs'])\n })]);\n\n/**\n * DataActivationClientAWSLambdaCallResponse\n */\nexport const vDataActivationClientAwsLambdaCallResponseWritable = v.intersect([vAwsLambdaCallResponseWritable, v.object({\n tool_call_type: v.picklist(['aws_lambda_request'])\n })]);\n\n/**\n * ToolResponse\n *\n * Tool — a configurable capability reference for external services.\n */\nexport const vToolResponseWritable = v.pipe(v.object({\n data_source_id: v.nullish(v.pipe(v.string(), v.uuid())),\n datalake_id: v.nullish(v.pipe(v.string(), v.uuid())),\n description: v.nullish(v.string()),\n intent: v.nullish(v.picklist([\n 'sms',\n 'email',\n 'export',\n 'voice',\n 'data_exchange',\n 'status_poller',\n 'chat_completion',\n 'context_extraction'\n ])),\n name: v.nullish(v.string()),\n status: v.nullish(v.picklist([\n 'draft',\n 'active',\n 'inactive',\n 'error',\n 'marked_for_deletion'\n ]))\n}), v.readonly());\n\n/**\n * MinimalAiAgentResponse\n *\n * AI Agent — identifier and runtime fields only (no tenant/datalake nesting)\n */\nexport const vMinimalAiAgentResponseWritable = v.pipe(v.object({\n data_access: v.picklist(['regulated', 'unregulated']),\n description: v.nullish(v.string()),\n enabled: v.boolean(),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n max_tokens: v.pipe(v.number(), v.integer()),\n model: v.string(),\n name: v.string(),\n slug: v.nullish(v.string()),\n temperature: v.number(),\n tool: v.nullish(vToolResponseWritable),\n tool_id: v.pipe(v.string(), v.uuid()),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp()))\n}), v.readonly());\n\n/**\n * WorkflowAiAgentResponse\n *\n * Join entry linking an AI agent to a workflow at a specific execution position in the enrichment pipeline.\n */\nexport const vWorkflowAiAgentResponseWritable = v.pipe(v.object({\n ai_agent: v.nullish(vMinimalAiAgentResponseWritable),\n ai_agent_id: v.pipe(v.string(), v.uuid()),\n position: v.pipe(v.number(), v.integer())\n}), v.readonly());\n\n/**\n * ToolAWSLambdaRequest\n */\nexport const vToolAwsLambdaRequestWritable = v.intersect([vAwsLambdaRequestWritable, v.object({\n tool_body_type: v.picklist(['aws_lambda'])\n })]);\n\n/**\n * SNSResponse\n *\n * AWS SNS tool configuration for sending SMS messages via the SNS Publish API.\n */\nexport const vSnsResponseWritable = v.pipe(v.object({\n access_key_id: v.nullish(v.string()),\n assume_role_arn: v.nullish(v.pipe(v.string(), v.regex(/^arn:aws:iam::\\d{12}:role\\/.+$/))),\n assume_role_external_id: v.nullish(v.string()),\n auth_method: v.picklist([\n 'access_key',\n 'iam_role',\n 'assume_role'\n ]),\n endpoint_url: v.nullish(v.string()),\n phone_number: v.string(),\n region: v.string()\n}), v.readonly());\n\n/**\n * ToolSNSResponse\n */\nexport const vToolSnsResponseWritable = v.intersect([vSnsResponseWritable, v.object({\n tool_body_type: v.picklist(['sns'])\n })]);\n\n/**\n * ActionSharePointExcelCallRequest\n */\nexport const vActionSharePointExcelCallRequestWritable = v.intersect([vSharePointExcelCallRequest, v.object({\n tool_call_type: v.picklist(['microsoft_share_point_excel_request'])\n })]);\n\n/**\n * SQLDatabaseResponse\n *\n * SQL database connection configuration (PostgreSQL, MySQL, MSSQL, SQLite, Snowflake).\n */\nexport const vSqlDatabaseResponseWritable = v.pipe(v.object({\n db_host: v.string(),\n db_name: v.string(),\n db_type: v.picklist([\n 'postgres',\n 'mysql',\n 'mssql',\n 'sqlite',\n 'snowflake'\n ]),\n pool_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(99))),\n port: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(65535))),\n ssl: v.nullish(v.boolean()),\n ssl_mode: v.nullish(v.string()),\n user_name: v.string()\n}), v.readonly());\n\n/**\n * ToolSQLDatabaseResponse\n */\nexport const vToolSqlDatabaseResponseWritable = v.intersect([vSqlDatabaseResponseWritable, v.object({\n tool_body_type: v.picklist(['sql_database'])\n })]);\n\n/**\n * S3CloudStorageAwsResponse\n */\nexport const vS3CloudStorageAwsResponseWritable = v.intersect([vCloudStorageAwsResponse, v.object({\n storage_config_type: v.picklist(['aws'])\n })]);\n\n/**\n * S3CloudStorageR2Response\n */\nexport const vS3CloudStorageR2ResponseWritable = v.intersect([vCloudStorageR2Response, v.object({\n storage_config_type: v.picklist(['r2'])\n })]);\n\n/**\n * ToolListResponse\n *\n * Paginated list of tools\n */\nexport const vToolListResponseWritable = v.object({\n data: v.array(vToolResponseWritable),\n meta: vPaginationMeta\n});\n\n/**\n * SQSResponse\n *\n * AWS SQS (Simple Queue Service) tool configuration for sending and receiving queue messages.\n */\nexport const vSqsResponseWritable = v.pipe(v.object({\n access_key_id: v.nullish(v.string()),\n auth_method: v.picklist(['access_key', 'iam_role']),\n fifo: v.nullish(v.boolean()),\n queue_name: v.nullish(v.string()),\n queue_url: v.string(),\n region: v.string()\n}), v.readonly());\n\n/**\n * TemplateConfigRequest\n *\n * Inline Liquid template configuration Request\n */\nexport const vTemplateConfigRequestWritable = v.object({\n body: v.nullish(v.string()),\n path: v.nullish(v.string()),\n type: v.picklist([\n 'system',\n 'custom',\n 'identity',\n 'null'\n ])\n});\n\n/**\n * EmailCallRequest\n *\n * Email tool-call config — Liquid-templated recipient, subject, and body. Request\n */\nexport const vEmailCallRequestWritable = v.object({\n body: vTemplateConfigRequestWritable,\n subject: vTemplateConfigRequestWritable,\n to: vTemplateConfigRequestWritable\n});\n\n/**\n * ActionEmailCallRequest\n */\nexport const vActionEmailCallRequestWritable = v.intersect([vEmailCallRequestWritable, v.object({\n tool_call_type: v.picklist(['email_request'])\n })]);\n\n/**\n * InteroperabilityContractRequest\n *\n * Declarative execution spec binding a `(datalake, resource_type)` pair to the ingestion pipeline: filter → transform → mdm_input → resolve → upsert. Request\n */\nexport const vInteroperabilityContractRequestWritable = v.object({\n description: v.nullish(v.string()),\n filter_template: v.nullish(v.string()),\n generic_table_id: v.nullish(v.pipe(v.string(), v.uuid())),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n mdm_input_config: v.nullish(vTemplateConfigRequestWritable),\n name: v.string(),\n resource_type: v.string(),\n slug: v.nullish(v.string()),\n template_config: vTemplateConfigRequestWritable,\n type: v.nullish(v.picklist([\n 'system',\n 'custom',\n 'identity',\n 'null'\n ])),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp()))\n});\n\n/**\n * RESTCallRequest\n *\n * REST API call descriptor — HTTP method, path, body, params, and pagination context template. Reused across ActionStatusUpdater polling, data activation clients, tool protocols, OAuth token fetching, and chat completion. Request\n */\nexport const vRestCallRequestWritable = v.object({\n body: v.nullish(vTemplateConfigRequestWritable),\n method: v.picklist([\n 'head',\n 'get',\n 'put',\n 'post',\n 'delete',\n 'patch'\n ]),\n pagination_context_template: vTemplateConfigRequestWritable,\n params: v.nullish(vTemplateConfigRequestWritable),\n path: vTemplateConfigRequestWritable\n});\n\n/**\n * DataActivationClientRESTCallRequest\n */\nexport const vDataActivationClientRestCallRequestWritable = v.intersect([vRestCallRequestWritable, v.object({\n tool_call_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * ActionRESTCallRequest\n */\nexport const vActionRestCallRequestWritable = v.intersect([vRestCallRequestWritable, v.object({\n tool_call_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * ActionStatusUpdaterRESTCallRequest\n */\nexport const vActionStatusUpdaterRestCallRequestWritable = v.intersect([vRestCallRequestWritable, v.object({\n updater_body_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * RESTAPIRequest\n *\n * REST API tool configuration with OpenAPI-compliant authentication (API key, basic, bearer, OAuth2, OIDC) plus base Liquid templates. Request\n */\nexport const vRestapiRequestWritable = v.object({\n api_key: v.nullish(v.string()),\n api_key_location: v.nullish(v.picklist(['header', 'query'])),\n api_key_name: v.nullish(v.string()),\n auth_method: v.picklist([\n 'none',\n 'api_key',\n 'basic',\n 'bearer',\n 'oauth2',\n 'oidc'\n ]),\n base_url: v.string(),\n bearer_token: v.nullish(v.string()),\n oauth2_client_id: v.nullish(v.string()),\n oauth2_client_secret: v.nullish(v.string()),\n oauth2_grant_type: v.nullish(v.picklist(['client_credentials', 'authorization_code'])),\n oauth2_scope: v.nullish(v.string()),\n oauth2_token_ttl: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n oauth2_token_url: v.nullish(v.string()),\n oidc_client_id: v.nullish(v.string()),\n oidc_client_secret: v.nullish(v.string()),\n oidc_issuer_url: v.nullish(v.string()),\n oidc_token_ttl: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n password: v.nullish(v.string()),\n request_type: v.picklist([\n 'json',\n 'xml',\n 'form_urlencoded',\n 'multipart_form'\n ]),\n response_type: v.picklist([\n 'json',\n 'xml',\n 'text',\n 'binary'\n ]),\n timeout_ms: v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(300000)),\n username: v.nullish(v.string())\n});\n\n/**\n * ToolRESTAPIRequest\n */\nexport const vToolRestapiRequestWritable = v.intersect([vRestapiRequestWritable, v.object({\n tool_body_type: v.picklist(['rest_api'])\n })]);\n\n/**\n * DataActivationClientSharePointExcelCallResponse\n */\nexport const vDataActivationClientSharePointExcelCallResponseWritable = v.intersect([vSharePointExcelCallResponse, v.object({\n tool_call_type: v.picklist(['microsoft_share_point_excel_request'])\n })]);\n\n/**\n * EmailResponse\n *\n * Email tool configuration — SES, Mailgun, SendGrid, or SMTP provider plus base Liquid templates.\n */\nexport const vEmailResponseWritable = v.pipe(v.object({\n access_key_id: v.nullish(v.string()),\n domain: v.nullish(v.string()),\n from_email: v.pipe(v.string(), v.email()),\n from_name: v.nullish(v.string()),\n provider: v.picklist([\n 'ses',\n 'mailgun',\n 'sendgrid',\n 'smtp'\n ]),\n region: v.nullish(v.string()),\n reply_to: v.nullish(v.string()),\n smtp_host: v.nullish(v.string()),\n smtp_port: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(65535))),\n smtp_username: v.nullish(v.string())\n}), v.readonly());\n\n/**\n * ToolEmailResponse\n */\nexport const vToolEmailResponseWritable = v.intersect([vEmailResponseWritable, v.object({\n tool_body_type: v.picklist(['email'])\n })]);\n\n/**\n * WorkflowLogResponse\n *\n * Workflow execution log — per-event execution detail\n */\nexport const vWorkflowLogResponseWritable = v.pipe(v.object({\n actions_completed: v.nullish(v.pipe(v.number(), v.integer())),\n actions_failed: v.nullish(v.pipe(v.number(), v.integer())),\n actions_pending: v.nullish(v.pipe(v.number(), v.integer())),\n actions_total: v.nullish(v.pipe(v.number(), v.integer())),\n batch_id: v.nullish(v.string()),\n completed_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n context_cloud_storage_key: v.nullish(v.string()),\n datalake_id: v.nullish(v.pipe(v.string(), v.uuid())),\n error_message: v.nullish(v.string()),\n filter_result: v.nullish(v.boolean()),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n mode: v.picklist(['live', 'dry_run']),\n sampled_event_id: v.nullish(v.pipe(v.string(), v.uuid())),\n started_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n status: v.picklist([\n 'filtered',\n 'pending',\n 'executing',\n 'completed',\n 'failed',\n 'partial'\n ]),\n subject_id: v.nullish(v.pipe(v.string(), v.uuid())),\n subject_type: v.nullish(v.string()),\n tenant_id: v.nullish(v.pipe(v.string(), v.uuid())),\n workflow_id: v.nullish(v.pipe(v.string(), v.uuid()))\n}), v.readonly());\n\n/**\n * WorkflowLogListResponse\n *\n * Paginated list of workflow execution logs\n */\nexport const vWorkflowLogListResponseWritable = v.object({\n data: v.array(vWorkflowLogResponseWritable),\n meta: vPaginationMeta\n});\n\n/**\n * CloudStorageAwsRequest\n *\n * AWS S3 cloud storage configuration supporting access key and IAM role authentication. Request\n */\nexport const vCloudStorageAwsRequestWritable = v.object({\n access_key_id: v.nullish(v.string()),\n auth_method: v.nullish(v.picklist(['access_key', 'iam_role'])),\n base_path: v.nullish(v.string()),\n bucket: v.string(),\n endpoint: v.nullish(v.string()),\n region: v.string(),\n secret_access_key: v.nullish(v.string())\n});\n\n/**\n * S3CloudStorageAwsRequest\n */\nexport const vS3CloudStorageAwsRequestWritable = v.intersect([vCloudStorageAwsRequestWritable, v.object({\n storage_config_type: v.picklist(['aws'])\n })]);\n\n/**\n * ToolSQSResponse\n */\nexport const vToolSqsResponseWritable = v.intersect([vSqsResponseWritable, v.object({\n tool_body_type: v.picklist(['sqs'])\n })]);\n\n/**\n * ApiKeyResponse\n *\n * Lean API key reference — id, name, last_four, and data_access_mode (no plaintext)\n */\nexport const vApiKeyResponseWritable = v.pipe(v.object({\n data_access_mode: v.picklist(['regulated', 'unregulated']),\n name: v.string()\n}), v.readonly());\n\n/**\n * DataActivationClientResponse\n *\n * Data Activation Client — binds a (datalake, data_source, tool) triple with a polymorphic `tool_call` config describing how to fetch data from the external system, plus optional cron schedule, row-level filter, downstream triggers, and interop contracts for row-level transformation.\n */\nexport const vDataActivationClientResponseWritable = v.pipe(v.object({\n cron_expressions: v.nullish(v.array(v.string()), []),\n data_source_id: v.pipe(v.string(), v.uuid()),\n description: v.nullish(v.string()),\n downstream_connection_ids: v.nullish(v.array(v.pipe(v.string(), v.uuid())), []),\n interoperability_contract_ids: v.nullish(v.array(v.pipe(v.string(), v.uuid())), []),\n loop_over: v.nullish(v.array(v.picklist([\n 'services',\n 'locations',\n 'providers'\n ])), []),\n name: v.string(),\n row_filter: v.nullish(v.string()),\n tool_id: v.pipe(v.string(), v.uuid())\n}), v.readonly());\n\n/**\n * DataActivationClientListResponse\n *\n * Paginated list of data activation clients\n */\nexport const vDataActivationClientListResponseWritable = v.object({\n data: v.array(vDataActivationClientResponseWritable),\n meta: vPaginationMeta\n});\n\n/**\n * SFTPRequest\n *\n * SFTP (SSH File Transfer Protocol) server connection configuration with password or SSH key auth. Request\n */\nexport const vSftpRequestWritable = v.object({\n auth_method: v.picklist(['password', 'ssh_key']),\n base_path: v.string(),\n host: v.string(),\n password: v.nullish(v.string()),\n port: v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(65535)),\n private_key: v.nullish(v.string()),\n private_key_passphrase: v.nullish(v.string()),\n user_name: v.string()\n});\n\n/**\n * ToolSFTPRequest\n */\nexport const vToolSftpRequestWritable = v.intersect([vSftpRequestWritable, v.object({\n tool_body_type: v.picklist(['sftp'])\n })]);\n\n/**\n * CloudStorageCustomRequest\n *\n * Custom S3-compatible cloud storage configuration — for MinIO, DigitalOcean Spaces, Backblaze B2, and other S3-compatible services. Requires a custom endpoint URL. Request\n */\nexport const vCloudStorageCustomRequestWritable = v.object({\n access_key_id: v.string(),\n base_path: v.nullish(v.string()),\n bucket: v.string(),\n endpoint: v.string(),\n region: v.string(),\n secret_access_key: v.string()\n});\n\n/**\n * DatalakeCloudStorageCustomRequest\n */\nexport const vDatalakeCloudStorageCustomRequestWritable = v.intersect([vCloudStorageCustomRequestWritable, v.object({\n cloud_storage_type: v.picklist(['custom'])\n })]);\n\n/**\n * DatalakeListResponse\n *\n * Paginated list of datalakes\n */\nexport const vDatalakeListResponseWritable = v.object({\n data: v.array(vDatalakeResponseWritable),\n meta: vPaginationMeta\n});\n\n/**\n * DatalakeCloudStorageAwsResponse\n */\nexport const vDatalakeCloudStorageAwsResponseWritable = v.intersect([vCloudStorageAwsResponse, v.object({\n cloud_storage_type: v.picklist(['aws'])\n })]);\n\n/**\n * ActionRESTCallResponse\n */\nexport const vActionRestCallResponseWritable = v.intersect([vRestCallResponseWritable, v.object({\n tool_call_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * ToolCloudWatchLogGroupResponse\n */\nexport const vToolCloudWatchLogGroupResponseWritable = v.intersect([vCloudWatchLogGroupResponseWritable, v.object({\n tool_body_type: v.picklist(['cloud_watch_log_group'])\n })]);\n\n/**\n * ActionAWSLambdaCallRequest\n */\nexport const vActionAwsLambdaCallRequestWritable = v.intersect([vAwsLambdaCallRequestWritable, v.object({\n tool_call_type: v.picklist(['aws_lambda_request'])\n })]);\n\n/**\n * GenericTableResponse\n *\n * Generic Table — custom or system dataset table with column definitions.\n */\nexport const vGenericTableResponseWritable = v.pipe(v.object({\n columns: v.nullish(v.array(v.unknown())),\n data_domain: v.nullish(v.picklist([\n 'healthcare',\n 'core_banking',\n 'payment_risk',\n 'accounts_receivable',\n 'service_commerce',\n 'trading',\n 'foundation'\n ])),\n description: v.nullish(v.string()),\n title: v.nullish(v.string())\n}), v.readonly());\n\n/**\n * GenericTableListResponse\n *\n * Paginated list of generic tables\n */\nexport const vGenericTableListResponseWritable = v.object({\n data: v.array(vGenericTableResponseWritable),\n meta: vPaginationMeta\n});\n\n/**\n * InteroperabilityContractListResponse\n *\n * Paginated list of interoperability contracts\n */\nexport const vInteroperabilityContractListResponseWritable = v.object({\n data: v.array(vInteroperabilityContractResponseWritable),\n meta: vPaginationMeta\n});\n\n/**\n * CloudflarePagesConfigRequest\n *\n * Cloudflare Pages deployment configuration for managed Connected Apps Request\n */\nexport const vCloudflarePagesConfigRequestWritable = v.object({\n account_id: v.string(),\n api_token: v.string(),\n build_command: v.nullish(v.string()),\n destination_dir: v.nullish(v.string()),\n github_auth_method: v.picklist(['github_app', 'pat']),\n github_pat: v.nullish(v.string()),\n production_branch: v.nullish(v.string())\n});\n\n/**\n * DataActivationClientSFTPCallRequest\n */\nexport const vDataActivationClientSftpCallRequestWritable = v.intersect([vSftpCallRequest, v.object({\n tool_call_type: v.picklist(['sftp_request'])\n })]);\n\n/**\n * ActionStatusUpdaterListResponse\n *\n * Paginated list of action status updaters\n */\nexport const vActionStatusUpdaterListResponseWritable = v.object({\n data: v.array(vActionStatusUpdaterResponseWritable),\n meta: vPaginationMeta\n});\n\n/**\n * ManualToolInvocationEmailCallRequest\n */\nexport const vManualToolInvocationEmailCallRequestWritable = v.intersect([vEmailCallRequestWritable, v.object({\n tool_call_type: v.picklist(['email_request'])\n })]);\n\n/**\n * ConnectedAppResponse\n *\n * External web application connected to the platform via M2M API key\n */\nexport const vConnectedAppResponseWritable = v.pipe(v.object({\n cloudflare_pages_config: v.nullish(v.object({\n account_id: v.string(),\n api_token: v.nullish(v.string()),\n build_command: v.nullish(v.string()),\n destination_dir: v.nullish(v.string()),\n github_auth_method: v.nullish(v.picklist(['github_app', 'pat'])),\n github_pat: v.nullish(v.string()),\n production_branch: v.nullish(v.string())\n })),\n description: v.nullish(v.string()),\n mode: v.picklist(['managed', 'self_hosted']),\n name: v.string(),\n repo_url: v.nullish(v.string()),\n urls: v.nullish(v.array(v.object({\n is_primary: v.nullish(v.boolean()),\n label: v.nullish(v.string()),\n url: v.string()\n })))\n}), v.readonly());\n\n/**\n * ConnectedAppListResponse\n *\n * Paginated list of connected apps\n */\nexport const vConnectedAppListResponseWritable = v.object({\n data: v.array(vConnectedAppResponseWritable),\n meta: vPaginationMeta\n});\n\n/**\n * DatalakeCloudStorageAwsRequest\n */\nexport const vDatalakeCloudStorageAwsRequestWritable = v.intersect([vCloudStorageAwsRequestWritable, v.object({\n cloud_storage_type: v.picklist(['aws'])\n })]);\n\n/**\n * DatalakeRequest\n *\n * Datalake configuration. Secrets (DB passwords, credentials) are write-only — accepted on create but never returned in responses. Request\n */\nexport const vDatalakeRequestWritable = v.object({\n unregulated_db_writer_pass: v.nullish(v.string()),\n slug: v.nullish(v.string()),\n unregulated_db_reader_auth_method: v.picklist(['password', 'iam_role']),\n unregulated_db_writer_user: v.nullish(v.string()),\n regulated_data_db_reader_host: v.string(),\n regulated_data_db_reader_name: v.string(),\n regulated_cloud_storage: v.union([\n v.intersect([v.object({\n cloud_storage_type: v.literal('aws')\n }), vDatalakeCloudStorageAwsRequestWritable]),\n v.intersect([v.object({\n cloud_storage_type: v.literal('r2')\n }), vDatalakeCloudStorageR2RequestWritable]),\n v.intersect([v.object({\n cloud_storage_type: v.literal('custom')\n }), vDatalakeCloudStorageCustomRequestWritable])\n ]),\n unregulated_cloud_storage: v.union([\n v.intersect([v.object({\n cloud_storage_type: v.literal('aws')\n }), vDatalakeCloudStorageAwsRequestWritable]),\n v.intersect([v.object({\n cloud_storage_type: v.literal('r2')\n }), vDatalakeCloudStorageR2RequestWritable]),\n v.intersect([v.object({\n cloud_storage_type: v.literal('custom')\n }), vDatalakeCloudStorageCustomRequestWritable])\n ]),\n regulated_data_db_reader_pass: v.nullish(v.string()),\n regulated_data_db_writer_user: v.nullish(v.string()),\n regulated_data_db_reader_port: v.pipe(v.number(), v.integer()),\n unregulated_db_writer_schema: v.string(),\n unregulated_db_writer_name: v.string(),\n regulated_data_db_reader_schema: v.string(),\n regulated_data_db_reader_user: v.nullish(v.string()),\n unregulated_db_writer_host: v.string(),\n regulated_data_db_writer_name: v.string(),\n unregulated_db_reader_name: v.string(),\n unregulated_db_writer_auth_method: v.picklist(['password', 'iam_role']),\n unregulated_db_reader_user: v.nullish(v.string()),\n name: v.string(),\n description: v.nullish(v.string()),\n pool_size: v.nullable(v.pipe(v.number(), v.integer())),\n unregulated_db_reader_port: v.pipe(v.number(), v.integer()),\n regulated_data_db_writer_pass: v.nullish(v.string()),\n unregulated_db_reader_host: v.string(),\n regulated_data_db_reader_enable_ssl: v.boolean(),\n unregulated_db_reader_enable_ssl: v.boolean(),\n unregulated_db_reader_pass: v.nullish(v.string()),\n regulated_data_db_writer_port: v.pipe(v.number(), v.integer()),\n unregulated_db_writer_port: v.pipe(v.number(), v.integer()),\n unregulated_db_writer_enable_ssl: v.boolean(),\n unregulated_db_reader_schema: v.string(),\n regulated_data_db_writer_enable_ssl: v.boolean(),\n regulated_data_db_writer_schema: v.string(),\n regulated_data_db_writer_auth_method: v.picklist(['password', 'iam_role']),\n regulated_data_db_writer_host: v.string(),\n regulated_data_db_reader_auth_method: v.picklist(['password', 'iam_role']),\n timezone: v.nullable(v.string()),\n data_domain: v.picklist([\n 'healthcare',\n 'core_banking',\n 'payment_risk',\n 'accounts_receivable',\n 'service_commerce',\n 'trading',\n 'foundation'\n ])\n});\n\n/**\n * AgenticWorkflowListResponse\n *\n * Paginated list of agentic workflows\n */\nexport const vAgenticWorkflowListResponseWritable = v.object({\n data: v.array(vAgenticWorkflowResponseWritable),\n meta: vPaginationMeta\n});\n\n/**\n * RoleResponse\n *\n * Lean role reference — id, name, and description\n */\nexport const vRoleResponseWritable = v.pipe(v.object({\n description: v.nullish(v.string()),\n name: v.string()\n}), v.readonly());\n\n/**\n * SessionResponse\n *\n * Authenticated session — issued at sign-in (`POST /api/v1/sessions`) or\n * derived from an `X-API-Key` header. The `session_token` field carries the\n * plaintext Bearer on creation responses and is null on verify responses.\n * `tenant`, `role`, and `user` are nullable for tenant-less / pre-tenant\n * sessions; `api_key` is populated for M2M sessions only.\n *\n */\nexport const vSessionResponseWritable = v.pipe(v.object({\n api_key: v.nullish(vApiKeyResponseWritable),\n data_access_mode: v.picklist(['regulated', 'unregulated']),\n role: v.nullish(vRoleResponseWritable),\n tenant: v.nullish(vTenantResponseWritable),\n user: v.nullish(vUserResponseWritable)\n}), v.readonly());\n\n/**\n * BatchLogListResponse\n *\n * Paginated list of batch run logs\n */\nexport const vBatchLogListResponseWritable = v.object({\n data: v.array(vBatchLogResponseWritable),\n meta: vPaginationMeta\n});\n\n/**\n * ManualToolInvocationAWSLambdaCallRequest\n */\nexport const vManualToolInvocationAwsLambdaCallRequestWritable = v.intersect([vAwsLambdaCallRequestWritable, v.object({\n tool_call_type: v.picklist(['aws_lambda_request'])\n })]);\n\n/**\n * ToolSFTPResponse\n */\nexport const vToolSftpResponseWritable = v.intersect([vSftpResponseWritable, v.object({\n tool_body_type: v.picklist(['sftp'])\n })]);\n\n/**\n * ManualToolInvocationRESTCallRequest\n */\nexport const vManualToolInvocationRestCallRequestWritable = v.intersect([vRestCallRequestWritable, v.object({\n tool_call_type: v.picklist(['restapi_request'])\n })]);\n\n/**\n * SignUpRequest\n *\n * Register a new user account. Mirrors the `/auth/register` LiveView form\n * submission shape. The created user is **unconfirmed** — caller must\n * confirm separately (e.g. via the email confirmation flow, or via\n * `PUT /api/v1/admin/users/:id/confirm` for tests) before signing in.\n *\n * No authentication is required.\n * Request\n */\nexport const vSignUpRequestWritable = v.object({\n email: v.pipe(v.string(), v.email()),\n first_name: v.nullable(v.string()),\n last_name: v.nullable(v.string()),\n password: v.pipe(v.string(), v.minLength(8), v.maxLength(72))\n});\n\n/**\n * AiAgentResponse\n *\n * AI Agent configuration — reusable chat-completion resource\n */\nexport const vAiAgentResponseWritable = v.pipe(v.object({\n data_access: v.picklist(['regulated', 'unregulated']),\n datalake: v.nullish(vDatalakeResponseWritable),\n description: v.nullish(v.string()),\n enabled: v.boolean(),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n max_tokens: v.pipe(v.number(), v.integer()),\n model: v.string(),\n name: v.string(),\n slug: v.nullish(v.string()),\n temperature: v.number(),\n tenant: v.nullish(vTenantResponseWritable),\n tool: v.nullish(vToolResponseWritable),\n tool_id: v.pipe(v.string(), v.uuid()),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp()))\n}), v.readonly());\n\n/**\n * DataActivationClientSQLQueryCallRequest\n */\nexport const vDataActivationClientSqlQueryCallRequestWritable = v.intersect([vSqlQueryCallRequestWritable, v.object({\n tool_call_type: v.picklist(['sql_query'])\n })]);\n\n/**\n * DataActivationClientRequest\n *\n * Data Activation Client — binds a (datalake, data_source, tool) triple with a polymorphic `tool_call` config describing how to fetch data from the external system, plus optional cron schedule, row-level filter, downstream triggers, and interop contracts for row-level transformation. Request\n */\nexport const vDataActivationClientRequestWritable = v.object({\n cron_expressions: v.nullish(v.array(v.string()), []),\n data_source_id: v.pipe(v.string(), v.uuid()),\n description: v.nullish(v.string()),\n downstream_connection_ids: v.nullish(v.array(v.pipe(v.string(), v.uuid())), []),\n filter_config: v.nullish(vTemplateConfigRequestWritable),\n interoperability_contract_ids: v.nullish(v.array(v.pipe(v.string(), v.uuid())), []),\n loop_over: v.nullish(v.array(v.picklist([\n 'services',\n 'locations',\n 'providers'\n ])), []),\n name: v.string(),\n row_filter: v.nullish(v.string()),\n tool_call: v.union([\n v.intersect([v.object({\n tool_call_type: v.literal('restapi_request')\n }), vDataActivationClientRestCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('sql_query')\n }), vDataActivationClientSqlQueryCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('sftp_request')\n }), vDataActivationClientSftpCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('microsoft_share_point_excel_request')\n }), vDataActivationClientSharePointExcelCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('aws_lambda_request')\n }), vDataActivationClientAwsLambdaCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('manual_upload')\n }), vDataActivationClientManualUploadCallRequest]),\n v.intersect([v.object({\n tool_call_type: v.literal('s3_request')\n }), vDataActivationClientS3CallRequestWritable])\n ]),\n tool_id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * RunManuallyRequest\n *\n * Optional polymorphic tool_call override for this run. When omitted or empty, the DAC's persisted tool_call is used.\n */\nexport const vRunManuallyRequestWritable = v.object({\n tool_call: v.nullish(v.union([\n v.intersect([v.object({\n tool_call_type: v.literal('DataActivationClientRESTCallRequestWritable')\n }), vDataActivationClientRestCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('DataActivationClientSQLQueryCallRequestWritable')\n }), vDataActivationClientSqlQueryCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('DataActivationClientSFTPCallRequestWritable')\n }), vDataActivationClientSftpCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('DataActivationClientSharePointExcelCallRequestWritable')\n }), vDataActivationClientSharePointExcelCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('DataActivationClientAWSLambdaCallRequestWritable')\n }), vDataActivationClientAwsLambdaCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('DataActivationClientManualUploadCallRequest')\n }), vDataActivationClientManualUploadCallRequest]),\n v.intersect([v.object({\n tool_call_type: v.literal('DataActivationClientS3CallRequestWritable')\n }), vDataActivationClientS3CallRequestWritable])\n ]))\n});\n\n/**\n * ToolSNSRequest\n */\nexport const vToolSnsRequestWritable = v.intersect([vSnsRequestWritable, v.object({\n tool_body_type: v.picklist(['sns'])\n })]);\n\n/**\n * InvitationListResponse\n *\n * Paginated list of invitations\n */\nexport const vInvitationListResponseWritable = v.object({\n data: v.array(vInvitationResponseWritable),\n meta: vPaginationMeta\n});\n\n/**\n * ActionStatusUpdaterRequest\n *\n * Action Status Updater — automated polling for delivery status updates. Request\n */\nexport const vActionStatusUpdaterRequestWritable = v.object({\n cron_expression: v.nullish(v.string()),\n datalake_id: v.nullish(v.pipe(v.string(), v.uuid())),\n name: v.nullish(v.string()),\n sender_tool_ids: v.nullish(v.array(v.pipe(v.string(), v.uuid()))),\n updater_body: v.nullish(v.union([v.intersect([v.object({\n updater_body_type: v.literal('cloud_watch_request')\n }), vActionStatusUpdaterCloudWatchQueryRequestWritable]), v.intersect([v.object({\n updater_body_type: v.literal('restapi_request')\n }), vActionStatusUpdaterRestCallRequestWritable])])),\n updater_tool_id: v.nullish(v.pipe(v.string(), v.uuid())),\n updater_type: v.nullish(v.picklist(['cloud_watch', 'restapi']))\n});\n\n/**\n * DataActivationClientLogListResponse\n *\n * Paginated list of data activation client logs\n */\nexport const vDataActivationClientLogListResponseWritable = v.object({\n data: v.array(vDataActivationClientLogResponseWritable),\n meta: vPaginationMeta\n});\n\n/**\n * AiAgentListResponse\n *\n * Paginated list of AI agents\n */\nexport const vAiAgentListResponseWritable = v.object({\n data: v.array(vAiAgentResponseWritable),\n meta: vPaginationMeta\n});\n\n/**\n * ConnectedAppRequest\n *\n * External web application connected to the platform via M2M API key Request\n */\nexport const vConnectedAppRequestWritable = v.object({\n cloudflare_pages_config: v.nullish(v.object({\n account_id: v.string(),\n api_token: v.nullish(v.string()),\n build_command: v.nullish(v.string()),\n destination_dir: v.nullish(v.string()),\n github_auth_method: v.nullish(v.picklist(['github_app', 'pat'])),\n github_pat: v.nullish(v.string()),\n production_branch: v.nullish(v.string())\n })),\n description: v.nullish(v.string()),\n mode: v.picklist(['managed', 'self_hosted']),\n name: v.string(),\n repo_url: v.nullish(v.string()),\n urls: v.nullish(v.array(v.object({\n is_primary: v.nullish(v.boolean()),\n label: v.nullish(v.string()),\n url: v.string()\n })))\n});\n\n/**\n * S3Request\n *\n * S3-compatible storage tool configuration with a nested polymorphic provider config (AWS or R2). Request\n */\nexport const vS3RequestWritable = v.object({\n config: v.union([v.intersect([v.object({\n storage_config_type: v.literal('aws')\n }), vS3CloudStorageAwsRequestWritable]), v.intersect([v.object({\n storage_config_type: v.literal('r2')\n }), vS3CloudStorageR2RequestWritable])])\n});\n\n/**\n * ToolS3Request\n */\nexport const vToolS3RequestWritable = v.intersect([vS3RequestWritable, v.object({\n tool_body_type: v.picklist(['s3'])\n })]);\n\n/**\n * DataSourceResponse\n *\n * Data source — connection to a third-party system or API\n */\nexport const vDataSourceResponseWritable = v.pipe(v.object({\n datalake: v.nullish(vDatalakeResponseWritable),\n description: v.nullish(v.string()),\n id: v.nullish(v.pipe(v.string(), v.uuid())),\n image_url: v.nullish(v.string()),\n inserted_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n is_default: v.boolean(),\n name: v.string(),\n status: v.picklist([\n 'draft',\n 'active',\n 'inactive'\n ]),\n updated_at: v.nullish(v.pipe(v.string(), v.isoTimestamp())),\n uri: v.string()\n}), v.readonly());\n\n/**\n * DataSourceListResponse\n *\n * Paginated list of data sources\n */\nexport const vDataSourceListResponseWritable = v.object({\n data: v.array(vDataSourceResponseWritable),\n meta: vPaginationMeta\n});\n\n/**\n * SQLDatabaseRequest\n *\n * SQL database connection configuration (PostgreSQL, MySQL, MSSQL, SQLite, Snowflake). Request\n */\nexport const vSqlDatabaseRequestWritable = v.object({\n db_host: v.string(),\n db_name: v.string(),\n db_type: v.picklist([\n 'postgres',\n 'mysql',\n 'mssql',\n 'sqlite',\n 'snowflake'\n ]),\n password: v.string(),\n pool_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(99))),\n port: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(65535))),\n ssl: v.nullish(v.boolean()),\n ssl_mode: v.nullish(v.string()),\n user_name: v.string()\n});\n\n/**\n * ToolSQLDatabaseRequest\n */\nexport const vToolSqlDatabaseRequestWritable = v.intersect([vSqlDatabaseRequestWritable, v.object({\n tool_body_type: v.picklist(['sql_database'])\n })]);\n\n/**\n * ToolRequest\n *\n * Tool — a configurable capability reference for external services. Request\n */\nexport const vToolRequestWritable = v.object({\n body: v.nullish(v.union([\n v.intersect([v.object({\n tool_body_type: v.literal('email')\n }), vToolEmailRequestWritable]),\n v.intersect([v.object({\n tool_body_type: v.literal('sns')\n }), vToolSnsRequestWritable]),\n v.intersect([v.object({\n tool_body_type: v.literal('rest_api')\n }), vToolRestapiRequestWritable]),\n v.intersect([v.object({\n tool_body_type: v.literal('s3')\n }), vToolS3RequestWritable]),\n v.intersect([v.object({\n tool_body_type: v.literal('aws_lambda')\n }), vToolAwsLambdaRequestWritable]),\n v.intersect([v.object({\n tool_body_type: v.literal('sql_database')\n }), vToolSqlDatabaseRequestWritable]),\n v.intersect([v.object({\n tool_body_type: v.literal('sqs')\n }), vToolSqsRequestWritable]),\n v.intersect([v.object({\n tool_body_type: v.literal('sftp')\n }), vToolSftpRequestWritable]),\n v.intersect([v.object({\n tool_body_type: v.literal('sharepoint')\n }), vToolSharePointRequestWritable]),\n v.intersect([v.object({\n tool_body_type: v.literal('cloud_watch_log_group')\n }), vToolCloudWatchLogGroupRequestWritable]),\n v.intersect([v.object({\n tool_body_type: v.literal('manual_upload')\n }), vToolManualUploadRequest])\n ])),\n data_source_id: v.nullish(v.pipe(v.string(), v.uuid())),\n datalake_id: v.nullish(v.pipe(v.string(), v.uuid())),\n description: v.nullish(v.string()),\n intent: v.nullish(v.picklist([\n 'sms',\n 'email',\n 'export',\n 'voice',\n 'data_exchange',\n 'status_poller',\n 'chat_completion',\n 'context_extraction'\n ])),\n name: v.nullish(v.string()),\n status: v.nullish(v.picklist([\n 'draft',\n 'active',\n 'inactive',\n 'error',\n 'marked_for_deletion'\n ]))\n});\n\n/**\n * SMSCallRequest\n *\n * SMS tool-call config — Liquid-templated recipient and body plus transactional/promotional category. Request\n */\nexport const vSmsCallRequestWritable = v.object({\n body: vTemplateConfigRequestWritable,\n sms_type: v.nullish(v.picklist(['transactional', 'promotional']), 'transactional'),\n to: vTemplateConfigRequestWritable\n});\n\n/**\n * ActionSMSCallRequest\n */\nexport const vActionSmsCallRequestWritable = v.intersect([vSmsCallRequestWritable, v.object({\n tool_call_type: v.picklist(['sms_request'])\n })]);\n\n/**\n * ActionRequest\n *\n * Workflow action — executes when the decision table routes to this `decision_key`. Polymorphic `tool_call` payload is variant-specific via `tool_call_type` discriminator. Request\n */\nexport const vActionRequestWritable = v.object({\n action_type: v.picklist([\n 'sms',\n 'email',\n 'voice',\n 'data_exchange'\n ]),\n action_window_end: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(0), v.maxValue(23))),\n action_window_start: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(0), v.maxValue(23))),\n connected_app_id: v.nullish(v.pipe(v.string(), v.uuid())),\n connected_app_metadata_template: v.nullish(v.string()),\n connected_app_route: v.nullish(v.string()),\n decision_key: v.string(),\n idempotency_template: v.string(),\n position: v.nullish(v.pipe(v.number(), v.integer()), 0),\n runtime_filter: v.nullish(v.string()),\n tool_call: v.union([\n v.intersect([v.object({\n tool_call_type: v.literal('sms_request')\n }), vActionSmsCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('email_request')\n }), vActionEmailCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('sql_query')\n }), vActionSqlQueryCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('restapi_request')\n }), vActionRestCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('sftp_request')\n }), vActionSftpCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('microsoft_share_point_excel_request')\n }), vActionSharePointExcelCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('aws_lambda_request')\n }), vActionAwsLambdaCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('manual_upload')\n }), vActionManualUploadCallRequest])\n ]),\n tool_id: v.pipe(v.string(), v.uuid()),\n trigger_template: v.string()\n});\n\n/**\n * ManualToolInvocationSMSCallRequest\n */\nexport const vManualToolInvocationSmsCallRequestWritable = v.intersect([vSmsCallRequestWritable, v.object({\n tool_call_type: v.picklist(['sms_request'])\n })]);\n\n/**\n * ManualToolInvocationRequest\n *\n * A manual test invocation of a tool. The request body carries only `tool_call` (polymorphic on `__type__`); all other fields are server-populated and returned in the response. Request\n */\nexport const vManualToolInvocationRequestWritable = v.object({\n tool_call: v.nullish(v.union([\n v.intersect([v.object({\n tool_call_type: v.literal('sms_request')\n }), vManualToolInvocationSmsCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('email_request')\n }), vManualToolInvocationEmailCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('restapi_request')\n }), vManualToolInvocationRestCallRequestWritable]),\n v.intersect([v.object({\n tool_call_type: v.literal('aws_lambda_request')\n }), vManualToolInvocationAwsLambdaCallRequestWritable])\n ]))\n});\n\n/**\n * ToolRESTAPIResponse\n */\nexport const vToolRestapiResponseWritable = v.intersect([vRestapiResponseWritable, v.object({\n tool_body_type: v.picklist(['rest_api'])\n })]);\n\nexport const vPlatformApiToolControllerIndexPath = v.object({\n tenant_slug: v.string()\n});\n\nexport const vPlatformApiToolControllerIndexQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Tool list\n */\nexport const vPlatformApiToolControllerIndexResponse = vToolListResponse;\n\n/**\n * Full Tool resource (PUT semantics — all fields required)\n */\nexport const vPlatformApiToolControllerCreateBody = vToolRequestWritable;\n\nexport const vPlatformApiToolControllerCreatePath = v.object({\n tenant_slug: v.string()\n});\n\n/**\n * Tool created\n */\nexport const vPlatformApiToolControllerCreateResponse = vToolResponse;\n\nexport const vPlatformApiDataActivationClientControllerDeletePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n slug: v.string()\n});\n\n/**\n * No Content\n */\nexport const vPlatformApiDataActivationClientControllerDeleteResponse = v.void();\n\nexport const vPlatformApiDataActivationClientControllerShowPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n slug: v.string()\n});\n\n/**\n * DAC\n */\nexport const vPlatformApiDataActivationClientControllerShowResponse = vDataActivationClientResponse;\n\n/**\n * Full DAC resource (all required fields must be present)\n */\nexport const vPlatformApiDataActivationClientControllerUpdateBody = vDataActivationClientRequestWritable;\n\nexport const vPlatformApiDataActivationClientControllerUpdatePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n slug: v.string()\n});\n\n/**\n * DAC updated\n */\nexport const vPlatformApiDataActivationClientControllerUpdateResponse = vDataActivationClientResponse;\n\nexport const vPlatformApiDatalakeControllerMigratePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\n/**\n * Migration job enqueued\n */\nexport const vPlatformApiDatalakeControllerMigrateResponse = vDatalakeMigrateResponse;\n\n/**\n * Session details\n */\nexport const vPlatformApiSessionControllerVerifyResponse = vSessionResponse;\n\nexport const vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogDownloadPath = v.object({\n tenant_slug: v.string(),\n workflow_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Presigned download URL\n */\nexport const vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogDownloadResponse = v.object({\n url: v.nullish(v.pipe(v.string(), v.url()))\n});\n\n/**\n * Download link request\n */\nexport const vPlatformApiDatalakeControllerCreateDownloadLinkBody = vDownloadLinkRequest;\n\nexport const vPlatformApiDatalakeControllerCreateDownloadLinkPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\n/**\n * Presigned download URL\n */\nexport const vPlatformApiDatalakeControllerCreateDownloadLinkResponse = vDownloadUrlResponse;\n\nexport const vPlatformApiDatalakeControllerShowPath = v.object({\n tenant_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\nexport const vPlatformApiDatalakeControllerShowQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Datalake\n */\nexport const vPlatformApiDatalakeControllerShowResponse = vDatalakeResponse;\n\n/**\n * Full Datalake resource (PUT semantics — all fields required)\n */\nexport const vPlatformApiDatalakeControllerUpdateBody = vDatalakeRequestWritable;\n\nexport const vPlatformApiDatalakeControllerUpdatePath = v.object({\n tenant_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Datalake updated\n */\nexport const vPlatformApiDatalakeControllerUpdateResponse = vDatalakeResponse;\n\n/**\n * Test invocation payload — `tool_call` polymorphic on `__type__`.\n */\nexport const vPlatformApiToolControllerTestInvocationBody = vManualToolInvocationRequestWritable;\n\nexport const vPlatformApiToolControllerTestInvocationPath = v.object({\n tenant_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Invocation recorded — inspect `status` for outcome\n */\nexport const vPlatformApiToolControllerTestInvocationResponse = vManualToolInvocationResponse;\n\nexport const vPlatformApiDatasetControllerDatasetMetadataPath = v.object({\n dataset_type: v.string()\n});\n\nexport const vPlatformApiDatasetControllerDatasetMetadataQuery = v.object({\n datalake_id: v.nullish(v.pipe(v.string(), v.uuid())),\n generic_table_id: v.nullish(v.pipe(v.string(), v.uuid()))\n});\n\n/**\n * Markdown document with field definitions\n */\nexport const vPlatformApiDatasetControllerDatasetMetadataResponse = v.string();\n\nexport const vPlatformApiTenantControllerIndexQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Tenant list\n */\nexport const vPlatformApiTenantControllerIndexResponse = vTenantListResponse;\n\n/**\n * Tenant attributes\n */\nexport const vPlatformApiTenantControllerCreateBody = vTenantRequest;\n\n/**\n * Tenant created with tenant-scoped session token\n */\nexport const vPlatformApiTenantControllerCreateResponse = vSessionResponse;\n\nexport const vPlatformApiGenericTableControllerIndexPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\nexport const vPlatformApiGenericTableControllerIndexQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Generic table list\n */\nexport const vPlatformApiGenericTableControllerIndexResponse = vGenericTableListResponse;\n\n/**\n * Full Generic Table resource (PUT semantics — all fields required)\n */\nexport const vPlatformApiGenericTableControllerCreateBody = vGenericTableRequestWritable;\n\nexport const vPlatformApiGenericTableControllerCreatePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\n/**\n * Generic table created\n */\nexport const vPlatformApiGenericTableControllerCreateResponse = vGenericTableResponse;\n\n/**\n * Pending invitations\n */\nexport const vPlatformApiInvitationControllerIndexResponse = vInvitationListResponse;\n\nexport const vPlatformApiInteroperabilityContractControllerIndexPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\nexport const vPlatformApiInteroperabilityContractControllerIndexQuery = v.object({\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Contract list\n */\nexport const vPlatformApiInteroperabilityContractControllerIndexResponse = vInteroperabilityContractListResponse;\n\n/**\n * Full contract resource (PUT semantics on update — all required fields must be present)\n */\nexport const vPlatformApiInteroperabilityContractControllerCreateBody = vInteroperabilityContractRequestWritable;\n\nexport const vPlatformApiInteroperabilityContractControllerCreatePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\nexport const vPlatformApiInteroperabilityContractControllerCreateQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Contract created\n */\nexport const vPlatformApiInteroperabilityContractControllerCreateResponse = vInteroperabilityContractResponse;\n\nexport const vPlatformApiInteroperabilityContractControllerMetadataPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n slug: v.string()\n});\n\nexport const vPlatformApiInteroperabilityContractControllerMetadataQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Markdown with resource field documentation\n */\nexport const vPlatformApiInteroperabilityContractControllerMetadataResponse = v.string();\n\nexport const vPlatformApiAgenticWorkflowOperationsControllerBatchLogShowPath = v.object({\n tenant_slug: v.string(),\n workflow_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Batch log\n */\nexport const vPlatformApiAgenticWorkflowOperationsControllerBatchLogShowResponse = vBatchLogResponse;\n\nexport const vPlatformApiInvitationControllerAcceptPath = v.object({\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Membership created\n */\nexport const vPlatformApiInvitationControllerAcceptResponse = vMembershipResponse;\n\n/**\n * Execute payload\n */\nexport const vPlatformApiAgenticWorkflowOperationsControllerExecuteBody = vExecuteActionRequest;\n\nexport const vPlatformApiAgenticWorkflowOperationsControllerExecutePath = v.object({\n tenant_slug: v.string(),\n workflow_slug: v.string()\n});\n\n/**\n * Execution result\n */\nexport const vPlatformApiAgenticWorkflowOperationsControllerExecuteResponse = vExecuteActionResponse;\n\n/**\n * Upload link request\n */\nexport const vPlatformApiDatalakeControllerCreateUploadLinkBody = vUploadLinkRequest;\n\nexport const vPlatformApiDatalakeControllerCreateUploadLinkPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\nexport const vPlatformApiDatalakeControllerCreateUploadLinkQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Presigned upload link\n */\nexport const vPlatformApiDatalakeControllerCreateUploadLinkResponse = vUploadLinkResponse;\n\nexport const vPlatformApiDatalakeControllerIndexPath = v.object({\n tenant_slug: v.string()\n});\n\nexport const vPlatformApiDatalakeControllerIndexQuery = v.object({\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Datalake list\n */\nexport const vPlatformApiDatalakeControllerIndexResponse = vDatalakeListResponse;\n\n/**\n * Full Datalake resource (POST semantics — all fields required)\n */\nexport const vPlatformApiDatalakeControllerCreateBody = vDatalakeRequestWritable;\n\nexport const vPlatformApiDatalakeControllerCreatePath = v.object({\n tenant_slug: v.string()\n});\n\nexport const vPlatformApiDatalakeControllerCreateQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Datalake created\n */\nexport const vPlatformApiDatalakeControllerCreateResponse = vDatalakeResponse;\n\nexport const vPlatformApiDataActivationClientControllerLogShowPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * DAC log\n */\nexport const vPlatformApiDataActivationClientControllerLogShowResponse = vDataActivationClientLogResponse;\n\n/**\n * Full Data Source resource (PUT semantics — all fields required)\n */\nexport const vPlatformApiDataSourceControllerUpdateBody = vDataSourceRequest;\n\nexport const vPlatformApiDataSourceControllerUpdatePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\nexport const vPlatformApiDataSourceControllerUpdateQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Data source updated\n */\nexport const vPlatformApiDataSourceControllerUpdateResponse = vDataSourceResponse;\n\nexport const vPlatformApiAgenticWorkflowControllerDeletePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * No Content\n */\nexport const vPlatformApiAgenticWorkflowControllerDeleteResponse = v.void();\n\nexport const vPlatformApiAgenticWorkflowControllerShowPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Workflow\n */\nexport const vPlatformApiAgenticWorkflowControllerShowResponse = vAgenticWorkflowResponse;\n\n/**\n * Full workflow resource (PUT semantics — all required fields must be present)\n */\nexport const vPlatformApiAgenticWorkflowControllerUpdateBody = vAgenticWorkflowRequestWritable;\n\nexport const vPlatformApiAgenticWorkflowControllerUpdatePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Workflow updated\n */\nexport const vPlatformApiAgenticWorkflowControllerUpdateResponse = vAgenticWorkflowResponse;\n\n/**\n * Run workflow payload\n */\nexport const vPlatformApiAgenticWorkflowOperationsControllerRunWorkflowBody = vRunWorkflowRequest;\n\nexport const vPlatformApiAgenticWorkflowOperationsControllerRunWorkflowPath = v.object({\n tenant_slug: v.string(),\n workflow_slug: v.string()\n});\n\n/**\n * Run workflow result\n */\nexport const vPlatformApiAgenticWorkflowOperationsControllerRunWorkflowResponse = vRunWorkflowResponse;\n\nexport const vPlatformApiAgenticWorkflowOperationsControllerBatchLogRefreshPath = v.object({\n tenant_slug: v.string(),\n workflow_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Refreshed batch log\n */\nexport const vPlatformApiAgenticWorkflowOperationsControllerBatchLogRefreshResponse = vBatchLogResponse;\n\nexport const vPlatformApiDatalakeControllerRegisteredDatasetsPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\n/**\n * Registered datasets\n */\nexport const vPlatformApiDatalakeControllerRegisteredDatasetsResponse = v.object({\n datasets: v.array(v.string())\n});\n\n/**\n * JSON payload\n */\nexport const vPlatformApiDataActivationClientControllerIngestBody = vIngestRequest;\n\nexport const vPlatformApiDataActivationClientControllerIngestPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n slug: v.string()\n});\n\n/**\n * Ingest response\n */\nexport const vPlatformApiDataActivationClientControllerIngestResponse = vIngestResponse;\n\n/**\n * Full Action Status Updater resource (PUT semantics — all fields required)\n */\nexport const vPlatformApiActionStatusUpdaterControllerUpdateBody = vActionStatusUpdaterRequestWritable;\n\nexport const vPlatformApiActionStatusUpdaterControllerUpdatePath = v.object({\n tenant_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\nexport const vPlatformApiActionStatusUpdaterControllerUpdateQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Action status updater updated\n */\nexport const vPlatformApiActionStatusUpdaterControllerUpdateResponse = vActionStatusUpdaterResponse;\n\nexport const vPlatformApiAiAgentControllerIndexPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\nexport const vPlatformApiAiAgentControllerIndexQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * AI agent list\n */\nexport const vPlatformApiAiAgentControllerIndexResponse = vAiAgentListResponse;\n\n/**\n * Full AI Agent resource (PUT semantics — all fields required)\n */\nexport const vPlatformApiAiAgentControllerCreateBody = vAiAgentRequestWritable;\n\nexport const vPlatformApiAiAgentControllerCreatePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\n/**\n * AI agent created\n */\nexport const vPlatformApiAiAgentControllerCreateResponse = vAiAgentResponse;\n\nexport const vPlatformApiDatalakeControllerMetadataPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\nexport const vPlatformApiDatalakeControllerMetadataQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Markdown document with domain metadata\n */\nexport const vPlatformApiDatalakeControllerMetadataResponse = v.string();\n\nexport const vPlatformApiInteroperabilityContractControllerDeletePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n slug: v.string()\n});\n\nexport const vPlatformApiInteroperabilityContractControllerDeleteQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * No Content\n */\nexport const vPlatformApiInteroperabilityContractControllerDeleteResponse = v.void();\n\nexport const vPlatformApiInteroperabilityContractControllerShowPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n slug: v.string()\n});\n\nexport const vPlatformApiInteroperabilityContractControllerShowQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Contract\n */\nexport const vPlatformApiInteroperabilityContractControllerShowResponse = vInteroperabilityContractResponse;\n\n/**\n * Full contract resource (all required fields must be present)\n */\nexport const vPlatformApiInteroperabilityContractControllerUpdateBody = vInteroperabilityContractRequestWritable;\n\nexport const vPlatformApiInteroperabilityContractControllerUpdatePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n slug: v.string()\n});\n\nexport const vPlatformApiInteroperabilityContractControllerUpdateQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Contract updated\n */\nexport const vPlatformApiInteroperabilityContractControllerUpdateResponse = vInteroperabilityContractResponse;\n\nexport const vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogShowPath = v.object({\n tenant_slug: v.string(),\n workflow_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\nexport const vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogShowQuery = v.object({\n data_access_mode: v.nullish(v.picklist(['regulated', 'unregulated']))\n});\n\n/**\n * Execution log\n */\nexport const vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogShowResponse = vWorkflowLogResponse;\n\n/**\n * Ingest file request\n */\nexport const vPlatformApiDataActivationClientControllerIngestFileBody = vIngestFileRequest;\n\nexport const vPlatformApiDataActivationClientControllerIngestFilePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n slug: v.string()\n});\n\n/**\n * Ingest file response\n */\nexport const vPlatformApiDataActivationClientControllerIngestFileResponse = vIngestFileResponse;\n\nexport const vPlatformApiDataSourceControllerIndexPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\nexport const vPlatformApiDataSourceControllerIndexQuery = v.object({\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Data source list\n */\nexport const vPlatformApiDataSourceControllerIndexResponse = vDataSourceListResponse;\n\n/**\n * Full Data Source resource (PUT semantics — all fields required)\n */\nexport const vPlatformApiDataSourceControllerCreateBody = vDataSourceRequest;\n\nexport const vPlatformApiDataSourceControllerCreatePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\nexport const vPlatformApiDataSourceControllerCreateQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Data source created\n */\nexport const vPlatformApiDataSourceControllerCreateResponse = vDataSourceResponse;\n\n/**\n * Optional tool_call override\n */\nexport const vPlatformApiDataActivationClientControllerRunManuallyBody = vRunManuallyRequestWritable;\n\nexport const vPlatformApiDataActivationClientControllerRunManuallyPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n slug: v.string()\n});\n\n/**\n * Run enqueued\n */\nexport const vPlatformApiDataActivationClientControllerRunManuallyResponse = vRunManuallyResponse;\n\nexport const vPlatformApiAiAgentControllerDeletePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * No Content\n */\nexport const vPlatformApiAiAgentControllerDeleteResponse = v.void();\n\nexport const vPlatformApiAiAgentControllerShowPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * AI agent\n */\nexport const vPlatformApiAiAgentControllerShowResponse = vAiAgentResponse;\n\n/**\n * Full AI Agent resource (PUT semantics — all fields required)\n */\nexport const vPlatformApiAiAgentControllerUpdateBody = vAiAgentRequestWritable;\n\nexport const vPlatformApiAiAgentControllerUpdatePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * AI agent updated\n */\nexport const vPlatformApiAiAgentControllerUpdateResponse = vAiAgentResponse;\n\nexport const vPlatformApiAdminControllerConfirmUserPath = v.object({\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * User confirmed (or already confirmed)\n */\nexport const vPlatformApiAdminControllerConfirmUserResponse = vUserResponse;\n\nexport const vPlatformApiConnectedAppMgmtControllerIndexPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\nexport const vPlatformApiConnectedAppMgmtControllerIndexQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Connected app list\n */\nexport const vPlatformApiConnectedAppMgmtControllerIndexResponse = vConnectedAppListResponse;\n\n/**\n * Full Connected App resource (PUT semantics — all fields required)\n */\nexport const vPlatformApiConnectedAppMgmtControllerCreateBody = vConnectedAppRequestWritable;\n\nexport const vPlatformApiConnectedAppMgmtControllerCreatePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\n/**\n * Connected app created\n */\nexport const vPlatformApiConnectedAppMgmtControllerCreateResponse = vConnectedAppResponse;\n\n/**\n * User credentials\n */\nexport const vPlatformApiSessionControllerCreateBody = vSignInRequest;\n\n/**\n * Session created\n */\nexport const vPlatformApiSessionControllerCreateResponse = vSessionResponse;\n\nexport const vPlatformApiAgenticWorkflowOperationsControllerBatchLogStartPath = v.object({\n tenant_slug: v.string(),\n workflow_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Batch log with polling started\n */\nexport const vPlatformApiAgenticWorkflowOperationsControllerBatchLogStartResponse = vBatchLogResponse;\n\n/**\n * Page update request\n */\nexport const vPlatformApiConnectedAppControllerUpdateMessageTrackingBody = vUpdatePageRequest;\n\nexport const vPlatformApiConnectedAppControllerUpdateMessageTrackingPath = v.object({\n tenant_slug: v.string(),\n slug: v.string()\n});\n\n/**\n * Updated message details\n */\nexport const vPlatformApiConnectedAppControllerUpdateMessageTrackingResponse = vUpdatePageResponse;\n\nexport const vPlatformApiAgenticWorkflowControllerIndexPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\nexport const vPlatformApiAgenticWorkflowControllerIndexQuery = v.object({\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Workflow list\n */\nexport const vPlatformApiAgenticWorkflowControllerIndexResponse = vAgenticWorkflowListResponse;\n\n/**\n * Full workflow resource (PUT semantics — all required fields must be present)\n */\nexport const vPlatformApiAgenticWorkflowControllerCreateBody = vAgenticWorkflowRequestWritable;\n\nexport const vPlatformApiAgenticWorkflowControllerCreatePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\n/**\n * Workflow created\n */\nexport const vPlatformApiAgenticWorkflowControllerCreateResponse = vAgenticWorkflowResponse;\n\nexport const vPlatformApiDataActivationClientControllerMetadataPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n slug: v.string()\n});\n\n/**\n * Markdown with connected dataset field documentation\n */\nexport const vPlatformApiDataActivationClientControllerMetadataResponse = v.string();\n\nexport const vPlatformApiAgenticWorkflowOperationsControllerBatchLogStopPath = v.object({\n tenant_slug: v.string(),\n workflow_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Batch log with polling stopped\n */\nexport const vPlatformApiAgenticWorkflowOperationsControllerBatchLogStopResponse = vBatchLogResponse;\n\nexport const vPlatformApiDataActivationClientControllerLogsIndexPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n slug: v.string()\n});\n\nexport const vPlatformApiDataActivationClientControllerLogsIndexQuery = v.object({\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * DAC log list\n */\nexport const vPlatformApiDataActivationClientControllerLogsIndexResponse = vDataActivationClientLogListResponse;\n\nexport const vPlatformApiToolControllerDeletePath = v.object({\n tenant_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * No Content\n */\nexport const vPlatformApiToolControllerDeleteResponse = v.void();\n\nexport const vPlatformApiToolControllerShowPath = v.object({\n tenant_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Tool\n */\nexport const vPlatformApiToolControllerShowResponse = vToolResponse;\n\n/**\n * Full Tool resource (PUT semantics — all fields required)\n */\nexport const vPlatformApiToolControllerUpdateBody = vToolRequestWritable;\n\nexport const vPlatformApiToolControllerUpdatePath = v.object({\n tenant_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Tool updated\n */\nexport const vPlatformApiToolControllerUpdateResponse = vToolResponse;\n\nexport const vPlatformApiAgenticWorkflowControllerMetadataPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Markdown document with variable pipeline\n */\nexport const vPlatformApiAgenticWorkflowControllerMetadataResponse = v.string();\n\n/**\n * API is healthy\n */\nexport const vPlatformApiPingControllerPingResponse = vPingResponse;\n\nexport const vPlatformApiConnectedAppMgmtControllerSyncRoutesPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Route sync enqueued\n */\nexport const vPlatformApiConnectedAppMgmtControllerSyncRoutesResponse = vSyncRoutesResponse;\n\nexport const vPlatformApiDataActivationClientControllerIndexPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\nexport const vPlatformApiDataActivationClientControllerIndexQuery = v.object({\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * DAC list\n */\nexport const vPlatformApiDataActivationClientControllerIndexResponse = vDataActivationClientListResponse;\n\n/**\n * Full DAC resource (all required fields must be present)\n */\nexport const vPlatformApiDataActivationClientControllerCreateBody = vDataActivationClientRequestWritable;\n\nexport const vPlatformApiDataActivationClientControllerCreatePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\n/**\n * DAC created\n */\nexport const vPlatformApiDataActivationClientControllerCreateResponse = vDataActivationClientResponse;\n\n/**\n * User registration\n */\nexport const vPlatformApiAuthControllerSignUpBody = vSignUpRequestWritable;\n\n/**\n * User registered (unconfirmed)\n */\nexport const vPlatformApiAuthControllerSignUpResponse = vUserResponse;\n\n/**\n * Verification attributes\n */\nexport const vPlatformApiMdmControllerVerifyBody = vMdmVerifyRequest;\n\nexport const vPlatformApiMdmControllerVerifyPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string()\n});\n\n/**\n * Verification result\n */\nexport const vPlatformApiMdmControllerVerifyResponse = vMdmVerifyResponse;\n\nexport const vPlatformApiConnectedAppMgmtControllerShowPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Connected app\n */\nexport const vPlatformApiConnectedAppMgmtControllerShowResponse = vConnectedAppResponse;\n\n/**\n * Full Connected App resource (PUT semantics — all fields required)\n */\nexport const vPlatformApiConnectedAppMgmtControllerUpdateBody = vConnectedAppRequestWritable;\n\nexport const vPlatformApiConnectedAppMgmtControllerUpdatePath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n id: v.pipe(v.string(), v.uuid())\n});\n\n/**\n * Connected app updated\n */\nexport const vPlatformApiConnectedAppMgmtControllerUpdateResponse = vConnectedAppResponse;\n\n/**\n * Invitation attributes\n */\nexport const vPlatformApiInvitationControllerCreateBody = vInvitationRequest;\n\nexport const vPlatformApiInvitationControllerCreatePath = v.object({\n tenant_slug: v.string()\n});\n\n/**\n * Invitation created\n */\nexport const vPlatformApiInvitationControllerCreateResponse = vInvitationResponse;\n\nexport const vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogsIndexPath = v.object({\n tenant_slug: v.string(),\n workflow_slug: v.string()\n});\n\nexport const vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogsIndexQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Execution log list\n */\nexport const vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogsIndexResponse = vWorkflowLogListResponse;\n\nexport const vPlatformApiDatasetControllerSearchPath = v.object({\n dataset: v.string()\n});\n\nexport const vPlatformApiDatasetControllerSearchQuery = v.object({\n user_search_id: v.nullish(v.pipe(v.string(), v.uuid())),\n datalake_id: v.nullish(v.pipe(v.string(), v.uuid())),\n data_access_mode: v.nullish(v.picklist(['regulated', 'unregulated'])),\n outer_pagination: v.nullish(vOuterPagination),\n inner_search: v.nullish(vInnerSearch)\n});\n\n/**\n * Dataset search results\n */\nexport const vPlatformApiDatasetControllerSearchResponse = vDatasetSearchResponse;\n\n/**\n * UserSearch request body\n */\nexport const vPlatformApiDatasetControllerCreateUserSearchBody = vUserSearchRequest;\n\nexport const vPlatformApiDatasetControllerCreateUserSearchPath = v.object({\n dataset: v.string()\n});\n\nexport const vPlatformApiDatasetControllerCreateUserSearchQuery = v.object({\n datalake_id: v.nullish(v.pipe(v.string(), v.uuid()))\n});\n\n/**\n * UserSearch created\n */\nexport const vPlatformApiDatasetControllerCreateUserSearchResponse = vUserSearchResponse;\n\nexport const vPlatformApiAgenticWorkflowOperationsControllerBatchLogsIndexPath = v.object({\n tenant_slug: v.string(),\n workflow_slug: v.string()\n});\n\nexport const vPlatformApiAgenticWorkflowOperationsControllerBatchLogsIndexQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Batch log list\n */\nexport const vPlatformApiAgenticWorkflowOperationsControllerBatchLogsIndexResponse = vBatchLogListResponse;\n\nexport const vPlatformApiActionStatusUpdaterControllerIndexPath = v.object({\n tenant_slug: v.string()\n});\n\nexport const vPlatformApiActionStatusUpdaterControllerIndexQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Action status updater list\n */\nexport const vPlatformApiActionStatusUpdaterControllerIndexResponse = vActionStatusUpdaterListResponse;\n\n/**\n * Full Action Status Updater resource (PUT semantics — all fields required)\n */\nexport const vPlatformApiActionStatusUpdaterControllerCreateBody = vActionStatusUpdaterRequestWritable;\n\nexport const vPlatformApiActionStatusUpdaterControllerCreatePath = v.object({\n tenant_slug: v.string()\n});\n\nexport const vPlatformApiActionStatusUpdaterControllerCreateQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Action status updater created\n */\nexport const vPlatformApiActionStatusUpdaterControllerCreateResponse = vActionStatusUpdaterResponse;\n\n/**\n * Raw source row\n */\nexport const vPlatformApiInteroperabilityContractControllerRunBody = vInteroperabilityRunRequest;\n\nexport const vPlatformApiInteroperabilityContractControllerRunPath = v.object({\n tenant_slug: v.string(),\n datalake_slug: v.string(),\n slug: v.string()\n});\n\nexport const vPlatformApiInteroperabilityContractControllerRunQuery = v.object({\n page: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1))),\n page_size: v.nullish(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(100))),\n order_by: v.nullish(v.array(v.string())),\n order_directions: v.nullish(v.array(v.picklist(['asc', 'desc']))),\n filters: v.nullish(v.array(v.object({\n field: v.string(),\n op: v.nullish(v.picklist([\n '==',\n '!=',\n '<',\n '<=',\n '>',\n '>=',\n 'empty',\n 'not_empty',\n 'like',\n 'ilike',\n 'like_and',\n 'like_or',\n 'ilike_and',\n 'ilike_or',\n 'in',\n 'not_in',\n 'contains',\n 'not_contains'\n ])),\n value: v.unknown()\n })))\n});\n\n/**\n * Pipeline output\n */\nexport const vPlatformApiInteroperabilityContractControllerRunResponse = vInteroperabilityRunResponse;\n\n/**\n * Page resolution request\n */\nexport const vPlatformApiConnectedAppControllerResolvePageBody = vResolvePageRequest;\n\nexport const vPlatformApiConnectedAppControllerResolvePagePath = v.object({\n tenant_slug: v.string(),\n slug: v.string()\n});\n\n/**\n * Resolved page details\n */\nexport const vPlatformApiConnectedAppControllerResolvePageResponse = vResolvePageResponse;\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport * as v from 'valibot';\n\nimport type { Client, Options as Options2, TDataShape } from './client';\nimport { client } from './client.gen';\nimport type { PlatformApiActionStatusUpdaterControllerCreateData, PlatformApiActionStatusUpdaterControllerCreateErrors, PlatformApiActionStatusUpdaterControllerCreateResponses, PlatformApiActionStatusUpdaterControllerIndexData, PlatformApiActionStatusUpdaterControllerIndexErrors, PlatformApiActionStatusUpdaterControllerIndexResponses, PlatformApiActionStatusUpdaterControllerUpdateData, PlatformApiActionStatusUpdaterControllerUpdateErrors, PlatformApiActionStatusUpdaterControllerUpdateResponses, PlatformApiAdminControllerConfirmUserData, PlatformApiAdminControllerConfirmUserErrors, PlatformApiAdminControllerConfirmUserResponses, PlatformApiAgenticWorkflowControllerCreateData, PlatformApiAgenticWorkflowControllerCreateErrors, PlatformApiAgenticWorkflowControllerCreateResponses, PlatformApiAgenticWorkflowControllerDeleteData, PlatformApiAgenticWorkflowControllerDeleteErrors, PlatformApiAgenticWorkflowControllerDeleteResponses, PlatformApiAgenticWorkflowControllerIndexData, PlatformApiAgenticWorkflowControllerIndexErrors, PlatformApiAgenticWorkflowControllerIndexResponses, PlatformApiAgenticWorkflowControllerMetadataData, PlatformApiAgenticWorkflowControllerMetadataErrors, PlatformApiAgenticWorkflowControllerMetadataResponses, PlatformApiAgenticWorkflowControllerShowData, PlatformApiAgenticWorkflowControllerShowErrors, PlatformApiAgenticWorkflowControllerShowResponses, PlatformApiAgenticWorkflowControllerUpdateData, PlatformApiAgenticWorkflowControllerUpdateErrors, PlatformApiAgenticWorkflowControllerUpdateResponses, PlatformApiAgenticWorkflowOperationsControllerBatchLogRefreshData, PlatformApiAgenticWorkflowOperationsControllerBatchLogRefreshErrors, PlatformApiAgenticWorkflowOperationsControllerBatchLogRefreshResponses, PlatformApiAgenticWorkflowOperationsControllerBatchLogShowData, PlatformApiAgenticWorkflowOperationsControllerBatchLogShowErrors, PlatformApiAgenticWorkflowOperationsControllerBatchLogShowResponses, PlatformApiAgenticWorkflowOperationsControllerBatchLogsIndexData, PlatformApiAgenticWorkflowOperationsControllerBatchLogsIndexErrors, PlatformApiAgenticWorkflowOperationsControllerBatchLogsIndexResponses, PlatformApiAgenticWorkflowOperationsControllerBatchLogStartData, PlatformApiAgenticWorkflowOperationsControllerBatchLogStartErrors, PlatformApiAgenticWorkflowOperationsControllerBatchLogStartResponses, PlatformApiAgenticWorkflowOperationsControllerBatchLogStopData, PlatformApiAgenticWorkflowOperationsControllerBatchLogStopErrors, PlatformApiAgenticWorkflowOperationsControllerBatchLogStopResponses, PlatformApiAgenticWorkflowOperationsControllerExecuteData, PlatformApiAgenticWorkflowOperationsControllerExecuteErrors, PlatformApiAgenticWorkflowOperationsControllerExecuteResponses, PlatformApiAgenticWorkflowOperationsControllerRunWorkflowData, PlatformApiAgenticWorkflowOperationsControllerRunWorkflowErrors, PlatformApiAgenticWorkflowOperationsControllerRunWorkflowResponses, PlatformApiAgenticWorkflowOperationsControllerWorkflowLogDownloadData, PlatformApiAgenticWorkflowOperationsControllerWorkflowLogDownloadErrors, PlatformApiAgenticWorkflowOperationsControllerWorkflowLogDownloadResponses, PlatformApiAgenticWorkflowOperationsControllerWorkflowLogShowData, PlatformApiAgenticWorkflowOperationsControllerWorkflowLogShowErrors, PlatformApiAgenticWorkflowOperationsControllerWorkflowLogShowResponses, PlatformApiAgenticWorkflowOperationsControllerWorkflowLogsIndexData, PlatformApiAgenticWorkflowOperationsControllerWorkflowLogsIndexErrors, PlatformApiAgenticWorkflowOperationsControllerWorkflowLogsIndexResponses, PlatformApiAiAgentControllerCreateData, PlatformApiAiAgentControllerCreateErrors, PlatformApiAiAgentControllerCreateResponses, PlatformApiAiAgentControllerDeleteData, PlatformApiAiAgentControllerDeleteErrors, PlatformApiAiAgentControllerDeleteResponses, PlatformApiAiAgentControllerIndexData, PlatformApiAiAgentControllerIndexErrors, PlatformApiAiAgentControllerIndexResponses, PlatformApiAiAgentControllerShowData, PlatformApiAiAgentControllerShowErrors, PlatformApiAiAgentControllerShowResponses, PlatformApiAiAgentControllerUpdateData, PlatformApiAiAgentControllerUpdateErrors, PlatformApiAiAgentControllerUpdateResponses, PlatformApiAuthControllerSignUpData, PlatformApiAuthControllerSignUpErrors, PlatformApiAuthControllerSignUpResponses, PlatformApiConnectedAppControllerResolvePageData, PlatformApiConnectedAppControllerResolvePageErrors, PlatformApiConnectedAppControllerResolvePageResponses, PlatformApiConnectedAppControllerUpdateMessageTrackingData, PlatformApiConnectedAppControllerUpdateMessageTrackingErrors, PlatformApiConnectedAppControllerUpdateMessageTrackingResponses, PlatformApiConnectedAppMgmtControllerCreateData, PlatformApiConnectedAppMgmtControllerCreateErrors, PlatformApiConnectedAppMgmtControllerCreateResponses, PlatformApiConnectedAppMgmtControllerIndexData, PlatformApiConnectedAppMgmtControllerIndexErrors, PlatformApiConnectedAppMgmtControllerIndexResponses, PlatformApiConnectedAppMgmtControllerShowData, PlatformApiConnectedAppMgmtControllerShowErrors, PlatformApiConnectedAppMgmtControllerShowResponses, PlatformApiConnectedAppMgmtControllerSyncRoutesData, PlatformApiConnectedAppMgmtControllerSyncRoutesErrors, PlatformApiConnectedAppMgmtControllerSyncRoutesResponses, PlatformApiConnectedAppMgmtControllerUpdateData, PlatformApiConnectedAppMgmtControllerUpdateErrors, PlatformApiConnectedAppMgmtControllerUpdateResponses, PlatformApiDataActivationClientControllerCreateData, PlatformApiDataActivationClientControllerCreateErrors, PlatformApiDataActivationClientControllerCreateResponses, PlatformApiDataActivationClientControllerDeleteData, PlatformApiDataActivationClientControllerDeleteErrors, PlatformApiDataActivationClientControllerDeleteResponses, PlatformApiDataActivationClientControllerIndexData, PlatformApiDataActivationClientControllerIndexErrors, PlatformApiDataActivationClientControllerIndexResponses, PlatformApiDataActivationClientControllerIngestData, PlatformApiDataActivationClientControllerIngestErrors, PlatformApiDataActivationClientControllerIngestFileData, PlatformApiDataActivationClientControllerIngestFileErrors, PlatformApiDataActivationClientControllerIngestFileResponses, PlatformApiDataActivationClientControllerIngestResponses, PlatformApiDataActivationClientControllerLogShowData, PlatformApiDataActivationClientControllerLogShowErrors, PlatformApiDataActivationClientControllerLogShowResponses, PlatformApiDataActivationClientControllerLogsIndexData, PlatformApiDataActivationClientControllerLogsIndexErrors, PlatformApiDataActivationClientControllerLogsIndexResponses, PlatformApiDataActivationClientControllerMetadataData, PlatformApiDataActivationClientControllerMetadataErrors, PlatformApiDataActivationClientControllerMetadataResponses, PlatformApiDataActivationClientControllerRunManuallyData, PlatformApiDataActivationClientControllerRunManuallyErrors, PlatformApiDataActivationClientControllerRunManuallyResponses, PlatformApiDataActivationClientControllerShowData, PlatformApiDataActivationClientControllerShowErrors, PlatformApiDataActivationClientControllerShowResponses, PlatformApiDataActivationClientControllerUpdateData, PlatformApiDataActivationClientControllerUpdateErrors, PlatformApiDataActivationClientControllerUpdateResponses, PlatformApiDatalakeControllerCreateData, PlatformApiDatalakeControllerCreateDownloadLinkData, PlatformApiDatalakeControllerCreateDownloadLinkErrors, PlatformApiDatalakeControllerCreateDownloadLinkResponses, PlatformApiDatalakeControllerCreateErrors, PlatformApiDatalakeControllerCreateResponses, PlatformApiDatalakeControllerCreateUploadLinkData, PlatformApiDatalakeControllerCreateUploadLinkErrors, PlatformApiDatalakeControllerCreateUploadLinkResponses, PlatformApiDatalakeControllerIndexData, PlatformApiDatalakeControllerIndexErrors, PlatformApiDatalakeControllerIndexResponses, PlatformApiDatalakeControllerMetadataData, PlatformApiDatalakeControllerMetadataErrors, PlatformApiDatalakeControllerMetadataResponses, PlatformApiDatalakeControllerMigrateData, PlatformApiDatalakeControllerMigrateErrors, PlatformApiDatalakeControllerMigrateResponses, PlatformApiDatalakeControllerRegisteredDatasetsData, PlatformApiDatalakeControllerRegisteredDatasetsErrors, PlatformApiDatalakeControllerRegisteredDatasetsResponses, PlatformApiDatalakeControllerShowData, PlatformApiDatalakeControllerShowErrors, PlatformApiDatalakeControllerShowResponses, PlatformApiDatalakeControllerUpdateData, PlatformApiDatalakeControllerUpdateErrors, PlatformApiDatalakeControllerUpdateResponses, PlatformApiDatasetControllerCreateUserSearchData, PlatformApiDatasetControllerCreateUserSearchErrors, PlatformApiDatasetControllerCreateUserSearchResponses, PlatformApiDatasetControllerDatasetMetadataData, PlatformApiDatasetControllerDatasetMetadataErrors, PlatformApiDatasetControllerDatasetMetadataResponses, PlatformApiDatasetControllerSearchData, PlatformApiDatasetControllerSearchErrors, PlatformApiDatasetControllerSearchResponses, PlatformApiDataSourceControllerCreateData, PlatformApiDataSourceControllerCreateErrors, PlatformApiDataSourceControllerCreateResponses, PlatformApiDataSourceControllerIndexData, PlatformApiDataSourceControllerIndexErrors, PlatformApiDataSourceControllerIndexResponses, PlatformApiDataSourceControllerUpdateData, PlatformApiDataSourceControllerUpdateErrors, PlatformApiDataSourceControllerUpdateResponses, PlatformApiGenericTableControllerCreateData, PlatformApiGenericTableControllerCreateErrors, PlatformApiGenericTableControllerCreateResponses, PlatformApiGenericTableControllerIndexData, PlatformApiGenericTableControllerIndexErrors, PlatformApiGenericTableControllerIndexResponses, PlatformApiInteroperabilityContractControllerCreateData, PlatformApiInteroperabilityContractControllerCreateErrors, PlatformApiInteroperabilityContractControllerCreateResponses, PlatformApiInteroperabilityContractControllerDeleteData, PlatformApiInteroperabilityContractControllerDeleteErrors, PlatformApiInteroperabilityContractControllerDeleteResponses, PlatformApiInteroperabilityContractControllerIndexData, PlatformApiInteroperabilityContractControllerIndexErrors, PlatformApiInteroperabilityContractControllerIndexResponses, PlatformApiInteroperabilityContractControllerMetadataData, PlatformApiInteroperabilityContractControllerMetadataErrors, PlatformApiInteroperabilityContractControllerMetadataResponses, PlatformApiInteroperabilityContractControllerRunData, PlatformApiInteroperabilityContractControllerRunErrors, PlatformApiInteroperabilityContractControllerRunResponses, PlatformApiInteroperabilityContractControllerShowData, PlatformApiInteroperabilityContractControllerShowErrors, PlatformApiInteroperabilityContractControllerShowResponses, PlatformApiInteroperabilityContractControllerUpdateData, PlatformApiInteroperabilityContractControllerUpdateErrors, PlatformApiInteroperabilityContractControllerUpdateResponses, PlatformApiInvitationControllerAcceptData, PlatformApiInvitationControllerAcceptErrors, PlatformApiInvitationControllerAcceptResponses, PlatformApiInvitationControllerCreateData, PlatformApiInvitationControllerCreateErrors, PlatformApiInvitationControllerCreateResponses, PlatformApiInvitationControllerIndexData, PlatformApiInvitationControllerIndexErrors, PlatformApiInvitationControllerIndexResponses, PlatformApiMdmControllerVerifyData, PlatformApiMdmControllerVerifyErrors, PlatformApiMdmControllerVerifyResponses, PlatformApiPingControllerPingData, PlatformApiPingControllerPingErrors, PlatformApiPingControllerPingResponses, PlatformApiSessionControllerCreateData, PlatformApiSessionControllerCreateErrors, PlatformApiSessionControllerCreateResponses, PlatformApiSessionControllerDeleteData, PlatformApiSessionControllerDeleteErrors, PlatformApiSessionControllerDeleteResponses, PlatformApiSessionControllerVerifyData, PlatformApiSessionControllerVerifyErrors, PlatformApiSessionControllerVerifyResponses, PlatformApiTenantControllerCreateData, PlatformApiTenantControllerCreateErrors, PlatformApiTenantControllerCreateResponses, PlatformApiTenantControllerIndexData, PlatformApiTenantControllerIndexErrors, PlatformApiTenantControllerIndexResponses, PlatformApiToolControllerCreateData, PlatformApiToolControllerCreateErrors, PlatformApiToolControllerCreateResponses, PlatformApiToolControllerDeleteData, PlatformApiToolControllerDeleteErrors, PlatformApiToolControllerDeleteResponses, PlatformApiToolControllerIndexData, PlatformApiToolControllerIndexErrors, PlatformApiToolControllerIndexResponses, PlatformApiToolControllerShowData, PlatformApiToolControllerShowErrors, PlatformApiToolControllerShowResponses, PlatformApiToolControllerTestInvocationData, PlatformApiToolControllerTestInvocationErrors, PlatformApiToolControllerTestInvocationResponses, PlatformApiToolControllerUpdateData, PlatformApiToolControllerUpdateErrors, PlatformApiToolControllerUpdateResponses } from './types.gen';\nimport { vPlatformApiActionStatusUpdaterControllerCreateBody, vPlatformApiActionStatusUpdaterControllerCreatePath, vPlatformApiActionStatusUpdaterControllerCreateQuery, vPlatformApiActionStatusUpdaterControllerCreateResponse, vPlatformApiActionStatusUpdaterControllerIndexPath, vPlatformApiActionStatusUpdaterControllerIndexQuery, vPlatformApiActionStatusUpdaterControllerIndexResponse, vPlatformApiActionStatusUpdaterControllerUpdateBody, vPlatformApiActionStatusUpdaterControllerUpdatePath, vPlatformApiActionStatusUpdaterControllerUpdateQuery, vPlatformApiActionStatusUpdaterControllerUpdateResponse, vPlatformApiAdminControllerConfirmUserPath, vPlatformApiAdminControllerConfirmUserResponse, vPlatformApiAgenticWorkflowControllerCreateBody, vPlatformApiAgenticWorkflowControllerCreatePath, vPlatformApiAgenticWorkflowControllerCreateResponse, vPlatformApiAgenticWorkflowControllerDeletePath, vPlatformApiAgenticWorkflowControllerDeleteResponse, vPlatformApiAgenticWorkflowControllerIndexPath, vPlatformApiAgenticWorkflowControllerIndexQuery, vPlatformApiAgenticWorkflowControllerIndexResponse, vPlatformApiAgenticWorkflowControllerMetadataPath, vPlatformApiAgenticWorkflowControllerMetadataResponse, vPlatformApiAgenticWorkflowControllerShowPath, vPlatformApiAgenticWorkflowControllerShowResponse, vPlatformApiAgenticWorkflowControllerUpdateBody, vPlatformApiAgenticWorkflowControllerUpdatePath, vPlatformApiAgenticWorkflowControllerUpdateResponse, vPlatformApiAgenticWorkflowOperationsControllerBatchLogRefreshPath, vPlatformApiAgenticWorkflowOperationsControllerBatchLogRefreshResponse, vPlatformApiAgenticWorkflowOperationsControllerBatchLogShowPath, vPlatformApiAgenticWorkflowOperationsControllerBatchLogShowResponse, vPlatformApiAgenticWorkflowOperationsControllerBatchLogsIndexPath, vPlatformApiAgenticWorkflowOperationsControllerBatchLogsIndexQuery, vPlatformApiAgenticWorkflowOperationsControllerBatchLogsIndexResponse, vPlatformApiAgenticWorkflowOperationsControllerBatchLogStartPath, vPlatformApiAgenticWorkflowOperationsControllerBatchLogStartResponse, vPlatformApiAgenticWorkflowOperationsControllerBatchLogStopPath, vPlatformApiAgenticWorkflowOperationsControllerBatchLogStopResponse, vPlatformApiAgenticWorkflowOperationsControllerExecuteBody, vPlatformApiAgenticWorkflowOperationsControllerExecutePath, vPlatformApiAgenticWorkflowOperationsControllerExecuteResponse, vPlatformApiAgenticWorkflowOperationsControllerRunWorkflowBody, vPlatformApiAgenticWorkflowOperationsControllerRunWorkflowPath, vPlatformApiAgenticWorkflowOperationsControllerRunWorkflowResponse, vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogDownloadPath, vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogDownloadResponse, vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogShowPath, vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogShowQuery, vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogShowResponse, vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogsIndexPath, vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogsIndexQuery, vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogsIndexResponse, vPlatformApiAiAgentControllerCreateBody, vPlatformApiAiAgentControllerCreatePath, vPlatformApiAiAgentControllerCreateResponse, vPlatformApiAiAgentControllerDeletePath, vPlatformApiAiAgentControllerDeleteResponse, vPlatformApiAiAgentControllerIndexPath, vPlatformApiAiAgentControllerIndexQuery, vPlatformApiAiAgentControllerIndexResponse, vPlatformApiAiAgentControllerShowPath, vPlatformApiAiAgentControllerShowResponse, vPlatformApiAiAgentControllerUpdateBody, vPlatformApiAiAgentControllerUpdatePath, vPlatformApiAiAgentControllerUpdateResponse, vPlatformApiAuthControllerSignUpBody, vPlatformApiAuthControllerSignUpResponse, vPlatformApiConnectedAppControllerResolvePageBody, vPlatformApiConnectedAppControllerResolvePagePath, vPlatformApiConnectedAppControllerResolvePageResponse, vPlatformApiConnectedAppControllerUpdateMessageTrackingBody, vPlatformApiConnectedAppControllerUpdateMessageTrackingPath, vPlatformApiConnectedAppControllerUpdateMessageTrackingResponse, vPlatformApiConnectedAppMgmtControllerCreateBody, vPlatformApiConnectedAppMgmtControllerCreatePath, vPlatformApiConnectedAppMgmtControllerCreateResponse, vPlatformApiConnectedAppMgmtControllerIndexPath, vPlatformApiConnectedAppMgmtControllerIndexQuery, vPlatformApiConnectedAppMgmtControllerIndexResponse, vPlatformApiConnectedAppMgmtControllerShowPath, vPlatformApiConnectedAppMgmtControllerShowResponse, vPlatformApiConnectedAppMgmtControllerSyncRoutesPath, vPlatformApiConnectedAppMgmtControllerSyncRoutesResponse, vPlatformApiConnectedAppMgmtControllerUpdateBody, vPlatformApiConnectedAppMgmtControllerUpdatePath, vPlatformApiConnectedAppMgmtControllerUpdateResponse, vPlatformApiDataActivationClientControllerCreateBody, vPlatformApiDataActivationClientControllerCreatePath, vPlatformApiDataActivationClientControllerCreateResponse, vPlatformApiDataActivationClientControllerDeletePath, vPlatformApiDataActivationClientControllerDeleteResponse, vPlatformApiDataActivationClientControllerIndexPath, vPlatformApiDataActivationClientControllerIndexQuery, vPlatformApiDataActivationClientControllerIndexResponse, vPlatformApiDataActivationClientControllerIngestBody, vPlatformApiDataActivationClientControllerIngestFileBody, vPlatformApiDataActivationClientControllerIngestFilePath, vPlatformApiDataActivationClientControllerIngestFileResponse, vPlatformApiDataActivationClientControllerIngestPath, vPlatformApiDataActivationClientControllerIngestResponse, vPlatformApiDataActivationClientControllerLogShowPath, vPlatformApiDataActivationClientControllerLogShowResponse, vPlatformApiDataActivationClientControllerLogsIndexPath, vPlatformApiDataActivationClientControllerLogsIndexQuery, vPlatformApiDataActivationClientControllerLogsIndexResponse, vPlatformApiDataActivationClientControllerMetadataPath, vPlatformApiDataActivationClientControllerMetadataResponse, vPlatformApiDataActivationClientControllerRunManuallyBody, vPlatformApiDataActivationClientControllerRunManuallyPath, vPlatformApiDataActivationClientControllerRunManuallyResponse, vPlatformApiDataActivationClientControllerShowPath, vPlatformApiDataActivationClientControllerShowResponse, vPlatformApiDataActivationClientControllerUpdateBody, vPlatformApiDataActivationClientControllerUpdatePath, vPlatformApiDataActivationClientControllerUpdateResponse, vPlatformApiDatalakeControllerCreateBody, vPlatformApiDatalakeControllerCreateDownloadLinkBody, vPlatformApiDatalakeControllerCreateDownloadLinkPath, vPlatformApiDatalakeControllerCreateDownloadLinkResponse, vPlatformApiDatalakeControllerCreatePath, vPlatformApiDatalakeControllerCreateQuery, vPlatformApiDatalakeControllerCreateResponse, vPlatformApiDatalakeControllerCreateUploadLinkBody, vPlatformApiDatalakeControllerCreateUploadLinkPath, vPlatformApiDatalakeControllerCreateUploadLinkQuery, vPlatformApiDatalakeControllerCreateUploadLinkResponse, vPlatformApiDatalakeControllerIndexPath, vPlatformApiDatalakeControllerIndexQuery, vPlatformApiDatalakeControllerIndexResponse, vPlatformApiDatalakeControllerMetadataPath, vPlatformApiDatalakeControllerMetadataQuery, vPlatformApiDatalakeControllerMetadataResponse, vPlatformApiDatalakeControllerMigratePath, vPlatformApiDatalakeControllerMigrateResponse, vPlatformApiDatalakeControllerRegisteredDatasetsPath, vPlatformApiDatalakeControllerRegisteredDatasetsResponse, vPlatformApiDatalakeControllerShowPath, vPlatformApiDatalakeControllerShowQuery, vPlatformApiDatalakeControllerShowResponse, vPlatformApiDatalakeControllerUpdateBody, vPlatformApiDatalakeControllerUpdatePath, vPlatformApiDatalakeControllerUpdateResponse, vPlatformApiDatasetControllerCreateUserSearchBody, vPlatformApiDatasetControllerCreateUserSearchPath, vPlatformApiDatasetControllerCreateUserSearchQuery, vPlatformApiDatasetControllerCreateUserSearchResponse, vPlatformApiDatasetControllerDatasetMetadataPath, vPlatformApiDatasetControllerDatasetMetadataQuery, vPlatformApiDatasetControllerDatasetMetadataResponse, vPlatformApiDatasetControllerSearchPath, vPlatformApiDatasetControllerSearchQuery, vPlatformApiDatasetControllerSearchResponse, vPlatformApiDataSourceControllerCreateBody, vPlatformApiDataSourceControllerCreatePath, vPlatformApiDataSourceControllerCreateQuery, vPlatformApiDataSourceControllerCreateResponse, vPlatformApiDataSourceControllerIndexPath, vPlatformApiDataSourceControllerIndexQuery, vPlatformApiDataSourceControllerIndexResponse, vPlatformApiDataSourceControllerUpdateBody, vPlatformApiDataSourceControllerUpdatePath, vPlatformApiDataSourceControllerUpdateQuery, vPlatformApiDataSourceControllerUpdateResponse, vPlatformApiGenericTableControllerCreateBody, vPlatformApiGenericTableControllerCreatePath, vPlatformApiGenericTableControllerCreateResponse, vPlatformApiGenericTableControllerIndexPath, vPlatformApiGenericTableControllerIndexQuery, vPlatformApiGenericTableControllerIndexResponse, vPlatformApiInteroperabilityContractControllerCreateBody, vPlatformApiInteroperabilityContractControllerCreatePath, vPlatformApiInteroperabilityContractControllerCreateQuery, vPlatformApiInteroperabilityContractControllerCreateResponse, vPlatformApiInteroperabilityContractControllerDeletePath, vPlatformApiInteroperabilityContractControllerDeleteQuery, vPlatformApiInteroperabilityContractControllerDeleteResponse, vPlatformApiInteroperabilityContractControllerIndexPath, vPlatformApiInteroperabilityContractControllerIndexQuery, vPlatformApiInteroperabilityContractControllerIndexResponse, vPlatformApiInteroperabilityContractControllerMetadataPath, vPlatformApiInteroperabilityContractControllerMetadataQuery, vPlatformApiInteroperabilityContractControllerMetadataResponse, vPlatformApiInteroperabilityContractControllerRunBody, vPlatformApiInteroperabilityContractControllerRunPath, vPlatformApiInteroperabilityContractControllerRunQuery, vPlatformApiInteroperabilityContractControllerRunResponse, vPlatformApiInteroperabilityContractControllerShowPath, vPlatformApiInteroperabilityContractControllerShowQuery, vPlatformApiInteroperabilityContractControllerShowResponse, vPlatformApiInteroperabilityContractControllerUpdateBody, vPlatformApiInteroperabilityContractControllerUpdatePath, vPlatformApiInteroperabilityContractControllerUpdateQuery, vPlatformApiInteroperabilityContractControllerUpdateResponse, vPlatformApiInvitationControllerAcceptPath, vPlatformApiInvitationControllerAcceptResponse, vPlatformApiInvitationControllerCreateBody, vPlatformApiInvitationControllerCreatePath, vPlatformApiInvitationControllerCreateResponse, vPlatformApiInvitationControllerIndexResponse, vPlatformApiMdmControllerVerifyBody, vPlatformApiMdmControllerVerifyPath, vPlatformApiMdmControllerVerifyResponse, vPlatformApiPingControllerPingResponse, vPlatformApiSessionControllerCreateBody, vPlatformApiSessionControllerCreateResponse, vPlatformApiSessionControllerVerifyResponse, vPlatformApiTenantControllerCreateBody, vPlatformApiTenantControllerCreateResponse, vPlatformApiTenantControllerIndexQuery, vPlatformApiTenantControllerIndexResponse, vPlatformApiToolControllerCreateBody, vPlatformApiToolControllerCreatePath, vPlatformApiToolControllerCreateResponse, vPlatformApiToolControllerDeletePath, vPlatformApiToolControllerDeleteResponse, vPlatformApiToolControllerIndexPath, vPlatformApiToolControllerIndexQuery, vPlatformApiToolControllerIndexResponse, vPlatformApiToolControllerShowPath, vPlatformApiToolControllerShowResponse, vPlatformApiToolControllerTestInvocationBody, vPlatformApiToolControllerTestInvocationPath, vPlatformApiToolControllerTestInvocationResponse, vPlatformApiToolControllerUpdateBody, vPlatformApiToolControllerUpdatePath, vPlatformApiToolControllerUpdateResponse } from './valibot.gen';\n\nexport type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean, TResponse = unknown> = Options2<TData, ThrowOnError, TResponse> & {\n /**\n * You can provide a client instance returned by `createClient()` instead of\n * individual options. This might be also useful if you want to implement a\n * custom client.\n */\n client?: Client;\n /**\n * You can pass arbitrary values through the `meta` object. This can be\n * used to access values that aren't defined as part of the SDK function.\n */\n meta?: Record<string, unknown>;\n};\n\n/**\n * List tools\n *\n * Returns a paginated list of tools for the authenticated tenant.\n */\nexport const platformApiToolControllerIndex = <ThrowOnError extends boolean = false>(options: Options<PlatformApiToolControllerIndexData, ThrowOnError>) => (options.client ?? client).get<PlatformApiToolControllerIndexResponses, PlatformApiToolControllerIndexErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiToolControllerIndexPath,\n query: v.optional(vPlatformApiToolControllerIndexQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiToolControllerIndexResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/tools',\n ...options\n});\n\n/**\n * Create a tool\n *\n * Creates a new tool for the authenticated tenant.\n */\nexport const platformApiToolControllerCreate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiToolControllerCreateData, ThrowOnError>) => (options.client ?? client).post<PlatformApiToolControllerCreateResponses, PlatformApiToolControllerCreateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiToolControllerCreateBody),\n path: vPlatformApiToolControllerCreatePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiToolControllerCreateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/tools',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a data activation client\n *\n * Deletes a DAC. Returns 422 if the DAC is a platform default (is_default=true). Returns 409 if referenced by other resources.\n */\nexport const platformApiDataActivationClientControllerDelete = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDataActivationClientControllerDeleteData, ThrowOnError>) => (options.client ?? client).delete<PlatformApiDataActivationClientControllerDeleteResponses, PlatformApiDataActivationClientControllerDeleteErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiDataActivationClientControllerDeletePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDataActivationClientControllerDeleteResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/data-activation-clients/{slug}',\n ...options\n});\n\n/**\n * Get a data activation client\n *\n * Returns a single DAC by datalake-scoped slug.\n */\nexport const platformApiDataActivationClientControllerShow = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDataActivationClientControllerShowData, ThrowOnError>) => (options.client ?? client).get<PlatformApiDataActivationClientControllerShowResponses, PlatformApiDataActivationClientControllerShowErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiDataActivationClientControllerShowPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDataActivationClientControllerShowResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/data-activation-clients/{slug}',\n ...options\n});\n\n/**\n * Replace a data activation client\n *\n * Replaces a DAC with the full resource body. PUT semantics — all required fields must be present. `slug` is immutable.\n */\nexport const platformApiDataActivationClientControllerUpdate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDataActivationClientControllerUpdateData, ThrowOnError>) => (options.client ?? client).put<PlatformApiDataActivationClientControllerUpdateResponses, PlatformApiDataActivationClientControllerUpdateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiDataActivationClientControllerUpdateBody),\n path: vPlatformApiDataActivationClientControllerUpdatePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDataActivationClientControllerUpdateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/data-activation-clients/{slug}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Enqueue datalake migrations\n *\n * Enqueues a `DatalakeMigrationWorker` Oban job that brings the datalake's\n * per-tenant database to the current schema version. Required after\n * `POST /datalakes`, which only persists the metadata row — it does NOT\n * run migrations against the per-tenant DB. Without this step, every\n * downstream resource that touches per-datalake tables\n * (`data_activation_logs`, MDM tables, dataset tables) will fail with\n * `relation … does not exist`.\n *\n * Asynchronous: returns 202 Accepted as soon as the job is enqueued.\n * Callers poll `GET /datalakes/:id` and watch for `status: :ready`.\n * Idempotent at the job level — re-enqueueing on a migrated datalake\n * is a no-op once the worker completes.\n *\n * The LiveView \"Migrate Datalake\" button calls the same migrator\n * synchronously inside the LiveView process.\n *\n * Requires a tenant-scoped Bearer with membership role `admin`.\n *\n */\nexport const platformApiDatalakeControllerMigrate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDatalakeControllerMigrateData, ThrowOnError>) => (options.client ?? client).post<PlatformApiDatalakeControllerMigrateResponses, PlatformApiDatalakeControllerMigrateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiDatalakeControllerMigratePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDatalakeControllerMigrateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/migrate',\n ...options\n});\n\n/**\n * Verify current session\n *\n * Returns the current session's tenant, role, and identity information.\n *\n * Works with both authentication methods:\n * - `X-API-Key` header (M2M)\n * - `Authorization: Bearer <session_token>` (human sessions)\n *\n * Use this as a \"who am I\" endpoint to confirm credentials are valid and\n * inspect the resolved tenant, role, and identity.\n *\n * **Requires authentication** (X-API-Key or Bearer token).\n *\n */\nexport const platformApiSessionControllerVerify = <ThrowOnError extends boolean = false>(options?: Options<PlatformApiSessionControllerVerifyData, ThrowOnError>) => (options?.client ?? client).get<PlatformApiSessionControllerVerifyResponses, PlatformApiSessionControllerVerifyErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: v.optional(v.never()),\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiSessionControllerVerifyResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }, { scheme: 'bearer', type: 'http' }],\n url: '/api/v1/sessions/verify',\n ...options\n});\n\n/**\n * Download execution context\n *\n * Returns a presigned URL for downloading the execution context JSON from R2.\n */\nexport const platformApiAgenticWorkflowOperationsControllerWorkflowLogDownload = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowOperationsControllerWorkflowLogDownloadData, ThrowOnError>) => (options.client ?? client).get<PlatformApiAgenticWorkflowOperationsControllerWorkflowLogDownloadResponses, PlatformApiAgenticWorkflowOperationsControllerWorkflowLogDownloadErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogDownloadPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogDownloadResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/agentic-workflows/{workflow_slug}/workflow-logs/{id}/download',\n ...options\n});\n\n/**\n * Create datalake download link\n *\n * Returns a presigned GET URL for an object stored in one of the datalake's cloud storage buckets (regulated or unregulated). Typical use: read a `DACRawLogFile.object_key` (`s3://bucket/key`) off a data-activation log row, split it into `bucket` and `key`, then POST here to obtain a short-lived download URL.\n */\nexport const platformApiDatalakeControllerCreateDownloadLink = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDatalakeControllerCreateDownloadLinkData, ThrowOnError>) => (options.client ?? client).post<PlatformApiDatalakeControllerCreateDownloadLinkResponses, PlatformApiDatalakeControllerCreateDownloadLinkErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: vPlatformApiDatalakeControllerCreateDownloadLinkBody,\n path: vPlatformApiDatalakeControllerCreateDownloadLinkPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDatalakeControllerCreateDownloadLinkResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/download-link',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Get a datalake\n *\n * Returns a single datalake by ID (non-sensitive metadata only).\n */\nexport const platformApiDatalakeControllerShow = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDatalakeControllerShowData, ThrowOnError>) => (options.client ?? client).get<PlatformApiDatalakeControllerShowResponses, PlatformApiDatalakeControllerShowErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiDatalakeControllerShowPath,\n query: v.optional(vPlatformApiDatalakeControllerShowQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDatalakeControllerShowResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{id}',\n ...options\n});\n\n/**\n * Update a datalake (full replace)\n *\n * Replaces the datalake's configuration with the supplied body. PUT semantics:\n * the request body MUST carry every field — partial updates are not\n * supported. Mirrors the same `DatalakeRequest` schema as create so callers\n * can resend a full manifest unchanged.\n *\n * The platform performs the same gates as create before persisting: DB\n * connection probes against every regulated/unregulated reader/writer\n * declared in the body, plus a cloud-storage reachability probe. Any\n * probe failure surfaces as `422 Unprocessable Entity` with the failing\n * field annotated in the changeset.\n *\n * Used by `alvera apply` when the manifest's `[datalake]` block has\n * drifted from server state. Idempotent: re-applying the same body\n * against a converged datalake is a no-op at the wire level (the\n * changeset detects no changes; the row is rewritten with identical\n * values, lifecycle hooks fire).\n *\n */\nexport const platformApiDatalakeControllerUpdate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDatalakeControllerUpdateData, ThrowOnError>) => (options.client ?? client).put<PlatformApiDatalakeControllerUpdateResponses, PlatformApiDatalakeControllerUpdateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiDatalakeControllerUpdateBody),\n path: vPlatformApiDatalakeControllerUpdatePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDatalakeControllerUpdateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Test invoke a tool\n *\n * Manually invokes a tool with caller-supplied parameters — the API equivalent of the 'Try It' panel in the tool form. Records a `ManualToolInvocation` for audit and returns the provider response (or error). Does not access tenant datasets, so no capability ceiling check is applied.\n */\nexport const platformApiToolControllerTestInvocation = <ThrowOnError extends boolean = false>(options: Options<PlatformApiToolControllerTestInvocationData, ThrowOnError>) => (options.client ?? client).post<PlatformApiToolControllerTestInvocationResponses, PlatformApiToolControllerTestInvocationErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiToolControllerTestInvocationBody),\n path: vPlatformApiToolControllerTestInvocationPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiToolControllerTestInvocationResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/tools/{id}/test-invocation',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Get schema metadata for a specific dataset type\n *\n * Returns a markdown document describing the fields available on a dataset type. For standard datasets (patient, appointment, etc.) returns the schema moduledoc. For generic tables, pass the generic_table_id query parameter.\n */\nexport const platformApiDatasetControllerDatasetMetadata = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDatasetControllerDatasetMetadataData, ThrowOnError>) => (options.client ?? client).get<PlatformApiDatasetControllerDatasetMetadataResponses, PlatformApiDatasetControllerDatasetMetadataErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiDatasetControllerDatasetMetadataPath,\n query: v.optional(vPlatformApiDatasetControllerDatasetMetadataQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDatasetControllerDatasetMetadataResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/datasets/{dataset_type}/metadata',\n ...options\n});\n\n/**\n * List accessible tenants\n *\n * Returns a paginated list of tenants accessible to the authenticated identity.\n *\n * - **Bearer token**: returns all tenants the user has membership in.\n * - **X-API-Key**: returns the single tenant the API key is scoped to.\n *\n */\nexport const platformApiTenantControllerIndex = <ThrowOnError extends boolean = false>(options?: Options<PlatformApiTenantControllerIndexData, ThrowOnError>) => (options?.client ?? client).get<PlatformApiTenantControllerIndexResponses, PlatformApiTenantControllerIndexErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: v.optional(v.never()),\n query: v.optional(vPlatformApiTenantControllerIndexQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiTenantControllerIndexResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }, { scheme: 'bearer', type: 'http' }],\n url: '/api/v1/tenants',\n ...options\n});\n\n/**\n * Create a tenant\n *\n * Creates a new tenant and an `:admin` membership for the authenticated user.\n * Wraps `Platform.Tenants.create_tenant/3` verbatim — same primitive that\n * backs the `/app/tenants/new` LiveView.\n *\n * On success returns a regular `SessionResponse` carrying a freshly-minted\n * **tenant-scoped Bearer** (`session_token`), the new tenant, and the\n * membership role. Callers swap their tenant-less Bearer for this token\n * and proceed with tenant-scoped work — no second sign-in round-trip.\n *\n * The user must be confirmed (`confirmed_at IS NOT NULL`); unconfirmed\n * callers receive 403. Duplicate tenant names (slug collision) return 422.\n *\n * Requires `Authorization: Bearer <token>` (X-API-Key cannot create tenants —\n * it carries no platform-user identity to bind the membership to).\n *\n */\nexport const platformApiTenantControllerCreate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiTenantControllerCreateData, ThrowOnError>) => (options.client ?? client).post<PlatformApiTenantControllerCreateResponses, PlatformApiTenantControllerCreateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: vPlatformApiTenantControllerCreateBody,\n path: v.optional(v.never()),\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiTenantControllerCreateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }, { scheme: 'bearer', type: 'http' }],\n url: '/api/v1/tenants',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List generic tables\n *\n * Returns a paginated list of generic tables for the datalake (custom tables + system tables for the data domain).\n */\nexport const platformApiGenericTableControllerIndex = <ThrowOnError extends boolean = false>(options: Options<PlatformApiGenericTableControllerIndexData, ThrowOnError>) => (options.client ?? client).get<PlatformApiGenericTableControllerIndexResponses, PlatformApiGenericTableControllerIndexErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiGenericTableControllerIndexPath,\n query: v.optional(vPlatformApiGenericTableControllerIndexQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiGenericTableControllerIndexResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/generic-tables',\n ...options\n});\n\n/**\n * Create a generic table\n *\n * Creates a new custom generic table within the datalake.\n */\nexport const platformApiGenericTableControllerCreate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiGenericTableControllerCreateData, ThrowOnError>) => (options.client ?? client).post<PlatformApiGenericTableControllerCreateResponses, PlatformApiGenericTableControllerCreateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiGenericTableControllerCreateBody),\n path: vPlatformApiGenericTableControllerCreatePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiGenericTableControllerCreateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/generic-tables',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List the authenticated user's pending invitations\n *\n * Returns invitations addressed to the authenticated user that have not\n * yet been accepted. Mirrors the LiveView at `/app/users/tenant-invitations`\n * that recipients see after sign-in. Wraps `Tenants.list_invitations_by_user/1`\n * verbatim — always filtered to the current user, never accepts a query\n * parameter that could leak another user's invitations.\n *\n * Requires any Bearer (tenant-less is fine — recipients typically don't\n * have tenant scope yet at this point in the bootstrap flow).\n *\n */\nexport const platformApiInvitationControllerIndex = <ThrowOnError extends boolean = false>(options?: Options<PlatformApiInvitationControllerIndexData, ThrowOnError>) => (options?.client ?? client).get<PlatformApiInvitationControllerIndexResponses, PlatformApiInvitationControllerIndexErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: v.optional(v.never()),\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiInvitationControllerIndexResponse, data),\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/api/v1/invitations',\n ...options\n});\n\n/**\n * List interoperability contracts\n *\n * Returns a paginated list of contracts scoped to the datalake.\n */\nexport const platformApiInteroperabilityContractControllerIndex = <ThrowOnError extends boolean = false>(options: Options<PlatformApiInteroperabilityContractControllerIndexData, ThrowOnError>) => (options.client ?? client).get<PlatformApiInteroperabilityContractControllerIndexResponses, PlatformApiInteroperabilityContractControllerIndexErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiInteroperabilityContractControllerIndexPath,\n query: v.optional(vPlatformApiInteroperabilityContractControllerIndexQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiInteroperabilityContractControllerIndexResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/interoperability-contracts',\n ...options\n});\n\n/**\n * Create an interoperability contract\n *\n * Creates a new contract. `slug` is auto-generated from `name` on insert.\n */\nexport const platformApiInteroperabilityContractControllerCreate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiInteroperabilityContractControllerCreateData, ThrowOnError>) => (options.client ?? client).post<PlatformApiInteroperabilityContractControllerCreateResponses, PlatformApiInteroperabilityContractControllerCreateErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiInteroperabilityContractControllerCreateBody),\n path: vPlatformApiInteroperabilityContractControllerCreatePath,\n query: v.optional(vPlatformApiInteroperabilityContractControllerCreateQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiInteroperabilityContractControllerCreateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/interoperability-contracts',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Get contract field metadata\n *\n * Returns a markdown document describing the fields of the contract's target resource type. Combines `@moduledoc` (resource description) and `@typedoc` (field definitions) from the schema.\n */\nexport const platformApiInteroperabilityContractControllerMetadata = <ThrowOnError extends boolean = false>(options: Options<PlatformApiInteroperabilityContractControllerMetadataData, ThrowOnError>) => (options.client ?? client).get<PlatformApiInteroperabilityContractControllerMetadataResponses, PlatformApiInteroperabilityContractControllerMetadataErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiInteroperabilityContractControllerMetadataPath,\n query: v.optional(vPlatformApiInteroperabilityContractControllerMetadataQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiInteroperabilityContractControllerMetadataResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/interoperability-contracts/{slug}/metadata',\n ...options\n});\n\n/**\n * Get a batch run log\n *\n * Returns a single batch-level workflow run log with merged artifacts.\n */\nexport const platformApiAgenticWorkflowOperationsControllerBatchLogShow = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowOperationsControllerBatchLogShowData, ThrowOnError>) => (options.client ?? client).get<PlatformApiAgenticWorkflowOperationsControllerBatchLogShowResponses, PlatformApiAgenticWorkflowOperationsControllerBatchLogShowErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAgenticWorkflowOperationsControllerBatchLogShowPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowOperationsControllerBatchLogShowResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/agentic-workflows/{workflow_slug}/batch-logs/{id}',\n ...options\n});\n\n/**\n * Accept a tenant invitation\n *\n * Accepts a pending invitation addressed to the authenticated user, creating\n * a `Membership` and deleting the invitation. Mirrors the LiveView flow at\n * `/app/users/tenant-invitations` → \"Accept\" button. Wraps\n * `Tenants.accept_invitation!/2` verbatim.\n *\n * The function-level guard `get_invitation_by_user!/2` ensures the invitation\n * is addressed to the caller — cross-user acceptance returns 404.\n *\n * Requires any Bearer (the recipient often has only a tenant-less Bearer at\n * this point — they just signed up and haven't joined a tenant yet).\n *\n */\nexport const platformApiInvitationControllerAccept = <ThrowOnError extends boolean = false>(options: Options<PlatformApiInvitationControllerAcceptData, ThrowOnError>) => (options.client ?? client).post<PlatformApiInvitationControllerAcceptResponses, PlatformApiInvitationControllerAcceptErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiInvitationControllerAcceptPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiInvitationControllerAcceptResponse, data),\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/api/v1/invitations/{id}/accept',\n ...options\n});\n\n/**\n * Execute an individual action for a dataset record\n *\n * Executes a single workflow action identified by decision_key for the given dataset record, bypassing filter and decision evaluation\n */\nexport const platformApiAgenticWorkflowOperationsControllerExecute = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowOperationsControllerExecuteData, ThrowOnError>) => (options.client ?? client).post<PlatformApiAgenticWorkflowOperationsControllerExecuteResponses, PlatformApiAgenticWorkflowOperationsControllerExecuteErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: vPlatformApiAgenticWorkflowOperationsControllerExecuteBody,\n path: vPlatformApiAgenticWorkflowOperationsControllerExecutePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowOperationsControllerExecuteResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/agentic-workflows/{workflow_slug}/execute',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Create datalake upload link\n *\n * Returns a presigned PUT URL for uploading a file (NDJSON or CSV) directly to the datalake's regulated cloud storage. The returned key lives under `uploads/<datalake_id>/` and can be passed to downstream endpoints (e.g. data activation client ingest-file) that accept a pre-uploaded storage key.\n */\nexport const platformApiDatalakeControllerCreateUploadLink = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDatalakeControllerCreateUploadLinkData, ThrowOnError>) => (options.client ?? client).post<PlatformApiDatalakeControllerCreateUploadLinkResponses, PlatformApiDatalakeControllerCreateUploadLinkErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: vPlatformApiDatalakeControllerCreateUploadLinkBody,\n path: vPlatformApiDatalakeControllerCreateUploadLinkPath,\n query: v.optional(vPlatformApiDatalakeControllerCreateUploadLinkQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDatalakeControllerCreateUploadLinkResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/upload-link',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List datalakes\n *\n * Returns a paginated list of datalakes for the authenticated tenant.\n */\nexport const platformApiDatalakeControllerIndex = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDatalakeControllerIndexData, ThrowOnError>) => (options.client ?? client).get<PlatformApiDatalakeControllerIndexResponses, PlatformApiDatalakeControllerIndexErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiDatalakeControllerIndexPath,\n query: v.optional(vPlatformApiDatalakeControllerIndexQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDatalakeControllerIndexResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes',\n ...options\n});\n\n/**\n * Create a datalake\n *\n * Creates a new datalake for the authenticated tenant.\n */\nexport const platformApiDatalakeControllerCreate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDatalakeControllerCreateData, ThrowOnError>) => (options.client ?? client).post<PlatformApiDatalakeControllerCreateResponses, PlatformApiDatalakeControllerCreateErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiDatalakeControllerCreateBody),\n path: vPlatformApiDatalakeControllerCreatePath,\n query: v.optional(vPlatformApiDatalakeControllerCreateQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDatalakeControllerCreateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Show a single DAC processing log\n *\n * Returns a single `DataActivationLog` row scoped to this DAC. Returns 404 if the id belongs to a different client.\n */\nexport const platformApiDataActivationClientControllerLogShow = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDataActivationClientControllerLogShowData, ThrowOnError>) => (options.client ?? client).get<PlatformApiDataActivationClientControllerLogShowResponses, PlatformApiDataActivationClientControllerLogShowErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiDataActivationClientControllerLogShowPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDataActivationClientControllerLogShowResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/data-activation-clients/{slug}/logs/{id}',\n ...options\n});\n\n/**\n * Replace a data source\n *\n * Replaces a data source with the full resource body. PUT semantics — all required fields must be present.\n */\nexport const platformApiDataSourceControllerUpdate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDataSourceControllerUpdateData, ThrowOnError>) => (options.client ?? client).put<PlatformApiDataSourceControllerUpdateResponses, PlatformApiDataSourceControllerUpdateErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiDataSourceControllerUpdateBody),\n path: vPlatformApiDataSourceControllerUpdatePath,\n query: v.optional(vPlatformApiDataSourceControllerUpdateQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDataSourceControllerUpdateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/data-sources/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete an agentic workflow\n *\n * Deletes a workflow and all associated actions, context datasets, and AI agent attachments.\n */\nexport const platformApiAgenticWorkflowControllerDelete = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowControllerDeleteData, ThrowOnError>) => (options.client ?? client).delete<PlatformApiAgenticWorkflowControllerDeleteResponses, PlatformApiAgenticWorkflowControllerDeleteErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAgenticWorkflowControllerDeletePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowControllerDeleteResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/agentic-workflows/{id}',\n ...options\n});\n\n/**\n * Get an agentic workflow\n *\n * Returns a single workflow by ID with nested AI agents.\n */\nexport const platformApiAgenticWorkflowControllerShow = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowControllerShowData, ThrowOnError>) => (options.client ?? client).get<PlatformApiAgenticWorkflowControllerShowResponses, PlatformApiAgenticWorkflowControllerShowErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAgenticWorkflowControllerShowPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowControllerShowResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/agentic-workflows/{id}',\n ...options\n});\n\n/**\n * Replace an agentic workflow\n *\n * Replaces a workflow with the full resource body. PUT semantics — all required fields must be present. The `ai_agents` array replaces the current set of attached agents transactionally.\n */\nexport const platformApiAgenticWorkflowControllerUpdate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowControllerUpdateData, ThrowOnError>) => (options.client ?? client).put<PlatformApiAgenticWorkflowControllerUpdateResponses, PlatformApiAgenticWorkflowControllerUpdateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiAgenticWorkflowControllerUpdateBody),\n path: vPlatformApiAgenticWorkflowControllerUpdatePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowControllerUpdateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/agentic-workflows/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Run workflow for matching records\n *\n * Executes the workflow for all dataset records matching the SQL WHERE clause.\n * Creates sampled events and enqueues run_workflow jobs. Returns the batch ID\n * and enqueued count. A WorkflowRunLog is created to track batch-level\n * progress, polled by a daily DynamicCron.\n *\n * ## Per-step artifacts (audit trail)\n *\n * Each per-row WorkflowExecutionLog (WEL) writes a fixed set of JSON\n * artifacts to the datalake's regulated cloud-storage bucket. The path is\n * deterministic and convention-driven — there is no separate listing\n * endpoint:\n *\n * workflows/{workflow_id}/executions/{wel_id}/event.json\n * workflows/{workflow_id}/executions/{wel_id}/filter.json\n * workflows/{workflow_id}/executions/{wel_id}/enrichment.json\n * workflows/{workflow_id}/executions/{wel_id}/error.json # only on failure\n *\n * | File | Written by stage | Body |\n * | ----------------- | -------------------------------------- | ------------------------------------------------------------------ |\n * | `event.json` | context build | full WorkflowContext (event_dataset, mdm_output, additional_context)|\n * | `filter.json` | filter eval (both pass and reject) | `{filter_expression, filter_result: bool}` |\n * | `enrichment.json` | enrichment terminal (success / skip / fail) | `{status: \"completed\" \\| \"failed\" \\| \"skipped\", <agent_slug>: ...}` |\n * | `error.json` | ANY pipeline failure | `{stage, error_code, ai_agent_slug, error_message, detail}` |\n *\n * `error.json`'s presence IS the failure signal — `WEL.error_message`\n * carries only a code-grade summary; the rich URL/HTTP-status/transport\n * detail lives ONLY in `error.json[\"detail\"]`. Engineers debugging a\n * failed run should download `error.json` for full context.\n *\n * ### Fetching an artifact\n *\n * Use the standard datalake download-link endpoint\n * (`POST /api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/download-link`)\n * with `bucket = <regulated bucket>` and the convention key above. Example:\n *\n * POST /api/v1/tenants/acme/datalakes/clinical/download-link\n * { \"bucket\": \"clinical-regulated\", \"key\": \"workflows/<wf_id>/executions/<wel_id>/error.json\" }\n *\n * The response carries a short-lived signed URL. The regulated bucket is\n * exposed on the datalake response as `regulated_cloud_storage.bucket`.\n *\n */\nexport const platformApiAgenticWorkflowOperationsControllerRunWorkflow = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowOperationsControllerRunWorkflowData, ThrowOnError>) => (options.client ?? client).post<PlatformApiAgenticWorkflowOperationsControllerRunWorkflowResponses, PlatformApiAgenticWorkflowOperationsControllerRunWorkflowErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: vPlatformApiAgenticWorkflowOperationsControllerRunWorkflowBody,\n path: vPlatformApiAgenticWorkflowOperationsControllerRunWorkflowPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowOperationsControllerRunWorkflowResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/agentic-workflows/{workflow_slug}/run-workflow',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Force-refresh a batch run log\n *\n * Triggers an immediate refresh of the batch run log metrics and merged artifacts.\n */\nexport const platformApiAgenticWorkflowOperationsControllerBatchLogRefresh = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowOperationsControllerBatchLogRefreshData, ThrowOnError>) => (options.client ?? client).post<PlatformApiAgenticWorkflowOperationsControllerBatchLogRefreshResponses, PlatformApiAgenticWorkflowOperationsControllerBatchLogRefreshErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAgenticWorkflowOperationsControllerBatchLogRefreshPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowOperationsControllerBatchLogRefreshResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/agentic-workflows/{workflow_slug}/batch-logs/{id}/refresh',\n ...options\n});\n\n/**\n * List registered dataset types for the datalake\n *\n * Returns the queryable dataset name strings for this specific datalake —\n * industry-registered atoms stringified (e.g. `legal_entity`, `action_log`\n * for foundation) plus each operator-defined `generic_table` by its\n * `name` (e.g. `orders`, `leads`). The literal placeholder\n * `\"generic_table\"` is NOT included; the polymorphic category is expanded\n * into the actual per-datalake table names.\n *\n * Used by `alvera apply` to drive post-migration smoke: for each returned\n * name, the CLI calls `GET /datasets/:name/search` with `page_size=1` and\n * asserts the response shape. That proves every advertised dataset is\n * queryable without coupling the CLI to per-industry table lists.\n *\n * Reads `Platform.Datalakes.datalake_dataset_types/1` — touches the\n * platform DB to enumerate generic tables for this datalake.\n *\n */\nexport const platformApiDatalakeControllerRegisteredDatasets = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDatalakeControllerRegisteredDatasetsData, ThrowOnError>) => (options.client ?? client).get<PlatformApiDatalakeControllerRegisteredDatasetsResponses, PlatformApiDatalakeControllerRegisteredDatasetsErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiDatalakeControllerRegisteredDatasetsPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDatalakeControllerRegisteredDatasetsResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/registered-datasets',\n ...options\n});\n\n/**\n * Ingest JSON data\n *\n * Ingest a single JSON record for processing through the data activation\n * pipeline. Returns immediately with `{batch_id, key, jobs_count}`; per-row\n * work runs asynchronously on the data-activation Oban queue.\n *\n * ## Per-batch artifacts (audit trail)\n *\n * The DAC pipeline does NOT use the `<step>.json` convention that workflows\n * do — its byproducts are NDJSON archives, surfaced on the\n * `DataActivationLog` row that the batch produces:\n *\n * | Field | Bucket | Body |\n * | --------------- | ------------ | ---------------------------------------------------------------------------------------- |\n * | `key` (response)| regulated | the raw JSON payload uploaded by THIS request |\n * | `input_files` | regulated | source artifacts consumed by the batch (one per ingest call merged into the batch) |\n * | `output_files` | mixed | merged NDJSON archives, one `{object_key, mode}` per bucket (`regulated` + `unregulated`)|\n *\n * ### Fetching diagnostic artifacts\n *\n * Use the same datalake download-link endpoint as workflow artifacts\n * (`POST /api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/download-link`):\n *\n * # raw payload that this ingest call uploaded\n * { \"bucket\": \"<regulated>\", \"key\": \"<response.key>\" }\n *\n * # per-bucket merged archive (after batch completes)\n * { \"bucket\": \"<regulated|unregulated>\", \"key\": \"<output_files[i].object_key>\" }\n *\n * `output_files[i].mode` tells you which bucket each archive lives in\n * (`regulated` for raw attrs, `unregulated` for tokenized). The regulated /\n * unregulated bucket names are exposed on the datalake response as\n * `regulated_cloud_storage.bucket` / `unregulated_cloud_storage.bucket`.\n *\n * ### Failure surfacing\n *\n * On a `{:error, _}` ingest response the platform returns `422` with an\n * `error` string. For pipeline failures (per-row Oban job exceptions),\n * the DataActivationLog row's `rows_ingested` will be lower than the\n * submitted count; per-row diagnostics live in the Oban job table\n * (`oban_jobs.errors`) keyed by `batch_id`. There is no `error.json`\n * artifact on the DAC path — that convention is workflow-only.\n *\n */\nexport const platformApiDataActivationClientControllerIngest = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDataActivationClientControllerIngestData, ThrowOnError>) => (options.client ?? client).post<PlatformApiDataActivationClientControllerIngestResponses, PlatformApiDataActivationClientControllerIngestErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: vPlatformApiDataActivationClientControllerIngestBody,\n path: vPlatformApiDataActivationClientControllerIngestPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDataActivationClientControllerIngestResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/data-activation-clients/{slug}/ingest',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Replace an action status updater\n *\n * Replaces an action status updater with the full resource body. PUT semantics — all required fields must be present.\n */\nexport const platformApiActionStatusUpdaterControllerUpdate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiActionStatusUpdaterControllerUpdateData, ThrowOnError>) => (options.client ?? client).put<PlatformApiActionStatusUpdaterControllerUpdateResponses, PlatformApiActionStatusUpdaterControllerUpdateErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiActionStatusUpdaterControllerUpdateBody),\n path: vPlatformApiActionStatusUpdaterControllerUpdatePath,\n query: v.optional(vPlatformApiActionStatusUpdaterControllerUpdateQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiActionStatusUpdaterControllerUpdateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/action-status-updaters/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List AI agents\n *\n * Returns a paginated list of AI agents for the authenticated tenant.\n */\nexport const platformApiAiAgentControllerIndex = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAiAgentControllerIndexData, ThrowOnError>) => (options.client ?? client).get<PlatformApiAiAgentControllerIndexResponses, PlatformApiAiAgentControllerIndexErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAiAgentControllerIndexPath,\n query: v.optional(vPlatformApiAiAgentControllerIndexQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAiAgentControllerIndexResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/ai-agents',\n ...options\n});\n\n/**\n * Create an AI agent\n *\n * Creates a new AI agent for the authenticated tenant.\n */\nexport const platformApiAiAgentControllerCreate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAiAgentControllerCreateData, ThrowOnError>) => (options.client ?? client).post<PlatformApiAiAgentControllerCreateResponses, PlatformApiAiAgentControllerCreateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiAiAgentControllerCreateBody),\n path: vPlatformApiAiAgentControllerCreatePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAiAgentControllerCreateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/ai-agents',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Get datalake domain metadata\n *\n * Returns a markdown document describing the datalake's data domain — its available standard resources and capabilities.\n */\nexport const platformApiDatalakeControllerMetadata = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDatalakeControllerMetadataData, ThrowOnError>) => (options.client ?? client).get<PlatformApiDatalakeControllerMetadataResponses, PlatformApiDatalakeControllerMetadataErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiDatalakeControllerMetadataPath,\n query: v.optional(vPlatformApiDatalakeControllerMetadataQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDatalakeControllerMetadataResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/metadata',\n ...options\n});\n\n/**\n * Delete an interoperability contract\n *\n * Deletes a contract. Protected types (`:system`, `:identity`) are rejected with 422. DAC mappings to this contract are removed via DB cascade.\n */\nexport const platformApiInteroperabilityContractControllerDelete = <ThrowOnError extends boolean = false>(options: Options<PlatformApiInteroperabilityContractControllerDeleteData, ThrowOnError>) => (options.client ?? client).delete<PlatformApiInteroperabilityContractControllerDeleteResponses, PlatformApiInteroperabilityContractControllerDeleteErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiInteroperabilityContractControllerDeletePath,\n query: v.optional(vPlatformApiInteroperabilityContractControllerDeleteQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiInteroperabilityContractControllerDeleteResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/interoperability-contracts/{slug}',\n ...options\n});\n\n/**\n * Get an interoperability contract\n *\n * Returns a single contract by datalake-scoped slug.\n */\nexport const platformApiInteroperabilityContractControllerShow = <ThrowOnError extends boolean = false>(options: Options<PlatformApiInteroperabilityContractControllerShowData, ThrowOnError>) => (options.client ?? client).get<PlatformApiInteroperabilityContractControllerShowResponses, PlatformApiInteroperabilityContractControllerShowErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiInteroperabilityContractControllerShowPath,\n query: v.optional(vPlatformApiInteroperabilityContractControllerShowQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiInteroperabilityContractControllerShowResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/interoperability-contracts/{slug}',\n ...options\n});\n\n/**\n * Replace an interoperability contract\n *\n * Replaces a contract with the full resource body. PUT semantics — all required fields must be present. `slug` is immutable.\n */\nexport const platformApiInteroperabilityContractControllerUpdate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiInteroperabilityContractControllerUpdateData, ThrowOnError>) => (options.client ?? client).put<PlatformApiInteroperabilityContractControllerUpdateResponses, PlatformApiInteroperabilityContractControllerUpdateErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiInteroperabilityContractControllerUpdateBody),\n path: vPlatformApiInteroperabilityContractControllerUpdatePath,\n query: v.optional(vPlatformApiInteroperabilityContractControllerUpdateQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiInteroperabilityContractControllerUpdateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/interoperability-contracts/{slug}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Get a workflow execution log\n *\n * Returns a single execution log with action execution details. Each action\n * execution log carries a `message_body` virtual field populated from the\n * datalake message linked via `message_id`. The `data_access_mode` query\n * parameter selects which datalake schema is read for the body — defaults\n * to the session's `data_access_mode` ceiling.\n *\n */\nexport const platformApiAgenticWorkflowOperationsControllerWorkflowLogShow = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowOperationsControllerWorkflowLogShowData, ThrowOnError>) => (options.client ?? client).get<PlatformApiAgenticWorkflowOperationsControllerWorkflowLogShowResponses, PlatformApiAgenticWorkflowOperationsControllerWorkflowLogShowErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogShowPath,\n query: v.optional(vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogShowQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogShowResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/agentic-workflows/{workflow_slug}/workflow-logs/{id}',\n ...options\n});\n\n/**\n * Ingest previously uploaded file\n *\n * Ingests a file that was uploaded via a presigned URL obtained from the datalake upload-link endpoint. The key must belong to this client's datalake prefix (`uploads/<datalake_id>/...`).\n */\nexport const platformApiDataActivationClientControllerIngestFile = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDataActivationClientControllerIngestFileData, ThrowOnError>) => (options.client ?? client).post<PlatformApiDataActivationClientControllerIngestFileResponses, PlatformApiDataActivationClientControllerIngestFileErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: vPlatformApiDataActivationClientControllerIngestFileBody,\n path: vPlatformApiDataActivationClientControllerIngestFilePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDataActivationClientControllerIngestFileResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/data-activation-clients/{slug}/ingest-file',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List data sources\n *\n * Returns a paginated list of data sources for the authenticated tenant.\n */\nexport const platformApiDataSourceControllerIndex = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDataSourceControllerIndexData, ThrowOnError>) => (options.client ?? client).get<PlatformApiDataSourceControllerIndexResponses, PlatformApiDataSourceControllerIndexErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiDataSourceControllerIndexPath,\n query: v.optional(vPlatformApiDataSourceControllerIndexQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDataSourceControllerIndexResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/data-sources',\n ...options\n});\n\n/**\n * Create a data source\n *\n * Creates a new data source for the authenticated tenant.\n */\nexport const platformApiDataSourceControllerCreate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDataSourceControllerCreateData, ThrowOnError>) => (options.client ?? client).post<PlatformApiDataSourceControllerCreateResponses, PlatformApiDataSourceControllerCreateErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiDataSourceControllerCreateBody),\n path: vPlatformApiDataSourceControllerCreatePath,\n query: v.optional(vPlatformApiDataSourceControllerCreateQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDataSourceControllerCreateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/data-sources',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Trigger a manual run of a Data Activation Client\n *\n * Enqueues a one-off fetch/ingest pipeline run. Empty body or omitted `tool_call` runs with the DAC's persisted `tool_call`. Supplying a `tool_call` map applies a one-shot polymorphic override for this run only — the persisted DAC record is not modified.\n */\nexport const platformApiDataActivationClientControllerRunManually = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDataActivationClientControllerRunManuallyData, ThrowOnError>) => (options.client ?? client).post<PlatformApiDataActivationClientControllerRunManuallyResponses, PlatformApiDataActivationClientControllerRunManuallyErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiDataActivationClientControllerRunManuallyBody),\n path: vPlatformApiDataActivationClientControllerRunManuallyPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDataActivationClientControllerRunManuallyResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/data-activation-clients/{slug}/run-manually',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete an AI agent\n *\n * Deletes an AI agent. Returns 409 if the agent is attached to a workflow.\n */\nexport const platformApiAiAgentControllerDelete = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAiAgentControllerDeleteData, ThrowOnError>) => (options.client ?? client).delete<PlatformApiAiAgentControllerDeleteResponses, PlatformApiAiAgentControllerDeleteErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAiAgentControllerDeletePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAiAgentControllerDeleteResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/ai-agents/{id}',\n ...options\n});\n\n/**\n * Get an AI agent\n *\n * Returns a single AI agent by ID.\n */\nexport const platformApiAiAgentControllerShow = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAiAgentControllerShowData, ThrowOnError>) => (options.client ?? client).get<PlatformApiAiAgentControllerShowResponses, PlatformApiAiAgentControllerShowErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAiAgentControllerShowPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAiAgentControllerShowResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/ai-agents/{id}',\n ...options\n});\n\n/**\n * Replace an AI agent\n *\n * Replaces an AI agent with the full resource body. PUT semantics — all required fields must be present.\n */\nexport const platformApiAiAgentControllerUpdate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAiAgentControllerUpdateData, ThrowOnError>) => (options.client ?? client).put<PlatformApiAiAgentControllerUpdateResponses, PlatformApiAiAgentControllerUpdateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiAiAgentControllerUpdateBody),\n path: vPlatformApiAiAgentControllerUpdatePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAiAgentControllerUpdateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/ai-agents/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Confirm a user (admin bypass)\n *\n * Marks a user account as confirmed without requiring an email-confirmation\n * token. Idempotent — confirming an already-confirmed user is a 200 no-op\n * that returns the existing `confirmed_at` timestamp.\n *\n * Wraps `Accounts.confirm_user!/1` verbatim — exactly the primitive that\n * backs the dev/admin email-confirm path in the LiveView UI. **Zero new\n * business logic.**\n *\n * Powerful primitive: bypasses the regular email-confirmation flow. Every\n * successful call is structured-logged with `caller_user_id` and\n * `target_user_id` for forensic trail.\n *\n * **Requires platform-admin authentication** (`User.role == :admin`).\n *\n */\nexport const platformApiAdminControllerConfirmUser = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAdminControllerConfirmUserData, ThrowOnError>) => (options.client ?? client).put<PlatformApiAdminControllerConfirmUserResponses, PlatformApiAdminControllerConfirmUserErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAdminControllerConfirmUserPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAdminControllerConfirmUserResponse, data),\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/api/v1/admin/users/{id}/confirm',\n ...options\n});\n\n/**\n * List connected apps\n *\n * Returns a paginated list of connected apps for the authenticated tenant.\n */\nexport const platformApiConnectedAppMgmtControllerIndex = <ThrowOnError extends boolean = false>(options: Options<PlatformApiConnectedAppMgmtControllerIndexData, ThrowOnError>) => (options.client ?? client).get<PlatformApiConnectedAppMgmtControllerIndexResponses, PlatformApiConnectedAppMgmtControllerIndexErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiConnectedAppMgmtControllerIndexPath,\n query: v.optional(vPlatformApiConnectedAppMgmtControllerIndexQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiConnectedAppMgmtControllerIndexResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/connected-apps',\n ...options\n});\n\n/**\n * Create a connected app\n *\n * Creates a new connected app with automatic API key provisioning.\n */\nexport const platformApiConnectedAppMgmtControllerCreate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiConnectedAppMgmtControllerCreateData, ThrowOnError>) => (options.client ?? client).post<PlatformApiConnectedAppMgmtControllerCreateResponses, PlatformApiConnectedAppMgmtControllerCreateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiConnectedAppMgmtControllerCreateBody),\n path: vPlatformApiConnectedAppMgmtControllerCreatePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiConnectedAppMgmtControllerCreateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/connected-apps',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Revoke current session\n *\n * Revokes the current Bearer session — deactivates the session and deletes\n * the linked UserToken. The Bearer token becomes immediately invalid.\n *\n * Only works with `Authorization: Bearer <session_token>` (not X-API-Key).\n *\n * **Requires Bearer authentication.**\n *\n */\nexport const platformApiSessionControllerDelete = <ThrowOnError extends boolean = false>(options?: Options<PlatformApiSessionControllerDeleteData, ThrowOnError>) => (options?.client ?? client).delete<PlatformApiSessionControllerDeleteResponses, PlatformApiSessionControllerDeleteErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: v.optional(v.never()),\n query: v.optional(v.never())\n }), data),\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/api/v1/sessions',\n ...options\n});\n\n/**\n * Create a session (human auth)\n *\n * Exchange user credentials for a Bearer session token.\n *\n * Send `{email, password}` (with optional `tenant_slug`) to authenticate a\n * human user and receive a session token. Use the returned `session_token`\n * as `Authorization: Bearer <session_token>` on subsequent API requests.\n *\n * When `tenant_slug` is **omitted**, returns a tenant-less Bearer for\n * pre-tenant flows: admin operations under `/api/v1/admin/...` and creating\n * your first tenant via `POST /api/v1/tenants`. Tenant-scoped routes will\n * reject such tokens with 403.\n *\n * When `tenant_slug` is **provided**, returns a tenant-scoped Bearer with\n * the caller's membership role (or 401 if the user has no membership in\n * that tenant).\n *\n * Optionally specify `expires_in` (seconds) to control session duration.\n * Default: 86400 (24 hours). Maximum: 2592000 (30 days).\n *\n * For M2M (server-to-server) authentication, use `X-API-Key` header directly\n * on each request instead — no session exchange needed.\n *\n * **No authentication required** — this endpoint authenticates the caller.\n *\n */\nexport const platformApiSessionControllerCreate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiSessionControllerCreateData, ThrowOnError>) => (options.client ?? client).post<PlatformApiSessionControllerCreateResponses, PlatformApiSessionControllerCreateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: vPlatformApiSessionControllerCreateBody,\n path: v.optional(v.never()),\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiSessionControllerCreateResponse, data),\n url: '/api/v1/sessions',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Start or restart refresh polling for a batch run log\n *\n * Creates a DynamicCron job to poll this batch. Idempotent — if cron already exists, it's a no-op.\n */\nexport const platformApiAgenticWorkflowOperationsControllerBatchLogStart = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowOperationsControllerBatchLogStartData, ThrowOnError>) => (options.client ?? client).post<PlatformApiAgenticWorkflowOperationsControllerBatchLogStartResponses, PlatformApiAgenticWorkflowOperationsControllerBatchLogStartErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAgenticWorkflowOperationsControllerBatchLogStartPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowOperationsControllerBatchLogStartResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/agentic-workflows/{workflow_slug}/batch-logs/{id}/start',\n ...options\n});\n\n/**\n * Update message tracking fields for a page\n *\n * Updates tracking timestamps (opened_at, form_submitted_at) on the message\n * linked to a page token. Called by the connected app when a user opens a page\n * or submits a form.\n *\n * **Requires X-API-Key authentication.**\n *\n */\nexport const platformApiConnectedAppControllerUpdateMessageTracking = <ThrowOnError extends boolean = false>(options: Options<PlatformApiConnectedAppControllerUpdateMessageTrackingData, ThrowOnError>) => (options.client ?? client).patch<PlatformApiConnectedAppControllerUpdateMessageTrackingResponses, PlatformApiConnectedAppControllerUpdateMessageTrackingErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: vPlatformApiConnectedAppControllerUpdateMessageTrackingBody,\n path: vPlatformApiConnectedAppControllerUpdateMessageTrackingPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiConnectedAppControllerUpdateMessageTrackingResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/connected-apps/{slug}/update-message-tracking',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List agentic workflows\n *\n * Returns a paginated list of workflows for a datalake.\n */\nexport const platformApiAgenticWorkflowControllerIndex = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowControllerIndexData, ThrowOnError>) => (options.client ?? client).get<PlatformApiAgenticWorkflowControllerIndexResponses, PlatformApiAgenticWorkflowControllerIndexErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAgenticWorkflowControllerIndexPath,\n query: v.optional(vPlatformApiAgenticWorkflowControllerIndexQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowControllerIndexResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/agentic-workflows',\n ...options\n});\n\n/**\n * Create an agentic workflow\n *\n * Creates a new workflow. Attach AI agents via the `ai_agents` array.\n */\nexport const platformApiAgenticWorkflowControllerCreate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowControllerCreateData, ThrowOnError>) => (options.client ?? client).post<PlatformApiAgenticWorkflowControllerCreateResponses, PlatformApiAgenticWorkflowControllerCreateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiAgenticWorkflowControllerCreateBody),\n path: vPlatformApiAgenticWorkflowControllerCreatePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowControllerCreateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/agentic-workflows',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Get DAC dataset metadata\n *\n * Returns a markdown document describing the fields of each dataset connected to this data activation client via its interoperability contracts.\n */\nexport const platformApiDataActivationClientControllerMetadata = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDataActivationClientControllerMetadataData, ThrowOnError>) => (options.client ?? client).get<PlatformApiDataActivationClientControllerMetadataResponses, PlatformApiDataActivationClientControllerMetadataErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiDataActivationClientControllerMetadataPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDataActivationClientControllerMetadataResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/data-activation-clients/{slug}/metadata',\n ...options\n});\n\n/**\n * Stop refresh polling for a batch run log\n *\n * Deletes the DynamicCron job that polls this batch. The batch log is NOT deleted.\n */\nexport const platformApiAgenticWorkflowOperationsControllerBatchLogStop = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowOperationsControllerBatchLogStopData, ThrowOnError>) => (options.client ?? client).post<PlatformApiAgenticWorkflowOperationsControllerBatchLogStopResponses, PlatformApiAgenticWorkflowOperationsControllerBatchLogStopErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAgenticWorkflowOperationsControllerBatchLogStopPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowOperationsControllerBatchLogStopResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/agentic-workflows/{workflow_slug}/batch-logs/{id}/stop',\n ...options\n});\n\n/**\n * List processing logs for a Data Activation Client\n *\n * Returns a Flop-paginated list of `DataActivationLog` rows for this DAC. One log per `(batch_id, dataset_table)` — a single run produces multiple log rows, one per dataset table the DAC writes into. Filter or group client-side on `batch_id` to reconstruct a batch-level view.\n */\nexport const platformApiDataActivationClientControllerLogsIndex = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDataActivationClientControllerLogsIndexData, ThrowOnError>) => (options.client ?? client).get<PlatformApiDataActivationClientControllerLogsIndexResponses, PlatformApiDataActivationClientControllerLogsIndexErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiDataActivationClientControllerLogsIndexPath,\n query: v.optional(vPlatformApiDataActivationClientControllerLogsIndexQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDataActivationClientControllerLogsIndexResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/data-activation-clients/{slug}/logs',\n ...options\n});\n\n/**\n * Delete a tool\n *\n * Deletes a tool. Returns 409 if the tool is referenced by another resource.\n */\nexport const platformApiToolControllerDelete = <ThrowOnError extends boolean = false>(options: Options<PlatformApiToolControllerDeleteData, ThrowOnError>) => (options.client ?? client).delete<PlatformApiToolControllerDeleteResponses, PlatformApiToolControllerDeleteErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiToolControllerDeletePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiToolControllerDeleteResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/tools/{id}',\n ...options\n});\n\n/**\n * Get a tool\n *\n * Returns a single tool by ID.\n */\nexport const platformApiToolControllerShow = <ThrowOnError extends boolean = false>(options: Options<PlatformApiToolControllerShowData, ThrowOnError>) => (options.client ?? client).get<PlatformApiToolControllerShowResponses, PlatformApiToolControllerShowErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiToolControllerShowPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiToolControllerShowResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/tools/{id}',\n ...options\n});\n\n/**\n * Replace a tool\n *\n * Replaces a tool with the full resource body. PUT semantics — all required fields must be present.\n */\nexport const platformApiToolControllerUpdate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiToolControllerUpdateData, ThrowOnError>) => (options.client ?? client).put<PlatformApiToolControllerUpdateResponses, PlatformApiToolControllerUpdateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiToolControllerUpdateBody),\n path: vPlatformApiToolControllerUpdatePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiToolControllerUpdateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/tools/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Get workflow metadata\n *\n * Returns a markdown document describing the workflow's variable pipeline — available variables at each node (event dataset, MDM, context datasets, enrichment, filter, decision, actions).\n */\nexport const platformApiAgenticWorkflowControllerMetadata = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowControllerMetadataData, ThrowOnError>) => (options.client ?? client).get<PlatformApiAgenticWorkflowControllerMetadataResponses, PlatformApiAgenticWorkflowControllerMetadataErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAgenticWorkflowControllerMetadataPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowControllerMetadataResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/agentic-workflows/{id}/metadata',\n ...options\n});\n\n/**\n * Health check\n *\n * Public health check endpoint that returns:\n * - Application version\n * - Database connectivity status (SELECT 1 query)\n * - Current timestamp\n *\n * **No authentication required.**\n *\n */\nexport const platformApiPingControllerPing = <ThrowOnError extends boolean = false>(options?: Options<PlatformApiPingControllerPingData, ThrowOnError>) => (options?.client ?? client).get<PlatformApiPingControllerPingResponses, PlatformApiPingControllerPingErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: v.optional(v.never()),\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiPingControllerPingResponse, data),\n url: '/api/ping',\n ...options\n});\n\n/**\n * Sync routes\n *\n * Enqueues a background job to fetch routes from the connected app's `/.well-known/routes.json` endpoint and update the stored routes.\n */\nexport const platformApiConnectedAppMgmtControllerSyncRoutes = <ThrowOnError extends boolean = false>(options: Options<PlatformApiConnectedAppMgmtControllerSyncRoutesData, ThrowOnError>) => (options.client ?? client).post<PlatformApiConnectedAppMgmtControllerSyncRoutesResponses, PlatformApiConnectedAppMgmtControllerSyncRoutesErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiConnectedAppMgmtControllerSyncRoutesPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiConnectedAppMgmtControllerSyncRoutesResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/connected-apps/{id}/sync-routes',\n ...options\n});\n\n/**\n * List data activation clients\n *\n * Returns a paginated list of DACs for the datalake in the path.\n */\nexport const platformApiDataActivationClientControllerIndex = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDataActivationClientControllerIndexData, ThrowOnError>) => (options.client ?? client).get<PlatformApiDataActivationClientControllerIndexResponses, PlatformApiDataActivationClientControllerIndexErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiDataActivationClientControllerIndexPath,\n query: v.optional(vPlatformApiDataActivationClientControllerIndexQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDataActivationClientControllerIndexResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/data-activation-clients',\n ...options\n});\n\n/**\n * Create a data activation client\n *\n * Creates a new DAC. `slug` is auto-generated from `name`. `tool_call` is a polymorphic object whose shape depends on the `tool_call_type` discriminator — see `tool_call_type` enum for valid variants (RESTCall, SQLQueryCall, SFTPCall, SharePointExcelCall, AWSLambdaCall, ManualUploadCall, S3Call).\n */\nexport const platformApiDataActivationClientControllerCreate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDataActivationClientControllerCreateData, ThrowOnError>) => (options.client ?? client).post<PlatformApiDataActivationClientControllerCreateResponses, PlatformApiDataActivationClientControllerCreateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiDataActivationClientControllerCreateBody),\n path: vPlatformApiDataActivationClientControllerCreatePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDataActivationClientControllerCreateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/data-activation-clients',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Sign up a new user\n *\n * Register a new user account. Mirrors the `/auth/register` LiveView form\n * submission shape — wraps `Accounts.register_user/2` verbatim with no\n * business-logic divergence.\n *\n * The created user is **unconfirmed** and has **no tenant memberships**. To\n * obtain a Bearer token, the user must first be confirmed (via the email\n * confirmation flow in production, or via `PUT /api/v1/admin/users/:id/confirm`\n * in test bootstrap), then exchange credentials at `POST /api/v1/sessions`.\n *\n * No authentication required — this endpoint is the entry point for new users.\n *\n */\nexport const platformApiAuthControllerSignUp = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAuthControllerSignUpData, ThrowOnError>) => (options.client ?? client).post<PlatformApiAuthControllerSignUpResponses, PlatformApiAuthControllerSignUpErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: vPlatformApiAuthControllerSignUpBody,\n path: v.optional(v.never()),\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAuthControllerSignUpResponse, data),\n url: '/api/v1/auth/sign-up',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Verify subject identity\n *\n * Verify a subject's identity against their master record using fuzzy matching.\n *\n * Supports verification by:\n * - **family_name** — Jaro distance >= 0.85\n * - **given_name** — Jaro distance >= 0.80\n * - **birth_date** — Fuzzy component matching >= 0.80\n * - **identifiers** — Exact (system, value) match\n *\n * At least one verification field is required.\n *\n * **Requires X-API-Key authentication.**\n *\n */\nexport const platformApiMdmControllerVerify = <ThrowOnError extends boolean = false>(options: Options<PlatformApiMdmControllerVerifyData, ThrowOnError>) => (options.client ?? client).post<PlatformApiMdmControllerVerifyResponses, PlatformApiMdmControllerVerifyErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: vPlatformApiMdmControllerVerifyBody,\n path: vPlatformApiMdmControllerVerifyPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiMdmControllerVerifyResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/mdm/verify',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Get a connected app\n *\n * Returns a single connected app by ID.\n */\nexport const platformApiConnectedAppMgmtControllerShow = <ThrowOnError extends boolean = false>(options: Options<PlatformApiConnectedAppMgmtControllerShowData, ThrowOnError>) => (options.client ?? client).get<PlatformApiConnectedAppMgmtControllerShowResponses, PlatformApiConnectedAppMgmtControllerShowErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiConnectedAppMgmtControllerShowPath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiConnectedAppMgmtControllerShowResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/connected-apps/{id}',\n ...options\n});\n\n/**\n * Replace a connected app\n *\n * Replaces a connected app with the full resource body. PUT semantics — all required fields must be present.\n */\nexport const platformApiConnectedAppMgmtControllerUpdate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiConnectedAppMgmtControllerUpdateData, ThrowOnError>) => (options.client ?? client).put<PlatformApiConnectedAppMgmtControllerUpdateResponses, PlatformApiConnectedAppMgmtControllerUpdateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiConnectedAppMgmtControllerUpdateBody),\n path: vPlatformApiConnectedAppMgmtControllerUpdatePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiConnectedAppMgmtControllerUpdateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/connected-apps/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Invite a user to the tenant\n *\n * Creates a `tenant_admin`-issued invitation. Mirrors the LiveView flow at\n * `/app/team` → \"Invite new member\". Wraps `Tenants.send_tenant_invitation/3`\n * verbatim, including the email send.\n *\n * The `role` enum is **membership-level** (`member`, `researcher`, `admin`),\n * NOT the platform-wide `User.role` enum — privilege-escalation safe by\n * construction.\n *\n * Requires a tenant-scoped Bearer with membership role `:admin`\n * (`current_role.name == \"tenant_admin\"`).\n *\n */\nexport const platformApiInvitationControllerCreate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiInvitationControllerCreateData, ThrowOnError>) => (options.client ?? client).post<PlatformApiInvitationControllerCreateResponses, PlatformApiInvitationControllerCreateErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: vPlatformApiInvitationControllerCreateBody,\n path: vPlatformApiInvitationControllerCreatePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiInvitationControllerCreateResponse, data),\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/api/v1/tenants/{tenant_slug}/invitations',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List workflow execution logs\n *\n * Returns a paginated list of per-event execution logs for a workflow.\n */\nexport const platformApiAgenticWorkflowOperationsControllerWorkflowLogsIndex = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowOperationsControllerWorkflowLogsIndexData, ThrowOnError>) => (options.client ?? client).get<PlatformApiAgenticWorkflowOperationsControllerWorkflowLogsIndexResponses, PlatformApiAgenticWorkflowOperationsControllerWorkflowLogsIndexErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogsIndexPath,\n query: v.optional(vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogsIndexQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowOperationsControllerWorkflowLogsIndexResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/agentic-workflows/{workflow_slug}/workflow-logs',\n ...options\n});\n\n/**\n * Page results from a UserSearch — outer SQL chunk + inner resource Flop\n *\n * Two-tier pagination at two layers:\n *\n * * **Outer** — `outer_pagination[page]` / `outer_pagination[page_size]`\n * (defaults `1` / `1000`, max `1000`) pages cached IDs from\n * `search_results`. The cap is dictated by Postgres' `WHERE id IN (^ids)`\n * plan — past ~1k parameters the planner regresses.\n * * **Inner** — `inner_search[page]`, `inner_search[page_size]` (defaults\n * `1` / `20`), `inner_search[order_direction]` (sort on the schema's\n * `:global_search` compound), `inner_search[global_search]` (single\n * ILIKE-OR text-search knob).\n *\n * Response carries both metas under `meta.sql` and `meta.flop`. A caller\n * that only drives the inner page sees `meta.sql.has_next_page=true` when\n * the SQL search isn't exhausted; advancing `outer_pagination[page]`\n * fetches the next chunk.\n *\n */\nexport const platformApiDatasetControllerSearch = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDatasetControllerSearchData, ThrowOnError>) => (options.client ?? client).get<PlatformApiDatasetControllerSearchResponses, PlatformApiDatasetControllerSearchErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiDatasetControllerSearchPath,\n query: v.optional(vPlatformApiDatasetControllerSearchQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDatasetControllerSearchResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/datasets/{dataset}/search',\n ...options\n});\n\n/**\n * Create and execute a SQL search for a dataset\n *\n * Creates a `UserSearch` row, runs `INSERT INTO search_results SELECT ... WHERE <search_query>` against the regulated schema, and returns the `UserSearch` resource (including `status`, `results_count`, and `error_message`). The session's `data_access_mode` controls which schema is queried.\n */\nexport const platformApiDatasetControllerCreateUserSearch = <ThrowOnError extends boolean = false>(options: Options<PlatformApiDatasetControllerCreateUserSearchData, ThrowOnError>) => (options.client ?? client).post<PlatformApiDatasetControllerCreateUserSearchResponses, PlatformApiDatasetControllerCreateUserSearchErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiDatasetControllerCreateUserSearchBody),\n path: vPlatformApiDatasetControllerCreateUserSearchPath,\n query: v.optional(vPlatformApiDatasetControllerCreateUserSearchQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiDatasetControllerCreateUserSearchResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/datasets/{dataset}/user-searches',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List batch run logs\n *\n * Returns a paginated list of batch-level workflow run logs.\n */\nexport const platformApiAgenticWorkflowOperationsControllerBatchLogsIndex = <ThrowOnError extends boolean = false>(options: Options<PlatformApiAgenticWorkflowOperationsControllerBatchLogsIndexData, ThrowOnError>) => (options.client ?? client).get<PlatformApiAgenticWorkflowOperationsControllerBatchLogsIndexResponses, PlatformApiAgenticWorkflowOperationsControllerBatchLogsIndexErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiAgenticWorkflowOperationsControllerBatchLogsIndexPath,\n query: v.optional(vPlatformApiAgenticWorkflowOperationsControllerBatchLogsIndexQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiAgenticWorkflowOperationsControllerBatchLogsIndexResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/agentic-workflows/{workflow_slug}/batch-logs',\n ...options\n});\n\n/**\n * List action status updaters\n *\n * Returns a paginated list of action status updaters for the authenticated tenant.\n */\nexport const platformApiActionStatusUpdaterControllerIndex = <ThrowOnError extends boolean = false>(options: Options<PlatformApiActionStatusUpdaterControllerIndexData, ThrowOnError>) => (options.client ?? client).get<PlatformApiActionStatusUpdaterControllerIndexResponses, PlatformApiActionStatusUpdaterControllerIndexErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(v.never()),\n path: vPlatformApiActionStatusUpdaterControllerIndexPath,\n query: v.optional(vPlatformApiActionStatusUpdaterControllerIndexQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiActionStatusUpdaterControllerIndexResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/action-status-updaters',\n ...options\n});\n\n/**\n * Create an action status updater\n *\n * Creates a new action status updater for the authenticated tenant.\n */\nexport const platformApiActionStatusUpdaterControllerCreate = <ThrowOnError extends boolean = false>(options: Options<PlatformApiActionStatusUpdaterControllerCreateData, ThrowOnError>) => (options.client ?? client).post<PlatformApiActionStatusUpdaterControllerCreateResponses, PlatformApiActionStatusUpdaterControllerCreateErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: v.optional(vPlatformApiActionStatusUpdaterControllerCreateBody),\n path: vPlatformApiActionStatusUpdaterControllerCreatePath,\n query: v.optional(vPlatformApiActionStatusUpdaterControllerCreateQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiActionStatusUpdaterControllerCreateResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/action-status-updaters',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Run a contract against a payload (sandbox)\n *\n * Runs the contract's `filter → transform → mdm_input` pipeline against the supplied JSON row. Stateless — no DB writes. Use for template authoring/testing.\n */\nexport const platformApiInteroperabilityContractControllerRun = <ThrowOnError extends boolean = false>(options: Options<PlatformApiInteroperabilityContractControllerRunData, ThrowOnError>) => (options.client ?? client).post<PlatformApiInteroperabilityContractControllerRunResponses, PlatformApiInteroperabilityContractControllerRunErrors, ThrowOnError>({\n querySerializer: { parameters: { filters: { array: { style: 'deepObject' } } } },\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: vPlatformApiInteroperabilityContractControllerRunBody,\n path: vPlatformApiInteroperabilityContractControllerRunPath,\n query: v.optional(vPlatformApiInteroperabilityContractControllerRunQuery)\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiInteroperabilityContractControllerRunResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/datalakes/{datalake_slug}/interoperability-contracts/{slug}/run',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Resolve a short URL token to a page\n *\n * Given a connected app slug and a Puid short URL token, resolves the token to\n * the pre-stored route path and MDM subject ID. The Cloudflare app calls this\n * endpoint when a customer clicks a short URL, forwarding the original client\n * headers (user-agent, IP, country) in the request body.\n *\n * When the page token is linked to a message (via workflow action execution),\n * the regulated message details (raw body, channel, status) are included in\n * the response.\n *\n * **Requires X-API-Key authentication.**\n *\n */\nexport const platformApiConnectedAppControllerResolvePage = <ThrowOnError extends boolean = false>(options: Options<PlatformApiConnectedAppControllerResolvePageData, ThrowOnError>) => (options.client ?? client).post<PlatformApiConnectedAppControllerResolvePageResponses, PlatformApiConnectedAppControllerResolvePageErrors, ThrowOnError>({\n requestValidator: async (data: unknown) => await v.parseAsync(v.object({\n body: vPlatformApiConnectedAppControllerResolvePageBody,\n path: vPlatformApiConnectedAppControllerResolvePagePath,\n query: v.optional(v.never())\n }), data),\n responseValidator: async (data: unknown) => await v.parseAsync(vPlatformApiConnectedAppControllerResolvePageResponse, data),\n security: [{ name: 'X-API-Key', type: 'apiKey' }],\n url: '/api/v1/tenants/{tenant_slug}/connected-apps/{slug}/resolve-page',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n","/**\n * Alvera Platform SDK — typed client.\n *\n * Architecture:\n * generated/ auto-generated by @hey-api/openapi-ts (do not edit)\n * sdk.gen.ts type-safe endpoint methods\n * types.gen.ts request/response types from OpenAPI spec\n * client.gen.ts HTTP client instance\n *\n * client.ts (this file) override layer\n * - configures the hey-api client with auth\n * - exposes a curated, ergonomic resource surface\n * - provides corrected types for fields the OpenAPI spec leaves as `object`\n *\n * Regenerate generated/ with: pnpm regen\n */\n\nimport { client } from './generated/client.gen.js';\nimport { type Client, createClient } from './generated/client/index.js';\nimport type {\n ActionStatusUpdaterCloudWatchQueryRequest,\n ActionStatusUpdaterRestCallRequest,\n DatalakeRequestWritable,\n DataSourceRequest,\n ToolRequestWritable,\n} from './generated/types.gen.js';\n\n/**\n * Forward-compat alias for DataSource write paths.\n *\n * Hey-api emits `<Schema>RequestWritable` variants only when a schema\n * has at least one `writeOnly: true` field — otherwise the Writable\n * shape would be byte-identical to the bare Request type, so it skips\n * the duplicate. DataSource has no writeOnly fields today, so\n * `DataSourceRequestWritable` is not generated.\n *\n * Aliasing it here gives every write path a uniform `*Writable` import\n * name (Datalake / Tool / DataSource), matching the Elixir-test\n * convention of typing every Create/Update body explicitly. When a\n * writeOnly field is eventually added to DataSource, hey-api will emit\n * its own `DataSourceRequestWritable`; at that point this alias should\n * be deleted in favour of the generated one, and the TS compiler will\n * surface the structural change at every write call-site.\n */\nexport type DataSourceRequestWritable = DataSourceRequest;\nimport {\n platformApiActionStatusUpdaterControllerCreate,\n platformApiAdminControllerConfirmUser,\n platformApiAuthControllerSignUp,\n platformApiDatasetControllerCreateUserSearch,\n platformApiInvitationControllerAccept,\n platformApiInvitationControllerCreate,\n platformApiInvitationControllerIndex,\n platformApiTenantControllerCreate,\n platformApiActionStatusUpdaterControllerIndex,\n platformApiActionStatusUpdaterControllerUpdate,\n platformApiAgenticWorkflowControllerCreate,\n platformApiAgenticWorkflowControllerDelete,\n platformApiAgenticWorkflowControllerIndex,\n platformApiAgenticWorkflowControllerMetadata,\n platformApiAgenticWorkflowControllerShow,\n platformApiAgenticWorkflowControllerUpdate,\n platformApiAgenticWorkflowOperationsControllerBatchLogRefresh,\n platformApiAgenticWorkflowOperationsControllerBatchLogShow,\n platformApiAgenticWorkflowOperationsControllerBatchLogStart,\n platformApiAgenticWorkflowOperationsControllerBatchLogStop,\n platformApiAgenticWorkflowOperationsControllerBatchLogsIndex,\n platformApiAgenticWorkflowOperationsControllerExecute,\n platformApiAgenticWorkflowOperationsControllerRunWorkflow,\n platformApiAgenticWorkflowOperationsControllerWorkflowLogDownload,\n platformApiAgenticWorkflowOperationsControllerWorkflowLogShow,\n platformApiAgenticWorkflowOperationsControllerWorkflowLogsIndex,\n platformApiAiAgentControllerCreate,\n platformApiAiAgentControllerDelete,\n platformApiAiAgentControllerIndex,\n platformApiAiAgentControllerShow,\n platformApiAiAgentControllerUpdate,\n platformApiConnectedAppControllerResolvePage,\n platformApiConnectedAppControllerUpdateMessageTracking,\n platformApiConnectedAppMgmtControllerCreate,\n platformApiConnectedAppMgmtControllerIndex,\n platformApiConnectedAppMgmtControllerShow,\n platformApiConnectedAppMgmtControllerSyncRoutes,\n platformApiConnectedAppMgmtControllerUpdate,\n platformApiDataActivationClientControllerCreate,\n platformApiDataActivationClientControllerDelete,\n platformApiDataActivationClientControllerIndex,\n platformApiDataActivationClientControllerIngest,\n platformApiDataActivationClientControllerIngestFile,\n platformApiDataActivationClientControllerLogShow,\n platformApiDataActivationClientControllerLogsIndex,\n platformApiDataActivationClientControllerMetadata,\n platformApiDataActivationClientControllerRunManually,\n platformApiDataActivationClientControllerShow,\n platformApiDataActivationClientControllerUpdate,\n platformApiDatalakeControllerCreate,\n platformApiDatalakeControllerCreateDownloadLink,\n platformApiDatalakeControllerCreateUploadLink,\n platformApiDatalakeControllerIndex,\n platformApiDatalakeControllerMetadata,\n platformApiDatalakeControllerMigrate,\n platformApiDatalakeControllerRegisteredDatasets,\n platformApiDatalakeControllerShow,\n platformApiDatalakeControllerUpdate,\n platformApiDatasetControllerDatasetMetadata,\n platformApiDatasetControllerSearch,\n platformApiDataSourceControllerCreate,\n platformApiDataSourceControllerIndex,\n platformApiDataSourceControllerUpdate,\n platformApiGenericTableControllerCreate,\n platformApiGenericTableControllerIndex,\n platformApiInteroperabilityContractControllerCreate,\n platformApiInteroperabilityContractControllerDelete,\n platformApiInteroperabilityContractControllerIndex,\n platformApiInteroperabilityContractControllerMetadata,\n platformApiInteroperabilityContractControllerRun,\n platformApiInteroperabilityContractControllerShow,\n platformApiInteroperabilityContractControllerUpdate,\n platformApiMdmControllerVerify,\n platformApiPingControllerPing,\n platformApiSessionControllerCreate,\n platformApiSessionControllerDelete,\n platformApiSessionControllerVerify,\n platformApiTenantControllerIndex,\n platformApiToolControllerCreate,\n platformApiToolControllerDelete,\n platformApiToolControllerIndex,\n platformApiToolControllerShow,\n platformApiToolControllerTestInvocation,\n platformApiToolControllerUpdate,\n} from './generated/sdk.gen.js';\n\n// Re-export generated types that are correct as-is\nexport type {\n ActionStatusUpdaterCloudWatchQueryRequest,\n ActionStatusUpdaterResponse,\n ActionStatusUpdaterRestCallRequest,\n AgenticWorkflowListResponse,\n AgenticWorkflowRequestWritable,\n AgenticWorkflowResponse,\n AiAgentResponse,\n BatchLogListResponse,\n BatchLogResponse,\n ConnectedAppListResponse,\n ConnectedAppRequestWritable,\n ConnectedAppResponse,\n DataActivationClientListResponse,\n DataActivationClientLogListResponse,\n DataActivationClientLogResponse,\n DataActivationClientRequestWritable,\n DataActivationClientResponse,\n DatalakeRequestWritable,\n DatalakeResponse,\n DatasetSearchResponse,\n DataSourceRequest,\n DataSourceResponse,\n DownloadUrlResponse,\n ExecuteActionRequest,\n ExecuteActionResponse,\n GenericTableResponse,\n IngestFileRequest,\n IngestRequest,\n InteroperabilityContractListResponse,\n InteroperabilityContractRequestWritable,\n InteroperabilityContractResponse,\n InteroperabilityRunRequest,\n InteroperabilityRunResponse,\n MdmVerifyRequest,\n MdmVerifyResponse,\n PaginationMeta,\n ResolvePageRequest,\n RunManuallyRequestWritable,\n RunManuallyResponse,\n RunWorkflowRequest,\n RunWorkflowResponse,\n SessionResponse,\n SyncRoutesResponse,\n TenantListResponse,\n TenantResponse,\n ToolRequest,\n ToolRequestWritable,\n ToolResponse,\n UpdatePageRequest,\n UploadLinkRequest,\n UploadLinkResponse,\n WorkflowLogListResponse,\n WorkflowLogResponse,\n} from './generated/types.gen.js';\n\n// ---------------------------------------------------------------------------\n// Manual type overrides — spec has untyped `object` fields for these\n// ---------------------------------------------------------------------------\n\nexport interface GenericTableColumn {\n name: string;\n title?: string;\n type?: 'string' | 'integer' | 'float' | 'boolean' | 'date' | 'datetime' | 'time';\n description: string;\n privacy_requirement?: 'none' | 'tokenize' | 'redact_only';\n is_required?: boolean;\n is_unique?: boolean;\n is_array?: boolean;\n}\n\nexport interface CreateGenericTableRequest {\n title: string;\n description?: string;\n data_domain?:\n | 'healthcare'\n | 'core_banking'\n | 'payment_risk'\n | 'accounts_receivable'\n | 'service_commerce'\n | 'trading'\n | null;\n columns: GenericTableColumn[];\n}\n\nexport interface TemplateConfig {\n type: 'system' | 'custom';\n path?: string;\n body?: string;\n}\n\nexport interface CreateActionStatusUpdaterRequest {\n name: string;\n cron_expression: string;\n updater_type: 'cloud_watch' | 'restapi';\n updater_tool_id: string;\n datalake_id: string;\n sender_tool_ids?: string[] | null;\n message_config?: TemplateConfig;\n action_log_config?: TemplateConfig | null;\n // Discriminated by `updater_body_type` (public OpenAPI discriminator);\n // server-side `ex_open_api_utils` maps to internal `:__type__` Ecto routing.\n // Same pattern as `cloud_storage_type` on Datalake and `tool_body_type` on Tool.\n updater_body?: ActionStatusUpdaterCloudWatchQueryRequest | ActionStatusUpdaterRestCallRequest;\n}\n\nexport interface CreateAiAgentRequest {\n name: string;\n model: string;\n tool_id: string;\n data_access: 'regulated' | 'unregulated';\n temperature: number;\n max_tokens: number;\n enabled: boolean;\n slug?: string;\n description?: string | null;\n input_schema?: Record<string, unknown> | null;\n llm_response_schema?: Record<string, unknown> | null;\n prompt_config?: Record<string, unknown> | null;\n}\n\n// ---------------------------------------------------------------------------\n// Auth — session-based (Bearer token)\n// ---------------------------------------------------------------------------\n\nexport interface CreateSessionParams {\n baseUrl: string;\n email: string;\n password: string;\n /**\n * Tenant slug to scope the session to. Omit to mint a tenantless Bearer\n * for admin operations or the pre-tenant phase of the self-bootstrap\n * flow (sign-up → confirm → tenants.create). When omitted, the returned\n * `tenant` and `role` fields are null.\n */\n tenantSlug?: string;\n /** Session duration in seconds. Default 86400 (24h). Max 2592000 (30d). */\n expiresIn?: number;\n}\n\nexport interface SessionResult {\n /** Bearer token to pass into createPlatformApi. */\n sessionToken: string;\n /** ISO-8601 expiration timestamp, or null for non-expiring sessions. */\n expiresAt: string | null;\n /** Null for tenantless sessions (admin / pre-tenant bootstrap). */\n tenant: { id: string; slug: string; name: string } | null;\n /** Null for tenantless sessions. */\n role: { id: string; name: string } | null;\n user: { id: string; firstName: string | null; lastName: string | null } | null;\n}\n\n/**\n * Exchange user credentials for a Bearer session token. Pass `tenantSlug`\n * for a tenant-scoped session (the common case); omit it for a tenantless\n * Bearer used by admin endpoints (`PUT /admin/users/:id/confirm`) or the\n * pre-tenant bootstrap phase.\n *\n * Throws on any non-2xx response (e.g. 401 invalid credentials).\n */\nexport async function createSession(\n params: CreateSessionParams,\n): Promise<SessionResult> {\n client.setConfig({ baseUrl: params.baseUrl.replace(/\\/$/, '') });\n\n const { data } = await platformApiSessionControllerCreate({\n body: {\n email: params.email,\n password: params.password,\n ...(params.tenantSlug !== undefined ? { tenant_slug: params.tenantSlug } : {}),\n ...(params.expiresIn !== undefined ? { expires_in: params.expiresIn } : {}),\n },\n throwOnError: true,\n });\n\n if (!data.session_token) {\n throw new Error('Session created but no session_token was returned.');\n }\n\n return {\n sessionToken: data.session_token,\n expiresAt: data.expires_at ?? null,\n tenant: data.tenant\n ? { id: data.tenant.id, slug: data.tenant.slug, name: data.tenant.name }\n : null,\n role: data.role ? { id: data.role.id, name: data.role.name } : null,\n user: data.user\n ? {\n id: data.user.id,\n firstName: data.user.first_name ?? null,\n lastName: data.user.last_name ?? null,\n }\n : null,\n };\n}\n\n/**\n * Revoke the currently-configured session token. After calling this,\n * the api instance will reject every subsequent request with 401.\n */\nexport async function revokeSession(): Promise<void> {\n await platformApiSessionControllerDelete({ throwOnError: true });\n}\n\n// ---------------------------------------------------------------------------\n// Config\n// ---------------------------------------------------------------------------\n\nexport type ApiConfig =\n | { baseUrl: string; sessionToken: string }\n | { baseUrl: string; apiKey: string };\n\n// ---------------------------------------------------------------------------\n// Factories — two named entry points\n//\n// createPlatformApi(config) singleton mode (default)\n// Mutates the shared, generated client. Cheap, single-bearer-at-a-time.\n// Right for CLIs and single-user web apps where one logged-in user holds\n// exactly one bearer at any moment.\n//\n// createIsolatedPlatformApi(config) private-client mode\n// Builds its own Client via createClient() and threads it on every call.\n// Right for code that needs MULTIPLE concurrent APIs bound to DIFFERENT\n// bearers in the same process — integration tests holding a root session\n// and a tenant-scoped session at once, or multi-tenant background jobs.\n//\n// Both factories return the same PlatformApi shape, built by _buildApi().\n// ---------------------------------------------------------------------------\n\nexport type PlatformApi = ReturnType<typeof _buildApi>;\n\nexport interface DatasetSearchOptions {\n datalakeId?: string;\n userSearchId?: string;\n /**\n * Optional override for the data access mode used by this read.\n * Defaults to the session's `data_access_mode`. The session's capability\n * ceiling still applies — escalating beyond it returns 403.\n */\n dataAccessMode?: 'regulated' | 'unregulated';\n /**\n * Outer SQL-chunk pagination. Defaults page=1, page_size=1000 (max 1000).\n * Pages cached IDs from `search_results`; the cap is dictated by\n * Postgres' `WHERE id IN (^ids)` plan (planner regresses past ~1k params).\n */\n outerPagination?: { page?: number; pageSize?: number };\n /**\n * Inner resource Flop pagination. Defaults page=1, page_size=20.\n * Also accepts an `orderDirection` (sorts on the schema's `:global_search`\n * compound) and `globalSearch` (single ILIKE-OR text-search knob).\n */\n innerSearch?: {\n page?: number;\n pageSize?: number;\n orderDirection?: 'asc' | 'desc';\n globalSearch?: string;\n };\n}\n\nexport interface DatasetMetadataOptions {\n datalakeId?: string;\n genericTableId?: string;\n}\n\nfunction authHeaders(config: ApiConfig): Record<string, string> {\n if ('apiKey' in config) return { 'X-API-Key': config.apiKey };\n return { Authorization: `Bearer ${config.sessionToken}` };\n}\n\nexport function createPlatformApi(config: ApiConfig): PlatformApi {\n const baseUrl = config.baseUrl.replace(/\\/$/, '');\n client.setConfig({ baseUrl, headers: authHeaders(config) });\n return _buildApi(client);\n}\n\nexport function createIsolatedPlatformApi(config: ApiConfig): PlatformApi {\n const baseUrl = config.baseUrl.replace(/\\/$/, '');\n return _buildApi(createClient({ baseUrl, headers: authHeaders(config) }));\n}\n\nexport function createUnvalidatedPlatformApi(config: ApiConfig): PlatformApi {\n const baseUrl = config.baseUrl.replace(/\\/$/, '');\n const inner = createClient({ baseUrl, headers: authHeaders(config) });\n const strip = (options: Record<string, unknown>) => {\n const { responseValidator: _, ...rest } = options;\n return rest;\n };\n const unvalidated = new Proxy(inner, {\n get(target, prop, receiver) {\n const val = Reflect.get(target, prop, receiver);\n if (typeof val === 'function' && typeof prop === 'string' &&\n ['get', 'post', 'put', 'patch', 'delete', 'head', 'options', 'request'].includes(prop)) {\n return (options: Record<string, unknown>) => val.call(target, strip(options));\n }\n return val;\n },\n }) as Client;\n return _buildApi(unvalidated);\n}\n\nfunction _buildApi(myClient: Client) {\n return {\n ping: () =>\n platformApiPingControllerPing({ client: myClient, throwOnError: true }),\n\n sessions: {\n verify: () =>\n platformApiSessionControllerVerify({ client: myClient, throwOnError: true }),\n },\n\n auth: {\n signUp: (body: Record<string, unknown>) =>\n platformApiAuthControllerSignUp({ body: body as never, client: myClient, throwOnError: true }),\n },\n\n admin: {\n confirmUser: (id: string) =>\n platformApiAdminControllerConfirmUser({ path: { id }, client: myClient, throwOnError: true }),\n },\n\n tenants: {\n list: () =>\n platformApiTenantControllerIndex({ client: myClient, throwOnError: true }),\n create: (body: Record<string, unknown>) =>\n platformApiTenantControllerCreate({ body: body as never, client: myClient, throwOnError: true }),\n },\n\n invitations: {\n list: () =>\n platformApiInvitationControllerIndex({ client: myClient, throwOnError: true }),\n create: (tenantSlug: string, body: Record<string, unknown>) =>\n platformApiInvitationControllerCreate({\n path: { tenant_slug: tenantSlug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n accept: (id: string) =>\n platformApiInvitationControllerAccept({ path: { id }, client: myClient, throwOnError: true }),\n },\n\n datasets: {\n search: (dataset: string, options: DatasetSearchOptions = {}) => {\n // Platform uses two-tier nested pagination — `outer_pagination[page]`\n // / `outer_pagination[page_size]` for the SQL chunk + `inner_search[*]`\n // for the resource Flop. Flat `page` / `page_size` are NOT accepted by\n // the strict OpenAPI plug.\n const outer = options.outerPagination ?? {};\n const inner = options.innerSearch ?? {};\n const outerQuery =\n outer.page !== undefined || outer.pageSize !== undefined\n ? {\n outer_pagination: {\n ...(outer.page !== undefined ? { page: outer.page } : {}),\n ...(outer.pageSize !== undefined ? { page_size: outer.pageSize } : {}),\n },\n }\n : {};\n const innerQuery =\n inner.page !== undefined ||\n inner.pageSize !== undefined ||\n inner.orderDirection !== undefined ||\n inner.globalSearch !== undefined\n ? {\n inner_search: {\n ...(inner.page !== undefined ? { page: inner.page } : {}),\n ...(inner.pageSize !== undefined ? { page_size: inner.pageSize } : {}),\n ...(inner.orderDirection !== undefined\n ? { order_direction: inner.orderDirection }\n : {}),\n ...(inner.globalSearch !== undefined\n ? { global_search: inner.globalSearch }\n : {}),\n },\n }\n : {};\n\n return platformApiDatasetControllerSearch({\n path: { dataset },\n query: {\n ...(options.datalakeId !== undefined ? { datalake_id: options.datalakeId } : {}),\n ...(options.userSearchId !== undefined ? { user_search_id: options.userSearchId } : {}),\n ...(options.dataAccessMode !== undefined\n ? { data_access_mode: options.dataAccessMode }\n : {}),\n ...outerQuery,\n ...innerQuery,\n },\n client: myClient,\n throwOnError: true,\n });\n },\n metadata: (datasetType: string, options: DatasetMetadataOptions = {}) =>\n platformApiDatasetControllerDatasetMetadata({\n path: { dataset_type: datasetType },\n query: {\n ...(options.datalakeId !== undefined ? { datalake_id: options.datalakeId } : {}),\n ...(options.genericTableId !== undefined\n ? { generic_table_id: options.genericTableId }\n : {}),\n },\n client: myClient, throwOnError: true,\n }),\n createUserSearch: (\n dataset: string,\n body: Record<string, unknown>,\n options: { datalakeId?: string } = {},\n ) =>\n platformApiDatasetControllerCreateUserSearch({\n path: { dataset },\n query: options.datalakeId !== undefined ? { datalake_id: options.datalakeId } : {},\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n },\n\n datalakes: {\n list: (tenantSlug: string) =>\n platformApiDatalakeControllerIndex({\n path: { tenant_slug: tenantSlug },\n client: myClient, throwOnError: true,\n }),\n get: (tenantSlug: string, id: string) =>\n platformApiDatalakeControllerShow({\n path: { tenant_slug: tenantSlug, id },\n client: myClient, throwOnError: true,\n }),\n create: (tenantSlug: string, body: DatalakeRequestWritable) =>\n platformApiDatalakeControllerCreate({\n path: { tenant_slug: tenantSlug },\n body,\n client: myClient, throwOnError: true,\n }),\n update: (tenantSlug: string, id: string, body: DatalakeRequestWritable) =>\n platformApiDatalakeControllerUpdate({\n path: { tenant_slug: tenantSlug, id },\n body,\n client: myClient, throwOnError: true,\n }),\n metadata: (tenantSlug: string, datalakeSlug: string) =>\n platformApiDatalakeControllerMetadata({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n client: myClient, throwOnError: true,\n }),\n registeredDatasets: (tenantSlug: string, datalakeSlug: string) =>\n platformApiDatalakeControllerRegisteredDatasets({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n client: myClient, throwOnError: true,\n }),\n migrate: (tenantSlug: string, datalakeSlug: string) =>\n platformApiDatalakeControllerMigrate({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n client: myClient, throwOnError: true,\n }),\n createUploadLink: (\n tenantSlug: string,\n datalakeSlug: string,\n body: { content_type: 'application/x-ndjson' | 'text/csv'; filename: string },\n ) =>\n platformApiDatalakeControllerCreateUploadLink({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n body,\n client: myClient, throwOnError: true,\n }),\n createDownloadLink: (\n tenantSlug: string,\n datalakeSlug: string,\n body: { bucket: string; key: string },\n ) =>\n platformApiDatalakeControllerCreateDownloadLink({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n body,\n client: myClient, throwOnError: true,\n }),\n },\n\n dataSources: {\n list: (tenantSlug: string, datalakeSlug: string) =>\n platformApiDataSourceControllerIndex({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n client: myClient, throwOnError: true,\n }),\n create: (tenantSlug: string, datalakeSlug: string, body: DataSourceRequestWritable) =>\n platformApiDataSourceControllerCreate({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n body,\n client: myClient, throwOnError: true,\n }),\n update: (\n tenantSlug: string,\n datalakeSlug: string,\n id: string,\n body: DataSourceRequestWritable,\n ) =>\n platformApiDataSourceControllerUpdate({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, id },\n body,\n client: myClient, throwOnError: true,\n }),\n },\n\n tools: {\n list: (tenantSlug: string) =>\n platformApiToolControllerIndex({\n path: { tenant_slug: tenantSlug },\n client: myClient, throwOnError: true,\n }),\n get: (tenantSlug: string, id: string) =>\n platformApiToolControllerShow({\n path: { tenant_slug: tenantSlug, id },\n client: myClient, throwOnError: true,\n }),\n create: (tenantSlug: string, body: ToolRequestWritable) =>\n platformApiToolControllerCreate({\n path: { tenant_slug: tenantSlug },\n body,\n client: myClient, throwOnError: true,\n }),\n update: (tenantSlug: string, id: string, body: ToolRequestWritable) =>\n platformApiToolControllerUpdate({\n path: { tenant_slug: tenantSlug, id },\n body,\n client: myClient, throwOnError: true,\n }),\n delete: (tenantSlug: string, id: string) =>\n platformApiToolControllerDelete({\n path: { tenant_slug: tenantSlug, id },\n client: myClient, throwOnError: true,\n }),\n testInvocation: (tenantSlug: string, id: string, body: Record<string, unknown>) =>\n platformApiToolControllerTestInvocation({\n path: { tenant_slug: tenantSlug, id },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n },\n\n genericTables: {\n list: (tenantSlug: string, datalakeSlug: string) =>\n platformApiGenericTableControllerIndex({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n client: myClient, throwOnError: true,\n }),\n create: (tenantSlug: string, datalakeSlug: string, body: CreateGenericTableRequest) =>\n platformApiGenericTableControllerCreate({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n },\n\n actionStatusUpdaters: {\n list: (tenantSlug: string) =>\n platformApiActionStatusUpdaterControllerIndex({\n path: { tenant_slug: tenantSlug },\n client: myClient, throwOnError: true,\n }),\n create: (tenantSlug: string, body: CreateActionStatusUpdaterRequest) =>\n platformApiActionStatusUpdaterControllerCreate({\n path: { tenant_slug: tenantSlug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n update: (tenantSlug: string, id: string, body: CreateActionStatusUpdaterRequest) =>\n platformApiActionStatusUpdaterControllerUpdate({\n path: { tenant_slug: tenantSlug, id },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n },\n\n aiAgents: {\n list: (tenantSlug: string, datalakeSlug: string) =>\n platformApiAiAgentControllerIndex({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n client: myClient, throwOnError: true,\n }),\n get: (tenantSlug: string, datalakeSlug: string, id: string) =>\n platformApiAiAgentControllerShow({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, id },\n client: myClient, throwOnError: true,\n }),\n create: (tenantSlug: string, datalakeSlug: string, body: CreateAiAgentRequest) =>\n platformApiAiAgentControllerCreate({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n update: (tenantSlug: string, datalakeSlug: string, id: string, body: CreateAiAgentRequest) =>\n platformApiAiAgentControllerUpdate({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, id },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n delete: (tenantSlug: string, datalakeSlug: string, id: string) =>\n platformApiAiAgentControllerDelete({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, id },\n client: myClient, throwOnError: true,\n }),\n },\n\n connectedApps: {\n // datalake-scoped management\n list: (tenantSlug: string, datalakeSlug: string) =>\n platformApiConnectedAppMgmtControllerIndex({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n client: myClient, throwOnError: true,\n }),\n get: (tenantSlug: string, datalakeSlug: string, id: string) =>\n platformApiConnectedAppMgmtControllerShow({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, id },\n client: myClient, throwOnError: true,\n }),\n create: (tenantSlug: string, datalakeSlug: string, body: Record<string, unknown>) =>\n platformApiConnectedAppMgmtControllerCreate({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n update: (tenantSlug: string, datalakeSlug: string, id: string, body: Record<string, unknown>) =>\n platformApiConnectedAppMgmtControllerUpdate({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, id },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n syncRoutes: (tenantSlug: string, datalakeSlug: string, id: string) =>\n platformApiConnectedAppMgmtControllerSyncRoutes({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, id },\n client: myClient, throwOnError: true,\n }),\n // tenant-scoped runtime actions (by slug)\n resolvePage: (tenantSlug: string, slug: string, body: Record<string, unknown>) =>\n platformApiConnectedAppControllerResolvePage({\n path: { tenant_slug: tenantSlug, slug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n updateMessageTracking: (\n tenantSlug: string,\n slug: string,\n body: Record<string, unknown>,\n ) =>\n platformApiConnectedAppControllerUpdateMessageTracking({\n path: { tenant_slug: tenantSlug, slug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n },\n\n dataActivationClients: {\n list: (tenantSlug: string, datalakeSlug: string) =>\n platformApiDataActivationClientControllerIndex({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n client: myClient, throwOnError: true,\n }),\n get: (tenantSlug: string, datalakeSlug: string, slug: string) =>\n platformApiDataActivationClientControllerShow({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, slug },\n client: myClient, throwOnError: true,\n }),\n create: (tenantSlug: string, datalakeSlug: string, body: Record<string, unknown>) =>\n platformApiDataActivationClientControllerCreate({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n update: (\n tenantSlug: string,\n datalakeSlug: string,\n slug: string,\n body: Record<string, unknown>,\n ) =>\n platformApiDataActivationClientControllerUpdate({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, slug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n delete: (tenantSlug: string, datalakeSlug: string, slug: string) =>\n platformApiDataActivationClientControllerDelete({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, slug },\n client: myClient, throwOnError: true,\n }),\n metadata: (tenantSlug: string, datalakeSlug: string, slug: string) =>\n platformApiDataActivationClientControllerMetadata({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, slug },\n client: myClient, throwOnError: true,\n }),\n runManually: (\n tenantSlug: string,\n datalakeSlug: string,\n slug: string,\n body?: Record<string, unknown>,\n ) =>\n platformApiDataActivationClientControllerRunManually({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, slug },\n body: (body ?? {}) as never,\n client: myClient, throwOnError: true,\n }),\n ingest: (\n tenantSlug: string,\n datalakeSlug: string,\n slug: string,\n body: Record<string, unknown>,\n ) =>\n platformApiDataActivationClientControllerIngest({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, slug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n ingestFile: (\n tenantSlug: string,\n datalakeSlug: string,\n slug: string,\n body: { key: string },\n ) =>\n platformApiDataActivationClientControllerIngestFile({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, slug },\n body,\n client: myClient, throwOnError: true,\n }),\n logs: {\n list: (tenantSlug: string, datalakeSlug: string, slug: string) =>\n platformApiDataActivationClientControllerLogsIndex({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, slug },\n client: myClient, throwOnError: true,\n }),\n get: (tenantSlug: string, datalakeSlug: string, slug: string, id: string) =>\n platformApiDataActivationClientControllerLogShow({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, slug, id },\n client: myClient, throwOnError: true,\n }),\n },\n },\n\n interoperabilityContracts: {\n list: (tenantSlug: string, datalakeSlug: string) =>\n platformApiInteroperabilityContractControllerIndex({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n client: myClient, throwOnError: true,\n }),\n get: (tenantSlug: string, datalakeSlug: string, slug: string) =>\n platformApiInteroperabilityContractControllerShow({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, slug },\n client: myClient, throwOnError: true,\n }),\n create: (tenantSlug: string, datalakeSlug: string, body: Record<string, unknown>) =>\n platformApiInteroperabilityContractControllerCreate({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n update: (\n tenantSlug: string,\n datalakeSlug: string,\n slug: string,\n body: Record<string, unknown>,\n ) =>\n platformApiInteroperabilityContractControllerUpdate({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, slug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n delete: (tenantSlug: string, datalakeSlug: string, slug: string) =>\n platformApiInteroperabilityContractControllerDelete({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, slug },\n client: myClient, throwOnError: true,\n }),\n metadata: (tenantSlug: string, datalakeSlug: string, slug: string) =>\n platformApiInteroperabilityContractControllerMetadata({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, slug },\n client: myClient, throwOnError: true,\n }),\n run: (\n tenantSlug: string,\n datalakeSlug: string,\n slug: string,\n body: Record<string, unknown>,\n ) =>\n platformApiInteroperabilityContractControllerRun({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, slug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n },\n\n mdm: {\n verify: (tenantSlug: string, datalakeSlug: string, body: Record<string, unknown>) =>\n platformApiMdmControllerVerify({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n },\n\n workflows: {\n // CRUD — datalake-scoped, addressed by workflow id\n list: (tenantSlug: string, datalakeSlug: string) =>\n platformApiAgenticWorkflowControllerIndex({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n client: myClient, throwOnError: true,\n }),\n get: (tenantSlug: string, datalakeSlug: string, id: string) =>\n platformApiAgenticWorkflowControllerShow({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, id },\n client: myClient, throwOnError: true,\n }),\n create: (tenantSlug: string, datalakeSlug: string, body: Record<string, unknown>) =>\n platformApiAgenticWorkflowControllerCreate({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n update: (\n tenantSlug: string,\n datalakeSlug: string,\n id: string,\n body: Record<string, unknown>,\n ) =>\n platformApiAgenticWorkflowControllerUpdate({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, id },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n delete: (tenantSlug: string, datalakeSlug: string, id: string) =>\n platformApiAgenticWorkflowControllerDelete({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, id },\n client: myClient, throwOnError: true,\n }),\n metadata: (tenantSlug: string, datalakeSlug: string, id: string) =>\n platformApiAgenticWorkflowControllerMetadata({\n path: { tenant_slug: tenantSlug, datalake_slug: datalakeSlug, id },\n client: myClient, throwOnError: true,\n }),\n\n // Operations — tenant-scoped, addressed by workflow slug\n execute: (tenantSlug: string, workflowSlug: string, body: Record<string, unknown>) =>\n platformApiAgenticWorkflowOperationsControllerExecute({\n path: { tenant_slug: tenantSlug, workflow_slug: workflowSlug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n run: (tenantSlug: string, workflowSlug: string, body: Record<string, unknown>) =>\n platformApiAgenticWorkflowOperationsControllerRunWorkflow({\n path: { tenant_slug: tenantSlug, workflow_slug: workflowSlug },\n body: body as never,\n client: myClient, throwOnError: true,\n }),\n\n batchLogs: {\n list: (tenantSlug: string, workflowSlug: string) =>\n platformApiAgenticWorkflowOperationsControllerBatchLogsIndex({\n path: { tenant_slug: tenantSlug, workflow_slug: workflowSlug },\n client: myClient, throwOnError: true,\n }),\n get: (tenantSlug: string, workflowSlug: string, id: string) =>\n platformApiAgenticWorkflowOperationsControllerBatchLogShow({\n path: { tenant_slug: tenantSlug, workflow_slug: workflowSlug, id },\n client: myClient, throwOnError: true,\n }),\n start: (tenantSlug: string, workflowSlug: string, id: string) =>\n platformApiAgenticWorkflowOperationsControllerBatchLogStart({\n path: { tenant_slug: tenantSlug, workflow_slug: workflowSlug, id },\n client: myClient, throwOnError: true,\n }),\n stop: (tenantSlug: string, workflowSlug: string, id: string) =>\n platformApiAgenticWorkflowOperationsControllerBatchLogStop({\n path: { tenant_slug: tenantSlug, workflow_slug: workflowSlug, id },\n client: myClient, throwOnError: true,\n }),\n refresh: (tenantSlug: string, workflowSlug: string, id: string) =>\n platformApiAgenticWorkflowOperationsControllerBatchLogRefresh({\n path: { tenant_slug: tenantSlug, workflow_slug: workflowSlug, id },\n client: myClient, throwOnError: true,\n }),\n },\n\n workflowLogs: {\n list: (tenantSlug: string, workflowSlug: string) =>\n platformApiAgenticWorkflowOperationsControllerWorkflowLogsIndex({\n path: { tenant_slug: tenantSlug, workflow_slug: workflowSlug },\n client: myClient, throwOnError: true,\n }),\n get: (\n tenantSlug: string,\n workflowSlug: string,\n id: string,\n opts?: { dataAccessMode?: 'regulated' | 'unregulated' },\n ) =>\n platformApiAgenticWorkflowOperationsControllerWorkflowLogShow({\n path: { tenant_slug: tenantSlug, workflow_slug: workflowSlug, id },\n ...(opts?.dataAccessMode\n ? { query: { data_access_mode: opts.dataAccessMode } }\n : {}),\n client: myClient, throwOnError: true,\n }),\n download: (tenantSlug: string, workflowSlug: string, id: string) =>\n platformApiAgenticWorkflowOperationsControllerWorkflowLogDownload({\n path: { tenant_slug: tenantSlug, workflow_slug: workflowSlug, id },\n client: myClient, throwOnError: true,\n }),\n },\n },\n };\n}\n","// Generated from spec/openapi.yaml by scripts/gen-environments.ts — do not edit.\n\nexport interface EnvironmentConfig {\n readonly base_url: string;\n readonly description: string;\n}\n\nexport const ENVIRONMENTS = {\n local: { base_url: \"http://localhost:4000\", description: \"Development server\" },\n demo: { base_url: \"https://platform-hh.alvera.ai\", description: \"Himangshu Demo server\" },\n prod: { base_url: \"https://app.alvera.ai\", description: \"Prod Server\" },\n} as const satisfies Readonly<Record<string, EnvironmentConfig>>;\n\nexport const DEFAULT_ENVIRONMENT = \"prod\" as const;\n\nexport type EnvironmentName = keyof typeof ENVIRONMENTS;\n"],"mappings":"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"}