@postrun/js 2.11.0 → 2.13.0

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.
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/client/core/bodySerializer.gen.ts","../src/client/core/serverSentEvents.gen.ts","../src/client/core/pathSerializer.gen.ts","../src/client/core/utils.gen.ts","../src/client/core/auth.gen.ts","../src/client/client/utils.gen.ts","../src/client/client/client.gen.ts","../src/client/zod.gen.ts","../src/errors.ts","../src/client.ts","../src/client/client.gen.ts","../src/client/sdk.gen.ts","../src/server.ts"],"names":["url","joinedValues","config","request","z","z2","client"],"mappings":"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","file":"server.cjs","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';\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): ',' | '|' | '%20' => {\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}): string => {\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): string => {\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}): string => {\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: RegExp = /\\{[^{}]+\\}/g;\n\nexport const defaultPathSerializer = ({ path, url: _url }: PathSerializer): string => {\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}): string => {\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}): unknown {\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 * A unique identifier for the security scheme.\n *\n * Defined only when there are multiple security schemes whose `Auth`\n * shape would otherwise be identical.\n */\n key?: string;\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 = {}): ((queryParams: T) => string) => {\n const querySerializer = (queryParams: T): string => {\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 async function setAuthParams(\n options: Pick<RequestOptions, 'auth' | 'query' | 'security'> & {\n headers: Headers;\n },\n): Promise<void> {\n for (const auth of options.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 may be undefined due to a network error where no response object is produced */\n response: Res | undefined,\n /** request may be undefined, because error may be from building the request object itself */\n request: Req | undefined,\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(opts);\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 throwOnError = options.throwOnError ?? _config.throwOnError;\n const responseStyle = options.responseStyle ?? _config.responseStyle;\n\n let request: Request | undefined;\n let response: Response | undefined;\n\n try {\n const { opts, url } = await beforeRequest(options);\n const requestInit: ReqInit = {\n redirect: 'follow',\n ...opts,\n body: getValidRequestBody(opts),\n };\n\n 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\n response = await _fetch(request);\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 throw jsonError ?? textError;\n } catch (error) {\n let finalError = error;\n\n for (const fn of interceptors.error.fns) {\n if (fn) {\n finalError = await fn(finalError, response, request, options as ResolvedRequestOptions);\n }\n }\n\n finalError = finalError || {};\n\n if (throwOnError) {\n throw finalError;\n }\n\n // TODO: we probably want to return error and improve types\n return responseStyle === 'data'\n ? undefined\n : {\n error: finalError,\n request,\n response,\n };\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 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 * as z from 'zod';\n\n/**\n * ErrorCode\n *\n * The closed set of machine-readable Postrun error codes. Branch on this. Each links to https://docs.postrun.ai/errors/<code>.\n */\nexport const zErrorCode = z.enum([\n 'unauthorized',\n 'forbidden',\n 'not_found',\n 'conflict',\n 'validation_failed',\n 'rate_limited',\n 'internal_error',\n 'idempotency_key_invalid',\n 'idempotency_key_reused',\n 'idempotency_request_in_progress',\n 'account_not_available',\n 'connection_reauth_required',\n 'connection_not_pending',\n 'not_implemented',\n 'connection_discovery_failed',\n 'tiktok_creator_info_unavailable',\n 'media_processing',\n 'not_publishable',\n 'invalid_connection',\n 'invalid_media',\n 'profile_scope_invalid',\n 'media_unprobeable',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_count_invalid',\n 'body_too_long',\n 'content_missing',\n 'content_conflict',\n 'content_incomplete',\n 'content_kind_mismatch',\n 'media_type_mismatch',\n 'tag_limit_exceeded',\n 'reel_field_on_non_reel',\n 'field_placement_invalid',\n 'media_not_ready',\n 'media_failed',\n 'media_unsupported',\n 'media_kind_mismatch',\n 'variant_unparseable',\n 'publishing_unavailable',\n 'x_duplicate_content',\n 'x_not_authorized',\n 'x_access_not_permitted',\n 'x_rate_limited',\n 'x_publish_failed',\n 'x_media_upload_failed',\n 'linkedin_duplicate_content',\n 'linkedin_auth_expired',\n 'linkedin_permission_denied',\n 'linkedin_rate_limited',\n 'linkedin_media_processing',\n 'linkedin_media_failed',\n 'linkedin_media_upload_failed',\n 'linkedin_publish_failed',\n 'instagram_media_processing',\n 'instagram_container_expired',\n 'instagram_container_failed',\n 'instagram_rate_limited',\n 'instagram_not_authorized',\n 'instagram_publish_failed',\n 'facebook_reel_processing',\n 'facebook_reel_failed',\n 'facebook_rate_limited',\n 'facebook_not_authorized',\n 'facebook_publish_failed',\n 'tiktok_privacy_not_allowed',\n 'tiktok_duration_exceeds_max',\n 'tiktok_media_processing',\n 'tiktok_not_authorized',\n 'tiktok_rate_limited',\n 'tiktok_url_ownership_unverified',\n 'tiktok_unaudited_private_only',\n 'tiktok_spam_risk',\n 'tiktok_publish_failed',\n 'post_publish_failed',\n 'post_partially_published',\n 'connection_platform_mismatch',\n 'connection_removed'\n]);\n\nexport const zProfilesListQuery = z.object({\n limit: z.int().gte(1).lte(100).optional().default(20),\n offset: z.int().gte(0).lte(9007199254740991).optional().default(0),\n external_id: z.string().optional(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional()\n});\n\n/**\n * OK\n */\nexport const zProfilesListResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n name: z.string(),\n description: z.string().nullable(),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n })),\n total: z.int().gte(-9007199254740991).lte(9007199254740991),\n limit: z.int().gte(-9007199254740991).lte(9007199254740991),\n offset: z.int().gte(-9007199254740991).lte(9007199254740991),\n has_more: z.boolean()\n});\n\nexport const zProfilesCreateBody = z.object({\n name: z.string().min(1).max(255),\n description: z.string().max(280).optional(),\n external_id: z.string().min(1).max(255).optional(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional()\n});\n\n/**\n * OK\n */\nexport const zProfilesCreateResponse = z.object({\n id: z.string(),\n name: z.string(),\n description: z.string().nullable(),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n});\n\nexport const zProfilesDeletePath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zProfilesDeleteResponse = z.object({\n id: z.string(),\n object: z.literal('profile'),\n deleted: z.literal(true)\n});\n\nexport const zProfilesGetPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zProfilesGetResponse = z.object({\n id: z.string(),\n name: z.string(),\n description: z.string().nullable(),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n});\n\nexport const zProfilesUpdateBody = z.object({\n name: z.string().min(1).max(255).optional(),\n description: z.string().max(280).nullish(),\n external_id: z.string().min(1).max(255).optional(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional()\n});\n\nexport const zProfilesUpdatePath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zProfilesUpdateResponse = z.object({\n id: z.string(),\n name: z.string(),\n description: z.string().nullable(),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n});\n\nexport const zConnectionsListByProfilePath = z.object({\n id: z.string()\n});\n\nexport const zConnectionsListByProfileQuery = z.object({\n limit: z.int().gte(1).lte(100).optional().default(20),\n offset: z.int().gte(0).lte(9007199254740991).optional().default(0),\n nango_connection_id: z.string().min(1).optional(),\n kind: z.enum(['posting', 'ads']).optional(),\n status: z.enum([\n 'pending',\n 'active',\n 'needs_reauth'\n ]).optional()\n});\n\n/**\n * OK\n */\nexport const zConnectionsListByProfileResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n profile_id: z.string(),\n platform: z.enum([\n 'meta_ads',\n 'google_ads',\n 'tiktok_ads',\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]),\n kind: z.enum(['posting', 'ads']),\n status: z.enum([\n 'pending',\n 'active',\n 'needs_reauth'\n ]),\n external_account_id: z.string().nullable(),\n external_account_name: z.string().nullable(),\n username: z.string().nullable(),\n avatar_url: z.string().nullable(),\n profile_url: z.string().nullable(),\n reauth_at: z.string().nullable(),\n currency: z.string().nullable(),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n })),\n total: z.int().gte(-9007199254740991).lte(9007199254740991),\n limit: z.int().gte(-9007199254740991).lte(9007199254740991),\n offset: z.int().gte(-9007199254740991).lte(9007199254740991),\n has_more: z.boolean()\n});\n\nexport const zConnectionsDeletePath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zConnectionsDeleteResponse = z.object({\n id: z.string(),\n object: z.literal('connection'),\n deleted: z.literal(true)\n});\n\nexport const zConnectionsGetPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zConnectionsGetResponse = z.object({\n id: z.string(),\n profile_id: z.string(),\n platform: z.enum([\n 'meta_ads',\n 'google_ads',\n 'tiktok_ads',\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]),\n kind: z.enum(['posting', 'ads']),\n status: z.enum([\n 'pending',\n 'active',\n 'needs_reauth'\n ]),\n external_account_id: z.string().nullable(),\n external_account_name: z.string().nullable(),\n username: z.string().nullable(),\n avatar_url: z.string().nullable(),\n profile_url: z.string().nullable(),\n reauth_at: z.string().nullable(),\n currency: z.string().nullable(),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n});\n\nexport const zConnectionsSelectBody = z.object({\n external_account_id: z.string().min(1)\n});\n\nexport const zConnectionsSelectPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zConnectionsSelectResponse = z.object({\n id: z.string(),\n profile_id: z.string(),\n platform: z.enum([\n 'meta_ads',\n 'google_ads',\n 'tiktok_ads',\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]),\n kind: z.enum(['posting', 'ads']),\n status: z.enum([\n 'pending',\n 'active',\n 'needs_reauth'\n ]),\n external_account_id: z.string().nullable(),\n external_account_name: z.string().nullable(),\n username: z.string().nullable(),\n avatar_url: z.string().nullable(),\n profile_url: z.string().nullable(),\n reauth_at: z.string().nullable(),\n currency: z.string().nullable(),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n});\n\nexport const zConnectionsListAccountsPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zConnectionsListAccountsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n external_account_id: z.string(),\n name: z.string().nullable(),\n currency: z.string().nullable(),\n username: z.string().nullish(),\n avatar_url: z.string().nullish(),\n profile_url: z.string().nullish(),\n instagram: z.object({\n external_account_id: z.string(),\n name: z.string().nullable(),\n username: z.string().nullish(),\n avatar_url: z.string().nullish(),\n profile_url: z.string().nullish()\n }).nullish()\n }))\n});\n\nexport const zConnectionsConnectBody = z.object({\n platform: z.enum([\n 'meta_ads',\n 'google_ads',\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ])\n});\n\nexport const zConnectionsConnectPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zConnectionsConnectResponse = z.object({\n hosted_connect_url: z.string(),\n connect_token: z.string(),\n connect_session_token: z.string(),\n provider_config_key: z.string(),\n nango_host: z.string(),\n expires_at: z.string()\n});\n\nexport const zMediaListQuery = z.object({\n limit: z.int().gte(1).lte(100).optional().default(20),\n offset: z.int().gte(0).lte(9007199254740991).optional().default(0),\n profile_id: z.string().optional(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]).optional(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).optional(),\n external_id: z.string().optional(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional()\n});\n\n/**\n * OK\n */\nexport const zMediaListResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n })),\n errors: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })),\n total: z.int().gte(-9007199254740991).lte(9007199254740991),\n limit: z.int().gte(-9007199254740991).lte(9007199254740991),\n offset: z.int().gte(-9007199254740991).lte(9007199254740991),\n has_more: z.boolean()\n});\n\n/**\n * Create a media asset — either via the signed direct upload target (omit source_url) or by importing from a public https source_url (we fetch + validate + transform + store). Size limits (same for direct upload and source_url): a video may be up to 4 GB; every other kind must be 1 GB or smaller. A file over its limit is rejected with `media_too_large`.\n */\nexport const zMediaCreateBody = z.object({\n profile_id: z.string(),\n source_url: z.url().optional(),\n targets: z.array(z.enum([\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok',\n 'google_ads'\n ])).min(1).optional(),\n raw: z.boolean().optional().default(false),\n alt_text: z.string().max(1000).optional(),\n external_id: z.string().min(1).max(255).optional(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional()\n});\n\n/**\n * OK\n */\nexport const zMediaCreateResponse = z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n })),\n errors: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string(),\n upload: z.object({\n url: z.url(),\n method: z.literal('PUT'),\n headers: z.record(z.string(), z.string()),\n expires_at: z.string()\n }).nullable()\n});\n\nexport const zMediaDeletePath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zMediaDeleteResponse = z.object({\n id: z.string(),\n object: z.literal('media'),\n deleted: z.literal(true)\n});\n\nexport const zMediaGetPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zMediaGetResponse = z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n })),\n errors: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n});\n\nexport const zMediaUpdateBody = z.object({\n alt_text: z.string().max(1000).nullish(),\n external_id: z.string().min(1).max(255).nullish(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional(),\n targets: z.array(z.enum([\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok',\n 'google_ads'\n ])).min(1).optional()\n});\n\nexport const zMediaUpdatePath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zMediaUpdateResponse = z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n })),\n errors: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n});\n\nexport const zPostsListQuery = z.object({\n limit: z.int().gte(1).lte(100).optional().default(20),\n offset: z.int().gte(0).lte(9007199254740991).optional().default(0),\n profile_id: z.string().optional(),\n external_id: z.string().optional(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional(),\n scheduled_after: z.iso.datetime().optional(),\n scheduled_before: z.iso.datetime().optional(),\n updated_after: z.iso.datetime().optional(),\n status: z.array(z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'partially_published',\n 'published',\n 'failed'\n ])).optional()\n});\n\n/**\n * OK\n */\nexport const zPostsListResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n object: z.literal('post'),\n profile_id: z.string(),\n external_id: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'partially_published',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n tags: z.array(z.string()),\n notes: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n variants: z.array(z.union([\n z.object({\n platform: z.literal('x'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n reply_settings: z.enum([\n 'everyone',\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional(),\n quote_tweet_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n poll: z.object({\n options: z.array(z.string().min(1).max(25)).min(2).max(4),\n duration_minutes: z.int().gte(5).lte(10080),\n reply_settings: z.enum([\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional()\n }).optional(),\n reply: z.object({\n in_reply_to_tweet_id: z.string().regex(/^[0-9]{1,19}$/),\n exclude_reply_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).optional(),\n auto_populate_reply_metadata: z.boolean().optional()\n }).optional(),\n community_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n for_super_followers_only: z.boolean().optional(),\n geo: z.object({\n place_id: z.string()\n }).optional(),\n card_uri: z.string().optional(),\n media_tagged_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).max(10).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('linkedin'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n visibility: z.enum(['PUBLIC', 'CONNECTIONS']),\n content_kind: z.enum([\n 'text',\n 'single_image',\n 'video',\n 'multi_image',\n 'document',\n 'article',\n 'poll'\n ]),\n article: z.object({\n source: z.url(),\n title: z.string().max(400).optional(),\n description: z.string().max(4086).optional(),\n thumbnail_media_id: z.string().optional()\n }).optional(),\n poll: z.object({\n question: z.string().min(1).max(140),\n options: z.array(z.string().min(1).max(30)).min(2).max(4),\n duration: z.enum([\n 'ONE_DAY',\n 'THREE_DAYS',\n 'SEVEN_DAYS',\n 'FOURTEEN_DAYS'\n ])\n }).optional(),\n document: z.object({\n title: z.string().min(1).max(400)\n }).optional(),\n disable_reshare: z.boolean().optional(),\n mentions: z.array(z.object({\n type: z.enum(['person', 'organization']),\n name: z.string().min(1),\n urn: z.string().regex(/^urn:li:(person|organization):/)\n })).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('facebook_page'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'reel'\n ]),\n settings: z.object({\n link: z.url().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('instagram'),\n post_type: z.enum([\n 'single_image',\n 'carousel',\n 'reel'\n ]),\n settings: z.object({\n media_type: z.enum([\n 'IMAGE',\n 'CAROUSEL',\n 'REELS'\n ]).optional(),\n location_id: z.string().optional(),\n user_tags: z.array(z.object({\n username: z.string().min(1),\n x: z.number().gte(0).lte(1),\n y: z.number().gte(0).lte(1)\n })).optional(),\n collaborators: z.array(z.string().min(1)).max(3).optional(),\n share_to_feed: z.boolean().optional(),\n thumb_offset: z.int().gte(0).lte(9007199254740991).optional(),\n cover_url: z.url().optional(),\n audio_name: z.string().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('tiktok'),\n post_type: z.enum([\n 'video',\n 'single_image',\n 'carousel'\n ]),\n settings: z.object({\n privacy_level: z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ]).optional(),\n disable_comment: z.boolean().optional(),\n disable_duet: z.boolean().optional(),\n disable_stitch: z.boolean().optional(),\n video_cover_timestamp_ms: z.int().gte(0).lte(9007199254740991).optional(),\n photo_cover_index: z.int().gte(0).lte(9007199254740991).optional(),\n auto_add_music: z.boolean().optional(),\n brand_content_toggle: z.boolean().optional(),\n brand_organic_toggle: z.boolean().optional(),\n is_aigc: z.boolean().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n })\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })),\n total: z.int().gte(-9007199254740991).lte(9007199254740991),\n limit: z.int().gte(-9007199254740991).lte(9007199254740991),\n offset: z.int().gte(-9007199254740991).lte(9007199254740991),\n has_more: z.boolean()\n});\n\nexport const zPostsCreateBody = z.object({\n profile_id: z.string(),\n publish: z.enum([\n 'now',\n 'schedule',\n 'draft'\n ]).optional().default('draft'),\n schedule_at: z.iso.datetime().optional(),\n external_id: z.string().min(1).max(255).optional(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional(),\n tags: z.array(z.string()).optional(),\n notes: z.string().optional(),\n dry_run: z.boolean().optional().default(false),\n variants: z.array(z.union([\n z.object({\n platform: z.literal('x'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n reply_settings: z.enum([\n 'everyone',\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional(),\n quote_tweet_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n poll: z.object({\n options: z.array(z.string().min(1).max(25)).min(2).max(4),\n duration_minutes: z.int().gte(5).lte(10080),\n reply_settings: z.enum([\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional()\n }).optional(),\n reply: z.object({\n in_reply_to_tweet_id: z.string().regex(/^[0-9]{1,19}$/),\n exclude_reply_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).optional(),\n auto_populate_reply_metadata: z.boolean().optional()\n }).optional(),\n community_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n for_super_followers_only: z.boolean().optional(),\n geo: z.object({\n place_id: z.string()\n }).optional(),\n card_uri: z.string().optional(),\n media_tagged_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).max(10).optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('linkedin'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n visibility: z.enum(['PUBLIC', 'CONNECTIONS']),\n content_kind: z.enum([\n 'text',\n 'single_image',\n 'video',\n 'multi_image',\n 'document',\n 'article',\n 'poll'\n ]),\n article: z.object({\n source: z.url(),\n title: z.string().max(400).optional(),\n description: z.string().max(4086).optional(),\n thumbnail_media_id: z.string().optional()\n }).optional(),\n poll: z.object({\n question: z.string().min(1).max(140),\n options: z.array(z.string().min(1).max(30)).min(2).max(4),\n duration: z.enum([\n 'ONE_DAY',\n 'THREE_DAYS',\n 'SEVEN_DAYS',\n 'FOURTEEN_DAYS'\n ])\n }).optional(),\n document: z.object({\n title: z.string().min(1).max(400)\n }).optional(),\n disable_reshare: z.boolean().optional(),\n mentions: z.array(z.object({\n type: z.enum(['person', 'organization']),\n name: z.string().min(1),\n urn: z.string().regex(/^urn:li:(person|organization):/)\n })).optional()\n }),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('instagram'),\n post_type: z.enum([\n 'single_image',\n 'carousel',\n 'reel'\n ]),\n settings: z.object({\n media_type: z.enum([\n 'IMAGE',\n 'CAROUSEL',\n 'REELS'\n ]).optional(),\n location_id: z.string().optional(),\n user_tags: z.array(z.object({\n username: z.string().min(1),\n x: z.number().gte(0).lte(1),\n y: z.number().gte(0).lte(1)\n })).optional(),\n collaborators: z.array(z.string().min(1)).max(3).optional(),\n share_to_feed: z.boolean().optional(),\n thumb_offset: z.int().gte(0).lte(9007199254740991).optional(),\n cover_url: z.url().optional(),\n audio_name: z.string().optional()\n }),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('facebook_page'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'reel'\n ]),\n settings: z.object({\n link: z.url().optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('tiktok'),\n post_type: z.enum([\n 'video',\n 'single_image',\n 'carousel'\n ]),\n settings: z.object({\n privacy_level: z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ]).optional(),\n disable_comment: z.boolean().optional(),\n disable_duet: z.boolean().optional(),\n disable_stitch: z.boolean().optional(),\n video_cover_timestamp_ms: z.int().gte(0).lte(9007199254740991).optional(),\n photo_cover_index: z.int().gte(0).lte(9007199254740991).optional(),\n auto_add_music: z.boolean().optional(),\n brand_content_toggle: z.boolean().optional(),\n brand_organic_toggle: z.boolean().optional(),\n is_aigc: z.boolean().optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n })\n ])).min(1)\n});\n\n/**\n * OK\n */\nexport const zPostsCreateResponse = z.object({\n id: z.string(),\n object: z.literal('post'),\n profile_id: z.string(),\n external_id: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'partially_published',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n tags: z.array(z.string()),\n notes: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n variants: z.array(z.union([\n z.object({\n platform: z.literal('x'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n reply_settings: z.enum([\n 'everyone',\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional(),\n quote_tweet_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n poll: z.object({\n options: z.array(z.string().min(1).max(25)).min(2).max(4),\n duration_minutes: z.int().gte(5).lte(10080),\n reply_settings: z.enum([\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional()\n }).optional(),\n reply: z.object({\n in_reply_to_tweet_id: z.string().regex(/^[0-9]{1,19}$/),\n exclude_reply_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).optional(),\n auto_populate_reply_metadata: z.boolean().optional()\n }).optional(),\n community_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n for_super_followers_only: z.boolean().optional(),\n geo: z.object({\n place_id: z.string()\n }).optional(),\n card_uri: z.string().optional(),\n media_tagged_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).max(10).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('linkedin'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n visibility: z.enum(['PUBLIC', 'CONNECTIONS']),\n content_kind: z.enum([\n 'text',\n 'single_image',\n 'video',\n 'multi_image',\n 'document',\n 'article',\n 'poll'\n ]),\n article: z.object({\n source: z.url(),\n title: z.string().max(400).optional(),\n description: z.string().max(4086).optional(),\n thumbnail_media_id: z.string().optional()\n }).optional(),\n poll: z.object({\n question: z.string().min(1).max(140),\n options: z.array(z.string().min(1).max(30)).min(2).max(4),\n duration: z.enum([\n 'ONE_DAY',\n 'THREE_DAYS',\n 'SEVEN_DAYS',\n 'FOURTEEN_DAYS'\n ])\n }).optional(),\n document: z.object({\n title: z.string().min(1).max(400)\n }).optional(),\n disable_reshare: z.boolean().optional(),\n mentions: z.array(z.object({\n type: z.enum(['person', 'organization']),\n name: z.string().min(1),\n urn: z.string().regex(/^urn:li:(person|organization):/)\n })).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('facebook_page'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'reel'\n ]),\n settings: z.object({\n link: z.url().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('instagram'),\n post_type: z.enum([\n 'single_image',\n 'carousel',\n 'reel'\n ]),\n settings: z.object({\n media_type: z.enum([\n 'IMAGE',\n 'CAROUSEL',\n 'REELS'\n ]).optional(),\n location_id: z.string().optional(),\n user_tags: z.array(z.object({\n username: z.string().min(1),\n x: z.number().gte(0).lte(1),\n y: z.number().gte(0).lte(1)\n })).optional(),\n collaborators: z.array(z.string().min(1)).max(3).optional(),\n share_to_feed: z.boolean().optional(),\n thumb_offset: z.int().gte(0).lte(9007199254740991).optional(),\n cover_url: z.url().optional(),\n audio_name: z.string().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('tiktok'),\n post_type: z.enum([\n 'video',\n 'single_image',\n 'carousel'\n ]),\n settings: z.object({\n privacy_level: z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ]).optional(),\n disable_comment: z.boolean().optional(),\n disable_duet: z.boolean().optional(),\n disable_stitch: z.boolean().optional(),\n video_cover_timestamp_ms: z.int().gte(0).lte(9007199254740991).optional(),\n photo_cover_index: z.int().gte(0).lte(9007199254740991).optional(),\n auto_add_music: z.boolean().optional(),\n brand_content_toggle: z.boolean().optional(),\n brand_organic_toggle: z.boolean().optional(),\n is_aigc: z.boolean().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n })\n ])),\n created_at: z.string(),\n updated_at: z.string(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zPostsDeletePath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zPostsDeleteResponse = z.object({\n id: z.string(),\n object: z.literal('post'),\n deleted: z.literal(true)\n});\n\nexport const zPostsGetPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zPostsGetResponse = z.object({\n id: z.string(),\n object: z.literal('post'),\n profile_id: z.string(),\n external_id: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'partially_published',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n tags: z.array(z.string()),\n notes: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n variants: z.array(z.union([\n z.object({\n platform: z.literal('x'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n reply_settings: z.enum([\n 'everyone',\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional(),\n quote_tweet_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n poll: z.object({\n options: z.array(z.string().min(1).max(25)).min(2).max(4),\n duration_minutes: z.int().gte(5).lte(10080),\n reply_settings: z.enum([\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional()\n }).optional(),\n reply: z.object({\n in_reply_to_tweet_id: z.string().regex(/^[0-9]{1,19}$/),\n exclude_reply_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).optional(),\n auto_populate_reply_metadata: z.boolean().optional()\n }).optional(),\n community_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n for_super_followers_only: z.boolean().optional(),\n geo: z.object({\n place_id: z.string()\n }).optional(),\n card_uri: z.string().optional(),\n media_tagged_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).max(10).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('linkedin'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n visibility: z.enum(['PUBLIC', 'CONNECTIONS']),\n content_kind: z.enum([\n 'text',\n 'single_image',\n 'video',\n 'multi_image',\n 'document',\n 'article',\n 'poll'\n ]),\n article: z.object({\n source: z.url(),\n title: z.string().max(400).optional(),\n description: z.string().max(4086).optional(),\n thumbnail_media_id: z.string().optional()\n }).optional(),\n poll: z.object({\n question: z.string().min(1).max(140),\n options: z.array(z.string().min(1).max(30)).min(2).max(4),\n duration: z.enum([\n 'ONE_DAY',\n 'THREE_DAYS',\n 'SEVEN_DAYS',\n 'FOURTEEN_DAYS'\n ])\n }).optional(),\n document: z.object({\n title: z.string().min(1).max(400)\n }).optional(),\n disable_reshare: z.boolean().optional(),\n mentions: z.array(z.object({\n type: z.enum(['person', 'organization']),\n name: z.string().min(1),\n urn: z.string().regex(/^urn:li:(person|organization):/)\n })).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('facebook_page'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'reel'\n ]),\n settings: z.object({\n link: z.url().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('instagram'),\n post_type: z.enum([\n 'single_image',\n 'carousel',\n 'reel'\n ]),\n settings: z.object({\n media_type: z.enum([\n 'IMAGE',\n 'CAROUSEL',\n 'REELS'\n ]).optional(),\n location_id: z.string().optional(),\n user_tags: z.array(z.object({\n username: z.string().min(1),\n x: z.number().gte(0).lte(1),\n y: z.number().gte(0).lte(1)\n })).optional(),\n collaborators: z.array(z.string().min(1)).max(3).optional(),\n share_to_feed: z.boolean().optional(),\n thumb_offset: z.int().gte(0).lte(9007199254740991).optional(),\n cover_url: z.url().optional(),\n audio_name: z.string().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('tiktok'),\n post_type: z.enum([\n 'video',\n 'single_image',\n 'carousel'\n ]),\n settings: z.object({\n privacy_level: z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ]).optional(),\n disable_comment: z.boolean().optional(),\n disable_duet: z.boolean().optional(),\n disable_stitch: z.boolean().optional(),\n video_cover_timestamp_ms: z.int().gte(0).lte(9007199254740991).optional(),\n photo_cover_index: z.int().gte(0).lte(9007199254740991).optional(),\n auto_add_music: z.boolean().optional(),\n brand_content_toggle: z.boolean().optional(),\n brand_organic_toggle: z.boolean().optional(),\n is_aigc: z.boolean().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n })\n ])),\n created_at: z.string(),\n updated_at: z.string()\n});\n\nexport const zPostsUpdateBody = z.object({\n publish: z.enum([\n 'now',\n 'schedule',\n 'draft'\n ]).optional(),\n schedule_at: z.iso.datetime().nullish(),\n external_id: z.string().min(1).max(255).nullish(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional(),\n tags: z.array(z.string()).optional(),\n notes: z.string().nullish(),\n dry_run: z.boolean().optional().default(false),\n variants: z.array(z.union([\n z.object({\n platform: z.literal('x'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n reply_settings: z.enum([\n 'everyone',\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional(),\n quote_tweet_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n poll: z.object({\n options: z.array(z.string().min(1).max(25)).min(2).max(4),\n duration_minutes: z.int().gte(5).lte(10080),\n reply_settings: z.enum([\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional()\n }).optional(),\n reply: z.object({\n in_reply_to_tweet_id: z.string().regex(/^[0-9]{1,19}$/),\n exclude_reply_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).optional(),\n auto_populate_reply_metadata: z.boolean().optional()\n }).optional(),\n community_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n for_super_followers_only: z.boolean().optional(),\n geo: z.object({\n place_id: z.string()\n }).optional(),\n card_uri: z.string().optional(),\n media_tagged_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).max(10).optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('linkedin'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n visibility: z.enum(['PUBLIC', 'CONNECTIONS']),\n content_kind: z.enum([\n 'text',\n 'single_image',\n 'video',\n 'multi_image',\n 'document',\n 'article',\n 'poll'\n ]),\n article: z.object({\n source: z.url(),\n title: z.string().max(400).optional(),\n description: z.string().max(4086).optional(),\n thumbnail_media_id: z.string().optional()\n }).optional(),\n poll: z.object({\n question: z.string().min(1).max(140),\n options: z.array(z.string().min(1).max(30)).min(2).max(4),\n duration: z.enum([\n 'ONE_DAY',\n 'THREE_DAYS',\n 'SEVEN_DAYS',\n 'FOURTEEN_DAYS'\n ])\n }).optional(),\n document: z.object({\n title: z.string().min(1).max(400)\n }).optional(),\n disable_reshare: z.boolean().optional(),\n mentions: z.array(z.object({\n type: z.enum(['person', 'organization']),\n name: z.string().min(1),\n urn: z.string().regex(/^urn:li:(person|organization):/)\n })).optional()\n }),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('instagram'),\n post_type: z.enum([\n 'single_image',\n 'carousel',\n 'reel'\n ]),\n settings: z.object({\n media_type: z.enum([\n 'IMAGE',\n 'CAROUSEL',\n 'REELS'\n ]).optional(),\n location_id: z.string().optional(),\n user_tags: z.array(z.object({\n username: z.string().min(1),\n x: z.number().gte(0).lte(1),\n y: z.number().gte(0).lte(1)\n })).optional(),\n collaborators: z.array(z.string().min(1)).max(3).optional(),\n share_to_feed: z.boolean().optional(),\n thumb_offset: z.int().gte(0).lte(9007199254740991).optional(),\n cover_url: z.url().optional(),\n audio_name: z.string().optional()\n }),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('facebook_page'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'reel'\n ]),\n settings: z.object({\n link: z.url().optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('tiktok'),\n post_type: z.enum([\n 'video',\n 'single_image',\n 'carousel'\n ]),\n settings: z.object({\n privacy_level: z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ]).optional(),\n disable_comment: z.boolean().optional(),\n disable_duet: z.boolean().optional(),\n disable_stitch: z.boolean().optional(),\n video_cover_timestamp_ms: z.int().gte(0).lte(9007199254740991).optional(),\n photo_cover_index: z.int().gte(0).lte(9007199254740991).optional(),\n auto_add_music: z.boolean().optional(),\n brand_content_toggle: z.boolean().optional(),\n brand_organic_toggle: z.boolean().optional(),\n is_aigc: z.boolean().optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n })\n ])).min(1).optional()\n});\n\nexport const zPostsUpdatePath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zPostsUpdateResponse = z.object({\n id: z.string(),\n object: z.literal('post'),\n profile_id: z.string(),\n external_id: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'partially_published',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n tags: z.array(z.string()),\n notes: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n variants: z.array(z.union([\n z.object({\n platform: z.literal('x'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n reply_settings: z.enum([\n 'everyone',\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional(),\n quote_tweet_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n poll: z.object({\n options: z.array(z.string().min(1).max(25)).min(2).max(4),\n duration_minutes: z.int().gte(5).lte(10080),\n reply_settings: z.enum([\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional()\n }).optional(),\n reply: z.object({\n in_reply_to_tweet_id: z.string().regex(/^[0-9]{1,19}$/),\n exclude_reply_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).optional(),\n auto_populate_reply_metadata: z.boolean().optional()\n }).optional(),\n community_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n for_super_followers_only: z.boolean().optional(),\n geo: z.object({\n place_id: z.string()\n }).optional(),\n card_uri: z.string().optional(),\n media_tagged_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).max(10).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('linkedin'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n visibility: z.enum(['PUBLIC', 'CONNECTIONS']),\n content_kind: z.enum([\n 'text',\n 'single_image',\n 'video',\n 'multi_image',\n 'document',\n 'article',\n 'poll'\n ]),\n article: z.object({\n source: z.url(),\n title: z.string().max(400).optional(),\n description: z.string().max(4086).optional(),\n thumbnail_media_id: z.string().optional()\n }).optional(),\n poll: z.object({\n question: z.string().min(1).max(140),\n options: z.array(z.string().min(1).max(30)).min(2).max(4),\n duration: z.enum([\n 'ONE_DAY',\n 'THREE_DAYS',\n 'SEVEN_DAYS',\n 'FOURTEEN_DAYS'\n ])\n }).optional(),\n document: z.object({\n title: z.string().min(1).max(400)\n }).optional(),\n disable_reshare: z.boolean().optional(),\n mentions: z.array(z.object({\n type: z.enum(['person', 'organization']),\n name: z.string().min(1),\n urn: z.string().regex(/^urn:li:(person|organization):/)\n })).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('facebook_page'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'reel'\n ]),\n settings: z.object({\n link: z.url().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('instagram'),\n post_type: z.enum([\n 'single_image',\n 'carousel',\n 'reel'\n ]),\n settings: z.object({\n media_type: z.enum([\n 'IMAGE',\n 'CAROUSEL',\n 'REELS'\n ]).optional(),\n location_id: z.string().optional(),\n user_tags: z.array(z.object({\n username: z.string().min(1),\n x: z.number().gte(0).lte(1),\n y: z.number().gte(0).lte(1)\n })).optional(),\n collaborators: z.array(z.string().min(1)).max(3).optional(),\n share_to_feed: z.boolean().optional(),\n thumb_offset: z.int().gte(0).lte(9007199254740991).optional(),\n cover_url: z.url().optional(),\n audio_name: z.string().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n }),\n z.object({\n platform: z.literal('tiktok'),\n post_type: z.enum([\n 'video',\n 'single_image',\n 'carousel'\n ]),\n settings: z.object({\n privacy_level: z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ]).optional(),\n disable_comment: z.boolean().optional(),\n disable_duet: z.boolean().optional(),\n disable_stitch: z.boolean().optional(),\n video_cover_timestamp_ms: z.int().gte(0).lte(9007199254740991).optional(),\n photo_cover_index: z.int().gte(0).lte(9007199254740991).optional(),\n auto_add_music: z.boolean().optional(),\n brand_content_toggle: z.boolean().optional(),\n brand_organic_toggle: z.boolean().optional(),\n is_aigc: z.boolean().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable()\n }))\n })\n ])),\n created_at: z.string(),\n updated_at: z.string(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zPostsValidateBody = z.object({\n profile_id: z.string(),\n variants: z.array(z.union([\n z.object({\n platform: z.literal('x'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n reply_settings: z.enum([\n 'everyone',\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional(),\n quote_tweet_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n poll: z.object({\n options: z.array(z.string().min(1).max(25)).min(2).max(4),\n duration_minutes: z.int().gte(5).lte(10080),\n reply_settings: z.enum([\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional()\n }).optional(),\n reply: z.object({\n in_reply_to_tweet_id: z.string().regex(/^[0-9]{1,19}$/),\n exclude_reply_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).optional(),\n auto_populate_reply_metadata: z.boolean().optional()\n }).optional(),\n community_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n for_super_followers_only: z.boolean().optional(),\n geo: z.object({\n place_id: z.string()\n }).optional(),\n card_uri: z.string().optional(),\n media_tagged_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).max(10).optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('linkedin'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n visibility: z.enum(['PUBLIC', 'CONNECTIONS']),\n content_kind: z.enum([\n 'text',\n 'single_image',\n 'video',\n 'multi_image',\n 'document',\n 'article',\n 'poll'\n ]),\n article: z.object({\n source: z.url(),\n title: z.string().max(400).optional(),\n description: z.string().max(4086).optional(),\n thumbnail_media_id: z.string().optional()\n }).optional(),\n poll: z.object({\n question: z.string().min(1).max(140),\n options: z.array(z.string().min(1).max(30)).min(2).max(4),\n duration: z.enum([\n 'ONE_DAY',\n 'THREE_DAYS',\n 'SEVEN_DAYS',\n 'FOURTEEN_DAYS'\n ])\n }).optional(),\n document: z.object({\n title: z.string().min(1).max(400)\n }).optional(),\n disable_reshare: z.boolean().optional(),\n mentions: z.array(z.object({\n type: z.enum(['person', 'organization']),\n name: z.string().min(1),\n urn: z.string().regex(/^urn:li:(person|organization):/)\n })).optional()\n }),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('instagram'),\n post_type: z.enum([\n 'single_image',\n 'carousel',\n 'reel'\n ]),\n settings: z.object({\n media_type: z.enum([\n 'IMAGE',\n 'CAROUSEL',\n 'REELS'\n ]).optional(),\n location_id: z.string().optional(),\n user_tags: z.array(z.object({\n username: z.string().min(1),\n x: z.number().gte(0).lte(1),\n y: z.number().gte(0).lte(1)\n })).optional(),\n collaborators: z.array(z.string().min(1)).max(3).optional(),\n share_to_feed: z.boolean().optional(),\n thumb_offset: z.int().gte(0).lte(9007199254740991).optional(),\n cover_url: z.url().optional(),\n audio_name: z.string().optional()\n }),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('facebook_page'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'reel'\n ]),\n settings: z.object({\n link: z.url().optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('tiktok'),\n post_type: z.enum([\n 'video',\n 'single_image',\n 'carousel'\n ]),\n settings: z.object({\n privacy_level: z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ]).optional(),\n disable_comment: z.boolean().optional(),\n disable_duet: z.boolean().optional(),\n disable_stitch: z.boolean().optional(),\n video_cover_timestamp_ms: z.int().gte(0).lte(9007199254740991).optional(),\n photo_cover_index: z.int().gte(0).lte(9007199254740991).optional(),\n auto_add_music: z.boolean().optional(),\n brand_content_toggle: z.boolean().optional(),\n brand_organic_toggle: z.boolean().optional(),\n is_aigc: z.boolean().optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n })\n ])).min(1)\n});\n\n/**\n * OK\n */\nexport const zPostsValidateResponse = z.object({\n object: z.literal('validation'),\n publishable: z.boolean(),\n issues: z.array(z.object({\n code: z.enum([\n 'unauthorized',\n 'forbidden',\n 'not_found',\n 'conflict',\n 'validation_failed',\n 'rate_limited',\n 'internal_error',\n 'idempotency_key_invalid',\n 'idempotency_key_reused',\n 'idempotency_request_in_progress',\n 'account_not_available',\n 'connection_reauth_required',\n 'connection_not_pending',\n 'not_implemented',\n 'connection_discovery_failed',\n 'tiktok_creator_info_unavailable',\n 'media_processing',\n 'not_publishable',\n 'invalid_connection',\n 'invalid_media',\n 'profile_scope_invalid',\n 'media_unprobeable',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_count_invalid',\n 'body_too_long',\n 'content_missing',\n 'content_conflict',\n 'content_incomplete',\n 'content_kind_mismatch',\n 'media_type_mismatch',\n 'tag_limit_exceeded',\n 'reel_field_on_non_reel',\n 'field_placement_invalid',\n 'media_not_ready',\n 'media_failed',\n 'media_unsupported',\n 'media_kind_mismatch',\n 'variant_unparseable',\n 'publishing_unavailable',\n 'x_duplicate_content',\n 'x_not_authorized',\n 'x_access_not_permitted',\n 'x_rate_limited',\n 'x_publish_failed',\n 'x_media_upload_failed',\n 'linkedin_duplicate_content',\n 'linkedin_auth_expired',\n 'linkedin_permission_denied',\n 'linkedin_rate_limited',\n 'linkedin_media_processing',\n 'linkedin_media_failed',\n 'linkedin_media_upload_failed',\n 'linkedin_publish_failed',\n 'instagram_media_processing',\n 'instagram_container_expired',\n 'instagram_container_failed',\n 'instagram_rate_limited',\n 'instagram_not_authorized',\n 'instagram_publish_failed',\n 'facebook_reel_processing',\n 'facebook_reel_failed',\n 'facebook_rate_limited',\n 'facebook_not_authorized',\n 'facebook_publish_failed',\n 'tiktok_privacy_not_allowed',\n 'tiktok_duration_exceeds_max',\n 'tiktok_media_processing',\n 'tiktok_not_authorized',\n 'tiktok_rate_limited',\n 'tiktok_url_ownership_unverified',\n 'tiktok_unaudited_private_only',\n 'tiktok_spam_risk',\n 'tiktok_publish_failed',\n 'post_publish_failed',\n 'post_partially_published',\n 'connection_platform_mismatch',\n 'connection_removed'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n variant_index: z.int().gte(-9007199254740991).lte(9007199254740991),\n path: z.array(z.union([z.string(), z.number()])),\n platform: z.enum([\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]).optional(),\n display_error: z.string()\n }))\n});\n\nexport const zMetaAccountPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * A Meta (Facebook) ad account.\n */\nexport const zMetaAccountResponse = z.object({\n id: z.string(),\n account_id: z.string(),\n name: z.string().nullable(),\n account_status: z.int().gte(-9007199254740991).lte(9007199254740991),\n currency: z.string(),\n timezone_name: z.string().nullable(),\n amount_spent: z.string(),\n balance: z.string(),\n spend_cap: z.string().nullable()\n});\n\nexport const zMetaInsightsPath = z.object({\n connection_id: z.string()\n});\n\nexport const zMetaInsightsQuery = z.object({\n level: z.enum([\n 'account',\n 'campaign',\n 'adset',\n 'ad'\n ]).optional().default('account'),\n date_preset: z.enum([\n 'today',\n 'yesterday',\n 'this_month',\n 'last_month',\n 'this_quarter',\n 'maximum',\n 'data_maximum',\n 'last_3d',\n 'last_7d',\n 'last_14d',\n 'last_28d',\n 'last_30d',\n 'last_90d',\n 'last_week_mon_sun',\n 'last_week_sun_sat',\n 'last_quarter',\n 'last_year',\n 'this_week_mon_today',\n 'this_week_sun_today',\n 'this_year'\n ]).optional().default('last_30d'),\n time_range: z.object({\n since: z.string().regex(/^\\d{4}-\\d{2}-\\d{2}$/),\n until: z.string().regex(/^\\d{4}-\\d{2}-\\d{2}$/)\n }).optional(),\n time_increment: z.union([\n z.int().gte(1).lte(90),\n z.literal('monthly'),\n z.literal('all_days')\n ]).optional()\n});\n\n/**\n * A list of curated Meta ad-insights rows.\n */\nexport const zMetaInsightsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n date_start: z.string(),\n date_stop: z.string(),\n account_id: z.string().optional(),\n campaign_id: z.string().optional(),\n campaign_name: z.string().optional(),\n adset_id: z.string().optional(),\n adset_name: z.string().optional(),\n ad_id: z.string().optional(),\n ad_name: z.string().optional(),\n spend: z.string().optional(),\n impressions: z.string().optional(),\n clicks: z.string().optional(),\n ctr: z.string().optional(),\n cpc: z.string().optional(),\n cpm: z.string().optional(),\n cpp: z.string().optional(),\n reach: z.string().optional(),\n frequency: z.string().optional()\n }))\n});\n\nexport const zMetaCampaignsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * A list of Meta ad campaigns.\n */\nexport const zMetaCampaignsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n account_id: z.string().optional(),\n name: z.string().nullable(),\n status: z.string().optional(),\n effective_status: z.string().optional(),\n objective: z.string().optional(),\n daily_budget: z.string().optional(),\n lifetime_budget: z.string().optional(),\n budget_remaining: z.string().optional(),\n bid_strategy: z.string().optional(),\n created_time: z.string().optional(),\n start_time: z.string().optional(),\n stop_time: z.string().optional()\n }))\n});\n\nexport const zMetaCampaignPath = z.object({\n connection_id: z.string(),\n campaign_id: z.string().min(1)\n});\n\n/**\n * A Meta (Facebook) ad campaign.\n */\nexport const zMetaCampaignResponse = z.object({\n id: z.string(),\n account_id: z.string().optional(),\n name: z.string().nullable(),\n status: z.string().optional(),\n effective_status: z.string().optional(),\n objective: z.string().optional(),\n daily_budget: z.string().optional(),\n lifetime_budget: z.string().optional(),\n budget_remaining: z.string().optional(),\n bid_strategy: z.string().optional(),\n created_time: z.string().optional(),\n start_time: z.string().optional(),\n stop_time: z.string().optional()\n});\n\nexport const zMetaAdsetsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * A list of Meta ad sets.\n */\nexport const zMetaAdsetsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n account_id: z.string().optional(),\n name: z.string().nullable(),\n status: z.string().optional(),\n effective_status: z.string().optional(),\n campaign_id: z.string().optional(),\n daily_budget: z.string().optional(),\n lifetime_budget: z.string().optional(),\n budget_remaining: z.string().optional(),\n bid_amount: z.string().optional(),\n billing_event: z.string().optional(),\n optimization_goal: z.string().optional(),\n start_time: z.string().optional(),\n end_time: z.string().optional()\n }))\n});\n\nexport const zMetaAdsetPath = z.object({\n connection_id: z.string(),\n adset_id: z.string().min(1)\n});\n\n/**\n * A Meta (Facebook) ad set.\n */\nexport const zMetaAdsetResponse = z.object({\n id: z.string(),\n account_id: z.string().optional(),\n name: z.string().nullable(),\n status: z.string().optional(),\n effective_status: z.string().optional(),\n campaign_id: z.string().optional(),\n daily_budget: z.string().optional(),\n lifetime_budget: z.string().optional(),\n budget_remaining: z.string().optional(),\n bid_amount: z.string().optional(),\n billing_event: z.string().optional(),\n optimization_goal: z.string().optional(),\n start_time: z.string().optional(),\n end_time: z.string().optional()\n});\n\nexport const zMetaAdsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * A list of Meta ads.\n */\nexport const zMetaAdsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.string().optional(),\n effective_status: z.string().optional(),\n adset_id: z.string().optional(),\n campaign_id: z.string().optional(),\n account_id: z.string().optional(),\n created_time: z.string().optional(),\n updated_time: z.string().optional()\n }))\n});\n\nexport const zMetaAdPath = z.object({\n connection_id: z.string(),\n ad_id: z.string().min(1)\n});\n\n/**\n * A Meta (Facebook) ad.\n */\nexport const zMetaAdResponse = z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.string().optional(),\n effective_status: z.string().optional(),\n adset_id: z.string().optional(),\n campaign_id: z.string().optional(),\n account_id: z.string().optional(),\n created_time: z.string().optional(),\n updated_time: z.string().optional()\n});\n\nexport const zGoogleGetAccountPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * A connected Google Ads account (the `customer` resource): id, descriptive name, currency, time zone, status, and whether it is a manager (MCC) or test account.\n */\nexport const zGoogleGetAccountResponse = z.object({\n id: z.string(),\n descriptive_name: z.string().nullable(),\n currency_code: z.string().nullable(),\n time_zone: z.string().nullable(),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'CANCELED',\n 'SUSPENDED',\n 'CLOSED'\n ]),\n manager: z.boolean(),\n test_account: z.boolean()\n});\n\nexport const zGoogleGetInsightsBody = z.object({\n level: z.enum([\n 'account',\n 'campaign',\n 'ad_group'\n ]).optional().default('campaign'),\n metrics: z.array(z.enum([\n 'impressions',\n 'clicks',\n 'ctr',\n 'average_cpc',\n 'cost_micros',\n 'conversions',\n 'conversions_value',\n 'cost_per_conversion'\n ])).min(1).optional().default([\n 'impressions',\n 'clicks',\n 'cost_micros',\n 'conversions'\n ]),\n segments: z.array(z.enum(['date', 'device'])).optional(),\n since: z.string().regex(/^\\d{4}-\\d{2}-\\d{2}$/),\n until: z.string().regex(/^\\d{4}-\\d{2}-\\d{2}$/)\n});\n\nexport const zGoogleGetInsightsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * Performance rows for the requested level, metrics, and window.\n */\nexport const zGoogleGetInsightsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n level: z.enum([\n 'account',\n 'campaign',\n 'ad_group'\n ]),\n id: z.string(),\n name: z.string().nullable(),\n metrics: z.record(z.string(), z.number().nullable()),\n segments: z.record(z.string(), z.string()).optional()\n }))\n});\n\nexport const zGoogleRunGaqlBody = z.object({\n query: z.string().min(1).max(10000)\n});\n\nexport const zGoogleRunGaqlPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * The native GAQL rows for the query (unnormalised).\n */\nexport const zGoogleRunGaqlResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.union([z.unknown(), z.null()]))\n});\n\nexport const zGoogleCreateBudgetBody = z.object({\n name: z.string().min(1).max(255),\n amount_micros: z.int().gt(0).lte(9007199254740991),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleCreateBudgetPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleCreateBudgetResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleDeleteBudgetBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleDeleteBudgetPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleDeleteBudgetResponse = z.object({\n id: z.string(),\n removed: z.boolean(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleEditBudgetBody = z.object({\n amount_micros: z.int().gt(0).lte(9007199254740991),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleEditBudgetPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleEditBudgetResponse = z.object({\n id: z.string(),\n resource_name: z.string(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleListCampaignsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleListCampaignsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n advertising_channel_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'SEARCH',\n 'DISPLAY',\n 'SHOPPING',\n 'HOTEL',\n 'VIDEO',\n 'MULTI_CHANNEL',\n 'LOCAL',\n 'SMART',\n 'PERFORMANCE_MAX',\n 'LOCAL_SERVICES',\n 'TRAVEL',\n 'DEMAND_GEN'\n ]),\n bidding_strategy_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'COMMISSION',\n 'ENHANCED_CPC',\n 'FIXED_CPM',\n 'FIXED_SHARE_OF_VOICE',\n 'INVALID',\n 'MANUAL_CPA',\n 'MANUAL_CPC',\n 'MANUAL_CPM',\n 'MANUAL_CPV',\n 'MAXIMIZE_CONVERSIONS',\n 'MAXIMIZE_CONVERSION_VALUE',\n 'PAGE_ONE_PROMOTED',\n 'PERCENT_CPC',\n 'TARGET_CPA',\n 'TARGET_CPC',\n 'TARGET_CPM',\n 'TARGET_CPV',\n 'TARGET_IMPRESSION_SHARE',\n 'TARGET_OUTRANK_SHARE',\n 'TARGET_ROAS',\n 'TARGET_SPEND'\n ])\n }))\n});\n\nexport const zGoogleCreateCampaignBody = z.object({\n name: z.string().min(1).max(255),\n channel: z.enum(['SEARCH', 'DISPLAY']),\n campaign_budget: z.string().min(1),\n bidding: z.enum([\n 'manual_cpc',\n 'maximize_conversions',\n 'target_spend'\n ]),\n status: z.enum(['ENABLED', 'PAUSED']).optional().default('PAUSED'),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleCreateCampaignPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleCreateCampaignResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleDeleteCampaignBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleDeleteCampaignPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleDeleteCampaignResponse = z.object({\n id: z.string(),\n removed: z.boolean(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleGetCampaignPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * A Google Ads campaign (the `campaign` resource): id, name, status, advertising channel type, and bidding strategy type. (start/end dates are a fast-follow — the Opteo v23 campaign type does not yet expose them as typed fields, and we never cast.)\n */\nexport const zGoogleGetCampaignResponse = z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n advertising_channel_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'SEARCH',\n 'DISPLAY',\n 'SHOPPING',\n 'HOTEL',\n 'VIDEO',\n 'MULTI_CHANNEL',\n 'LOCAL',\n 'SMART',\n 'PERFORMANCE_MAX',\n 'LOCAL_SERVICES',\n 'TRAVEL',\n 'DEMAND_GEN'\n ]),\n bidding_strategy_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'COMMISSION',\n 'ENHANCED_CPC',\n 'FIXED_CPM',\n 'FIXED_SHARE_OF_VOICE',\n 'INVALID',\n 'MANUAL_CPA',\n 'MANUAL_CPC',\n 'MANUAL_CPM',\n 'MANUAL_CPV',\n 'MAXIMIZE_CONVERSIONS',\n 'MAXIMIZE_CONVERSION_VALUE',\n 'PAGE_ONE_PROMOTED',\n 'PERCENT_CPC',\n 'TARGET_CPA',\n 'TARGET_CPC',\n 'TARGET_CPM',\n 'TARGET_CPV',\n 'TARGET_IMPRESSION_SHARE',\n 'TARGET_OUTRANK_SHARE',\n 'TARGET_ROAS',\n 'TARGET_SPEND'\n ])\n});\n\nexport const zGoogleEditCampaignBody = z.object({\n name: z.string().min(1).max(255),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleEditCampaignPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleEditCampaignResponse = z.object({\n id: z.string(),\n resource_name: z.string(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGooglePauseCampaignBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGooglePauseCampaignPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGooglePauseCampaignResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleEnableCampaignBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleEnableCampaignPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGoogleEnableCampaignResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleListAdGroupsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleListAdGroupsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'SEARCH_STANDARD',\n 'DISPLAY_STANDARD',\n 'SHOPPING_PRODUCT_ADS',\n 'HOTEL_ADS',\n 'SHOPPING_SMART_ADS',\n 'VIDEO_BUMPER',\n 'VIDEO_TRUE_VIEW_IN_STREAM',\n 'VIDEO_TRUE_VIEW_IN_DISPLAY',\n 'VIDEO_NON_SKIPPABLE_IN_STREAM',\n 'SEARCH_DYNAMIC_ADS',\n 'SHOPPING_COMPARISON_LISTING_ADS',\n 'PROMOTED_HOTEL_ADS',\n 'VIDEO_RESPONSIVE',\n 'VIDEO_EFFICIENT_REACH',\n 'SMART_CAMPAIGN_ADS',\n 'TRAVEL_ADS',\n 'YOUTUBE_AUDIO'\n ]),\n campaign: z.string().nullable()\n }))\n});\n\nexport const zGoogleCreateAdGroupBody = z.object({\n name: z.string().min(1).max(255),\n campaign: z.string().min(1),\n type: z.enum(['SEARCH_STANDARD', 'DISPLAY_STANDARD']),\n status: z.enum(['ENABLED', 'PAUSED']).optional().default('ENABLED'),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleCreateAdGroupPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleCreateAdGroupResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleDeleteAdGroupBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleDeleteAdGroupPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleDeleteAdGroupResponse = z.object({\n id: z.string(),\n removed: z.boolean(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleGetAdGroupPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * A Google Ads ad group (the `ad_group` resource): id, name, status, type, and the resource name of the parent campaign.\n */\nexport const zGoogleGetAdGroupResponse = z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'SEARCH_STANDARD',\n 'DISPLAY_STANDARD',\n 'SHOPPING_PRODUCT_ADS',\n 'HOTEL_ADS',\n 'SHOPPING_SMART_ADS',\n 'VIDEO_BUMPER',\n 'VIDEO_TRUE_VIEW_IN_STREAM',\n 'VIDEO_TRUE_VIEW_IN_DISPLAY',\n 'VIDEO_NON_SKIPPABLE_IN_STREAM',\n 'SEARCH_DYNAMIC_ADS',\n 'SHOPPING_COMPARISON_LISTING_ADS',\n 'PROMOTED_HOTEL_ADS',\n 'VIDEO_RESPONSIVE',\n 'VIDEO_EFFICIENT_REACH',\n 'SMART_CAMPAIGN_ADS',\n 'TRAVEL_ADS',\n 'YOUTUBE_AUDIO'\n ]),\n campaign: z.string().nullable()\n});\n\nexport const zGoogleEditAdGroupBody = z.object({\n name: z.string().min(1).max(255),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleEditAdGroupPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleEditAdGroupResponse = z.object({\n id: z.string(),\n resource_name: z.string(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleSetAdGroupBidsBody = z.object({\n cpc_bid_micros: z.int().gt(0).lte(9007199254740991).optional(),\n cpm_bid_micros: z.int().gt(0).lte(9007199254740991).optional(),\n target_cpa_micros: z.int().gt(0).lte(9007199254740991).optional(),\n target_roas: z.number().gt(0).optional(),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleSetAdGroupBidsPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleSetAdGroupBidsResponse = z.object({\n id: z.string(),\n resource_name: z.string(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGooglePauseAdGroupBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGooglePauseAdGroupPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGooglePauseAdGroupResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleEnableAdGroupBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleEnableAdGroupPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGoogleEnableAdGroupResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleListAdsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleListAdsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n name: z.string().nullable(),\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'TEXT_AD',\n 'EXPANDED_TEXT_AD',\n 'EXPANDED_DYNAMIC_SEARCH_AD',\n 'HOTEL_AD',\n 'SHOPPING_SMART_AD',\n 'SHOPPING_PRODUCT_AD',\n 'VIDEO_AD',\n 'IMAGE_AD',\n 'RESPONSIVE_SEARCH_AD',\n 'LEGACY_RESPONSIVE_DISPLAY_AD',\n 'APP_AD',\n 'LEGACY_APP_INSTALL_AD',\n 'RESPONSIVE_DISPLAY_AD',\n 'LOCAL_AD',\n 'HTML5_UPLOAD_AD',\n 'DYNAMIC_HTML5_AD',\n 'APP_ENGAGEMENT_AD',\n 'SHOPPING_COMPARISON_LISTING_AD',\n 'VIDEO_BUMPER_AD',\n 'VIDEO_NON_SKIPPABLE_IN_STREAM_AD',\n 'VIDEO_TRUEVIEW_IN_STREAM_AD',\n 'VIDEO_RESPONSIVE_AD',\n 'SMART_CAMPAIGN_AD',\n 'CALL_AD',\n 'APP_PRE_REGISTRATION_AD',\n 'IN_FEED_VIDEO_AD',\n 'DEMAND_GEN_MULTI_ASSET_AD',\n 'DEMAND_GEN_CAROUSEL_AD',\n 'TRAVEL_AD',\n 'DEMAND_GEN_VIDEO_RESPONSIVE_AD',\n 'DEMAND_GEN_PRODUCT_AD',\n 'YOUTUBE_AUDIO_AD'\n ]),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n ad_group: z.string().nullable()\n }))\n});\n\nexport const zGoogleCreateAdBody = z.object({\n ad_group: z.string().min(1),\n final_urls: z.array(z.url()).min(1),\n headlines: z.array(z.object({\n text: z.string().min(1).max(30),\n pinned_field: z.enum([\n 'HEADLINE_1',\n 'HEADLINE_2',\n 'HEADLINE_3'\n ]).optional()\n })).min(3).max(15),\n descriptions: z.array(z.object({\n text: z.string().min(1).max(90)\n })).min(2).max(4),\n path1: z.string().max(15).optional(),\n path2: z.string().max(15).optional(),\n status: z.enum(['ENABLED', 'PAUSED']).optional().default('PAUSED'),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleCreateAdPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleCreateAdResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleDeleteAdBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleDeleteAdPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleDeleteAdResponse = z.object({\n id: z.string(),\n removed: z.boolean(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleGetAdPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * A Google Ads ad (the `ad_group_ad` resource): id, name, creative type, serving status, and the ad group resource name it belongs to.\n */\nexport const zGoogleGetAdResponse = z.object({\n id: z.string(),\n name: z.string().nullable(),\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'TEXT_AD',\n 'EXPANDED_TEXT_AD',\n 'EXPANDED_DYNAMIC_SEARCH_AD',\n 'HOTEL_AD',\n 'SHOPPING_SMART_AD',\n 'SHOPPING_PRODUCT_AD',\n 'VIDEO_AD',\n 'IMAGE_AD',\n 'RESPONSIVE_SEARCH_AD',\n 'LEGACY_RESPONSIVE_DISPLAY_AD',\n 'APP_AD',\n 'LEGACY_APP_INSTALL_AD',\n 'RESPONSIVE_DISPLAY_AD',\n 'LOCAL_AD',\n 'HTML5_UPLOAD_AD',\n 'DYNAMIC_HTML5_AD',\n 'APP_ENGAGEMENT_AD',\n 'SHOPPING_COMPARISON_LISTING_AD',\n 'VIDEO_BUMPER_AD',\n 'VIDEO_NON_SKIPPABLE_IN_STREAM_AD',\n 'VIDEO_TRUEVIEW_IN_STREAM_AD',\n 'VIDEO_RESPONSIVE_AD',\n 'SMART_CAMPAIGN_AD',\n 'CALL_AD',\n 'APP_PRE_REGISTRATION_AD',\n 'IN_FEED_VIDEO_AD',\n 'DEMAND_GEN_MULTI_ASSET_AD',\n 'DEMAND_GEN_CAROUSEL_AD',\n 'TRAVEL_AD',\n 'DEMAND_GEN_VIDEO_RESPONSIVE_AD',\n 'DEMAND_GEN_PRODUCT_AD',\n 'YOUTUBE_AUDIO_AD'\n ]),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n ad_group: z.string().nullable()\n});\n\nexport const zGoogleCreateDisplayAdBody = z.object({\n ad_group: z.string().min(1),\n final_urls: z.array(z.url()).min(1),\n marketing_images: z.array(z.object({\n asset: z.string().min(1)\n })).max(15).optional().default([]),\n square_marketing_images: z.array(z.object({\n asset: z.string().min(1)\n })).max(15).optional().default([]),\n logo_images: z.array(z.object({\n asset: z.string().min(1)\n })).max(5).optional().default([]),\n square_logo_images: z.array(z.object({\n asset: z.string().min(1)\n })).max(5).optional().default([]),\n headlines: z.array(z.object({\n text: z.string().min(1).max(30)\n })).min(1).max(5),\n long_headline: z.object({\n text: z.string().min(1).max(90)\n }),\n descriptions: z.array(z.object({\n text: z.string().min(1).max(90)\n })).min(1).max(5),\n business_name: z.string().min(1).max(25).optional(),\n call_to_action_text: z.string().min(1).optional(),\n main_color: z.string().min(1).optional(),\n accent_color: z.string().min(1).optional(),\n status: z.enum(['ENABLED', 'PAUSED']).optional().default('PAUSED'),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleCreateDisplayAdPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleCreateDisplayAdResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGooglePauseAdBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGooglePauseAdPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGooglePauseAdResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleEnableAdBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleEnableAdPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGoogleEnableAdResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleListKeywordsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleListKeywordsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n text: z.string().nullable(),\n match_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'EXACT',\n 'PHRASE',\n 'BROAD'\n ]),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n negative: z.boolean(),\n ad_group: z.string().nullable()\n }))\n});\n\nexport const zGoogleCreateKeywordBody = z.object({\n ad_group: z.string().min(1),\n text: z.string().min(1).max(80),\n match_type: z.enum([\n 'EXACT',\n 'PHRASE',\n 'BROAD'\n ]),\n negative: z.boolean().optional().default(false),\n status: z.enum(['ENABLED', 'PAUSED']).optional().default('ENABLED'),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleCreateKeywordPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleCreateKeywordResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleDeleteKeywordBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleDeleteKeywordPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleDeleteKeywordResponse = z.object({\n id: z.string(),\n removed: z.boolean(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleGetKeywordPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * A Google Ads keyword (an `ad_group_criterion` of type KEYWORD): criterion id, text, match type, status, whether it is a negative keyword, and the owning ad group resource name.\n */\nexport const zGoogleGetKeywordResponse = z.object({\n id: z.string(),\n text: z.string().nullable(),\n match_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'EXACT',\n 'PHRASE',\n 'BROAD'\n ]),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n negative: z.boolean(),\n ad_group: z.string().nullable()\n});\n\nexport const zGoogleSetKeywordBidBody = z.object({\n cpc_bid_micros: z.int().gt(0).lte(9007199254740991),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleSetKeywordBidPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleSetKeywordBidResponse = z.object({\n id: z.string(),\n resource_name: z.string(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGooglePauseKeywordBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGooglePauseKeywordPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGooglePauseKeywordResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleEnableKeywordBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleEnableKeywordPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGoogleEnableKeywordResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleListConversionActionsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleListConversionActionsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'REMOVED',\n 'HIDDEN'\n ]),\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'AD_CALL',\n 'CLICK_TO_CALL',\n 'GOOGLE_PLAY_DOWNLOAD',\n 'GOOGLE_PLAY_IN_APP_PURCHASE',\n 'UPLOAD_CALLS',\n 'UPLOAD_CLICKS',\n 'WEBPAGE',\n 'WEBSITE_CALL',\n 'STORE_SALES_DIRECT_UPLOAD',\n 'STORE_SALES',\n 'FIREBASE_ANDROID_FIRST_OPEN',\n 'FIREBASE_ANDROID_IN_APP_PURCHASE',\n 'FIREBASE_ANDROID_CUSTOM',\n 'FIREBASE_IOS_FIRST_OPEN',\n 'FIREBASE_IOS_IN_APP_PURCHASE',\n 'FIREBASE_IOS_CUSTOM',\n 'THIRD_PARTY_APP_ANALYTICS_ANDROID_FIRST_OPEN',\n 'THIRD_PARTY_APP_ANALYTICS_ANDROID_IN_APP_PURCHASE',\n 'THIRD_PARTY_APP_ANALYTICS_ANDROID_CUSTOM',\n 'THIRD_PARTY_APP_ANALYTICS_IOS_FIRST_OPEN',\n 'THIRD_PARTY_APP_ANALYTICS_IOS_IN_APP_PURCHASE',\n 'THIRD_PARTY_APP_ANALYTICS_IOS_CUSTOM',\n 'ANDROID_APP_PRE_REGISTRATION',\n 'ANDROID_INSTALLS_ALL_OTHER_APPS',\n 'FLOODLIGHT_ACTION',\n 'FLOODLIGHT_TRANSACTION',\n 'GOOGLE_HOSTED',\n 'LEAD_FORM_SUBMIT',\n 'SALESFORCE',\n 'SEARCH_ADS_360',\n 'SMART_CAMPAIGN_AD_CLICKS_TO_CALL',\n 'SMART_CAMPAIGN_MAP_CLICKS_TO_CALL',\n 'SMART_CAMPAIGN_MAP_DIRECTIONS',\n 'SMART_CAMPAIGN_TRACKED_CALLS',\n 'STORE_VISITS',\n 'WEBPAGE_CODELESS',\n 'UNIVERSAL_ANALYTICS_GOAL',\n 'UNIVERSAL_ANALYTICS_TRANSACTION',\n 'GOOGLE_ANALYTICS_4_CUSTOM',\n 'GOOGLE_ANALYTICS_4_PURCHASE'\n ]),\n category: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'DEFAULT',\n 'PAGE_VIEW',\n 'PURCHASE',\n 'SIGNUP',\n 'DOWNLOAD',\n 'ADD_TO_CART',\n 'BEGIN_CHECKOUT',\n 'SUBSCRIBE_PAID',\n 'PHONE_CALL_LEAD',\n 'IMPORTED_LEAD',\n 'SUBMIT_LEAD_FORM',\n 'BOOK_APPOINTMENT',\n 'REQUEST_QUOTE',\n 'GET_DIRECTIONS',\n 'OUTBOUND_CLICK',\n 'CONTACT',\n 'ENGAGEMENT',\n 'STORE_VISIT',\n 'STORE_SALE',\n 'QUALIFIED_LEAD',\n 'CONVERTED_LEAD'\n ]),\n origin: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'WEBSITE',\n 'GOOGLE_HOSTED',\n 'APP',\n 'CALL_FROM_ADS',\n 'STORE',\n 'YOUTUBE_HOSTED'\n ]),\n primary_for_goal: z.boolean(),\n counting_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ONE_PER_CLICK',\n 'MANY_PER_CLICK'\n ]),\n value_settings: z.object({\n default_value: z.number().nullable(),\n default_currency_code: z.string().nullable(),\n always_use_default_value: z.boolean().nullable()\n }).nullable(),\n tag_snippets: z.array(z.object({\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'WEBPAGE',\n 'WEBPAGE_ONCLICK',\n 'CLICK_TO_CALL',\n 'WEBSITE_CALL'\n ]),\n page_format: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'HTML',\n 'AMP'\n ]),\n global_site_tag: z.string().nullable(),\n event_snippet: z.string().nullable()\n }))\n }))\n});\n\nexport const zGoogleCreateConversionActionBody = z.object({\n name: z.string().min(1).max(255),\n type: z.enum(['WEBPAGE', 'UPLOAD_CLICKS']),\n category: z.enum([\n 'DEFAULT',\n 'PAGE_VIEW',\n 'PURCHASE',\n 'SIGNUP',\n 'DOWNLOAD',\n 'ADD_TO_CART',\n 'BEGIN_CHECKOUT',\n 'SUBSCRIBE_PAID',\n 'PHONE_CALL_LEAD',\n 'IMPORTED_LEAD',\n 'SUBMIT_LEAD_FORM',\n 'BOOK_APPOINTMENT',\n 'REQUEST_QUOTE',\n 'GET_DIRECTIONS',\n 'OUTBOUND_CLICK',\n 'CONTACT',\n 'ENGAGEMENT',\n 'STORE_VISIT',\n 'STORE_SALE',\n 'QUALIFIED_LEAD',\n 'CONVERTED_LEAD'\n ]),\n status: z.enum(['ENABLED']).optional().default('ENABLED'),\n value_settings: z.object({\n default_value: z.number().gte(0).optional(),\n default_currency_code: z.string().length(3).optional(),\n always_use_default_value: z.boolean().optional()\n }).optional(),\n counting_type: z.enum(['ONE_PER_CLICK', 'MANY_PER_CLICK']).optional(),\n click_through_lookback_window_days: z.int().gt(0).lte(9007199254740991).optional(),\n view_through_lookback_window_days: z.int().gt(0).lte(9007199254740991).optional(),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleCreateConversionActionPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleCreateConversionActionResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleGetConversionActionPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * A Google Ads conversion action (the `conversion_action` resource): id, name, status, type, category, origin, whether it is a primary goal, counting type, value settings, and the website tag snippets (present only for a WEBPAGE action).\n */\nexport const zGoogleGetConversionActionResponse = z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'REMOVED',\n 'HIDDEN'\n ]),\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'AD_CALL',\n 'CLICK_TO_CALL',\n 'GOOGLE_PLAY_DOWNLOAD',\n 'GOOGLE_PLAY_IN_APP_PURCHASE',\n 'UPLOAD_CALLS',\n 'UPLOAD_CLICKS',\n 'WEBPAGE',\n 'WEBSITE_CALL',\n 'STORE_SALES_DIRECT_UPLOAD',\n 'STORE_SALES',\n 'FIREBASE_ANDROID_FIRST_OPEN',\n 'FIREBASE_ANDROID_IN_APP_PURCHASE',\n 'FIREBASE_ANDROID_CUSTOM',\n 'FIREBASE_IOS_FIRST_OPEN',\n 'FIREBASE_IOS_IN_APP_PURCHASE',\n 'FIREBASE_IOS_CUSTOM',\n 'THIRD_PARTY_APP_ANALYTICS_ANDROID_FIRST_OPEN',\n 'THIRD_PARTY_APP_ANALYTICS_ANDROID_IN_APP_PURCHASE',\n 'THIRD_PARTY_APP_ANALYTICS_ANDROID_CUSTOM',\n 'THIRD_PARTY_APP_ANALYTICS_IOS_FIRST_OPEN',\n 'THIRD_PARTY_APP_ANALYTICS_IOS_IN_APP_PURCHASE',\n 'THIRD_PARTY_APP_ANALYTICS_IOS_CUSTOM',\n 'ANDROID_APP_PRE_REGISTRATION',\n 'ANDROID_INSTALLS_ALL_OTHER_APPS',\n 'FLOODLIGHT_ACTION',\n 'FLOODLIGHT_TRANSACTION',\n 'GOOGLE_HOSTED',\n 'LEAD_FORM_SUBMIT',\n 'SALESFORCE',\n 'SEARCH_ADS_360',\n 'SMART_CAMPAIGN_AD_CLICKS_TO_CALL',\n 'SMART_CAMPAIGN_MAP_CLICKS_TO_CALL',\n 'SMART_CAMPAIGN_MAP_DIRECTIONS',\n 'SMART_CAMPAIGN_TRACKED_CALLS',\n 'STORE_VISITS',\n 'WEBPAGE_CODELESS',\n 'UNIVERSAL_ANALYTICS_GOAL',\n 'UNIVERSAL_ANALYTICS_TRANSACTION',\n 'GOOGLE_ANALYTICS_4_CUSTOM',\n 'GOOGLE_ANALYTICS_4_PURCHASE'\n ]),\n category: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'DEFAULT',\n 'PAGE_VIEW',\n 'PURCHASE',\n 'SIGNUP',\n 'DOWNLOAD',\n 'ADD_TO_CART',\n 'BEGIN_CHECKOUT',\n 'SUBSCRIBE_PAID',\n 'PHONE_CALL_LEAD',\n 'IMPORTED_LEAD',\n 'SUBMIT_LEAD_FORM',\n 'BOOK_APPOINTMENT',\n 'REQUEST_QUOTE',\n 'GET_DIRECTIONS',\n 'OUTBOUND_CLICK',\n 'CONTACT',\n 'ENGAGEMENT',\n 'STORE_VISIT',\n 'STORE_SALE',\n 'QUALIFIED_LEAD',\n 'CONVERTED_LEAD'\n ]),\n origin: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'WEBSITE',\n 'GOOGLE_HOSTED',\n 'APP',\n 'CALL_FROM_ADS',\n 'STORE',\n 'YOUTUBE_HOSTED'\n ]),\n primary_for_goal: z.boolean(),\n counting_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ONE_PER_CLICK',\n 'MANY_PER_CLICK'\n ]),\n value_settings: z.object({\n default_value: z.number().nullable(),\n default_currency_code: z.string().nullable(),\n always_use_default_value: z.boolean().nullable()\n }).nullable(),\n tag_snippets: z.array(z.object({\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'WEBPAGE',\n 'WEBPAGE_ONCLICK',\n 'CLICK_TO_CALL',\n 'WEBSITE_CALL'\n ]),\n page_format: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'HTML',\n 'AMP'\n ]),\n global_site_tag: z.string().nullable(),\n event_snippet: z.string().nullable()\n }))\n});\n\nexport const zGoogleListConversionGoalsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleListConversionGoalsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n category: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'DEFAULT',\n 'PAGE_VIEW',\n 'PURCHASE',\n 'SIGNUP',\n 'DOWNLOAD',\n 'ADD_TO_CART',\n 'BEGIN_CHECKOUT',\n 'SUBSCRIBE_PAID',\n 'PHONE_CALL_LEAD',\n 'IMPORTED_LEAD',\n 'SUBMIT_LEAD_FORM',\n 'BOOK_APPOINTMENT',\n 'REQUEST_QUOTE',\n 'GET_DIRECTIONS',\n 'OUTBOUND_CLICK',\n 'CONTACT',\n 'ENGAGEMENT',\n 'STORE_VISIT',\n 'STORE_SALE',\n 'QUALIFIED_LEAD',\n 'CONVERTED_LEAD'\n ]),\n origin: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'WEBSITE',\n 'GOOGLE_HOSTED',\n 'APP',\n 'CALL_FROM_ADS',\n 'STORE',\n 'YOUTUBE_HOSTED'\n ]),\n biddable: z.boolean()\n }))\n});\n\nexport const zGoogleSetConversionGoalBody = z.object({\n category: z.enum([\n 'DEFAULT',\n 'PAGE_VIEW',\n 'PURCHASE',\n 'SIGNUP',\n 'DOWNLOAD',\n 'ADD_TO_CART',\n 'BEGIN_CHECKOUT',\n 'SUBSCRIBE_PAID',\n 'PHONE_CALL_LEAD',\n 'IMPORTED_LEAD',\n 'SUBMIT_LEAD_FORM',\n 'BOOK_APPOINTMENT',\n 'REQUEST_QUOTE',\n 'GET_DIRECTIONS',\n 'OUTBOUND_CLICK',\n 'CONTACT',\n 'ENGAGEMENT',\n 'STORE_VISIT',\n 'STORE_SALE',\n 'QUALIFIED_LEAD',\n 'CONVERTED_LEAD'\n ]),\n origin: z.enum([\n 'WEBSITE',\n 'GOOGLE_HOSTED',\n 'APP',\n 'CALL_FROM_ADS',\n 'STORE',\n 'YOUTUBE_HOSTED'\n ]),\n biddable: z.boolean(),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleSetConversionGoalPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * The outcome of a conversion-goal update: the goal’s category and origin, the new biddable value, whether it was a dry run, and whether it executed.\n */\nexport const zGoogleSetConversionGoalResponse = z.object({\n category: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'DEFAULT',\n 'PAGE_VIEW',\n 'PURCHASE',\n 'SIGNUP',\n 'DOWNLOAD',\n 'ADD_TO_CART',\n 'BEGIN_CHECKOUT',\n 'SUBSCRIBE_PAID',\n 'PHONE_CALL_LEAD',\n 'IMPORTED_LEAD',\n 'SUBMIT_LEAD_FORM',\n 'BOOK_APPOINTMENT',\n 'REQUEST_QUOTE',\n 'GET_DIRECTIONS',\n 'OUTBOUND_CLICK',\n 'CONTACT',\n 'ENGAGEMENT',\n 'STORE_VISIT',\n 'STORE_SALE',\n 'QUALIFIED_LEAD',\n 'CONVERTED_LEAD'\n ]),\n origin: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'WEBSITE',\n 'GOOGLE_HOSTED',\n 'APP',\n 'CALL_FROM_ADS',\n 'STORE',\n 'YOUTUBE_HOSTED'\n ]),\n biddable: z.boolean(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleUploadConversionsBody = z.object({\n conversions: z.array(z.object({\n conversion_action: z.string().min(1),\n conversion_date_time: z.string().regex(/^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}[+-]\\d{2}:\\d{2}$/),\n conversion_value: z.number().gte(0).optional(),\n currency_code: z.string().length(3).optional(),\n order_id: z.string().optional(),\n gclid: z.string().optional(),\n gbraid: z.string().optional(),\n wbraid: z.string().optional(),\n user_identifiers: z.array(z.object({\n hashed_email: z.string().regex(/^[a-f0-9]{64}$/).optional(),\n hashed_phone_number: z.string().regex(/^[a-f0-9]{64}$/).optional(),\n user_identifier_source: z.enum(['FIRST_PARTY', 'THIRD_PARTY']).optional()\n })).min(1).max(5).optional(),\n consent: z.object({\n ad_user_data: z.enum(['GRANTED', 'DENIED']).optional(),\n ad_personalization: z.enum(['GRANTED', 'DENIED']).optional()\n }).optional()\n })).min(1).max(2000),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleUploadConversionsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * The outcome of an offline conversion upload: received / succeeded / failed counts and the per-row errors Google returned.\n */\nexport const zGoogleUploadConversionsResponse = z.object({\n received: z.int().gte(-9007199254740991).lte(9007199254740991),\n succeeded: z.int().gte(-9007199254740991).lte(9007199254740991),\n failed: z.int().gte(-9007199254740991).lte(9007199254740991),\n errors: z.array(z.object({\n index: z.int().gte(-9007199254740991).lte(9007199254740991),\n error_code: z.string(),\n message: z.string()\n })),\n dry_run: z.boolean()\n});\n\nexport const zGoogleUploadImageAssetBody = z.object({\n media_id: z.string(),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleUploadImageAssetPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleUploadImageAssetResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zTiktokCreatorInfoPath = z.object({\n id: z.string()\n});\n\n/**\n * A TikTok creator's publish options, fetched live from TikTok. The composer renders creator.nickname + avatar, a privacy dropdown built from privacy_options (with no default), and Comment/Duet/Stitch toggles per the interaction flags (true = the interaction is ALLOWED). max_video_duration_sec caps a video's length for this account.\n */\nexport const zTiktokCreatorInfoResponse = z.object({\n creator: z.object({\n nickname: z.string(),\n username: z.string(),\n avatar_url: z.string().nullable()\n }),\n privacy_options: z.array(z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ])),\n interaction: z.object({\n comment: z.boolean(),\n duet: z.boolean(),\n stitch: z.boolean()\n }),\n max_video_duration_sec: z.int().gte(-9007199254740991).lte(9007199254740991)\n});\n\nexport const zLogsListQuery = z.object({\n limit: z.int().gte(1).lte(100).optional().default(20),\n offset: z.int().gte(0).lte(9007199254740991).optional().default(0),\n profile_id: z.string().optional(),\n connection_id: z.string().optional(),\n platform: z.enum([\n 'meta_ads',\n 'google_ads',\n 'tiktok_ads',\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]).optional(),\n status: z.enum([\n 'pending',\n 'success',\n 'error'\n ]).optional(),\n source: z.enum([\n 'api',\n 'dashboard',\n 'mcp',\n 'scheduler'\n ]).optional(),\n action: z.string().min(1).optional(),\n created_after: z.iso.datetime().optional(),\n created_before: z.iso.datetime().optional()\n});\n\n/**\n * OK\n */\nexport const zLogsListResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n source: z.enum([\n 'api',\n 'dashboard',\n 'mcp',\n 'scheduler'\n ]),\n action: z.string(),\n status: z.enum([\n 'pending',\n 'success',\n 'error'\n ]),\n status_code: z.int().gte(-9007199254740991).lte(9007199254740991).nullable(),\n platform: z.enum([\n 'meta_ads',\n 'google_ads',\n 'tiktok_ads',\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]).nullable(),\n request_method: z.string().nullable(),\n request_path: z.string().nullable(),\n request_body: z.unknown().nullish(),\n response_body: z.unknown().nullish(),\n error: z.unknown().nullish(),\n outcome: z.object({\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'partially_published',\n 'published',\n 'failed'\n ]),\n targets: z.array(z.object({\n variant_id: z.string(),\n connection_id: z.string().nullable(),\n platform: z.enum([\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n platform_post_id: z.string().nullable(),\n permalink: z.string().nullable(),\n published_at: z.string().nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable()\n }))\n }).nullable(),\n external_id: z.string().nullable(),\n idempotency_key: z.string().nullable(),\n request_id: z.string().nullable(),\n duration_ms: z.int().gte(-9007199254740991).lte(9007199254740991).nullable(),\n profile_id: z.string().nullable(),\n connection_id: z.string().nullable(),\n api_key_id: z.string().nullable(),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n })),\n total: z.int().gte(-9007199254740991).lte(9007199254740991),\n limit: z.int().gte(-9007199254740991).lte(9007199254740991),\n offset: z.int().gte(-9007199254740991).lte(9007199254740991),\n has_more: z.boolean()\n});\n\nexport const zLogsGetPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zLogsGetResponse = z.object({\n id: z.string(),\n source: z.enum([\n 'api',\n 'dashboard',\n 'mcp',\n 'scheduler'\n ]),\n action: z.string(),\n status: z.enum([\n 'pending',\n 'success',\n 'error'\n ]),\n status_code: z.int().gte(-9007199254740991).lte(9007199254740991).nullable(),\n platform: z.enum([\n 'meta_ads',\n 'google_ads',\n 'tiktok_ads',\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]).nullable(),\n request_method: z.string().nullable(),\n request_path: z.string().nullable(),\n request_body: z.unknown().nullish(),\n response_body: z.unknown().nullish(),\n error: z.unknown().nullish(),\n outcome: z.object({\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'partially_published',\n 'published',\n 'failed'\n ]),\n targets: z.array(z.object({\n variant_id: z.string(),\n connection_id: z.string().nullable(),\n platform: z.enum([\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n platform_post_id: z.string().nullable(),\n permalink: z.string().nullable(),\n published_at: z.string().nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable()\n }))\n }).nullable(),\n external_id: z.string().nullable(),\n idempotency_key: z.string().nullable(),\n request_id: z.string().nullable(),\n duration_ms: z.int().gte(-9007199254740991).lte(9007199254740991).nullable(),\n profile_id: z.string().nullable(),\n connection_id: z.string().nullable(),\n api_key_id: z.string().nullable(),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n});\n\nexport const zWebhooksListEndpointsQuery = z.object({\n limit: z.int().gte(1).lte(100).optional().default(20),\n offset: z.int().gte(0).lte(9007199254740991).optional().default(0)\n});\n\n/**\n * OK\n */\nexport const zWebhooksListEndpointsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n url: z.string(),\n description: z.string(),\n event_types: z.array(z.string()),\n disabled: z.boolean(),\n created_at: z.string(),\n updated_at: z.string()\n })),\n total: z.int().gte(-9007199254740991).lte(9007199254740991),\n limit: z.int().gte(-9007199254740991).lte(9007199254740991),\n offset: z.int().gte(-9007199254740991).lte(9007199254740991),\n has_more: z.boolean()\n});\n\nexport const zWebhooksCreateEndpointBody = z.object({\n url: z.url(),\n description: z.string().max(255).optional(),\n event_types: z.array(z.enum([\n 'webhook.ping',\n 'post.published',\n 'post.failed',\n 'post.completed'\n ]))\n});\n\n/**\n * OK\n */\nexport const zWebhooksCreateEndpointResponse = z.object({\n id: z.string(),\n url: z.string(),\n description: z.string(),\n event_types: z.array(z.string()),\n disabled: z.boolean(),\n created_at: z.string(),\n updated_at: z.string()\n});\n\nexport const zWebhooksDeleteEndpointPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zWebhooksDeleteEndpointResponse = z.object({\n id: z.string(),\n object: z.literal('webhook_endpoint'),\n deleted: z.literal(true)\n});\n\nexport const zWebhooksGetEndpointPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zWebhooksGetEndpointResponse = z.object({\n id: z.string(),\n url: z.string(),\n description: z.string(),\n event_types: z.array(z.string()),\n disabled: z.boolean(),\n created_at: z.string(),\n updated_at: z.string()\n});\n\nexport const zWebhooksUpdateEndpointBody = z.object({\n url: z.url().optional(),\n description: z.string().max(255).optional(),\n disabled: z.boolean().optional(),\n event_types: z.array(z.enum([\n 'webhook.ping',\n 'post.published',\n 'post.failed',\n 'post.completed'\n ])).optional()\n});\n\nexport const zWebhooksUpdateEndpointPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zWebhooksUpdateEndpointResponse = z.object({\n id: z.string(),\n url: z.string(),\n description: z.string(),\n event_types: z.array(z.string()),\n disabled: z.boolean(),\n created_at: z.string(),\n updated_at: z.string()\n});\n\n/**\n * OK\n */\nexport const zWebhooksCreatePortalResponse = z.object({\n url: z.string()\n});\n\n/**\n * OK\n */\nexport const zWebhooksListEventTypesResponse = z.array(z.object({\n name: z.string(),\n group: z.string(),\n description: z.string()\n}));\n\nexport const zWebhooksPingBody = z.object({\n message: z.string().max(255).optional().default('Hello from Postrun')\n});\n\n/**\n * OK\n */\nexport const zWebhooksPingResponse = z.object({\n id: z.string()\n});\n\n/**\n * Mint a short-lived, profile-scoped frontend token. Called by your backend with a secret `pr_` key; the returned token is safe to hand to a browser.\n */\nexport const zTokensMintBody = z.object({\n profile_scope: z.union([\n z.object({\n type: z.literal('ids'),\n values: z.array(z.string()).min(1).max(100)\n }),\n z.object({\n type: z.literal('external_id'),\n values: z.array(z.string().min(1).max(255)).min(1).max(50)\n }),\n z.object({\n type: z.literal('all')\n })\n ]),\n scopes: z.array(z.enum([\n 'profiles:read',\n 'profiles:write',\n 'connections:read',\n 'connections:write',\n 'ads:read',\n 'ads:write',\n 'posts:read',\n 'posts:write',\n 'media:read',\n 'media:write'\n ])).min(1),\n ttl_seconds: z.int().gte(60).lte(1800).optional().default(900)\n});\n\n/**\n * OK\n */\nexport const zTokensMintResponse = z.object({\n token: z.string(),\n expires_at: z.string()\n});\n","import * as z from 'zod';\n\nimport { zErrorCode } from './client/zod.gen';\nimport type { ErrorCode } from './client/types.gen';\n\n/**\n * The closed set of machine-readable Postrun error codes — DERIVED from the\n * generated `ErrorCode` component union (emitted from the API's `ErrorCodeSchema`\n * via the OpenAPI spec), never hand-listed. Branch on `PostrunError.code` and the\n * compiler narrows + autocompletes the exact set the API can return. Each member\n * documents itself at https://docs.postrun.ai/errors/<code>.\n */\nexport type PostrunErrorCode = ErrorCode;\n\n/**\n * The RFC 9457 problem body the Postrun API returns on every transport error —\n * its `encodeProblem` emits `{ type, title, status, code, detail, request_id?,\n * errors? }`, with the human message in `detail`.\n *\n * Modeled here with a tolerant Zod schema rather than DERIVED from the generated\n * types ON PURPOSE: the OpenAPI spec narrows `code` per-endpoint+status, so there\n * is no single generated \"problem body\" type to derive from — we parse the real\n * body here and surface the closed `code` union via `PostrunErrorCode`.\n */\nconst ProblemSchema = z.object({\n type: z.string().optional(),\n title: z.string().optional(),\n status: z.number().optional(),\n code: z.string().optional(),\n detail: z.string().optional(),\n // RFC 9457 calls the occurrence id `instance`; our bodies emit it as\n // `request_id`. Tolerate both, preferring `request_id`.\n request_id: z.string().optional(),\n instance: z.string().optional(),\n errors: z\n .array(z.object({ field: z.string(), code: z.string(), detail: z.string() }))\n .optional(),\n});\n\nexport type PostrunProblem = z.infer<typeof ProblemSchema>;\n\n/** One invalid field on a validation (422) failure. */\nexport type PostrunFieldError = NonNullable<PostrunProblem['errors']>[number];\n\n/** A typed error thrown by the client on a failed request. */\nexport class PostrunError extends Error {\n readonly status: number;\n /** The machine-readable code to branch on (closed union), if the body had one. */\n readonly code?: PostrunErrorCode;\n /** The request id for support/debugging (our `request_id`, or RFC `instance`). */\n readonly request_id?: string;\n /** Per-field validation problems on a 422, surfaced for convenience. */\n readonly fieldErrors: PostrunFieldError[];\n readonly problem?: PostrunProblem;\n\n constructor(status: number, rawProblem?: unknown) {\n const problem = ProblemSchema.safeParse(rawProblem).data;\n super(problem?.detail ?? problem?.title ?? `Postrun API error (${status})`);\n this.name = 'PostrunError';\n this.status = status;\n // Re-validate the body's `code` against the generated closed set so the field\n // is the typed union, not a bare string — an unknown code stays `undefined`\n // (no swallowed surprise) rather than being cast in.\n this.code = zErrorCode.safeParse(problem?.code).data;\n this.request_id = problem?.request_id ?? problem?.instance;\n this.fieldErrors = problem?.errors ?? [];\n this.problem = problem;\n }\n}\n","import { createClient, createConfig } from './client/client';\nimport type { Client } from './client/client';\nimport { PostrunError } from './errors';\n\n/**\n * The strongly-typed Postrun API client (Hey API). Pass it to any generated SDK\n * function via `{ client }`; every path, param, body, and response is inferred\n * from the OpenAPI spec, so the SDK can never drift from the live API.\n */\nexport type PostrunClient = Client;\n\nexport interface PostrunClientOptions {\n /** Override the API base URL (defaults to the production gateway). */\n baseUrl?: string;\n /**\n * Returns a valid short-lived scoped token. The host app's backend mints it\n * from a secret `pr_` key (`POST /v1/tokens`); the secret never reaches the\n * browser. Called per request — cache/refresh before `exp` inside here.\n */\n getToken: () => string | Promise<string>;\n}\n\nconst DEFAULT_BASE_URL = 'https://api.postrun.ai/v1';\n\n/** Append `key=value` (URL-encoded) for one scalar to the running parts list. */\nfunction appendScalar(parts: string[], key: string, value: unknown): void {\n parts.push(\n `${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`,\n );\n}\n\n/**\n * Serialize the query string for every Postrun request, by value shape:\n *\n * - **Array** (e.g. `status`) → repeated params (`status=a&status=b`), the\n * OpenAPI `form`/`explode` form the API parses into a `.in(...)` filter. A\n * JSON-encoded array would fail the array-of-enum validation.\n * - **Object** (e.g. `metadata`) → one URL-encoded JSON blob, because the API's\n * schema runs a `JSON.parse` preprocess on it; bracket form would mean the\n * server never sees a `metadata` key and silently drops the filter.\n * - **Scalar** → the value as-is.\n *\n * Operations needing a different shape (the ads reads' `metrics`/`segments`\n * params) carry their own per-call serializer in the generated SDK, which\n * overrides this.\n */\nfunction serializeQuery(query: Record<string, unknown>): string {\n const parts: string[] = [];\n\n for (const [key, value] of Object.entries(query)) {\n if (value === undefined || value === null) {\n continue;\n }\n\n if (Array.isArray(value)) {\n for (const item of value) {\n if (item !== undefined && item !== null) {\n appendScalar(parts, key, item);\n }\n }\n } else if (typeof value === 'object') {\n appendScalar(parts, key, JSON.stringify(value));\n } else {\n appendScalar(parts, key, value);\n }\n }\n\n return parts.join('&');\n}\n\n/**\n * Construct a typed client. The browser only ever holds the scoped token —\n * `getToken` is invoked per request and its value is sent as `Bearer <token>`\n * for the spec's `bearerAuth` security scheme.\n *\n * Calls throw on failure (`throwOnError`), so SDK functions return the value\n * directly (no `{ data, error }` to unwrap) — the throw-based shape every major\n * SDK uses. The error interceptor maps the raw failure to a typed `PostrunError`\n * (status + machine `code` + RFC 9457 problem), so `catch` always gets the same\n * actionable shape.\n */\nexport function createPostrunClient(\n options: PostrunClientOptions,\n): PostrunClient {\n const client = createClient(\n createConfig({\n baseUrl: options.baseUrl ?? DEFAULT_BASE_URL,\n auth: () => options.getToken(),\n querySerializer: serializeQuery,\n throwOnError: true,\n }),\n );\n\n client.interceptors.error.use((error, response) =>\n error instanceof PostrunError\n ? error\n : new PostrunError(response?.status ?? 0, error),\n );\n\n return client;\n}\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport { type Client, 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: Client = createClient(createConfig<ClientOptions2>({ baseUrl: 'https://api.postrun.ai/v1', throwOnError: true }));\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport type { Client, ClientMeta, Options as Options2, RequestResult, TDataShape } from './client';\nimport { client } from './client.gen';\nimport type { ConnectionsConnectData, ConnectionsConnectErrors, ConnectionsConnectResponses, ConnectionsDeleteData, ConnectionsDeleteErrors, ConnectionsDeleteResponses, ConnectionsGetData, ConnectionsGetErrors, ConnectionsGetResponses, ConnectionsListAccountsData, ConnectionsListAccountsErrors, ConnectionsListAccountsResponses, ConnectionsListByProfileData, ConnectionsListByProfileErrors, ConnectionsListByProfileResponses, ConnectionsSelectData, ConnectionsSelectErrors, ConnectionsSelectResponses, GoogleCreateAdData, GoogleCreateAdErrors, GoogleCreateAdGroupData, GoogleCreateAdGroupErrors, GoogleCreateAdGroupResponses, GoogleCreateAdResponses, GoogleCreateBudgetData, GoogleCreateBudgetErrors, GoogleCreateBudgetResponses, GoogleCreateCampaignData, GoogleCreateCampaignErrors, GoogleCreateCampaignResponses, GoogleCreateConversionActionData, GoogleCreateConversionActionErrors, GoogleCreateConversionActionResponses, GoogleCreateDisplayAdData, GoogleCreateDisplayAdErrors, GoogleCreateDisplayAdResponses, GoogleCreateKeywordData, GoogleCreateKeywordErrors, GoogleCreateKeywordResponses, GoogleDeleteAdData, GoogleDeleteAdErrors, GoogleDeleteAdGroupData, GoogleDeleteAdGroupErrors, GoogleDeleteAdGroupResponses, GoogleDeleteAdResponses, GoogleDeleteBudgetData, GoogleDeleteBudgetErrors, GoogleDeleteBudgetResponses, GoogleDeleteCampaignData, GoogleDeleteCampaignErrors, GoogleDeleteCampaignResponses, GoogleDeleteKeywordData, GoogleDeleteKeywordErrors, GoogleDeleteKeywordResponses, GoogleEditAdGroupData, GoogleEditAdGroupErrors, GoogleEditAdGroupResponses, GoogleEditBudgetData, GoogleEditBudgetErrors, GoogleEditBudgetResponses, GoogleEditCampaignData, GoogleEditCampaignErrors, GoogleEditCampaignResponses, GoogleEnableAdData, GoogleEnableAdErrors, GoogleEnableAdGroupData, GoogleEnableAdGroupErrors, GoogleEnableAdGroupResponses, GoogleEnableAdResponses, GoogleEnableCampaignData, GoogleEnableCampaignErrors, GoogleEnableCampaignResponses, GoogleEnableKeywordData, GoogleEnableKeywordErrors, GoogleEnableKeywordResponses, GoogleGetAccountData, GoogleGetAccountErrors, GoogleGetAccountResponses, GoogleGetAdData, GoogleGetAdErrors, GoogleGetAdGroupData, GoogleGetAdGroupErrors, GoogleGetAdGroupResponses, GoogleGetAdResponses, GoogleGetCampaignData, GoogleGetCampaignErrors, GoogleGetCampaignResponses, GoogleGetConversionActionData, GoogleGetConversionActionErrors, GoogleGetConversionActionResponses, GoogleGetInsightsData, GoogleGetInsightsErrors, GoogleGetInsightsResponses, GoogleGetKeywordData, GoogleGetKeywordErrors, GoogleGetKeywordResponses, GoogleListAdGroupsData, GoogleListAdGroupsErrors, GoogleListAdGroupsResponses, GoogleListAdsData, GoogleListAdsErrors, GoogleListAdsResponses, GoogleListCampaignsData, GoogleListCampaignsErrors, GoogleListCampaignsResponses, GoogleListConversionActionsData, GoogleListConversionActionsErrors, GoogleListConversionActionsResponses, GoogleListConversionGoalsData, GoogleListConversionGoalsErrors, GoogleListConversionGoalsResponses, GoogleListKeywordsData, GoogleListKeywordsErrors, GoogleListKeywordsResponses, GooglePauseAdData, GooglePauseAdErrors, GooglePauseAdGroupData, GooglePauseAdGroupErrors, GooglePauseAdGroupResponses, GooglePauseAdResponses, GooglePauseCampaignData, GooglePauseCampaignErrors, GooglePauseCampaignResponses, GooglePauseKeywordData, GooglePauseKeywordErrors, GooglePauseKeywordResponses, GoogleRunGaqlData, GoogleRunGaqlErrors, GoogleRunGaqlResponses, GoogleSetAdGroupBidsData, GoogleSetAdGroupBidsErrors, GoogleSetAdGroupBidsResponses, GoogleSetConversionGoalData, GoogleSetConversionGoalErrors, GoogleSetConversionGoalResponses, GoogleSetKeywordBidData, GoogleSetKeywordBidErrors, GoogleSetKeywordBidResponses, GoogleUploadConversionsData, GoogleUploadConversionsErrors, GoogleUploadConversionsResponses, GoogleUploadImageAssetData, GoogleUploadImageAssetErrors, GoogleUploadImageAssetResponses, LogsGetData, LogsGetErrors, LogsGetResponses, LogsListData, LogsListErrors, LogsListResponses, MediaCreateData, MediaCreateErrors, MediaCreateResponses, MediaDeleteData, MediaDeleteErrors, MediaDeleteResponses, MediaGetData, MediaGetErrors, MediaGetResponses, MediaListData, MediaListErrors, MediaListResponses, MediaUpdateData, MediaUpdateErrors, MediaUpdateResponses, MetaAccountData, MetaAccountErrors, MetaAccountResponses, MetaAdData, MetaAdErrors, MetaAdResponses, MetaAdsData, MetaAdsErrors, MetaAdsetData, MetaAdsetErrors, MetaAdsetResponses, MetaAdsetsData, MetaAdsetsErrors, MetaAdsetsResponses, MetaAdsResponses, MetaCampaignData, MetaCampaignErrors, MetaCampaignResponses, MetaCampaignsData, MetaCampaignsErrors, MetaCampaignsResponses, MetaInsightsData, MetaInsightsErrors, MetaInsightsResponses, PostsCreateData, PostsCreateErrors, PostsCreateResponses, PostsDeleteData, PostsDeleteErrors, PostsDeleteResponses, PostsGetData, PostsGetErrors, PostsGetResponses, PostsListData, PostsListErrors, PostsListResponses, PostsUpdateData, PostsUpdateErrors, PostsUpdateResponses, PostsValidateData, PostsValidateErrors, PostsValidateResponses, ProfilesCreateData, ProfilesCreateErrors, ProfilesCreateResponses, ProfilesDeleteData, ProfilesDeleteErrors, ProfilesDeleteResponses, ProfilesGetData, ProfilesGetErrors, ProfilesGetResponses, ProfilesListData, ProfilesListErrors, ProfilesListResponses, ProfilesUpdateData, ProfilesUpdateErrors, ProfilesUpdateResponses, TiktokCreatorInfoData, TiktokCreatorInfoErrors, TiktokCreatorInfoResponses, TokensMintData, TokensMintErrors, TokensMintResponses, WebhooksCreateEndpointData, WebhooksCreateEndpointErrors, WebhooksCreateEndpointResponses, WebhooksCreatePortalData, WebhooksCreatePortalErrors, WebhooksCreatePortalResponses, WebhooksDeleteEndpointData, WebhooksDeleteEndpointErrors, WebhooksDeleteEndpointResponses, WebhooksGetEndpointData, WebhooksGetEndpointErrors, WebhooksGetEndpointResponses, WebhooksListEndpointsData, WebhooksListEndpointsErrors, WebhooksListEndpointsResponses, WebhooksListEventTypesData, WebhooksListEventTypesErrors, WebhooksListEventTypesResponses, WebhooksPingData, WebhooksPingErrors, WebhooksPingResponses, WebhooksUpdateEndpointData, WebhooksUpdateEndpointErrors, WebhooksUpdateEndpointResponses } from './types.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?: keyof ClientMeta extends never ? Record<string, unknown> : ClientMeta;\n};\n\n/**\n * List profiles\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `profiles:read` (the response is limited to the profiles the token is scoped to).\n *\n * Lists the profiles under your account, newest first.\n */\nexport const profilesList = <ThrowOnError extends boolean = true>(options?: Options<ProfilesListData, ThrowOnError>): RequestResult<ProfilesListResponses, ProfilesListErrors, ThrowOnError> => (options?.client ?? client).get<ProfilesListResponses, ProfilesListErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/profiles',\n ...options\n});\n\n/**\n * Create a profile\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `profiles:write` with account-wide profile scope (`all`); a profile-scoped token cannot create.\n *\n * Creates a profile — a client/brand workspace under your account, and the unit connections attach to.\n */\nexport const profilesCreate = <ThrowOnError extends boolean = true>(options: Options<ProfilesCreateData, ThrowOnError>): RequestResult<ProfilesCreateResponses, ProfilesCreateErrors, ThrowOnError> => (options.client ?? client).post<ProfilesCreateResponses, ProfilesCreateErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/profiles',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a profile\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `profiles:write` scoped to the target profile.\n *\n * Deletes a profile. The profile must have no connections — delete its connections first (and a connection in turn cannot be deleted while a post still publishes through it).\n */\nexport const profilesDelete = <ThrowOnError extends boolean = true>(options: Options<ProfilesDeleteData, ThrowOnError>): RequestResult<ProfilesDeleteResponses, ProfilesDeleteErrors, ThrowOnError> => (options.client ?? client).delete<ProfilesDeleteResponses, ProfilesDeleteErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/profiles/{id}',\n ...options\n});\n\n/**\n * Retrieve a profile\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `profiles:read` scoped to the target profile.\n *\n * Retrieves a single profile by id.\n */\nexport const profilesGet = <ThrowOnError extends boolean = true>(options: Options<ProfilesGetData, ThrowOnError>): RequestResult<ProfilesGetResponses, ProfilesGetErrors, ThrowOnError> => (options.client ?? client).get<ProfilesGetResponses, ProfilesGetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/profiles/{id}',\n ...options\n});\n\n/**\n * Update a profile\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `profiles:write` scoped to the target profile.\n *\n * Updates a profile. Send only the fields you want to change; provide at least one.\n */\nexport const profilesUpdate = <ThrowOnError extends boolean = true>(options: Options<ProfilesUpdateData, ThrowOnError>): RequestResult<ProfilesUpdateResponses, ProfilesUpdateErrors, ThrowOnError> => (options.client ?? client).patch<ProfilesUpdateResponses, ProfilesUpdateErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/profiles/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List a profile's connections\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `connections:read` scoped to the target profile.\n *\n * Lists the external accounts connected to a profile, most recent first. Returns 404 if the profile doesn't exist in your account.\n */\nexport const connectionsListByProfile = <ThrowOnError extends boolean = true>(options: Options<ConnectionsListByProfileData, ThrowOnError>): RequestResult<ConnectionsListByProfileResponses, ConnectionsListByProfileErrors, ThrowOnError> => (options.client ?? client).get<ConnectionsListByProfileResponses, ConnectionsListByProfileErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/profiles/{id}/connections',\n ...options\n});\n\n/**\n * Delete a connection\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `connections:write` scoped to the profile that owns the connection.\n *\n * Disconnects a connection. Returns a deletion marker; returns 404 if it does not exist in your account. Disconnect is unconditional — any scheduled posts that target this connection are not blocked; they fail gracefully at publish time with a `connection_removed` error until you reconnect and reschedule.\n */\nexport const connectionsDelete = <ThrowOnError extends boolean = true>(options: Options<ConnectionsDeleteData, ThrowOnError>): RequestResult<ConnectionsDeleteResponses, ConnectionsDeleteErrors, ThrowOnError> => (options.client ?? client).delete<ConnectionsDeleteResponses, ConnectionsDeleteErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/connections/{id}',\n ...options\n});\n\n/**\n * Retrieve a connection\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `connections:read` scoped to the profile that owns the connection.\n *\n * Retrieves a single connection by id.\n */\nexport const connectionsGet = <ThrowOnError extends boolean = true>(options: Options<ConnectionsGetData, ThrowOnError>): RequestResult<ConnectionsGetResponses, ConnectionsGetErrors, ThrowOnError> => (options.client ?? client).get<ConnectionsGetResponses, ConnectionsGetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/connections/{id}',\n ...options\n});\n\n/**\n * Select a connection account\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `connections:write` scoped to the profile that owns the connection.\n *\n * Activates a pending connection by choosing which external account (e.g. which Meta ad account) it uses. The account must be one reachable through the connection’s OAuth grant; its canonical name + currency are resolved server-side from discovery, so the stored display values can’t be spoofed by the caller.\n */\nexport const connectionsSelect = <ThrowOnError extends boolean = true>(options: Options<ConnectionsSelectData, ThrowOnError>): RequestResult<ConnectionsSelectResponses, ConnectionsSelectErrors, ThrowOnError> => (options.client ?? client).patch<ConnectionsSelectResponses, ConnectionsSelectErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/connections/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List a connection’s discoverable accounts\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `connections:read` scoped to the profile that owns the connection.\n *\n * Lists the external ad accounts reachable through this connection’s OAuth grant — the picker shown after OAuth, while the connection is still pending account selection. Returns 404 if the connection does not exist in your account, and 501 if account discovery is not yet supported for the connection’s platform.\n */\nexport const connectionsListAccounts = <ThrowOnError extends boolean = true>(options: Options<ConnectionsListAccountsData, ThrowOnError>): RequestResult<ConnectionsListAccountsResponses, ConnectionsListAccountsErrors, ThrowOnError> => (options.client ?? client).get<ConnectionsListAccountsResponses, ConnectionsListAccountsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/connections/{id}/accounts',\n ...options\n});\n\n/**\n * Connect a platform account\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `connections:write` scoped to the target profile.\n *\n * Starts an OAuth connect flow for a platform on this profile. Returns a short-lived session the client uses to authorize; the connection is created once authorization succeeds.\n */\nexport const connectionsConnect = <ThrowOnError extends boolean = true>(options: Options<ConnectionsConnectData, ThrowOnError>): RequestResult<ConnectionsConnectResponses, ConnectionsConnectErrors, ThrowOnError> => (options.client ?? client).post<ConnectionsConnectResponses, ConnectionsConnectErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/profiles/{id}/connect',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List media\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `media:read` (the response is limited to the profiles the token is scoped to).\n *\n * Lists the media assets under your account, newest first. Filter by profile, status, kind, your own external_id, or metadata.\n */\nexport const mediaList = <ThrowOnError extends boolean = true>(options?: Options<MediaListData, ThrowOnError>): RequestResult<MediaListResponses, MediaListErrors, ThrowOnError> => (options?.client ?? client).get<MediaListResponses, MediaListErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/media',\n ...options\n});\n\n/**\n * Upload media\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `media:write` scoped to the target profile.\n *\n * Creates a media asset. Two ways to supply the bytes: (1) omit `source_url` and PUT the bytes to the returned signed upload target (the direct-upload path; `upload` is non-null), or (2) supply a public `https` `source_url` and we fetch the bytes server-side, validate, transform, and store them (the import path; `upload` is null). Either way the asset settles through the same probe/transform flow.\n */\nexport const mediaCreate = <ThrowOnError extends boolean = true>(options: Options<MediaCreateData, ThrowOnError>): RequestResult<MediaCreateResponses, MediaCreateErrors, ThrowOnError> => (options.client ?? client).post<MediaCreateResponses, MediaCreateErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/media',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete media\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `media:write` scoped to the profile that owns the media asset.\n *\n * Deletes a media asset and its stored renditions.\n */\nexport const mediaDelete = <ThrowOnError extends boolean = true>(options: Options<MediaDeleteData, ThrowOnError>): RequestResult<MediaDeleteResponses, MediaDeleteErrors, ThrowOnError> => (options.client ?? client).delete<MediaDeleteResponses, MediaDeleteErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/media/{id}',\n ...options\n});\n\n/**\n * Retrieve media\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `media:read` scoped to the profile that owns the media asset.\n *\n * Retrieves a media asset, including its per-platform processing status and renditions.\n */\nexport const mediaGet = <ThrowOnError extends boolean = true>(options: Options<MediaGetData, ThrowOnError>): RequestResult<MediaGetResponses, MediaGetErrors, ThrowOnError> => (options.client ?? client).get<MediaGetResponses, MediaGetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/media/{id}',\n ...options\n});\n\n/**\n * Update media\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `media:write` scoped to the profile that owns the media asset.\n *\n * Updates a media asset (alt text, metadata, external_id) or adds `targets` to pre-warm more platforms. Send only the fields to change.\n */\nexport const mediaUpdate = <ThrowOnError extends boolean = true>(options: Options<MediaUpdateData, ThrowOnError>): RequestResult<MediaUpdateResponses, MediaUpdateErrors, ThrowOnError> => (options.client ?? client).patch<MediaUpdateResponses, MediaUpdateErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/media/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List posts\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `posts:read` (the response is limited to the profiles the token is scoped to).\n *\n * Lists the posts under your account, newest first. Filter by profile or your own external_id.\n */\nexport const postsList = <ThrowOnError extends boolean = true>(options?: Options<PostsListData, ThrowOnError>): RequestResult<PostsListResponses, PostsListErrors, ThrowOnError> => (options?.client ?? client).get<PostsListResponses, PostsListErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/posts',\n ...options\n});\n\n/**\n * Create a post\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `posts:write` scoped to the target profile.\n *\n * Composes a post + its per-channel variants. `publish` decides the outcome: `now` publishes immediately, `schedule` publishes at `schedule_at`, `draft` just stores it.\n */\nexport const postsCreate = <ThrowOnError extends boolean = true>(options: Options<PostsCreateData, ThrowOnError>): RequestResult<PostsCreateResponses, PostsCreateErrors, ThrowOnError> => (options.client ?? client).post<PostsCreateResponses, PostsCreateErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/posts',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a post\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `posts:write` scoped to the profile that owns the post.\n *\n * Deletes a post and its variants. Returns a deletion marker; 404 if it does not exist in your account. Already-published posts are not retracted from the platform.\n */\nexport const postsDelete = <ThrowOnError extends boolean = true>(options: Options<PostsDeleteData, ThrowOnError>): RequestResult<PostsDeleteResponses, PostsDeleteErrors, ThrowOnError> => (options.client ?? client).delete<PostsDeleteResponses, PostsDeleteErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/posts/{id}',\n ...options\n});\n\n/**\n * Retrieve a post\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `posts:read` scoped to the profile that owns the post.\n *\n * Retrieves a single post by id, including its per-channel variants and their derived status.\n */\nexport const postsGet = <ThrowOnError extends boolean = true>(options: Options<PostsGetData, ThrowOnError>): RequestResult<PostsGetResponses, PostsGetErrors, ThrowOnError> => (options.client ?? client).get<PostsGetResponses, PostsGetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/posts/{id}',\n ...options\n});\n\n/**\n * Update a post\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `posts:write` scoped to the profile that owns the post.\n *\n * Edits a post and/or transitions its publish state (`draft` / `schedule` / `now`). Valid only while the post is draft or scheduled. Send only the fields to change; providing `variants` replaces the whole set.\n */\nexport const postsUpdate = <ThrowOnError extends boolean = true>(options: Options<PostsUpdateData, ThrowOnError>): RequestResult<PostsUpdateResponses, PostsUpdateErrors, ThrowOnError> => (options.client ?? client).patch<PostsUpdateResponses, PostsUpdateErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/posts/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Validate a post\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `posts:read` scoped to the target profile.\n *\n * Runs the exact ownership + publish-readiness checks the create path runs under dry_run, with no side effects. Returns a per-issue verdict (`publishable` + `issues[]`) on 200; a reference to a connection/media outside the profile is a typed 422.\n */\nexport const postsValidate = <ThrowOnError extends boolean = true>(options: Options<PostsValidateData, ThrowOnError>): RequestResult<PostsValidateResponses, PostsValidateErrors, ThrowOnError> => (options.client ?? client).post<PostsValidateResponses, PostsValidateErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/posts/validate',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Retrieve the Meta ad account\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Retrieves the Meta ad account this connection is linked to — name, currency, status, and spend. Monetary fields are in the account currency’s minor units.\n */\nexport const metaAccount = <ThrowOnError extends boolean = true>(options: Options<MetaAccountData, ThrowOnError>): RequestResult<MetaAccountResponses, MetaAccountErrors, ThrowOnError> => (options.client ?? client).get<MetaAccountResponses, MetaAccountErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/account',\n ...options\n});\n\n/**\n * Retrieve Meta ad insights\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Retrieves performance insights for the connection’s Meta ad account, aggregated at the chosen `level` over a date window. Metric values are strings, in the account currency’s units.\n */\nexport const metaInsights = <ThrowOnError extends boolean = true>(options: Options<MetaInsightsData, ThrowOnError>): RequestResult<MetaInsightsResponses, MetaInsightsErrors, ThrowOnError> => (options.client ?? client).get<MetaInsightsResponses, MetaInsightsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/insights',\n ...options\n});\n\n/**\n * List Meta campaigns\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Lists the campaigns under the connection’s Meta ad account, with each campaign’s status, objective, and budgets (budgets in the account currency’s minor units).\n */\nexport const metaCampaigns = <ThrowOnError extends boolean = true>(options: Options<MetaCampaignsData, ThrowOnError>): RequestResult<MetaCampaignsResponses, MetaCampaignsErrors, ThrowOnError> => (options.client ?? client).get<MetaCampaignsResponses, MetaCampaignsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/campaigns',\n ...options\n});\n\n/**\n * Retrieve a Meta campaign\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Retrieves a single campaign under the connection’s Meta ad account by its campaign id — status, objective, and budgets.\n */\nexport const metaCampaign = <ThrowOnError extends boolean = true>(options: Options<MetaCampaignData, ThrowOnError>): RequestResult<MetaCampaignResponses, MetaCampaignErrors, ThrowOnError> => (options.client ?? client).get<MetaCampaignResponses, MetaCampaignErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/campaigns/{campaign_id}',\n ...options\n});\n\n/**\n * List Meta ad sets\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Lists the ad sets under the connection’s Meta ad account, with each ad set’s status, parent campaign, budgets, and optimization (budgets in the account currency’s minor units).\n */\nexport const metaAdsets = <ThrowOnError extends boolean = true>(options: Options<MetaAdsetsData, ThrowOnError>): RequestResult<MetaAdsetsResponses, MetaAdsetsErrors, ThrowOnError> => (options.client ?? client).get<MetaAdsetsResponses, MetaAdsetsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/adsets',\n ...options\n});\n\n/**\n * Retrieve a Meta ad set\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Retrieves a single ad set under the connection’s Meta ad account by its ad set id — status, parent campaign, budgets, and optimization.\n */\nexport const metaAdset = <ThrowOnError extends boolean = true>(options: Options<MetaAdsetData, ThrowOnError>): RequestResult<MetaAdsetResponses, MetaAdsetErrors, ThrowOnError> => (options.client ?? client).get<MetaAdsetResponses, MetaAdsetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/adsets/{adset_id}',\n ...options\n});\n\n/**\n * List Meta ads\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Lists the ads under the connection’s Meta ad account, with each ad’s status, parent ad set and campaign ids, and timestamps.\n */\nexport const metaAds = <ThrowOnError extends boolean = true>(options: Options<MetaAdsData, ThrowOnError>): RequestResult<MetaAdsResponses, MetaAdsErrors, ThrowOnError> => (options.client ?? client).get<MetaAdsResponses, MetaAdsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/ads',\n ...options\n});\n\n/**\n * Retrieve a Meta ad\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Retrieves a single ad under the connection’s Meta ad account by its ad id — status, parent ad set and campaign ids, and timestamps.\n */\nexport const metaAd = <ThrowOnError extends boolean = true>(options: Options<MetaAdData, ThrowOnError>): RequestResult<MetaAdResponses, MetaAdErrors, ThrowOnError> => (options.client ?? client).get<MetaAdResponses, MetaAdErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/ads/{ad_id}',\n ...options\n});\n\n/**\n * Retrieve the connected Google Ads account\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns the Google Ads account (the `customer` resource) backing this connection — id, descriptive name, currency, time zone, status, and whether it is a manager (MCC) or test account.\n */\nexport const googleGetAccount = <ThrowOnError extends boolean = true>(options: Options<GoogleGetAccountData, ThrowOnError>): RequestResult<GoogleGetAccountResponses, GoogleGetAccountErrors, ThrowOnError> => (options.client ?? client).get<GoogleGetAccountResponses, GoogleGetAccountErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/account',\n ...options\n});\n\n/**\n * Google Ads performance insights\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Performance metrics for the connection’s account, at a chosen level (account / campaign / ad group), for a date range, with optional breakdowns. The flagship cross-checked read; use `/gaql` for anything outside this shape.\n */\nexport const googleGetInsights = <ThrowOnError extends boolean = true>(options: Options<GoogleGetInsightsData, ThrowOnError>): RequestResult<GoogleGetInsightsResponses, GoogleGetInsightsErrors, ThrowOnError> => (options.client ?? client).post<GoogleGetInsightsResponses, GoogleGetInsightsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/insights',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Run a raw GAQL query\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Runs a raw Google Ads Query Language (GAQL) query against the connection’s account and returns the native rows. Read-only (GAQL only does `SELECT`). The power-user escape hatch beneath the typed reads.\n */\nexport const googleRunGaql = <ThrowOnError extends boolean = true>(options: Options<GoogleRunGaqlData, ThrowOnError>): RequestResult<GoogleRunGaqlResponses, GoogleRunGaqlErrors, ThrowOnError> => (options.client ?? client).post<GoogleRunGaqlResponses, GoogleRunGaqlErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/gaql',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Create a Google Ads campaign budget\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Creates a standalone daily campaign budget (the `campaign_budget` resource) on the connection’s account. Money write — secret-key-only. Pass `dry_run: true` to validate against Google without creating. Returns the new resource id + resource_name to chain into a campaign.\n */\nexport const googleCreateBudget = <ThrowOnError extends boolean = true>(options: Options<GoogleCreateBudgetData, ThrowOnError>): RequestResult<GoogleCreateBudgetResponses, GoogleCreateBudgetErrors, ThrowOnError> => (options.client ?? client).post<GoogleCreateBudgetResponses, GoogleCreateBudgetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/budgets',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a Google Ads campaign budget\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Removes a campaign budget by numeric id (Google’s native remove). Pass `dry_run: true` to validate the removal against Google without applying it.\n */\nexport const googleDeleteBudget = <ThrowOnError extends boolean = true>(options: Options<GoogleDeleteBudgetData, ThrowOnError>): RequestResult<GoogleDeleteBudgetResponses, GoogleDeleteBudgetErrors, ThrowOnError> => (options.client ?? client).delete<GoogleDeleteBudgetResponses, GoogleDeleteBudgetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/budgets/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Edit a Google Ads campaign budget\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Updates a budget’s daily amount (in micros) by numeric id. Money write — secret-key-only. Pass `dry_run: true` to validate against Google without applying.\n */\nexport const googleEditBudget = <ThrowOnError extends boolean = true>(options: Options<GoogleEditBudgetData, ThrowOnError>): RequestResult<GoogleEditBudgetResponses, GoogleEditBudgetErrors, ThrowOnError> => (options.client ?? client).patch<GoogleEditBudgetResponses, GoogleEditBudgetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/budgets/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List Google Ads campaigns\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns the campaigns (the `campaign` resource) on the connection’s account — id, name, status, advertising channel type, and bidding strategy type.\n */\nexport const googleListCampaigns = <ThrowOnError extends boolean = true>(options: Options<GoogleListCampaignsData, ThrowOnError>): RequestResult<GoogleListCampaignsResponses, GoogleListCampaignsErrors, ThrowOnError> => (options.client ?? client).get<GoogleListCampaignsResponses, GoogleListCampaignsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/campaigns',\n ...options\n});\n\n/**\n * Create a Google Ads campaign\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Creates a Search or Display campaign (the `campaign` resource) on the connection’s account, attached to an existing budget. Pass `dry_run: true` to validate against Google without creating. Returns the new resource id + resource_name.\n */\nexport const googleCreateCampaign = <ThrowOnError extends boolean = true>(options: Options<GoogleCreateCampaignData, ThrowOnError>): RequestResult<GoogleCreateCampaignResponses, GoogleCreateCampaignErrors, ThrowOnError> => (options.client ?? client).post<GoogleCreateCampaignResponses, GoogleCreateCampaignErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/campaigns',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a Google Ads campaign\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Removes a campaign by numeric id (Google’s native remove). Pass `dry_run: true` to validate the removal against Google without applying it.\n */\nexport const googleDeleteCampaign = <ThrowOnError extends boolean = true>(options: Options<GoogleDeleteCampaignData, ThrowOnError>): RequestResult<GoogleDeleteCampaignResponses, GoogleDeleteCampaignErrors, ThrowOnError> => (options.client ?? client).delete<GoogleDeleteCampaignResponses, GoogleDeleteCampaignErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/campaigns/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Retrieve a Google Ads campaign\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns a single campaign (the `campaign` resource) by its numeric id on the connection’s account — id, name, status, advertising channel type, and bidding strategy type.\n */\nexport const googleGetCampaign = <ThrowOnError extends boolean = true>(options: Options<GoogleGetCampaignData, ThrowOnError>): RequestResult<GoogleGetCampaignResponses, GoogleGetCampaignErrors, ThrowOnError> => (options.client ?? client).get<GoogleGetCampaignResponses, GoogleGetCampaignErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/campaigns/{id}',\n ...options\n});\n\n/**\n * Edit a Google Ads campaign\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Updates a campaign’s non-money fields (its name) by numeric id. Status has its own pause/enable endpoints; bids are a separate money write. Pass `dry_run: true` to validate against Google without applying.\n */\nexport const googleEditCampaign = <ThrowOnError extends boolean = true>(options: Options<GoogleEditCampaignData, ThrowOnError>): RequestResult<GoogleEditCampaignResponses, GoogleEditCampaignErrors, ThrowOnError> => (options.client ?? client).patch<GoogleEditCampaignResponses, GoogleEditCampaignErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/campaigns/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Pause a Google Ads campaign\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Pauses a campaign by its numeric id (reversible). Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googlePauseCampaign = <ThrowOnError extends boolean = true>(options: Options<GooglePauseCampaignData, ThrowOnError>): RequestResult<GooglePauseCampaignResponses, GooglePauseCampaignErrors, ThrowOnError> => (options.client ?? client).post<GooglePauseCampaignResponses, GooglePauseCampaignErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/campaigns/{id}/pause',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Enable a Google Ads campaign\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Enables (resumes) a campaign by its numeric id. Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googleEnableCampaign = <ThrowOnError extends boolean = true>(options: Options<GoogleEnableCampaignData, ThrowOnError>): RequestResult<GoogleEnableCampaignResponses, GoogleEnableCampaignErrors, ThrowOnError> => (options.client ?? client).post<GoogleEnableCampaignResponses, GoogleEnableCampaignErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/campaigns/{id}/enable',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List Google Ads ad groups\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Lists the ad groups (Google’s equivalent of an ad set) in the Google Ads account backing this connection — id, name, status, type, and parent campaign.\n */\nexport const googleListAdGroups = <ThrowOnError extends boolean = true>(options: Options<GoogleListAdGroupsData, ThrowOnError>): RequestResult<GoogleListAdGroupsResponses, GoogleListAdGroupsErrors, ThrowOnError> => (options.client ?? client).get<GoogleListAdGroupsResponses, GoogleListAdGroupsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups',\n ...options\n});\n\n/**\n * Create a Google Ads ad group\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Creates an ad group (the `ad_group` resource) under a campaign on the connection’s account. Pass `dry_run: true` to validate against Google without creating. Returns the new resource id + resource_name to chain into ads and keywords.\n */\nexport const googleCreateAdGroup = <ThrowOnError extends boolean = true>(options: Options<GoogleCreateAdGroupData, ThrowOnError>): RequestResult<GoogleCreateAdGroupResponses, GoogleCreateAdGroupErrors, ThrowOnError> => (options.client ?? client).post<GoogleCreateAdGroupResponses, GoogleCreateAdGroupErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a Google Ads ad group\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Removes an ad group by numeric id (Google’s native remove). Pass `dry_run: true` to validate the removal against Google without applying it.\n */\nexport const googleDeleteAdGroup = <ThrowOnError extends boolean = true>(options: Options<GoogleDeleteAdGroupData, ThrowOnError>): RequestResult<GoogleDeleteAdGroupResponses, GoogleDeleteAdGroupErrors, ThrowOnError> => (options.client ?? client).delete<GoogleDeleteAdGroupResponses, GoogleDeleteAdGroupErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Retrieve a Google Ads ad group\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns a single ad group by its numeric id from the Google Ads account backing this connection — id, name, status, type, and parent campaign.\n */\nexport const googleGetAdGroup = <ThrowOnError extends boolean = true>(options: Options<GoogleGetAdGroupData, ThrowOnError>): RequestResult<GoogleGetAdGroupResponses, GoogleGetAdGroupErrors, ThrowOnError> => (options.client ?? client).get<GoogleGetAdGroupResponses, GoogleGetAdGroupErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups/{id}',\n ...options\n});\n\n/**\n * Edit a Google Ads ad group\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Updates an ad group’s non-money fields (its name) by numeric id. Status has its own pause/enable endpoints; bids are a separate money write. Pass `dry_run: true` to validate without applying.\n */\nexport const googleEditAdGroup = <ThrowOnError extends boolean = true>(options: Options<GoogleEditAdGroupData, ThrowOnError>): RequestResult<GoogleEditAdGroupResponses, GoogleEditAdGroupErrors, ThrowOnError> => (options.client ?? client).patch<GoogleEditAdGroupResponses, GoogleEditAdGroupErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Set a Google Ads ad group’s bids\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Sets an ad group’s manual bids (cpc/cpm/target CPA in micros, target ROAS as a ratio) by numeric id. Money write — secret-key-only. Pass `dry_run: true` to validate without applying.\n */\nexport const googleSetAdGroupBids = <ThrowOnError extends boolean = true>(options: Options<GoogleSetAdGroupBidsData, ThrowOnError>): RequestResult<GoogleSetAdGroupBidsResponses, GoogleSetAdGroupBidsErrors, ThrowOnError> => (options.client ?? client).patch<GoogleSetAdGroupBidsResponses, GoogleSetAdGroupBidsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups/{id}/bids',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Pause a Google Ads ad group\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Pauses an ad group by its numeric id (reversible). Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googlePauseAdGroup = <ThrowOnError extends boolean = true>(options: Options<GooglePauseAdGroupData, ThrowOnError>): RequestResult<GooglePauseAdGroupResponses, GooglePauseAdGroupErrors, ThrowOnError> => (options.client ?? client).post<GooglePauseAdGroupResponses, GooglePauseAdGroupErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups/{id}/pause',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Enable a Google Ads ad group\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Enables (resumes) an ad group by its numeric id. Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googleEnableAdGroup = <ThrowOnError extends boolean = true>(options: Options<GoogleEnableAdGroupData, ThrowOnError>): RequestResult<GoogleEnableAdGroupResponses, GoogleEnableAdGroupErrors, ThrowOnError> => (options.client ?? client).post<GoogleEnableAdGroupResponses, GoogleEnableAdGroupErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups/{id}/enable',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List Google Ads ads\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns the ads (the `ad_group_ad` resource) on the connection’s account — id, name, creative type, serving status, and the owning ad group.\n */\nexport const googleListAds = <ThrowOnError extends boolean = true>(options: Options<GoogleListAdsData, ThrowOnError>): RequestResult<GoogleListAdsResponses, GoogleListAdsErrors, ThrowOnError> => (options.client ?? client).get<GoogleListAdsResponses, GoogleListAdsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ads',\n ...options\n});\n\n/**\n * Create a Google Ads responsive search ad\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Creates a Responsive Search Ad (the `ad_group_ad` resource, inline text — no image assets) under an ad group on the connection’s account. Pass `dry_run: true` to validate against Google without creating. Returns the new resource id + resource_name.\n */\nexport const googleCreateAd = <ThrowOnError extends boolean = true>(options: Options<GoogleCreateAdData, ThrowOnError>): RequestResult<GoogleCreateAdResponses, GoogleCreateAdErrors, ThrowOnError> => (options.client ?? client).post<GoogleCreateAdResponses, GoogleCreateAdErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ads',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a Google Ads ad\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Removes an ad (an `ad_group_ad`) by its numeric id (Google’s native remove). Pass `dry_run: true` to validate the removal against Google without applying it.\n */\nexport const googleDeleteAd = <ThrowOnError extends boolean = true>(options: Options<GoogleDeleteAdData, ThrowOnError>): RequestResult<GoogleDeleteAdResponses, GoogleDeleteAdErrors, ThrowOnError> => (options.client ?? client).delete<GoogleDeleteAdResponses, GoogleDeleteAdErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ads/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Retrieve a Google Ads ad\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns a single ad (the `ad_group_ad` resource) by its numeric id on the connection’s account — id, name, creative type, serving status, and the owning ad group.\n */\nexport const googleGetAd = <ThrowOnError extends boolean = true>(options: Options<GoogleGetAdData, ThrowOnError>): RequestResult<GoogleGetAdResponses, GoogleGetAdErrors, ThrowOnError> => (options.client ?? client).get<GoogleGetAdResponses, GoogleGetAdErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ads/{id}',\n ...options\n});\n\n/**\n * Create a Google Ads responsive display ad\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Creates a Responsive Display Ad (the `ad_group_ad` resource) under a Display ad group on the connection’s account, assembled from already-uploaded image-asset resource_names (upload them first via POST /v1/google/{connection_id}/assets). Pass `dry_run: true` to validate against Google without creating. Returns the new resource id + resource_name.\n */\nexport const googleCreateDisplayAd = <ThrowOnError extends boolean = true>(options: Options<GoogleCreateDisplayAdData, ThrowOnError>): RequestResult<GoogleCreateDisplayAdResponses, GoogleCreateDisplayAdErrors, ThrowOnError> => (options.client ?? client).post<GoogleCreateDisplayAdResponses, GoogleCreateDisplayAdErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/display-ads',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Pause a Google Ads ad\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Pauses an ad by its numeric id (reversible). Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googlePauseAd = <ThrowOnError extends boolean = true>(options: Options<GooglePauseAdData, ThrowOnError>): RequestResult<GooglePauseAdResponses, GooglePauseAdErrors, ThrowOnError> => (options.client ?? client).post<GooglePauseAdResponses, GooglePauseAdErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ads/{id}/pause',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Enable a Google Ads ad\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Enables (resumes) an ad by its numeric id. Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googleEnableAd = <ThrowOnError extends boolean = true>(options: Options<GoogleEnableAdData, ThrowOnError>): RequestResult<GoogleEnableAdResponses, GoogleEnableAdErrors, ThrowOnError> => (options.client ?? client).post<GoogleEnableAdResponses, GoogleEnableAdErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ads/{id}/enable',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List Google Ads keywords\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Lists the keywords (`ad_group_criterion` of type KEYWORD) in the connection’s account — each with its criterion id, text, match type, status, negative flag, and owning ad group.\n */\nexport const googleListKeywords = <ThrowOnError extends boolean = true>(options: Options<GoogleListKeywordsData, ThrowOnError>): RequestResult<GoogleListKeywordsResponses, GoogleListKeywordsErrors, ThrowOnError> => (options.client ?? client).get<GoogleListKeywordsResponses, GoogleListKeywordsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/keywords',\n ...options\n});\n\n/**\n * Create a Google Ads keyword\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Creates a keyword (an `ad_group_criterion` of type KEYWORD) under an ad group on the connection’s account. Pass `dry_run: true` to validate against Google without creating. Returns the new resource id + resource_name.\n */\nexport const googleCreateKeyword = <ThrowOnError extends boolean = true>(options: Options<GoogleCreateKeywordData, ThrowOnError>): RequestResult<GoogleCreateKeywordResponses, GoogleCreateKeywordErrors, ThrowOnError> => (options.client ?? client).post<GoogleCreateKeywordResponses, GoogleCreateKeywordErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/keywords',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a Google Ads keyword\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Removes a keyword (an `ad_group_criterion`) by its criterion id (Google’s native remove). Pass `dry_run: true` to validate the removal against Google without applying it.\n */\nexport const googleDeleteKeyword = <ThrowOnError extends boolean = true>(options: Options<GoogleDeleteKeywordData, ThrowOnError>): RequestResult<GoogleDeleteKeywordResponses, GoogleDeleteKeywordErrors, ThrowOnError> => (options.client ?? client).delete<GoogleDeleteKeywordResponses, GoogleDeleteKeywordErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/keywords/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Retrieve a Google Ads keyword\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns one keyword (`ad_group_criterion` of type KEYWORD) by its criterion id, from the connection’s account — text, match type, status, negative flag, and owning ad group.\n */\nexport const googleGetKeyword = <ThrowOnError extends boolean = true>(options: Options<GoogleGetKeywordData, ThrowOnError>): RequestResult<GoogleGetKeywordResponses, GoogleGetKeywordErrors, ThrowOnError> => (options.client ?? client).get<GoogleGetKeywordResponses, GoogleGetKeywordErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/keywords/{id}',\n ...options\n});\n\n/**\n * Set a Google Ads keyword’s bid\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Sets a keyword’s manual CPC bid (in micros) by criterion id. Money write — secret-key-only. Pass `dry_run: true` to validate without applying.\n */\nexport const googleSetKeywordBid = <ThrowOnError extends boolean = true>(options: Options<GoogleSetKeywordBidData, ThrowOnError>): RequestResult<GoogleSetKeywordBidResponses, GoogleSetKeywordBidErrors, ThrowOnError> => (options.client ?? client).patch<GoogleSetKeywordBidResponses, GoogleSetKeywordBidErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/keywords/{id}/bid',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Pause a Google Ads keyword\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Pauses a keyword (`ad_group_criterion`) by its criterion id (reversible). Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googlePauseKeyword = <ThrowOnError extends boolean = true>(options: Options<GooglePauseKeywordData, ThrowOnError>): RequestResult<GooglePauseKeywordResponses, GooglePauseKeywordErrors, ThrowOnError> => (options.client ?? client).post<GooglePauseKeywordResponses, GooglePauseKeywordErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/keywords/{id}/pause',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Enable a Google Ads keyword\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Enables (resumes) a keyword (`ad_group_criterion`) by its criterion id. Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googleEnableKeyword = <ThrowOnError extends boolean = true>(options: Options<GoogleEnableKeywordData, ThrowOnError>): RequestResult<GoogleEnableKeywordResponses, GoogleEnableKeywordErrors, ThrowOnError> => (options.client ?? client).post<GoogleEnableKeywordResponses, GoogleEnableKeywordErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/keywords/{id}/enable',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List Google Ads conversion actions\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns the conversion actions (the `conversion_action` resource) on the connection’s account — id, name, status, type, category, origin, primary-goal flag, counting type, value settings, and tag snippets.\n */\nexport const googleListConversionActions = <ThrowOnError extends boolean = true>(options: Options<GoogleListConversionActionsData, ThrowOnError>): RequestResult<GoogleListConversionActionsResponses, GoogleListConversionActionsErrors, ThrowOnError> => (options.client ?? client).get<GoogleListConversionActionsResponses, GoogleListConversionActionsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/conversion-actions',\n ...options\n});\n\n/**\n * Create a Google Ads conversion action\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Creates a conversion action (the `conversion_action` resource) — a website tag (WEBPAGE) or an offline/API-reported action (UPLOAD_CLICKS) — on the connection’s account. Pass `dry_run: true` to validate against Google without creating. Returns the new resource id + resource_name.\n */\nexport const googleCreateConversionAction = <ThrowOnError extends boolean = true>(options: Options<GoogleCreateConversionActionData, ThrowOnError>): RequestResult<GoogleCreateConversionActionResponses, GoogleCreateConversionActionErrors, ThrowOnError> => (options.client ?? client).post<GoogleCreateConversionActionResponses, GoogleCreateConversionActionErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/conversion-actions',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Retrieve a Google Ads conversion action\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns a single conversion action (the `conversion_action` resource) by its numeric id on the connection’s account.\n */\nexport const googleGetConversionAction = <ThrowOnError extends boolean = true>(options: Options<GoogleGetConversionActionData, ThrowOnError>): RequestResult<GoogleGetConversionActionResponses, GoogleGetConversionActionErrors, ThrowOnError> => (options.client ?? client).get<GoogleGetConversionActionResponses, GoogleGetConversionActionErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/conversion-actions/{id}',\n ...options\n});\n\n/**\n * List Google Ads conversion goals\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns the conversion goals (the `customer_conversion_goal` resource) on the connection’s account — category, origin, and whether each is biddable. Google auto-creates these per category × origin.\n */\nexport const googleListConversionGoals = <ThrowOnError extends boolean = true>(options: Options<GoogleListConversionGoalsData, ThrowOnError>): RequestResult<GoogleListConversionGoalsResponses, GoogleListConversionGoalsErrors, ThrowOnError> => (options.client ?? client).get<GoogleListConversionGoalsResponses, GoogleListConversionGoalsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/conversion-goals',\n ...options\n});\n\n/**\n * Set a Google Ads conversion goal’s biddable flag\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Sets whether a conversion goal (selected by category × origin) is biddable — a primary goal Google optimises toward, or a secondary observation-only goal. Pass `dry_run: true` to preview without applying. Returns the goal and whether it executed.\n */\nexport const googleSetConversionGoal = <ThrowOnError extends boolean = true>(options: Options<GoogleSetConversionGoalData, ThrowOnError>): RequestResult<GoogleSetConversionGoalResponses, GoogleSetConversionGoalErrors, ThrowOnError> => (options.client ?? client).post<GoogleSetConversionGoalResponses, GoogleSetConversionGoalErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/conversion-goals',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Upload Google Ads offline conversions\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Uploads offline click conversions (the `UploadClickConversions` call) against the connection’s account — report conversions that happened off-site against the click (gclid/gbraid/wbraid) or first-party identifiers that drove them. Partial failure is per-row: the response reports how many rows succeeded/failed and Google’s own error for each failed row. Pass `dry_run: true` to validate the batch against Google without recording anything.\n */\nexport const googleUploadConversions = <ThrowOnError extends boolean = true>(options: Options<GoogleUploadConversionsData, ThrowOnError>): RequestResult<GoogleUploadConversionsResponses, GoogleUploadConversionsErrors, ThrowOnError> => (options.client ?? client).post<GoogleUploadConversionsResponses, GoogleUploadConversionsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/conversion-uploads',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Upload a Google Ads image asset\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Uploads a Postrun image asset (its validated Google Ads rendition) to the connection’s account as an `image` asset, returning the new resource id + resource_name to chain into an ad/asset assembly. Pass `dry_run: true` to validate against Google without creating anything (Google’s native validate_only). The media asset must have a ready Google Ads rendition, else a 409.\n */\nexport const googleUploadImageAsset = <ThrowOnError extends boolean = true>(options: Options<GoogleUploadImageAssetData, ThrowOnError>): RequestResult<GoogleUploadImageAssetResponses, GoogleUploadImageAssetErrors, ThrowOnError> => (options.client ?? client).post<GoogleUploadImageAssetResponses, GoogleUploadImageAssetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/assets/images',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Retrieve TikTok creator info\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `connections:read` scoped to the profile that owns the connection.\n *\n * Retrieves the TikTok creator's publish options live from TikTok — required by TikTok's Content Posting policy to render the publishing UI: the creator nickname + avatar, the privacy options to offer (with no default), and the Comment/Duet/Stitch flags to disable. Returns 404 if the connection does not exist in your account or is not a TikTok connection, 409 if the TikTok account must be reconnected, and 502 if TikTok’s creator-info call fails.\n */\nexport const tiktokCreatorInfo = <ThrowOnError extends boolean = true>(options: Options<TiktokCreatorInfoData, ThrowOnError>): RequestResult<TiktokCreatorInfoResponses, TiktokCreatorInfoErrors, ThrowOnError> => (options.client ?? client).get<TiktokCreatorInfoResponses, TiktokCreatorInfoErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/connections/{id}/tiktok/creator-info',\n ...options\n});\n\n/**\n * List request logs\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Lists the API activity for your account — one entry per action, newest first. Filter by profile, connection, platform, status, source, action, or time range.\n */\nexport const logsList = <ThrowOnError extends boolean = true>(options?: Options<LogsListData, ThrowOnError>): RequestResult<LogsListResponses, LogsListErrors, ThrowOnError> => (options?.client ?? client).get<LogsListResponses, LogsListErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/logs',\n ...options\n});\n\n/**\n * Retrieve a request log\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Retrieves a single request log entry by id.\n */\nexport const logsGet = <ThrowOnError extends boolean = true>(options: Options<LogsGetData, ThrowOnError>): RequestResult<LogsGetResponses, LogsGetErrors, ThrowOnError> => (options.client ?? client).get<LogsGetResponses, LogsGetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/logs/{id}',\n ...options\n});\n\n/**\n * List webhook endpoints\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Lists the webhook endpoints registered for your account.\n */\nexport const webhooksListEndpoints = <ThrowOnError extends boolean = true>(options?: Options<WebhooksListEndpointsData, ThrowOnError>): RequestResult<WebhooksListEndpointsResponses, WebhooksListEndpointsErrors, ThrowOnError> => (options?.client ?? client).get<WebhooksListEndpointsResponses, WebhooksListEndpointsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/endpoints',\n ...options\n});\n\n/**\n * Create a webhook endpoint\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Registers a URL to receive the chosen event types. Delivery, retries, and signing are handled for you.\n */\nexport const webhooksCreateEndpoint = <ThrowOnError extends boolean = true>(options: Options<WebhooksCreateEndpointData, ThrowOnError>): RequestResult<WebhooksCreateEndpointResponses, WebhooksCreateEndpointErrors, ThrowOnError> => (options.client ?? client).post<WebhooksCreateEndpointResponses, WebhooksCreateEndpointErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/endpoints',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a webhook endpoint\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Deletes a webhook endpoint. Delivery to it stops immediately.\n */\nexport const webhooksDeleteEndpoint = <ThrowOnError extends boolean = true>(options: Options<WebhooksDeleteEndpointData, ThrowOnError>): RequestResult<WebhooksDeleteEndpointResponses, WebhooksDeleteEndpointErrors, ThrowOnError> => (options.client ?? client).delete<WebhooksDeleteEndpointResponses, WebhooksDeleteEndpointErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/endpoints/{id}',\n ...options\n});\n\n/**\n * Retrieve a webhook endpoint\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Retrieves a single webhook endpoint by id.\n */\nexport const webhooksGetEndpoint = <ThrowOnError extends boolean = true>(options: Options<WebhooksGetEndpointData, ThrowOnError>): RequestResult<WebhooksGetEndpointResponses, WebhooksGetEndpointErrors, ThrowOnError> => (options.client ?? client).get<WebhooksGetEndpointResponses, WebhooksGetEndpointErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/endpoints/{id}',\n ...options\n});\n\n/**\n * Update a webhook endpoint\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Updates a webhook endpoint. Send only the fields you want to change; provide at least one.\n */\nexport const webhooksUpdateEndpoint = <ThrowOnError extends boolean = true>(options: Options<WebhooksUpdateEndpointData, ThrowOnError>): RequestResult<WebhooksUpdateEndpointResponses, WebhooksUpdateEndpointErrors, ThrowOnError> => (options.client ?? client).patch<WebhooksUpdateEndpointResponses, WebhooksUpdateEndpointErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/endpoints/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Create a webhook portal link\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Mints a one-time App Portal URL where you (or your customer) self-serve webhook delivery logs and signing secrets.\n */\nexport const webhooksCreatePortal = <ThrowOnError extends boolean = true>(options?: Options<WebhooksCreatePortalData, ThrowOnError>): RequestResult<WebhooksCreatePortalResponses, WebhooksCreatePortalErrors, ThrowOnError> => (options?.client ?? client).post<WebhooksCreatePortalResponses, WebhooksCreatePortalErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/portal',\n ...options\n});\n\n/**\n * List webhook event types\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Lists the event types you can subscribe an endpoint to (the catalog).\n */\nexport const webhooksListEventTypes = <ThrowOnError extends boolean = true>(options?: Options<WebhooksListEventTypesData, ThrowOnError>): RequestResult<WebhooksListEventTypesResponses, WebhooksListEventTypesErrors, ThrowOnError> => (options?.client ?? client).get<WebhooksListEventTypesResponses, WebhooksListEventTypesErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/event-types',\n ...options\n});\n\n/**\n * Send a test event\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Emits a `webhook.ping` event to your subscribed endpoints so you can verify delivery end to end.\n */\nexport const webhooksPing = <ThrowOnError extends boolean = true>(options: Options<WebhooksPingData, ThrowOnError>): RequestResult<WebhooksPingResponses, WebhooksPingErrors, ThrowOnError> => (options.client ?? client).post<WebhooksPingResponses, WebhooksPingErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/ping',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Mint a scoped frontend token\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Mints a short-lived, profile-scoped token from your secret `pr_` key. Call this from your backend; the returned token is safe to hand to a browser, which then calls the Postrun API directly. The secret key never touches the browser.\n */\nexport const tokensMint = <ThrowOnError extends boolean = true>(options: Options<TokensMintData, ThrowOnError>): RequestResult<TokensMintResponses, TokensMintErrors, ThrowOnError> => (options.client ?? client).post<TokensMintResponses, TokensMintErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/tokens',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n","import { createPostrunClient } from './client';\nimport type { PostrunClient } from './client';\nimport { tokensMint } from './client/sdk.gen';\nimport type { TokensMintData, TokensMintResponse } from './client/types.gen';\n\n/**\n * The body for minting a scoped token — the generated request shape (snake_case,\n * the exact wire contract). `scopes` is the closed `resource:action` union and\n * `profile_scope` the `{ type, values }` selector, both derived from the spec so\n * they can never drift. Money/structural writes are NOT scopes: those endpoints\n * are secret-key-only and a browser token simply cannot reach them, by design.\n */\nexport type MintTokenInput = TokensMintData['body'];\n\nexport interface PostrunServerOptions {\n /** Your secret `pr_` API key. NEVER expose this to a browser. */\n secretKey: string;\n /** Override the API base URL (defaults to the production gateway). */\n baseUrl?: string;\n}\n\nexport interface PostrunServer {\n /** A typed client authenticated with the secret key — for any server-side call. */\n readonly client: PostrunClient;\n readonly tokens: {\n /** Mint a short-lived, scoped frontend token from the secret key. */\n mint(input: MintTokenInput): Promise<TokensMintResponse>;\n };\n}\n\n/** The secret key must never reach a browser — fail loudly if it would. */\nfunction assertServerOnly(): void {\n if (typeof window !== 'undefined' && typeof window.document !== 'undefined') {\n throw new Error(\n 'createPostrunServer must run only on a server — it holds your secret pr_ key. ' +\n 'In the browser, use createPostrunClient with a minted scoped token instead.',\n );\n }\n}\n\n/**\n * Create a server-side Postrun client from a secret `pr_` key. Its primary job\n * is `tokens.mint` — issue a short-lived, scoped token your frontend hands to\n * `createPostrunClient`, so the secret key never reaches the browser. The raw\n * `client` is exposed for any other server-side call (e.g. the generated SDK\n * functions: `postsCreate({ client })`).\n */\nexport function createPostrunServer(options: PostrunServerOptions): PostrunServer {\n assertServerOnly();\n if (!options.secretKey) {\n throw new Error('createPostrunServer requires a secret `pr_` key (secretKey).');\n }\n\n const client = createPostrunClient({\n baseUrl: options.baseUrl,\n getToken: () => options.secretKey,\n });\n\n async function mint(input: MintTokenInput): Promise<TokensMintResponse> {\n const { data } = await tokensMint({ client, body: input });\n return data;\n }\n\n return { client, tokens: { mint } };\n}\n"]}
1
+ {"version":3,"sources":["../src/client/core/bodySerializer.gen.ts","../src/client/core/serverSentEvents.gen.ts","../src/client/core/pathSerializer.gen.ts","../src/client/core/utils.gen.ts","../src/client/core/auth.gen.ts","../src/client/client/utils.gen.ts","../src/client/client/client.gen.ts","../src/client/zod.gen.ts","../src/errors.ts","../src/client.ts","../src/client/client.gen.ts","../src/client/sdk.gen.ts","../src/server.ts"],"names":["url","joinedValues","config","request","z","z2","client"],"mappings":"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","file":"server.cjs","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';\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): ',' | '|' | '%20' => {\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}): string => {\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): string => {\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}): string => {\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: RegExp = /\\{[^{}]+\\}/g;\n\nexport const defaultPathSerializer = ({ path, url: _url }: PathSerializer): string => {\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}): string => {\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}): unknown {\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 * A unique identifier for the security scheme.\n *\n * Defined only when there are multiple security schemes whose `Auth`\n * shape would otherwise be identical.\n */\n key?: string;\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 = {}): ((queryParams: T) => string) => {\n const querySerializer = (queryParams: T): string => {\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 async function setAuthParams(\n options: Pick<RequestOptions, 'auth' | 'query' | 'security'> & {\n headers: Headers;\n },\n): Promise<void> {\n for (const auth of options.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 may be undefined due to a network error where no response object is produced */\n response: Res | undefined,\n /** request may be undefined, because error may be from building the request object itself */\n request: Req | undefined,\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(opts);\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 throwOnError = options.throwOnError ?? _config.throwOnError;\n const responseStyle = options.responseStyle ?? _config.responseStyle;\n\n let request: Request | undefined;\n let response: Response | undefined;\n\n try {\n const { opts, url } = await beforeRequest(options);\n const requestInit: ReqInit = {\n redirect: 'follow',\n ...opts,\n body: getValidRequestBody(opts),\n };\n\n 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\n response = await _fetch(request);\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 throw jsonError ?? textError;\n } catch (error) {\n let finalError = error;\n\n for (const fn of interceptors.error.fns) {\n if (fn) {\n finalError = await fn(finalError, response, request, options as ResolvedRequestOptions);\n }\n }\n\n finalError = finalError || {};\n\n if (throwOnError) {\n throw finalError;\n }\n\n // TODO: we probably want to return error and improve types\n return responseStyle === 'data'\n ? undefined\n : {\n error: finalError,\n request,\n response,\n };\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 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 * as z from 'zod';\n\n/**\n * ErrorCode\n *\n * The closed set of machine-readable Postrun error codes. Branch on this. Each links to https://docs.postrun.ai/errors/<code>.\n */\nexport const zErrorCode = z.enum([\n 'unauthorized',\n 'forbidden',\n 'not_found',\n 'conflict',\n 'validation_failed',\n 'rate_limited',\n 'internal_error',\n 'idempotency_key_invalid',\n 'idempotency_key_reused',\n 'idempotency_request_in_progress',\n 'account_not_available',\n 'connection_reauth_required',\n 'connection_not_pending',\n 'not_implemented',\n 'connection_discovery_failed',\n 'tiktok_creator_info_unavailable',\n 'media_processing',\n 'not_publishable',\n 'invalid_connection',\n 'invalid_media',\n 'profile_scope_invalid',\n 'media_unprobeable',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_count_invalid',\n 'body_too_long',\n 'content_missing',\n 'content_conflict',\n 'content_incomplete',\n 'content_kind_mismatch',\n 'media_type_mismatch',\n 'tag_limit_exceeded',\n 'reel_field_on_non_reel',\n 'field_placement_invalid',\n 'media_not_ready',\n 'media_failed',\n 'media_unsupported',\n 'media_kind_mismatch',\n 'variant_unparseable',\n 'publishing_unavailable',\n 'x_duplicate_content',\n 'x_not_authorized',\n 'x_access_not_permitted',\n 'x_rate_limited',\n 'x_publish_failed',\n 'x_media_upload_failed',\n 'linkedin_duplicate_content',\n 'linkedin_auth_expired',\n 'linkedin_permission_denied',\n 'linkedin_rate_limited',\n 'linkedin_media_processing',\n 'linkedin_media_failed',\n 'linkedin_media_upload_failed',\n 'linkedin_publish_failed',\n 'instagram_media_processing',\n 'instagram_container_expired',\n 'instagram_container_failed',\n 'instagram_rate_limited',\n 'instagram_not_authorized',\n 'instagram_publish_failed',\n 'facebook_reel_processing',\n 'facebook_reel_failed',\n 'facebook_rate_limited',\n 'facebook_not_authorized',\n 'facebook_publish_failed',\n 'tiktok_privacy_not_allowed',\n 'tiktok_duration_exceeds_max',\n 'tiktok_media_processing',\n 'tiktok_not_authorized',\n 'tiktok_rate_limited',\n 'tiktok_url_ownership_unverified',\n 'tiktok_unaudited_private_only',\n 'tiktok_spam_risk',\n 'tiktok_publish_failed',\n 'post_publish_failed',\n 'post_partially_published',\n 'connection_platform_mismatch',\n 'connection_removed'\n]);\n\nexport const zProfilesListQuery = z.object({\n limit: z.int().gte(1).lte(100).optional().default(20),\n offset: z.int().gte(0).lte(9007199254740991).optional().default(0),\n external_id: z.string().optional(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional()\n});\n\n/**\n * OK\n */\nexport const zProfilesListResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n name: z.string(),\n description: z.string().nullable(),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n })),\n total: z.int().gte(-9007199254740991).lte(9007199254740991),\n limit: z.int().gte(-9007199254740991).lte(9007199254740991),\n offset: z.int().gte(-9007199254740991).lte(9007199254740991),\n has_more: z.boolean()\n});\n\nexport const zProfilesCreateBody = z.object({\n name: z.string().min(1).max(255),\n description: z.string().max(280).optional(),\n external_id: z.string().min(1).max(255).optional(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional()\n});\n\n/**\n * OK\n */\nexport const zProfilesCreateResponse = z.object({\n id: z.string(),\n name: z.string(),\n description: z.string().nullable(),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n});\n\nexport const zProfilesDeletePath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zProfilesDeleteResponse = z.object({\n id: z.string(),\n object: z.literal('profile'),\n deleted: z.literal(true)\n});\n\nexport const zProfilesGetPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zProfilesGetResponse = z.object({\n id: z.string(),\n name: z.string(),\n description: z.string().nullable(),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n});\n\nexport const zProfilesUpdateBody = z.object({\n name: z.string().min(1).max(255).optional(),\n description: z.string().max(280).nullish(),\n external_id: z.string().min(1).max(255).optional(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional()\n});\n\nexport const zProfilesUpdatePath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zProfilesUpdateResponse = z.object({\n id: z.string(),\n name: z.string(),\n description: z.string().nullable(),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n});\n\nexport const zConnectionsListByProfilePath = z.object({\n id: z.string()\n});\n\nexport const zConnectionsListByProfileQuery = z.object({\n limit: z.int().gte(1).lte(100).optional().default(20),\n offset: z.int().gte(0).lte(9007199254740991).optional().default(0),\n nango_connection_id: z.string().min(1).optional(),\n kind: z.enum(['posting', 'ads']).optional(),\n status: z.enum([\n 'pending',\n 'active',\n 'needs_reauth'\n ]).optional()\n});\n\n/**\n * OK\n */\nexport const zConnectionsListByProfileResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n profile_id: z.string(),\n platform: z.enum([\n 'meta_ads',\n 'google_ads',\n 'tiktok_ads',\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]),\n kind: z.enum(['posting', 'ads']),\n status: z.enum([\n 'pending',\n 'active',\n 'needs_reauth'\n ]),\n external_account_id: z.string().nullable(),\n external_account_name: z.string().nullable(),\n username: z.string().nullable(),\n avatar_url: z.string().nullable(),\n profile_url: z.string().nullable(),\n reauth_at: z.string().nullable(),\n currency: z.string().nullable(),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n })),\n total: z.int().gte(-9007199254740991).lte(9007199254740991),\n limit: z.int().gte(-9007199254740991).lte(9007199254740991),\n offset: z.int().gte(-9007199254740991).lte(9007199254740991),\n has_more: z.boolean()\n});\n\nexport const zConnectionsDeletePath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zConnectionsDeleteResponse = z.object({\n id: z.string(),\n object: z.literal('connection'),\n deleted: z.literal(true)\n});\n\nexport const zConnectionsGetPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zConnectionsGetResponse = z.object({\n id: z.string(),\n profile_id: z.string(),\n platform: z.enum([\n 'meta_ads',\n 'google_ads',\n 'tiktok_ads',\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]),\n kind: z.enum(['posting', 'ads']),\n status: z.enum([\n 'pending',\n 'active',\n 'needs_reauth'\n ]),\n external_account_id: z.string().nullable(),\n external_account_name: z.string().nullable(),\n username: z.string().nullable(),\n avatar_url: z.string().nullable(),\n profile_url: z.string().nullable(),\n reauth_at: z.string().nullable(),\n currency: z.string().nullable(),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n});\n\nexport const zConnectionsSelectBody = z.object({\n external_account_id: z.string().min(1)\n});\n\nexport const zConnectionsSelectPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zConnectionsSelectResponse = z.object({\n id: z.string(),\n profile_id: z.string(),\n platform: z.enum([\n 'meta_ads',\n 'google_ads',\n 'tiktok_ads',\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]),\n kind: z.enum(['posting', 'ads']),\n status: z.enum([\n 'pending',\n 'active',\n 'needs_reauth'\n ]),\n external_account_id: z.string().nullable(),\n external_account_name: z.string().nullable(),\n username: z.string().nullable(),\n avatar_url: z.string().nullable(),\n profile_url: z.string().nullable(),\n reauth_at: z.string().nullable(),\n currency: z.string().nullable(),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n});\n\nexport const zConnectionsListAccountsPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zConnectionsListAccountsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n external_account_id: z.string(),\n name: z.string().nullable(),\n currency: z.string().nullable(),\n username: z.string().nullish(),\n avatar_url: z.string().nullish(),\n profile_url: z.string().nullish(),\n instagram: z.object({\n external_account_id: z.string(),\n name: z.string().nullable(),\n username: z.string().nullish(),\n avatar_url: z.string().nullish(),\n profile_url: z.string().nullish()\n }).nullish()\n }))\n});\n\nexport const zConnectionsConnectBody = z.object({\n platform: z.enum([\n 'meta_ads',\n 'google_ads',\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ])\n});\n\nexport const zConnectionsConnectPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zConnectionsConnectResponse = z.object({\n hosted_connect_url: z.string(),\n connect_token: z.string(),\n connect_session_token: z.string(),\n provider_config_key: z.string(),\n nango_host: z.string(),\n expires_at: z.string()\n});\n\nexport const zMediaListQuery = z.object({\n limit: z.int().gte(1).lte(100).optional().default(20),\n offset: z.int().gte(0).lte(9007199254740991).optional().default(0),\n profile_id: z.string().optional(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]).optional(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).optional(),\n external_id: z.string().optional(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional()\n});\n\n/**\n * OK\n */\nexport const zMediaListResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n })),\n errors: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })),\n total: z.int().gte(-9007199254740991).lte(9007199254740991),\n limit: z.int().gte(-9007199254740991).lte(9007199254740991),\n offset: z.int().gte(-9007199254740991).lte(9007199254740991),\n has_more: z.boolean()\n});\n\n/**\n * Create a media asset — either via the signed direct upload target (omit source_url) or by importing from a public https source_url (we fetch + validate + transform + store). Size limits (same for direct upload and source_url): a video may be up to 4 GB; every other kind must be 1 GB or smaller. A file over its limit is rejected with `media_too_large`.\n */\nexport const zMediaCreateBody = z.object({\n profile_id: z.string(),\n source_url: z.url().optional(),\n targets: z.array(z.enum([\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok',\n 'google_ads'\n ])).min(1).optional(),\n raw: z.boolean().optional().default(false),\n alt_text: z.string().max(1000).optional(),\n external_id: z.string().min(1).max(255).optional(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional()\n});\n\n/**\n * OK\n */\nexport const zMediaCreateResponse = z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n })),\n errors: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string(),\n upload: z.object({\n url: z.url(),\n method: z.literal('PUT'),\n headers: z.record(z.string(), z.string()),\n expires_at: z.string()\n }).nullable()\n});\n\nexport const zMediaDeletePath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zMediaDeleteResponse = z.object({\n id: z.string(),\n object: z.literal('media'),\n deleted: z.literal(true)\n});\n\nexport const zMediaGetPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zMediaGetResponse = z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n })),\n errors: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n});\n\nexport const zMediaUpdateBody = z.object({\n alt_text: z.string().max(1000).nullish(),\n external_id: z.string().min(1).max(255).nullish(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional(),\n targets: z.array(z.enum([\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok',\n 'google_ads'\n ])).min(1).optional()\n});\n\nexport const zMediaUpdatePath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zMediaUpdateResponse = z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n })),\n errors: z.array(z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n});\n\nexport const zPostsListQuery = z.object({\n limit: z.int().gte(1).lte(100).optional().default(20),\n offset: z.int().gte(0).lte(9007199254740991).optional().default(0),\n profile_id: z.string().optional(),\n external_id: z.string().optional(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional(),\n scheduled_after: z.iso.datetime().optional(),\n scheduled_before: z.iso.datetime().optional(),\n updated_after: z.iso.datetime().optional(),\n status: z.array(z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'partially_published',\n 'published',\n 'failed'\n ])).optional()\n});\n\n/**\n * OK\n */\nexport const zPostsListResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n object: z.literal('post'),\n profile_id: z.string(),\n external_id: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'partially_published',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n tags: z.array(z.string()),\n notes: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n variants: z.array(z.union([\n z.object({\n platform: z.literal('x'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n reply_settings: z.enum([\n 'everyone',\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional(),\n quote_tweet_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n poll: z.object({\n options: z.array(z.string().min(1).max(25)).min(2).max(4),\n duration_minutes: z.int().gte(5).lte(10080),\n reply_settings: z.enum([\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional()\n }).optional(),\n reply: z.object({\n in_reply_to_tweet_id: z.string().regex(/^[0-9]{1,19}$/),\n exclude_reply_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).optional(),\n auto_populate_reply_metadata: z.boolean().optional()\n }).optional(),\n community_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n for_super_followers_only: z.boolean().optional(),\n geo: z.object({\n place_id: z.string()\n }).optional(),\n card_uri: z.string().optional(),\n media_tagged_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).max(10).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.union([z.unknown(), z.null()])).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.unknown().optional(),\n url: z.unknown().optional(),\n width: z.unknown().optional(),\n height: z.unknown().optional(),\n bytes: z.unknown().optional(),\n warnings: z.unknown().optional(),\n errors: z.unknown().optional()\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.unknown()),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('linkedin'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n visibility: z.enum(['PUBLIC', 'CONNECTIONS']),\n content_kind: z.enum([\n 'text',\n 'single_image',\n 'video',\n 'multi_image',\n 'document',\n 'article',\n 'poll'\n ]),\n article: z.object({\n source: z.url(),\n title: z.string().max(400).optional(),\n description: z.string().max(4086).optional(),\n thumbnail_media_id: z.string().optional()\n }).optional(),\n poll: z.object({\n question: z.string().min(1).max(140),\n options: z.array(z.string().min(1).max(30)).min(2).max(4),\n duration: z.enum([\n 'ONE_DAY',\n 'THREE_DAYS',\n 'SEVEN_DAYS',\n 'FOURTEEN_DAYS'\n ])\n }).optional(),\n document: z.object({\n title: z.string().min(1).max(400)\n }).optional(),\n disable_reshare: z.boolean().optional(),\n mentions: z.array(z.object({\n type: z.enum(['person', 'organization']),\n name: z.string().min(1),\n urn: z.string().regex(/^urn:li:(person|organization):/)\n })).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.union([z.unknown(), z.null()])).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.unknown().optional(),\n url: z.unknown().optional(),\n width: z.unknown().optional(),\n height: z.unknown().optional(),\n bytes: z.unknown().optional(),\n warnings: z.unknown().optional(),\n errors: z.unknown().optional()\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.unknown()),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('facebook_page'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'reel'\n ]),\n settings: z.object({\n link: z.url().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.union([z.unknown(), z.null()])).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.unknown().optional(),\n url: z.unknown().optional(),\n width: z.unknown().optional(),\n height: z.unknown().optional(),\n bytes: z.unknown().optional(),\n warnings: z.unknown().optional(),\n errors: z.unknown().optional()\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.unknown()),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('instagram'),\n post_type: z.enum([\n 'single_image',\n 'carousel',\n 'reel'\n ]),\n settings: z.object({\n media_type: z.enum([\n 'IMAGE',\n 'CAROUSEL',\n 'REELS'\n ]).optional(),\n location_id: z.string().optional(),\n user_tags: z.array(z.object({\n username: z.string().min(1),\n x: z.number().gte(0).lte(1),\n y: z.number().gte(0).lte(1)\n })).optional(),\n collaborators: z.array(z.string().min(1)).max(3).optional(),\n share_to_feed: z.boolean().optional(),\n thumb_offset: z.int().gte(0).lte(9007199254740991).optional(),\n cover_url: z.url().optional(),\n audio_name: z.string().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.union([z.unknown(), z.null()])).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.unknown().optional(),\n url: z.unknown().optional(),\n width: z.unknown().optional(),\n height: z.unknown().optional(),\n bytes: z.unknown().optional(),\n warnings: z.unknown().optional(),\n errors: z.unknown().optional()\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.unknown()),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('tiktok'),\n post_type: z.enum([\n 'video',\n 'single_image',\n 'carousel'\n ]),\n settings: z.object({\n privacy_level: z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ]).optional(),\n disable_comment: z.boolean().optional(),\n disable_duet: z.boolean().optional(),\n disable_stitch: z.boolean().optional(),\n video_cover_timestamp_ms: z.int().gte(0).lte(9007199254740991).optional(),\n photo_cover_index: z.int().gte(0).lte(9007199254740991).optional(),\n auto_add_music: z.boolean().optional(),\n brand_content_toggle: z.boolean().optional(),\n brand_organic_toggle: z.boolean().optional(),\n is_aigc: z.boolean().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.union([z.unknown(), z.null()])).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.unknown().optional(),\n url: z.unknown().optional(),\n width: z.unknown().optional(),\n height: z.unknown().optional(),\n bytes: z.unknown().optional(),\n warnings: z.unknown().optional(),\n errors: z.unknown().optional()\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.unknown()),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n })\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })),\n total: z.int().gte(-9007199254740991).lte(9007199254740991),\n limit: z.int().gte(-9007199254740991).lte(9007199254740991),\n offset: z.int().gte(-9007199254740991).lte(9007199254740991),\n has_more: z.boolean()\n});\n\nexport const zPostsCreateBody = z.object({\n profile_id: z.string(),\n publish: z.enum([\n 'now',\n 'schedule',\n 'draft'\n ]).optional().default('draft'),\n schedule_at: z.iso.datetime().optional(),\n external_id: z.string().min(1).max(255).optional(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional(),\n tags: z.array(z.string()).optional(),\n notes: z.string().optional(),\n dry_run: z.boolean().optional().default(false),\n variants: z.array(z.union([\n z.object({\n platform: z.literal('x'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n reply_settings: z.enum([\n 'everyone',\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional(),\n quote_tweet_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n poll: z.object({\n options: z.array(z.string().min(1).max(25)).min(2).max(4),\n duration_minutes: z.int().gte(5).lte(10080),\n reply_settings: z.enum([\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional()\n }).optional(),\n reply: z.object({\n in_reply_to_tweet_id: z.string().regex(/^[0-9]{1,19}$/),\n exclude_reply_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).optional(),\n auto_populate_reply_metadata: z.boolean().optional()\n }).optional(),\n community_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n for_super_followers_only: z.boolean().optional(),\n geo: z.object({\n place_id: z.string()\n }).optional(),\n card_uri: z.string().optional(),\n media_tagged_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).max(10).optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('linkedin'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n visibility: z.enum(['PUBLIC', 'CONNECTIONS']),\n content_kind: z.enum([\n 'text',\n 'single_image',\n 'video',\n 'multi_image',\n 'document',\n 'article',\n 'poll'\n ]),\n article: z.object({\n source: z.url(),\n title: z.string().max(400).optional(),\n description: z.string().max(4086).optional(),\n thumbnail_media_id: z.string().optional()\n }).optional(),\n poll: z.object({\n question: z.string().min(1).max(140),\n options: z.array(z.string().min(1).max(30)).min(2).max(4),\n duration: z.enum([\n 'ONE_DAY',\n 'THREE_DAYS',\n 'SEVEN_DAYS',\n 'FOURTEEN_DAYS'\n ])\n }).optional(),\n document: z.object({\n title: z.string().min(1).max(400)\n }).optional(),\n disable_reshare: z.boolean().optional(),\n mentions: z.array(z.object({\n type: z.enum(['person', 'organization']),\n name: z.string().min(1),\n urn: z.string().regex(/^urn:li:(person|organization):/)\n })).optional()\n }),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('instagram'),\n post_type: z.enum([\n 'single_image',\n 'carousel',\n 'reel'\n ]),\n settings: z.object({\n media_type: z.enum([\n 'IMAGE',\n 'CAROUSEL',\n 'REELS'\n ]).optional(),\n location_id: z.string().optional(),\n user_tags: z.array(z.object({\n username: z.string().min(1),\n x: z.number().gte(0).lte(1),\n y: z.number().gte(0).lte(1)\n })).optional(),\n collaborators: z.array(z.string().min(1)).max(3).optional(),\n share_to_feed: z.boolean().optional(),\n thumb_offset: z.int().gte(0).lte(9007199254740991).optional(),\n cover_url: z.url().optional(),\n audio_name: z.string().optional()\n }),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('facebook_page'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'reel'\n ]),\n settings: z.object({\n link: z.url().optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('tiktok'),\n post_type: z.enum([\n 'video',\n 'single_image',\n 'carousel'\n ]),\n settings: z.object({\n privacy_level: z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ]).optional(),\n disable_comment: z.boolean().optional(),\n disable_duet: z.boolean().optional(),\n disable_stitch: z.boolean().optional(),\n video_cover_timestamp_ms: z.int().gte(0).lte(9007199254740991).optional(),\n photo_cover_index: z.int().gte(0).lte(9007199254740991).optional(),\n auto_add_music: z.boolean().optional(),\n brand_content_toggle: z.boolean().optional(),\n brand_organic_toggle: z.boolean().optional(),\n is_aigc: z.boolean().optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n })\n ])).min(1)\n});\n\n/**\n * OK\n */\nexport const zPostsCreateResponse = z.object({\n id: z.string(),\n object: z.literal('post'),\n profile_id: z.string(),\n external_id: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'partially_published',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n tags: z.array(z.string()),\n notes: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n variants: z.array(z.union([\n z.object({\n platform: z.literal('x'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n reply_settings: z.enum([\n 'everyone',\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional(),\n quote_tweet_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n poll: z.object({\n options: z.array(z.string().min(1).max(25)).min(2).max(4),\n duration_minutes: z.int().gte(5).lte(10080),\n reply_settings: z.enum([\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional()\n }).optional(),\n reply: z.object({\n in_reply_to_tweet_id: z.string().regex(/^[0-9]{1,19}$/),\n exclude_reply_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).optional(),\n auto_populate_reply_metadata: z.boolean().optional()\n }).optional(),\n community_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n for_super_followers_only: z.boolean().optional(),\n geo: z.object({\n place_id: z.string()\n }).optional(),\n card_uri: z.string().optional(),\n media_tagged_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).max(10).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n })),\n errors: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('linkedin'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n visibility: z.enum(['PUBLIC', 'CONNECTIONS']),\n content_kind: z.enum([\n 'text',\n 'single_image',\n 'video',\n 'multi_image',\n 'document',\n 'article',\n 'poll'\n ]),\n article: z.object({\n source: z.url(),\n title: z.string().max(400).optional(),\n description: z.string().max(4086).optional(),\n thumbnail_media_id: z.string().optional()\n }).optional(),\n poll: z.object({\n question: z.string().min(1).max(140),\n options: z.array(z.string().min(1).max(30)).min(2).max(4),\n duration: z.enum([\n 'ONE_DAY',\n 'THREE_DAYS',\n 'SEVEN_DAYS',\n 'FOURTEEN_DAYS'\n ])\n }).optional(),\n document: z.object({\n title: z.string().min(1).max(400)\n }).optional(),\n disable_reshare: z.boolean().optional(),\n mentions: z.array(z.object({\n type: z.enum(['person', 'organization']),\n name: z.string().min(1),\n urn: z.string().regex(/^urn:li:(person|organization):/)\n })).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n })),\n errors: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('facebook_page'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'reel'\n ]),\n settings: z.object({\n link: z.url().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n })),\n errors: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('instagram'),\n post_type: z.enum([\n 'single_image',\n 'carousel',\n 'reel'\n ]),\n settings: z.object({\n media_type: z.enum([\n 'IMAGE',\n 'CAROUSEL',\n 'REELS'\n ]).optional(),\n location_id: z.string().optional(),\n user_tags: z.array(z.object({\n username: z.string().min(1),\n x: z.number().gte(0).lte(1),\n y: z.number().gte(0).lte(1)\n })).optional(),\n collaborators: z.array(z.string().min(1)).max(3).optional(),\n share_to_feed: z.boolean().optional(),\n thumb_offset: z.int().gte(0).lte(9007199254740991).optional(),\n cover_url: z.url().optional(),\n audio_name: z.string().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n })),\n errors: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('tiktok'),\n post_type: z.enum([\n 'video',\n 'single_image',\n 'carousel'\n ]),\n settings: z.object({\n privacy_level: z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ]).optional(),\n disable_comment: z.boolean().optional(),\n disable_duet: z.boolean().optional(),\n disable_stitch: z.boolean().optional(),\n video_cover_timestamp_ms: z.int().gte(0).lte(9007199254740991).optional(),\n photo_cover_index: z.int().gte(0).lte(9007199254740991).optional(),\n auto_add_music: z.boolean().optional(),\n brand_content_toggle: z.boolean().optional(),\n brand_organic_toggle: z.boolean().optional(),\n is_aigc: z.boolean().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n })),\n errors: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n })\n ])),\n created_at: z.string(),\n updated_at: z.string(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zPostsDeletePath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zPostsDeleteResponse = z.object({\n id: z.string(),\n object: z.literal('post'),\n deleted: z.literal(true)\n});\n\nexport const zPostsGetPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zPostsGetResponse = z.object({\n id: z.string(),\n object: z.literal('post'),\n profile_id: z.string(),\n external_id: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'partially_published',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n tags: z.array(z.string()),\n notes: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n variants: z.array(z.union([\n z.object({\n platform: z.literal('x'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n reply_settings: z.enum([\n 'everyone',\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional(),\n quote_tweet_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n poll: z.object({\n options: z.array(z.string().min(1).max(25)).min(2).max(4),\n duration_minutes: z.int().gte(5).lte(10080),\n reply_settings: z.enum([\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional()\n }).optional(),\n reply: z.object({\n in_reply_to_tweet_id: z.string().regex(/^[0-9]{1,19}$/),\n exclude_reply_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).optional(),\n auto_populate_reply_metadata: z.boolean().optional()\n }).optional(),\n community_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n for_super_followers_only: z.boolean().optional(),\n geo: z.object({\n place_id: z.string()\n }).optional(),\n card_uri: z.string().optional(),\n media_tagged_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).max(10).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n })),\n errors: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('linkedin'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n visibility: z.enum(['PUBLIC', 'CONNECTIONS']),\n content_kind: z.enum([\n 'text',\n 'single_image',\n 'video',\n 'multi_image',\n 'document',\n 'article',\n 'poll'\n ]),\n article: z.object({\n source: z.url(),\n title: z.string().max(400).optional(),\n description: z.string().max(4086).optional(),\n thumbnail_media_id: z.string().optional()\n }).optional(),\n poll: z.object({\n question: z.string().min(1).max(140),\n options: z.array(z.string().min(1).max(30)).min(2).max(4),\n duration: z.enum([\n 'ONE_DAY',\n 'THREE_DAYS',\n 'SEVEN_DAYS',\n 'FOURTEEN_DAYS'\n ])\n }).optional(),\n document: z.object({\n title: z.string().min(1).max(400)\n }).optional(),\n disable_reshare: z.boolean().optional(),\n mentions: z.array(z.object({\n type: z.enum(['person', 'organization']),\n name: z.string().min(1),\n urn: z.string().regex(/^urn:li:(person|organization):/)\n })).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n })),\n errors: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('facebook_page'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'reel'\n ]),\n settings: z.object({\n link: z.url().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n })),\n errors: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('instagram'),\n post_type: z.enum([\n 'single_image',\n 'carousel',\n 'reel'\n ]),\n settings: z.object({\n media_type: z.enum([\n 'IMAGE',\n 'CAROUSEL',\n 'REELS'\n ]).optional(),\n location_id: z.string().optional(),\n user_tags: z.array(z.object({\n username: z.string().min(1),\n x: z.number().gte(0).lte(1),\n y: z.number().gte(0).lte(1)\n })).optional(),\n collaborators: z.array(z.string().min(1)).max(3).optional(),\n share_to_feed: z.boolean().optional(),\n thumb_offset: z.int().gte(0).lte(9007199254740991).optional(),\n cover_url: z.url().optional(),\n audio_name: z.string().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n })),\n errors: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('tiktok'),\n post_type: z.enum([\n 'video',\n 'single_image',\n 'carousel'\n ]),\n settings: z.object({\n privacy_level: z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ]).optional(),\n disable_comment: z.boolean().optional(),\n disable_duet: z.boolean().optional(),\n disable_stitch: z.boolean().optional(),\n video_cover_timestamp_ms: z.int().gte(0).lte(9007199254740991).optional(),\n photo_cover_index: z.int().gte(0).lte(9007199254740991).optional(),\n auto_add_music: z.boolean().optional(),\n brand_content_toggle: z.boolean().optional(),\n brand_organic_toggle: z.boolean().optional(),\n is_aigc: z.boolean().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n })),\n errors: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n })\n ])),\n created_at: z.string(),\n updated_at: z.string()\n});\n\nexport const zPostsUpdateBody = z.object({\n publish: z.enum([\n 'now',\n 'schedule',\n 'draft'\n ]).optional(),\n schedule_at: z.iso.datetime().nullish(),\n external_id: z.string().min(1).max(255).nullish(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])).optional(),\n tags: z.array(z.string()).optional(),\n notes: z.string().nullish(),\n dry_run: z.boolean().optional().default(false),\n variants: z.array(z.union([\n z.object({\n platform: z.literal('x'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n reply_settings: z.enum([\n 'everyone',\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional(),\n quote_tweet_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n poll: z.object({\n options: z.array(z.string().min(1).max(25)).min(2).max(4),\n duration_minutes: z.int().gte(5).lte(10080),\n reply_settings: z.enum([\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional()\n }).optional(),\n reply: z.object({\n in_reply_to_tweet_id: z.string().regex(/^[0-9]{1,19}$/),\n exclude_reply_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).optional(),\n auto_populate_reply_metadata: z.boolean().optional()\n }).optional(),\n community_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n for_super_followers_only: z.boolean().optional(),\n geo: z.object({\n place_id: z.string()\n }).optional(),\n card_uri: z.string().optional(),\n media_tagged_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).max(10).optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('linkedin'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n visibility: z.enum(['PUBLIC', 'CONNECTIONS']),\n content_kind: z.enum([\n 'text',\n 'single_image',\n 'video',\n 'multi_image',\n 'document',\n 'article',\n 'poll'\n ]),\n article: z.object({\n source: z.url(),\n title: z.string().max(400).optional(),\n description: z.string().max(4086).optional(),\n thumbnail_media_id: z.string().optional()\n }).optional(),\n poll: z.object({\n question: z.string().min(1).max(140),\n options: z.array(z.string().min(1).max(30)).min(2).max(4),\n duration: z.enum([\n 'ONE_DAY',\n 'THREE_DAYS',\n 'SEVEN_DAYS',\n 'FOURTEEN_DAYS'\n ])\n }).optional(),\n document: z.object({\n title: z.string().min(1).max(400)\n }).optional(),\n disable_reshare: z.boolean().optional(),\n mentions: z.array(z.object({\n type: z.enum(['person', 'organization']),\n name: z.string().min(1),\n urn: z.string().regex(/^urn:li:(person|organization):/)\n })).optional()\n }),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('instagram'),\n post_type: z.enum([\n 'single_image',\n 'carousel',\n 'reel'\n ]),\n settings: z.object({\n media_type: z.enum([\n 'IMAGE',\n 'CAROUSEL',\n 'REELS'\n ]).optional(),\n location_id: z.string().optional(),\n user_tags: z.array(z.object({\n username: z.string().min(1),\n x: z.number().gte(0).lte(1),\n y: z.number().gte(0).lte(1)\n })).optional(),\n collaborators: z.array(z.string().min(1)).max(3).optional(),\n share_to_feed: z.boolean().optional(),\n thumb_offset: z.int().gte(0).lte(9007199254740991).optional(),\n cover_url: z.url().optional(),\n audio_name: z.string().optional()\n }),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('facebook_page'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'reel'\n ]),\n settings: z.object({\n link: z.url().optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('tiktok'),\n post_type: z.enum([\n 'video',\n 'single_image',\n 'carousel'\n ]),\n settings: z.object({\n privacy_level: z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ]).optional(),\n disable_comment: z.boolean().optional(),\n disable_duet: z.boolean().optional(),\n disable_stitch: z.boolean().optional(),\n video_cover_timestamp_ms: z.int().gte(0).lte(9007199254740991).optional(),\n photo_cover_index: z.int().gte(0).lte(9007199254740991).optional(),\n auto_add_music: z.boolean().optional(),\n brand_content_toggle: z.boolean().optional(),\n brand_organic_toggle: z.boolean().optional(),\n is_aigc: z.boolean().optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n })\n ])).min(1).optional()\n});\n\nexport const zPostsUpdatePath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zPostsUpdateResponse = z.object({\n id: z.string(),\n object: z.literal('post'),\n profile_id: z.string(),\n external_id: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'partially_published',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n tags: z.array(z.string()),\n notes: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n variants: z.array(z.union([\n z.object({\n platform: z.literal('x'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n reply_settings: z.enum([\n 'everyone',\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional(),\n quote_tweet_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n poll: z.object({\n options: z.array(z.string().min(1).max(25)).min(2).max(4),\n duration_minutes: z.int().gte(5).lte(10080),\n reply_settings: z.enum([\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional()\n }).optional(),\n reply: z.object({\n in_reply_to_tweet_id: z.string().regex(/^[0-9]{1,19}$/),\n exclude_reply_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).optional(),\n auto_populate_reply_metadata: z.boolean().optional()\n }).optional(),\n community_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n for_super_followers_only: z.boolean().optional(),\n geo: z.object({\n place_id: z.string()\n }).optional(),\n card_uri: z.string().optional(),\n media_tagged_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).max(10).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n })),\n errors: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('linkedin'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n visibility: z.enum(['PUBLIC', 'CONNECTIONS']),\n content_kind: z.enum([\n 'text',\n 'single_image',\n 'video',\n 'multi_image',\n 'document',\n 'article',\n 'poll'\n ]),\n article: z.object({\n source: z.url(),\n title: z.string().max(400).optional(),\n description: z.string().max(4086).optional(),\n thumbnail_media_id: z.string().optional()\n }).optional(),\n poll: z.object({\n question: z.string().min(1).max(140),\n options: z.array(z.string().min(1).max(30)).min(2).max(4),\n duration: z.enum([\n 'ONE_DAY',\n 'THREE_DAYS',\n 'SEVEN_DAYS',\n 'FOURTEEN_DAYS'\n ])\n }).optional(),\n document: z.object({\n title: z.string().min(1).max(400)\n }).optional(),\n disable_reshare: z.boolean().optional(),\n mentions: z.array(z.object({\n type: z.enum(['person', 'organization']),\n name: z.string().min(1),\n urn: z.string().regex(/^urn:li:(person|organization):/)\n })).optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n })),\n errors: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('facebook_page'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'reel'\n ]),\n settings: z.object({\n link: z.url().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n })),\n errors: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('instagram'),\n post_type: z.enum([\n 'single_image',\n 'carousel',\n 'reel'\n ]),\n settings: z.object({\n media_type: z.enum([\n 'IMAGE',\n 'CAROUSEL',\n 'REELS'\n ]).optional(),\n location_id: z.string().optional(),\n user_tags: z.array(z.object({\n username: z.string().min(1),\n x: z.number().gte(0).lte(1),\n y: z.number().gte(0).lte(1)\n })).optional(),\n collaborators: z.array(z.string().min(1)).max(3).optional(),\n share_to_feed: z.boolean().optional(),\n thumb_offset: z.int().gte(0).lte(9007199254740991).optional(),\n cover_url: z.url().optional(),\n audio_name: z.string().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n })),\n errors: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n }),\n z.object({\n platform: z.literal('tiktok'),\n post_type: z.enum([\n 'video',\n 'single_image',\n 'carousel'\n ]),\n settings: z.object({\n privacy_level: z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ]).optional(),\n disable_comment: z.boolean().optional(),\n disable_duet: z.boolean().optional(),\n disable_stitch: z.boolean().optional(),\n video_cover_timestamp_ms: z.int().gte(0).lte(9007199254740991).optional(),\n photo_cover_index: z.int().gte(0).lte(9007199254740991).optional(),\n auto_add_music: z.boolean().optional(),\n brand_content_toggle: z.boolean().optional(),\n brand_organic_toggle: z.boolean().optional(),\n is_aigc: z.boolean().optional()\n }),\n id: z.string(),\n object: z.literal('post_variant'),\n connection_id: z.string().nullable(),\n body: z.string().nullable(),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n schedule_at: z.string().nullable(),\n result: z.object({\n platform_post_id: z.string(),\n permalink: z.string().nullable(),\n published_at: z.string()\n }).nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable(),\n media: z.array(z.object({\n media_id: z.string(),\n position: z.int().gte(-9007199254740991).lte(9007199254740991),\n crop_box: z.record(z.string(), z.unknown()).nullable(),\n alt_text_override: z.string().nullable(),\n media: z.object({\n id: z.string(),\n object: z.literal('media'),\n profile_id: z.string(),\n kind: z.enum([\n 'image',\n 'video',\n 'gif',\n 'document'\n ]).nullable(),\n content_type: z.string().nullable(),\n status: z.enum([\n 'uploading',\n 'processing',\n 'ready',\n 'failed'\n ]),\n progress: z.object({\n stage: z.enum([\n 'queued',\n 'analyzing',\n 'transcoding',\n 'done'\n ]),\n percent: z.int().gte(0).lte(100)\n }),\n raw: z.boolean(),\n error: z.object({\n code: z.enum([\n 'media_unprobeable',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_unsupported'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n display_error: z.string()\n }).nullable(),\n source: z.object({\n format: z.string(),\n bytes: z.int().gte(0).lte(9007199254740991),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n duration_ms: z.int().gte(0).lte(9007199254740991).nullable()\n }).nullable(),\n alt_text: z.string().max(1000).nullable(),\n per_platform: z.record(z.string(), z.object({\n status: z.enum([\n 'processing',\n 'ready',\n 'failed'\n ]),\n url: z.string().nullable(),\n width: z.int().gt(0).lte(9007199254740991).nullable(),\n height: z.int().gt(0).lte(9007199254740991).nullable(),\n bytes: z.int().gte(0).lte(9007199254740991).nullable(),\n warnings: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n })),\n errors: z.array(z.object({\n code: z.unknown().optional(),\n message: z.unknown().optional(),\n hint: z.unknown().optional(),\n allowed: z.unknown().optional(),\n got: z.unknown().optional(),\n display_error: z.unknown().optional()\n }))\n })),\n external_id: z.string().nullable(),\n metadata: z.record(z.string(), z.union([\n z.string().max(500),\n z.number(),\n z.boolean()\n ])),\n created_at: z.string(),\n updated_at: z.string()\n })\n }))\n })\n ])),\n created_at: z.string(),\n updated_at: z.string(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zPostsValidateBody = z.object({\n profile_id: z.string(),\n variants: z.array(z.union([\n z.object({\n platform: z.literal('x'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n reply_settings: z.enum([\n 'everyone',\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional(),\n quote_tweet_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n poll: z.object({\n options: z.array(z.string().min(1).max(25)).min(2).max(4),\n duration_minutes: z.int().gte(5).lte(10080),\n reply_settings: z.enum([\n 'following',\n 'mentionedUsers',\n 'subscribers',\n 'verified'\n ]).optional()\n }).optional(),\n reply: z.object({\n in_reply_to_tweet_id: z.string().regex(/^[0-9]{1,19}$/),\n exclude_reply_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).optional(),\n auto_populate_reply_metadata: z.boolean().optional()\n }).optional(),\n community_id: z.string().regex(/^[0-9]{1,19}$/).optional(),\n for_super_followers_only: z.boolean().optional(),\n geo: z.object({\n place_id: z.string()\n }).optional(),\n card_uri: z.string().optional(),\n media_tagged_user_ids: z.array(z.string().regex(/^[0-9]{1,19}$/)).max(10).optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('linkedin'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'video'\n ]),\n settings: z.object({\n visibility: z.enum(['PUBLIC', 'CONNECTIONS']),\n content_kind: z.enum([\n 'text',\n 'single_image',\n 'video',\n 'multi_image',\n 'document',\n 'article',\n 'poll'\n ]),\n article: z.object({\n source: z.url(),\n title: z.string().max(400).optional(),\n description: z.string().max(4086).optional(),\n thumbnail_media_id: z.string().optional()\n }).optional(),\n poll: z.object({\n question: z.string().min(1).max(140),\n options: z.array(z.string().min(1).max(30)).min(2).max(4),\n duration: z.enum([\n 'ONE_DAY',\n 'THREE_DAYS',\n 'SEVEN_DAYS',\n 'FOURTEEN_DAYS'\n ])\n }).optional(),\n document: z.object({\n title: z.string().min(1).max(400)\n }).optional(),\n disable_reshare: z.boolean().optional(),\n mentions: z.array(z.object({\n type: z.enum(['person', 'organization']),\n name: z.string().min(1),\n urn: z.string().regex(/^urn:li:(person|organization):/)\n })).optional()\n }),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('instagram'),\n post_type: z.enum([\n 'single_image',\n 'carousel',\n 'reel'\n ]),\n settings: z.object({\n media_type: z.enum([\n 'IMAGE',\n 'CAROUSEL',\n 'REELS'\n ]).optional(),\n location_id: z.string().optional(),\n user_tags: z.array(z.object({\n username: z.string().min(1),\n x: z.number().gte(0).lte(1),\n y: z.number().gte(0).lte(1)\n })).optional(),\n collaborators: z.array(z.string().min(1)).max(3).optional(),\n share_to_feed: z.boolean().optional(),\n thumb_offset: z.int().gte(0).lte(9007199254740991).optional(),\n cover_url: z.url().optional(),\n audio_name: z.string().optional()\n }),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('facebook_page'),\n post_type: z.enum([\n 'text',\n 'single_image',\n 'multi_image',\n 'reel'\n ]),\n settings: z.object({\n link: z.url().optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n }),\n z.object({\n platform: z.literal('tiktok'),\n post_type: z.enum([\n 'video',\n 'single_image',\n 'carousel'\n ]),\n settings: z.object({\n privacy_level: z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ]).optional(),\n disable_comment: z.boolean().optional(),\n disable_duet: z.boolean().optional(),\n disable_stitch: z.boolean().optional(),\n video_cover_timestamp_ms: z.int().gte(0).lte(9007199254740991).optional(),\n photo_cover_index: z.int().gte(0).lte(9007199254740991).optional(),\n auto_add_music: z.boolean().optional(),\n brand_content_toggle: z.boolean().optional(),\n brand_organic_toggle: z.boolean().optional(),\n is_aigc: z.boolean().optional()\n }).optional().default({}),\n connection_id: z.string(),\n body: z.string().optional(),\n media: z.array(z.object({\n media_id: z.string(),\n crop_box: z.record(z.string(), z.unknown()).nullish(),\n alt_text_override: z.string().nullish()\n })).optional().default([])\n })\n ])).min(1)\n});\n\n/**\n * OK\n */\nexport const zPostsValidateResponse = z.object({\n object: z.literal('validation'),\n publishable: z.boolean(),\n issues: z.array(z.object({\n code: z.enum([\n 'unauthorized',\n 'forbidden',\n 'not_found',\n 'conflict',\n 'validation_failed',\n 'rate_limited',\n 'internal_error',\n 'idempotency_key_invalid',\n 'idempotency_key_reused',\n 'idempotency_request_in_progress',\n 'account_not_available',\n 'connection_reauth_required',\n 'connection_not_pending',\n 'not_implemented',\n 'connection_discovery_failed',\n 'tiktok_creator_info_unavailable',\n 'media_processing',\n 'not_publishable',\n 'invalid_connection',\n 'invalid_media',\n 'profile_scope_invalid',\n 'media_unprobeable',\n 'media_too_large',\n 'media_aspect_ratio_unsupported',\n 'media_resolution_too_low',\n 'media_gif_unsupported',\n 'media_format_recompressed',\n 'media_resolution_downscaled',\n 'video_container_unsupported',\n 'video_codec_unsupported',\n 'video_audio_codec_unsupported',\n 'video_too_large',\n 'video_too_small',\n 'video_dimensions_unsupported',\n 'video_dimensions_too_large',\n 'video_fps_unsupported',\n 'video_fps_too_low',\n 'video_aspect_unsupported',\n 'video_duration_too_short',\n 'video_duration_exceeds_max',\n 'video_transform_failed',\n 'media_fetch_failed',\n 'document_format_unsupported',\n 'document_too_large',\n 'document_too_many_pages',\n 'media_format_indeterminate',\n 'media_format_unsupported',\n 'media_count_invalid',\n 'body_too_long',\n 'content_missing',\n 'content_conflict',\n 'content_incomplete',\n 'content_kind_mismatch',\n 'media_type_mismatch',\n 'tag_limit_exceeded',\n 'reel_field_on_non_reel',\n 'field_placement_invalid',\n 'media_not_ready',\n 'media_failed',\n 'media_unsupported',\n 'media_kind_mismatch',\n 'variant_unparseable',\n 'publishing_unavailable',\n 'x_duplicate_content',\n 'x_not_authorized',\n 'x_access_not_permitted',\n 'x_rate_limited',\n 'x_publish_failed',\n 'x_media_upload_failed',\n 'linkedin_duplicate_content',\n 'linkedin_auth_expired',\n 'linkedin_permission_denied',\n 'linkedin_rate_limited',\n 'linkedin_media_processing',\n 'linkedin_media_failed',\n 'linkedin_media_upload_failed',\n 'linkedin_publish_failed',\n 'instagram_media_processing',\n 'instagram_container_expired',\n 'instagram_container_failed',\n 'instagram_rate_limited',\n 'instagram_not_authorized',\n 'instagram_publish_failed',\n 'facebook_reel_processing',\n 'facebook_reel_failed',\n 'facebook_rate_limited',\n 'facebook_not_authorized',\n 'facebook_publish_failed',\n 'tiktok_privacy_not_allowed',\n 'tiktok_duration_exceeds_max',\n 'tiktok_media_processing',\n 'tiktok_not_authorized',\n 'tiktok_rate_limited',\n 'tiktok_url_ownership_unverified',\n 'tiktok_unaudited_private_only',\n 'tiktok_spam_risk',\n 'tiktok_publish_failed',\n 'post_publish_failed',\n 'post_partially_published',\n 'connection_platform_mismatch',\n 'connection_removed'\n ]),\n message: z.string(),\n hint: z.string().optional(),\n allowed: z.array(z.string()).optional(),\n got: z.string().optional(),\n variant_index: z.int().gte(-9007199254740991).lte(9007199254740991),\n path: z.array(z.union([z.string(), z.number()])),\n platform: z.enum([\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]).optional(),\n display_error: z.string()\n }))\n});\n\nexport const zMetaAccountPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * A Meta (Facebook) ad account.\n */\nexport const zMetaAccountResponse = z.object({\n id: z.string(),\n account_id: z.string(),\n name: z.string().nullable(),\n account_status: z.int().gte(-9007199254740991).lte(9007199254740991),\n currency: z.string(),\n timezone_name: z.string().nullable(),\n amount_spent: z.string(),\n balance: z.string(),\n spend_cap: z.string().nullable()\n});\n\nexport const zMetaInsightsPath = z.object({\n connection_id: z.string()\n});\n\nexport const zMetaInsightsQuery = z.object({\n level: z.enum([\n 'account',\n 'campaign',\n 'adset',\n 'ad'\n ]).optional().default('account'),\n date_preset: z.enum([\n 'today',\n 'yesterday',\n 'this_month',\n 'last_month',\n 'this_quarter',\n 'maximum',\n 'data_maximum',\n 'last_3d',\n 'last_7d',\n 'last_14d',\n 'last_28d',\n 'last_30d',\n 'last_90d',\n 'last_week_mon_sun',\n 'last_week_sun_sat',\n 'last_quarter',\n 'last_year',\n 'this_week_mon_today',\n 'this_week_sun_today',\n 'this_year'\n ]).optional().default('last_30d'),\n time_range: z.object({\n since: z.string().regex(/^\\d{4}-\\d{2}-\\d{2}$/),\n until: z.string().regex(/^\\d{4}-\\d{2}-\\d{2}$/)\n }).optional(),\n time_increment: z.union([\n z.int().gte(1).lte(90),\n z.literal('monthly'),\n z.literal('all_days')\n ]).optional()\n});\n\n/**\n * A list of curated Meta ad-insights rows.\n */\nexport const zMetaInsightsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n date_start: z.string(),\n date_stop: z.string(),\n account_id: z.string().optional(),\n campaign_id: z.string().optional(),\n campaign_name: z.string().optional(),\n adset_id: z.string().optional(),\n adset_name: z.string().optional(),\n ad_id: z.string().optional(),\n ad_name: z.string().optional(),\n spend: z.string().optional(),\n impressions: z.string().optional(),\n clicks: z.string().optional(),\n ctr: z.string().optional(),\n cpc: z.string().optional(),\n cpm: z.string().optional(),\n cpp: z.string().optional(),\n reach: z.string().optional(),\n frequency: z.string().optional()\n }))\n});\n\nexport const zMetaCampaignsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * A list of Meta ad campaigns.\n */\nexport const zMetaCampaignsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n account_id: z.string().optional(),\n name: z.string().nullable(),\n status: z.string().optional(),\n effective_status: z.string().optional(),\n objective: z.string().optional(),\n daily_budget: z.string().optional(),\n lifetime_budget: z.string().optional(),\n budget_remaining: z.string().optional(),\n bid_strategy: z.string().optional(),\n created_time: z.string().optional(),\n start_time: z.string().optional(),\n stop_time: z.string().optional()\n }))\n});\n\nexport const zMetaCampaignPath = z.object({\n connection_id: z.string(),\n campaign_id: z.string().min(1)\n});\n\n/**\n * A Meta (Facebook) ad campaign.\n */\nexport const zMetaCampaignResponse = z.object({\n id: z.string(),\n account_id: z.string().optional(),\n name: z.string().nullable(),\n status: z.string().optional(),\n effective_status: z.string().optional(),\n objective: z.string().optional(),\n daily_budget: z.string().optional(),\n lifetime_budget: z.string().optional(),\n budget_remaining: z.string().optional(),\n bid_strategy: z.string().optional(),\n created_time: z.string().optional(),\n start_time: z.string().optional(),\n stop_time: z.string().optional()\n});\n\nexport const zMetaAdsetsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * A list of Meta ad sets.\n */\nexport const zMetaAdsetsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n account_id: z.string().optional(),\n name: z.string().nullable(),\n status: z.string().optional(),\n effective_status: z.string().optional(),\n campaign_id: z.string().optional(),\n daily_budget: z.string().optional(),\n lifetime_budget: z.string().optional(),\n budget_remaining: z.string().optional(),\n bid_amount: z.string().optional(),\n billing_event: z.string().optional(),\n optimization_goal: z.string().optional(),\n start_time: z.string().optional(),\n end_time: z.string().optional()\n }))\n});\n\nexport const zMetaAdsetPath = z.object({\n connection_id: z.string(),\n adset_id: z.string().min(1)\n});\n\n/**\n * A Meta (Facebook) ad set.\n */\nexport const zMetaAdsetResponse = z.object({\n id: z.string(),\n account_id: z.string().optional(),\n name: z.string().nullable(),\n status: z.string().optional(),\n effective_status: z.string().optional(),\n campaign_id: z.string().optional(),\n daily_budget: z.string().optional(),\n lifetime_budget: z.string().optional(),\n budget_remaining: z.string().optional(),\n bid_amount: z.string().optional(),\n billing_event: z.string().optional(),\n optimization_goal: z.string().optional(),\n start_time: z.string().optional(),\n end_time: z.string().optional()\n});\n\nexport const zMetaAdsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * A list of Meta ads.\n */\nexport const zMetaAdsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.string().optional(),\n effective_status: z.string().optional(),\n adset_id: z.string().optional(),\n campaign_id: z.string().optional(),\n account_id: z.string().optional(),\n created_time: z.string().optional(),\n updated_time: z.string().optional()\n }))\n});\n\nexport const zMetaAdPath = z.object({\n connection_id: z.string(),\n ad_id: z.string().min(1)\n});\n\n/**\n * A Meta (Facebook) ad.\n */\nexport const zMetaAdResponse = z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.string().optional(),\n effective_status: z.string().optional(),\n adset_id: z.string().optional(),\n campaign_id: z.string().optional(),\n account_id: z.string().optional(),\n created_time: z.string().optional(),\n updated_time: z.string().optional()\n});\n\nexport const zGoogleGetAccountPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * A connected Google Ads account (the `customer` resource): id, descriptive name, currency, time zone, status, and whether it is a manager (MCC) or test account.\n */\nexport const zGoogleGetAccountResponse = z.object({\n id: z.string(),\n descriptive_name: z.string().nullable(),\n currency_code: z.string().nullable(),\n time_zone: z.string().nullable(),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'CANCELED',\n 'SUSPENDED',\n 'CLOSED'\n ]),\n manager: z.boolean(),\n test_account: z.boolean()\n});\n\nexport const zGoogleGetInsightsBody = z.object({\n level: z.enum([\n 'account',\n 'campaign',\n 'ad_group'\n ]).optional().default('campaign'),\n metrics: z.array(z.enum([\n 'impressions',\n 'clicks',\n 'ctr',\n 'average_cpc',\n 'cost_micros',\n 'conversions',\n 'conversions_value',\n 'cost_per_conversion'\n ])).min(1).optional().default([\n 'impressions',\n 'clicks',\n 'cost_micros',\n 'conversions'\n ]),\n segments: z.array(z.enum(['date', 'device'])).optional(),\n since: z.string().regex(/^\\d{4}-\\d{2}-\\d{2}$/),\n until: z.string().regex(/^\\d{4}-\\d{2}-\\d{2}$/)\n});\n\nexport const zGoogleGetInsightsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * Performance rows for the requested level, metrics, and window.\n */\nexport const zGoogleGetInsightsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n level: z.enum([\n 'account',\n 'campaign',\n 'ad_group'\n ]),\n id: z.string(),\n name: z.string().nullable(),\n metrics: z.record(z.string(), z.number().nullable()),\n segments: z.record(z.string(), z.string()).optional()\n }))\n});\n\nexport const zGoogleRunGaqlBody = z.object({\n query: z.string().min(1).max(10000)\n});\n\nexport const zGoogleRunGaqlPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * The native GAQL rows for the query (unnormalised).\n */\nexport const zGoogleRunGaqlResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.union([z.unknown(), z.null()]))\n});\n\nexport const zGoogleCreateBudgetBody = z.object({\n name: z.string().min(1).max(255),\n amount_micros: z.int().gt(0).lte(9007199254740991),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleCreateBudgetPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleCreateBudgetResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleDeleteBudgetBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleDeleteBudgetPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleDeleteBudgetResponse = z.object({\n id: z.string(),\n removed: z.boolean(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleEditBudgetBody = z.object({\n amount_micros: z.int().gt(0).lte(9007199254740991),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleEditBudgetPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleEditBudgetResponse = z.object({\n id: z.string(),\n resource_name: z.string(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleListCampaignsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleListCampaignsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n advertising_channel_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'SEARCH',\n 'DISPLAY',\n 'SHOPPING',\n 'HOTEL',\n 'VIDEO',\n 'MULTI_CHANNEL',\n 'LOCAL',\n 'SMART',\n 'PERFORMANCE_MAX',\n 'LOCAL_SERVICES',\n 'TRAVEL',\n 'DEMAND_GEN'\n ]),\n bidding_strategy_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'COMMISSION',\n 'ENHANCED_CPC',\n 'FIXED_CPM',\n 'FIXED_SHARE_OF_VOICE',\n 'INVALID',\n 'MANUAL_CPA',\n 'MANUAL_CPC',\n 'MANUAL_CPM',\n 'MANUAL_CPV',\n 'MAXIMIZE_CONVERSIONS',\n 'MAXIMIZE_CONVERSION_VALUE',\n 'PAGE_ONE_PROMOTED',\n 'PERCENT_CPC',\n 'TARGET_CPA',\n 'TARGET_CPC',\n 'TARGET_CPM',\n 'TARGET_CPV',\n 'TARGET_IMPRESSION_SHARE',\n 'TARGET_OUTRANK_SHARE',\n 'TARGET_ROAS',\n 'TARGET_SPEND'\n ])\n }))\n});\n\nexport const zGoogleCreateCampaignBody = z.object({\n name: z.string().min(1).max(255),\n channel: z.enum(['SEARCH', 'DISPLAY']),\n campaign_budget: z.string().min(1),\n bidding: z.enum([\n 'manual_cpc',\n 'maximize_conversions',\n 'target_spend'\n ]),\n status: z.enum(['ENABLED', 'PAUSED']).optional().default('PAUSED'),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleCreateCampaignPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleCreateCampaignResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleDeleteCampaignBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleDeleteCampaignPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleDeleteCampaignResponse = z.object({\n id: z.string(),\n removed: z.boolean(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleGetCampaignPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * A Google Ads campaign (the `campaign` resource): id, name, status, advertising channel type, and bidding strategy type. (start/end dates are a fast-follow — the Opteo v23 campaign type does not yet expose them as typed fields, and we never cast.)\n */\nexport const zGoogleGetCampaignResponse = z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n advertising_channel_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'SEARCH',\n 'DISPLAY',\n 'SHOPPING',\n 'HOTEL',\n 'VIDEO',\n 'MULTI_CHANNEL',\n 'LOCAL',\n 'SMART',\n 'PERFORMANCE_MAX',\n 'LOCAL_SERVICES',\n 'TRAVEL',\n 'DEMAND_GEN'\n ]),\n bidding_strategy_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'COMMISSION',\n 'ENHANCED_CPC',\n 'FIXED_CPM',\n 'FIXED_SHARE_OF_VOICE',\n 'INVALID',\n 'MANUAL_CPA',\n 'MANUAL_CPC',\n 'MANUAL_CPM',\n 'MANUAL_CPV',\n 'MAXIMIZE_CONVERSIONS',\n 'MAXIMIZE_CONVERSION_VALUE',\n 'PAGE_ONE_PROMOTED',\n 'PERCENT_CPC',\n 'TARGET_CPA',\n 'TARGET_CPC',\n 'TARGET_CPM',\n 'TARGET_CPV',\n 'TARGET_IMPRESSION_SHARE',\n 'TARGET_OUTRANK_SHARE',\n 'TARGET_ROAS',\n 'TARGET_SPEND'\n ])\n});\n\nexport const zGoogleEditCampaignBody = z.object({\n name: z.string().min(1).max(255),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleEditCampaignPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleEditCampaignResponse = z.object({\n id: z.string(),\n resource_name: z.string(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGooglePauseCampaignBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGooglePauseCampaignPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGooglePauseCampaignResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleEnableCampaignBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleEnableCampaignPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGoogleEnableCampaignResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleListAdGroupsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleListAdGroupsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'SEARCH_STANDARD',\n 'DISPLAY_STANDARD',\n 'SHOPPING_PRODUCT_ADS',\n 'HOTEL_ADS',\n 'SHOPPING_SMART_ADS',\n 'VIDEO_BUMPER',\n 'VIDEO_TRUE_VIEW_IN_STREAM',\n 'VIDEO_TRUE_VIEW_IN_DISPLAY',\n 'VIDEO_NON_SKIPPABLE_IN_STREAM',\n 'SEARCH_DYNAMIC_ADS',\n 'SHOPPING_COMPARISON_LISTING_ADS',\n 'PROMOTED_HOTEL_ADS',\n 'VIDEO_RESPONSIVE',\n 'VIDEO_EFFICIENT_REACH',\n 'SMART_CAMPAIGN_ADS',\n 'TRAVEL_ADS',\n 'YOUTUBE_AUDIO'\n ]),\n campaign: z.string().nullable()\n }))\n});\n\nexport const zGoogleCreateAdGroupBody = z.object({\n name: z.string().min(1).max(255),\n campaign: z.string().min(1),\n type: z.enum(['SEARCH_STANDARD', 'DISPLAY_STANDARD']),\n status: z.enum(['ENABLED', 'PAUSED']).optional().default('ENABLED'),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleCreateAdGroupPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleCreateAdGroupResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleDeleteAdGroupBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleDeleteAdGroupPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleDeleteAdGroupResponse = z.object({\n id: z.string(),\n removed: z.boolean(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleGetAdGroupPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * A Google Ads ad group (the `ad_group` resource): id, name, status, type, and the resource name of the parent campaign.\n */\nexport const zGoogleGetAdGroupResponse = z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'SEARCH_STANDARD',\n 'DISPLAY_STANDARD',\n 'SHOPPING_PRODUCT_ADS',\n 'HOTEL_ADS',\n 'SHOPPING_SMART_ADS',\n 'VIDEO_BUMPER',\n 'VIDEO_TRUE_VIEW_IN_STREAM',\n 'VIDEO_TRUE_VIEW_IN_DISPLAY',\n 'VIDEO_NON_SKIPPABLE_IN_STREAM',\n 'SEARCH_DYNAMIC_ADS',\n 'SHOPPING_COMPARISON_LISTING_ADS',\n 'PROMOTED_HOTEL_ADS',\n 'VIDEO_RESPONSIVE',\n 'VIDEO_EFFICIENT_REACH',\n 'SMART_CAMPAIGN_ADS',\n 'TRAVEL_ADS',\n 'YOUTUBE_AUDIO'\n ]),\n campaign: z.string().nullable()\n});\n\nexport const zGoogleEditAdGroupBody = z.object({\n name: z.string().min(1).max(255),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleEditAdGroupPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleEditAdGroupResponse = z.object({\n id: z.string(),\n resource_name: z.string(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleSetAdGroupBidsBody = z.object({\n cpc_bid_micros: z.int().gt(0).lte(9007199254740991).optional(),\n cpm_bid_micros: z.int().gt(0).lte(9007199254740991).optional(),\n target_cpa_micros: z.int().gt(0).lte(9007199254740991).optional(),\n target_roas: z.number().gt(0).optional(),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleSetAdGroupBidsPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleSetAdGroupBidsResponse = z.object({\n id: z.string(),\n resource_name: z.string(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGooglePauseAdGroupBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGooglePauseAdGroupPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGooglePauseAdGroupResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleEnableAdGroupBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleEnableAdGroupPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGoogleEnableAdGroupResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleListAdsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleListAdsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n name: z.string().nullable(),\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'TEXT_AD',\n 'EXPANDED_TEXT_AD',\n 'EXPANDED_DYNAMIC_SEARCH_AD',\n 'HOTEL_AD',\n 'SHOPPING_SMART_AD',\n 'SHOPPING_PRODUCT_AD',\n 'VIDEO_AD',\n 'IMAGE_AD',\n 'RESPONSIVE_SEARCH_AD',\n 'LEGACY_RESPONSIVE_DISPLAY_AD',\n 'APP_AD',\n 'LEGACY_APP_INSTALL_AD',\n 'RESPONSIVE_DISPLAY_AD',\n 'LOCAL_AD',\n 'HTML5_UPLOAD_AD',\n 'DYNAMIC_HTML5_AD',\n 'APP_ENGAGEMENT_AD',\n 'SHOPPING_COMPARISON_LISTING_AD',\n 'VIDEO_BUMPER_AD',\n 'VIDEO_NON_SKIPPABLE_IN_STREAM_AD',\n 'VIDEO_TRUEVIEW_IN_STREAM_AD',\n 'VIDEO_RESPONSIVE_AD',\n 'SMART_CAMPAIGN_AD',\n 'CALL_AD',\n 'APP_PRE_REGISTRATION_AD',\n 'IN_FEED_VIDEO_AD',\n 'DEMAND_GEN_MULTI_ASSET_AD',\n 'DEMAND_GEN_CAROUSEL_AD',\n 'TRAVEL_AD',\n 'DEMAND_GEN_VIDEO_RESPONSIVE_AD',\n 'DEMAND_GEN_PRODUCT_AD',\n 'YOUTUBE_AUDIO_AD'\n ]),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n ad_group: z.string().nullable()\n }))\n});\n\nexport const zGoogleCreateAdBody = z.object({\n ad_group: z.string().min(1),\n final_urls: z.array(z.url()).min(1),\n headlines: z.array(z.object({\n text: z.string().min(1).max(30),\n pinned_field: z.enum([\n 'HEADLINE_1',\n 'HEADLINE_2',\n 'HEADLINE_3'\n ]).optional()\n })).min(3).max(15),\n descriptions: z.array(z.object({\n text: z.string().min(1).max(90)\n })).min(2).max(4),\n path1: z.string().max(15).optional(),\n path2: z.string().max(15).optional(),\n status: z.enum(['ENABLED', 'PAUSED']).optional().default('PAUSED'),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleCreateAdPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleCreateAdResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleDeleteAdBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleDeleteAdPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleDeleteAdResponse = z.object({\n id: z.string(),\n removed: z.boolean(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleGetAdPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * A Google Ads ad (the `ad_group_ad` resource): id, name, creative type, serving status, and the ad group resource name it belongs to.\n */\nexport const zGoogleGetAdResponse = z.object({\n id: z.string(),\n name: z.string().nullable(),\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'TEXT_AD',\n 'EXPANDED_TEXT_AD',\n 'EXPANDED_DYNAMIC_SEARCH_AD',\n 'HOTEL_AD',\n 'SHOPPING_SMART_AD',\n 'SHOPPING_PRODUCT_AD',\n 'VIDEO_AD',\n 'IMAGE_AD',\n 'RESPONSIVE_SEARCH_AD',\n 'LEGACY_RESPONSIVE_DISPLAY_AD',\n 'APP_AD',\n 'LEGACY_APP_INSTALL_AD',\n 'RESPONSIVE_DISPLAY_AD',\n 'LOCAL_AD',\n 'HTML5_UPLOAD_AD',\n 'DYNAMIC_HTML5_AD',\n 'APP_ENGAGEMENT_AD',\n 'SHOPPING_COMPARISON_LISTING_AD',\n 'VIDEO_BUMPER_AD',\n 'VIDEO_NON_SKIPPABLE_IN_STREAM_AD',\n 'VIDEO_TRUEVIEW_IN_STREAM_AD',\n 'VIDEO_RESPONSIVE_AD',\n 'SMART_CAMPAIGN_AD',\n 'CALL_AD',\n 'APP_PRE_REGISTRATION_AD',\n 'IN_FEED_VIDEO_AD',\n 'DEMAND_GEN_MULTI_ASSET_AD',\n 'DEMAND_GEN_CAROUSEL_AD',\n 'TRAVEL_AD',\n 'DEMAND_GEN_VIDEO_RESPONSIVE_AD',\n 'DEMAND_GEN_PRODUCT_AD',\n 'YOUTUBE_AUDIO_AD'\n ]),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n ad_group: z.string().nullable()\n});\n\nexport const zGoogleCreateDisplayAdBody = z.object({\n ad_group: z.string().min(1),\n final_urls: z.array(z.url()).min(1),\n marketing_images: z.array(z.object({\n asset: z.string().min(1)\n })).max(15).optional().default([]),\n square_marketing_images: z.array(z.object({\n asset: z.string().min(1)\n })).max(15).optional().default([]),\n logo_images: z.array(z.object({\n asset: z.string().min(1)\n })).max(5).optional().default([]),\n square_logo_images: z.array(z.object({\n asset: z.string().min(1)\n })).max(5).optional().default([]),\n headlines: z.array(z.object({\n text: z.string().min(1).max(30)\n })).min(1).max(5),\n long_headline: z.object({\n text: z.string().min(1).max(90)\n }),\n descriptions: z.array(z.object({\n text: z.string().min(1).max(90)\n })).min(1).max(5),\n business_name: z.string().min(1).max(25).optional(),\n call_to_action_text: z.string().min(1).optional(),\n main_color: z.string().min(1).optional(),\n accent_color: z.string().min(1).optional(),\n status: z.enum(['ENABLED', 'PAUSED']).optional().default('PAUSED'),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleCreateDisplayAdPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleCreateDisplayAdResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGooglePauseAdBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGooglePauseAdPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGooglePauseAdResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleEnableAdBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleEnableAdPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGoogleEnableAdResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleListKeywordsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleListKeywordsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n text: z.string().nullable(),\n match_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'EXACT',\n 'PHRASE',\n 'BROAD'\n ]),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n negative: z.boolean(),\n ad_group: z.string().nullable()\n }))\n});\n\nexport const zGoogleCreateKeywordBody = z.object({\n ad_group: z.string().min(1),\n text: z.string().min(1).max(80),\n match_type: z.enum([\n 'EXACT',\n 'PHRASE',\n 'BROAD'\n ]),\n negative: z.boolean().optional().default(false),\n status: z.enum(['ENABLED', 'PAUSED']).optional().default('ENABLED'),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleCreateKeywordPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleCreateKeywordResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleDeleteKeywordBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleDeleteKeywordPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleDeleteKeywordResponse = z.object({\n id: z.string(),\n removed: z.boolean(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleGetKeywordPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * A Google Ads keyword (an `ad_group_criterion` of type KEYWORD): criterion id, text, match type, status, whether it is a negative keyword, and the owning ad group resource name.\n */\nexport const zGoogleGetKeywordResponse = z.object({\n id: z.string(),\n text: z.string().nullable(),\n match_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'EXACT',\n 'PHRASE',\n 'BROAD'\n ]),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'PAUSED',\n 'REMOVED'\n ]),\n negative: z.boolean(),\n ad_group: z.string().nullable()\n});\n\nexport const zGoogleSetKeywordBidBody = z.object({\n cpc_bid_micros: z.int().gt(0).lte(9007199254740991),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleSetKeywordBidPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * OK\n */\nexport const zGoogleSetKeywordBidResponse = z.object({\n id: z.string(),\n resource_name: z.string(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGooglePauseKeywordBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGooglePauseKeywordPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGooglePauseKeywordResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleEnableKeywordBody = z.object({\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleEnableKeywordPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * The outcome of a status change: the resource id, the new status, whether it was a dry run, and whether it executed.\n */\nexport const zGoogleEnableKeywordResponse = z.object({\n id: z.string(),\n status: z.enum(['ENABLED', 'PAUSED']),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleListConversionActionsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleListConversionActionsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'REMOVED',\n 'HIDDEN'\n ]),\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'AD_CALL',\n 'CLICK_TO_CALL',\n 'GOOGLE_PLAY_DOWNLOAD',\n 'GOOGLE_PLAY_IN_APP_PURCHASE',\n 'UPLOAD_CALLS',\n 'UPLOAD_CLICKS',\n 'WEBPAGE',\n 'WEBSITE_CALL',\n 'STORE_SALES_DIRECT_UPLOAD',\n 'STORE_SALES',\n 'FIREBASE_ANDROID_FIRST_OPEN',\n 'FIREBASE_ANDROID_IN_APP_PURCHASE',\n 'FIREBASE_ANDROID_CUSTOM',\n 'FIREBASE_IOS_FIRST_OPEN',\n 'FIREBASE_IOS_IN_APP_PURCHASE',\n 'FIREBASE_IOS_CUSTOM',\n 'THIRD_PARTY_APP_ANALYTICS_ANDROID_FIRST_OPEN',\n 'THIRD_PARTY_APP_ANALYTICS_ANDROID_IN_APP_PURCHASE',\n 'THIRD_PARTY_APP_ANALYTICS_ANDROID_CUSTOM',\n 'THIRD_PARTY_APP_ANALYTICS_IOS_FIRST_OPEN',\n 'THIRD_PARTY_APP_ANALYTICS_IOS_IN_APP_PURCHASE',\n 'THIRD_PARTY_APP_ANALYTICS_IOS_CUSTOM',\n 'ANDROID_APP_PRE_REGISTRATION',\n 'ANDROID_INSTALLS_ALL_OTHER_APPS',\n 'FLOODLIGHT_ACTION',\n 'FLOODLIGHT_TRANSACTION',\n 'GOOGLE_HOSTED',\n 'LEAD_FORM_SUBMIT',\n 'SALESFORCE',\n 'SEARCH_ADS_360',\n 'SMART_CAMPAIGN_AD_CLICKS_TO_CALL',\n 'SMART_CAMPAIGN_MAP_CLICKS_TO_CALL',\n 'SMART_CAMPAIGN_MAP_DIRECTIONS',\n 'SMART_CAMPAIGN_TRACKED_CALLS',\n 'STORE_VISITS',\n 'WEBPAGE_CODELESS',\n 'UNIVERSAL_ANALYTICS_GOAL',\n 'UNIVERSAL_ANALYTICS_TRANSACTION',\n 'GOOGLE_ANALYTICS_4_CUSTOM',\n 'GOOGLE_ANALYTICS_4_PURCHASE'\n ]),\n category: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'DEFAULT',\n 'PAGE_VIEW',\n 'PURCHASE',\n 'SIGNUP',\n 'DOWNLOAD',\n 'ADD_TO_CART',\n 'BEGIN_CHECKOUT',\n 'SUBSCRIBE_PAID',\n 'PHONE_CALL_LEAD',\n 'IMPORTED_LEAD',\n 'SUBMIT_LEAD_FORM',\n 'BOOK_APPOINTMENT',\n 'REQUEST_QUOTE',\n 'GET_DIRECTIONS',\n 'OUTBOUND_CLICK',\n 'CONTACT',\n 'ENGAGEMENT',\n 'STORE_VISIT',\n 'STORE_SALE',\n 'QUALIFIED_LEAD',\n 'CONVERTED_LEAD'\n ]),\n origin: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'WEBSITE',\n 'GOOGLE_HOSTED',\n 'APP',\n 'CALL_FROM_ADS',\n 'STORE',\n 'YOUTUBE_HOSTED'\n ]),\n primary_for_goal: z.boolean(),\n counting_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ONE_PER_CLICK',\n 'MANY_PER_CLICK'\n ]),\n value_settings: z.object({\n default_value: z.number().nullable(),\n default_currency_code: z.string().nullable(),\n always_use_default_value: z.boolean().nullable()\n }).nullable(),\n tag_snippets: z.array(z.object({\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'WEBPAGE',\n 'WEBPAGE_ONCLICK',\n 'CLICK_TO_CALL',\n 'WEBSITE_CALL'\n ]),\n page_format: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'HTML',\n 'AMP'\n ]),\n global_site_tag: z.string().nullable(),\n event_snippet: z.string().nullable()\n }))\n }))\n});\n\nexport const zGoogleCreateConversionActionBody = z.object({\n name: z.string().min(1).max(255),\n type: z.enum(['WEBPAGE', 'UPLOAD_CLICKS']),\n category: z.enum([\n 'DEFAULT',\n 'PAGE_VIEW',\n 'PURCHASE',\n 'SIGNUP',\n 'DOWNLOAD',\n 'ADD_TO_CART',\n 'BEGIN_CHECKOUT',\n 'SUBSCRIBE_PAID',\n 'PHONE_CALL_LEAD',\n 'IMPORTED_LEAD',\n 'SUBMIT_LEAD_FORM',\n 'BOOK_APPOINTMENT',\n 'REQUEST_QUOTE',\n 'GET_DIRECTIONS',\n 'OUTBOUND_CLICK',\n 'CONTACT',\n 'ENGAGEMENT',\n 'STORE_VISIT',\n 'STORE_SALE',\n 'QUALIFIED_LEAD',\n 'CONVERTED_LEAD'\n ]),\n status: z.enum(['ENABLED']).optional().default('ENABLED'),\n value_settings: z.object({\n default_value: z.number().gte(0).optional(),\n default_currency_code: z.string().length(3).optional(),\n always_use_default_value: z.boolean().optional()\n }).optional(),\n counting_type: z.enum(['ONE_PER_CLICK', 'MANY_PER_CLICK']).optional(),\n click_through_lookback_window_days: z.int().gt(0).lte(9007199254740991).optional(),\n view_through_lookback_window_days: z.int().gt(0).lte(9007199254740991).optional(),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleCreateConversionActionPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleCreateConversionActionResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleGetConversionActionPath = z.object({\n connection_id: z.string(),\n id: z.string().regex(/^\\d+$/)\n});\n\n/**\n * A Google Ads conversion action (the `conversion_action` resource): id, name, status, type, category, origin, whether it is a primary goal, counting type, value settings, and the website tag snippets (present only for a WEBPAGE action).\n */\nexport const zGoogleGetConversionActionResponse = z.object({\n id: z.string(),\n name: z.string().nullable(),\n status: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ENABLED',\n 'REMOVED',\n 'HIDDEN'\n ]),\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'AD_CALL',\n 'CLICK_TO_CALL',\n 'GOOGLE_PLAY_DOWNLOAD',\n 'GOOGLE_PLAY_IN_APP_PURCHASE',\n 'UPLOAD_CALLS',\n 'UPLOAD_CLICKS',\n 'WEBPAGE',\n 'WEBSITE_CALL',\n 'STORE_SALES_DIRECT_UPLOAD',\n 'STORE_SALES',\n 'FIREBASE_ANDROID_FIRST_OPEN',\n 'FIREBASE_ANDROID_IN_APP_PURCHASE',\n 'FIREBASE_ANDROID_CUSTOM',\n 'FIREBASE_IOS_FIRST_OPEN',\n 'FIREBASE_IOS_IN_APP_PURCHASE',\n 'FIREBASE_IOS_CUSTOM',\n 'THIRD_PARTY_APP_ANALYTICS_ANDROID_FIRST_OPEN',\n 'THIRD_PARTY_APP_ANALYTICS_ANDROID_IN_APP_PURCHASE',\n 'THIRD_PARTY_APP_ANALYTICS_ANDROID_CUSTOM',\n 'THIRD_PARTY_APP_ANALYTICS_IOS_FIRST_OPEN',\n 'THIRD_PARTY_APP_ANALYTICS_IOS_IN_APP_PURCHASE',\n 'THIRD_PARTY_APP_ANALYTICS_IOS_CUSTOM',\n 'ANDROID_APP_PRE_REGISTRATION',\n 'ANDROID_INSTALLS_ALL_OTHER_APPS',\n 'FLOODLIGHT_ACTION',\n 'FLOODLIGHT_TRANSACTION',\n 'GOOGLE_HOSTED',\n 'LEAD_FORM_SUBMIT',\n 'SALESFORCE',\n 'SEARCH_ADS_360',\n 'SMART_CAMPAIGN_AD_CLICKS_TO_CALL',\n 'SMART_CAMPAIGN_MAP_CLICKS_TO_CALL',\n 'SMART_CAMPAIGN_MAP_DIRECTIONS',\n 'SMART_CAMPAIGN_TRACKED_CALLS',\n 'STORE_VISITS',\n 'WEBPAGE_CODELESS',\n 'UNIVERSAL_ANALYTICS_GOAL',\n 'UNIVERSAL_ANALYTICS_TRANSACTION',\n 'GOOGLE_ANALYTICS_4_CUSTOM',\n 'GOOGLE_ANALYTICS_4_PURCHASE'\n ]),\n category: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'DEFAULT',\n 'PAGE_VIEW',\n 'PURCHASE',\n 'SIGNUP',\n 'DOWNLOAD',\n 'ADD_TO_CART',\n 'BEGIN_CHECKOUT',\n 'SUBSCRIBE_PAID',\n 'PHONE_CALL_LEAD',\n 'IMPORTED_LEAD',\n 'SUBMIT_LEAD_FORM',\n 'BOOK_APPOINTMENT',\n 'REQUEST_QUOTE',\n 'GET_DIRECTIONS',\n 'OUTBOUND_CLICK',\n 'CONTACT',\n 'ENGAGEMENT',\n 'STORE_VISIT',\n 'STORE_SALE',\n 'QUALIFIED_LEAD',\n 'CONVERTED_LEAD'\n ]),\n origin: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'WEBSITE',\n 'GOOGLE_HOSTED',\n 'APP',\n 'CALL_FROM_ADS',\n 'STORE',\n 'YOUTUBE_HOSTED'\n ]),\n primary_for_goal: z.boolean(),\n counting_type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'ONE_PER_CLICK',\n 'MANY_PER_CLICK'\n ]),\n value_settings: z.object({\n default_value: z.number().nullable(),\n default_currency_code: z.string().nullable(),\n always_use_default_value: z.boolean().nullable()\n }).nullable(),\n tag_snippets: z.array(z.object({\n type: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'WEBPAGE',\n 'WEBPAGE_ONCLICK',\n 'CLICK_TO_CALL',\n 'WEBSITE_CALL'\n ]),\n page_format: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'HTML',\n 'AMP'\n ]),\n global_site_tag: z.string().nullable(),\n event_snippet: z.string().nullable()\n }))\n});\n\nexport const zGoogleListConversionGoalsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleListConversionGoalsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n category: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'DEFAULT',\n 'PAGE_VIEW',\n 'PURCHASE',\n 'SIGNUP',\n 'DOWNLOAD',\n 'ADD_TO_CART',\n 'BEGIN_CHECKOUT',\n 'SUBSCRIBE_PAID',\n 'PHONE_CALL_LEAD',\n 'IMPORTED_LEAD',\n 'SUBMIT_LEAD_FORM',\n 'BOOK_APPOINTMENT',\n 'REQUEST_QUOTE',\n 'GET_DIRECTIONS',\n 'OUTBOUND_CLICK',\n 'CONTACT',\n 'ENGAGEMENT',\n 'STORE_VISIT',\n 'STORE_SALE',\n 'QUALIFIED_LEAD',\n 'CONVERTED_LEAD'\n ]),\n origin: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'WEBSITE',\n 'GOOGLE_HOSTED',\n 'APP',\n 'CALL_FROM_ADS',\n 'STORE',\n 'YOUTUBE_HOSTED'\n ]),\n biddable: z.boolean()\n }))\n});\n\nexport const zGoogleSetConversionGoalBody = z.object({\n category: z.enum([\n 'DEFAULT',\n 'PAGE_VIEW',\n 'PURCHASE',\n 'SIGNUP',\n 'DOWNLOAD',\n 'ADD_TO_CART',\n 'BEGIN_CHECKOUT',\n 'SUBSCRIBE_PAID',\n 'PHONE_CALL_LEAD',\n 'IMPORTED_LEAD',\n 'SUBMIT_LEAD_FORM',\n 'BOOK_APPOINTMENT',\n 'REQUEST_QUOTE',\n 'GET_DIRECTIONS',\n 'OUTBOUND_CLICK',\n 'CONTACT',\n 'ENGAGEMENT',\n 'STORE_VISIT',\n 'STORE_SALE',\n 'QUALIFIED_LEAD',\n 'CONVERTED_LEAD'\n ]),\n origin: z.enum([\n 'WEBSITE',\n 'GOOGLE_HOSTED',\n 'APP',\n 'CALL_FROM_ADS',\n 'STORE',\n 'YOUTUBE_HOSTED'\n ]),\n biddable: z.boolean(),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleSetConversionGoalPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * The outcome of a conversion-goal update: the goal’s category and origin, the new biddable value, whether it was a dry run, and whether it executed.\n */\nexport const zGoogleSetConversionGoalResponse = z.object({\n category: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'DEFAULT',\n 'PAGE_VIEW',\n 'PURCHASE',\n 'SIGNUP',\n 'DOWNLOAD',\n 'ADD_TO_CART',\n 'BEGIN_CHECKOUT',\n 'SUBSCRIBE_PAID',\n 'PHONE_CALL_LEAD',\n 'IMPORTED_LEAD',\n 'SUBMIT_LEAD_FORM',\n 'BOOK_APPOINTMENT',\n 'REQUEST_QUOTE',\n 'GET_DIRECTIONS',\n 'OUTBOUND_CLICK',\n 'CONTACT',\n 'ENGAGEMENT',\n 'STORE_VISIT',\n 'STORE_SALE',\n 'QUALIFIED_LEAD',\n 'CONVERTED_LEAD'\n ]),\n origin: z.enum([\n 'UNSPECIFIED',\n 'UNKNOWN',\n 'WEBSITE',\n 'GOOGLE_HOSTED',\n 'APP',\n 'CALL_FROM_ADS',\n 'STORE',\n 'YOUTUBE_HOSTED'\n ]),\n biddable: z.boolean(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zGoogleUploadConversionsBody = z.object({\n conversions: z.array(z.object({\n conversion_action: z.string().min(1),\n conversion_date_time: z.string().regex(/^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}[+-]\\d{2}:\\d{2}$/),\n conversion_value: z.number().gte(0).optional(),\n currency_code: z.string().length(3).optional(),\n order_id: z.string().optional(),\n gclid: z.string().optional(),\n gbraid: z.string().optional(),\n wbraid: z.string().optional(),\n user_identifiers: z.array(z.object({\n hashed_email: z.string().regex(/^[a-f0-9]{64}$/).optional(),\n hashed_phone_number: z.string().regex(/^[a-f0-9]{64}$/).optional(),\n user_identifier_source: z.enum(['FIRST_PARTY', 'THIRD_PARTY']).optional()\n })).min(1).max(5).optional(),\n consent: z.object({\n ad_user_data: z.enum(['GRANTED', 'DENIED']).optional(),\n ad_personalization: z.enum(['GRANTED', 'DENIED']).optional()\n }).optional()\n })).min(1).max(2000),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleUploadConversionsPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * The outcome of an offline conversion upload: received / succeeded / failed counts and the per-row errors Google returned.\n */\nexport const zGoogleUploadConversionsResponse = z.object({\n received: z.int().gte(-9007199254740991).lte(9007199254740991),\n succeeded: z.int().gte(-9007199254740991).lte(9007199254740991),\n failed: z.int().gte(-9007199254740991).lte(9007199254740991),\n errors: z.array(z.object({\n index: z.int().gte(-9007199254740991).lte(9007199254740991),\n error_code: z.string(),\n message: z.string()\n })),\n dry_run: z.boolean()\n});\n\nexport const zGoogleUploadImageAssetBody = z.object({\n media_id: z.string(),\n dry_run: z.boolean().optional().default(false)\n});\n\nexport const zGoogleUploadImageAssetPath = z.object({\n connection_id: z.string()\n});\n\n/**\n * OK\n */\nexport const zGoogleUploadImageAssetResponse = z.object({\n id: z.string().nullable(),\n resource_name: z.string().nullable(),\n dry_run: z.boolean(),\n executed: z.boolean()\n});\n\nexport const zTiktokCreatorInfoPath = z.object({\n id: z.string()\n});\n\n/**\n * A TikTok creator's publish options, fetched live from TikTok. The composer renders creator.nickname + avatar, a privacy dropdown built from privacy_options (with no default), and Comment/Duet/Stitch toggles per the interaction flags (true = the interaction is ALLOWED). max_video_duration_sec caps a video's length for this account.\n */\nexport const zTiktokCreatorInfoResponse = z.object({\n creator: z.object({\n nickname: z.string(),\n username: z.string(),\n avatar_url: z.string().nullable()\n }),\n privacy_options: z.array(z.enum([\n 'PUBLIC_TO_EVERYONE',\n 'MUTUAL_FOLLOW_FRIENDS',\n 'FOLLOWER_OF_CREATOR',\n 'SELF_ONLY'\n ])),\n interaction: z.object({\n comment: z.boolean(),\n duet: z.boolean(),\n stitch: z.boolean()\n }),\n max_video_duration_sec: z.int().gte(-9007199254740991).lte(9007199254740991)\n});\n\nexport const zLogsListQuery = z.object({\n limit: z.int().gte(1).lte(100).optional().default(20),\n offset: z.int().gte(0).lte(9007199254740991).optional().default(0),\n profile_id: z.string().optional(),\n connection_id: z.string().optional(),\n platform: z.enum([\n 'meta_ads',\n 'google_ads',\n 'tiktok_ads',\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]).optional(),\n status: z.enum([\n 'pending',\n 'success',\n 'error'\n ]).optional(),\n source: z.enum([\n 'api',\n 'dashboard',\n 'mcp',\n 'scheduler'\n ]).optional(),\n action: z.string().min(1).optional(),\n created_after: z.iso.datetime().optional(),\n created_before: z.iso.datetime().optional()\n});\n\n/**\n * OK\n */\nexport const zLogsListResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n source: z.enum([\n 'api',\n 'dashboard',\n 'mcp',\n 'scheduler'\n ]),\n action: z.string(),\n status: z.enum([\n 'pending',\n 'success',\n 'error'\n ]),\n status_code: z.int().gte(-9007199254740991).lte(9007199254740991).nullable(),\n platform: z.enum([\n 'meta_ads',\n 'google_ads',\n 'tiktok_ads',\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]).nullable(),\n request_method: z.string().nullable(),\n request_path: z.string().nullable(),\n request_body: z.unknown().nullish(),\n response_body: z.unknown().nullish(),\n error: z.unknown().nullish(),\n outcome: z.object({\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'partially_published',\n 'published',\n 'failed'\n ]),\n targets: z.array(z.object({\n variant_id: z.string(),\n connection_id: z.string().nullable(),\n platform: z.enum([\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n platform_post_id: z.string().nullable(),\n permalink: z.string().nullable(),\n published_at: z.string().nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable()\n }))\n }).nullable(),\n external_id: z.string().nullable(),\n idempotency_key: z.string().nullable(),\n request_id: z.string().nullable(),\n duration_ms: z.int().gte(-9007199254740991).lte(9007199254740991).nullable(),\n profile_id: z.string().nullable(),\n connection_id: z.string().nullable(),\n api_key_id: z.string().nullable(),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n })),\n total: z.int().gte(-9007199254740991).lte(9007199254740991),\n limit: z.int().gte(-9007199254740991).lte(9007199254740991),\n offset: z.int().gte(-9007199254740991).lte(9007199254740991),\n has_more: z.boolean()\n});\n\nexport const zLogsGetPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zLogsGetResponse = z.object({\n id: z.string(),\n source: z.enum([\n 'api',\n 'dashboard',\n 'mcp',\n 'scheduler'\n ]),\n action: z.string(),\n status: z.enum([\n 'pending',\n 'success',\n 'error'\n ]),\n status_code: z.int().gte(-9007199254740991).lte(9007199254740991).nullable(),\n platform: z.enum([\n 'meta_ads',\n 'google_ads',\n 'tiktok_ads',\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]).nullable(),\n request_method: z.string().nullable(),\n request_path: z.string().nullable(),\n request_body: z.unknown().nullish(),\n response_body: z.unknown().nullish(),\n error: z.unknown().nullish(),\n outcome: z.object({\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'partially_published',\n 'published',\n 'failed'\n ]),\n targets: z.array(z.object({\n variant_id: z.string(),\n connection_id: z.string().nullable(),\n platform: z.enum([\n 'x',\n 'linkedin',\n 'facebook_page',\n 'instagram',\n 'tiktok'\n ]),\n status: z.enum([\n 'draft',\n 'scheduled',\n 'publishing',\n 'published',\n 'failed'\n ]),\n platform_post_id: z.string().nullable(),\n permalink: z.string().nullable(),\n published_at: z.string().nullable(),\n error: z.object({\n code: z.string(),\n message: z.string(),\n display_error: z.string()\n }).nullable()\n }))\n }).nullable(),\n external_id: z.string().nullable(),\n idempotency_key: z.string().nullable(),\n request_id: z.string().nullable(),\n duration_ms: z.int().gte(-9007199254740991).lte(9007199254740991).nullable(),\n profile_id: z.string().nullable(),\n connection_id: z.string().nullable(),\n api_key_id: z.string().nullable(),\n created_at: z.string().nullable(),\n updated_at: z.string().nullable()\n});\n\nexport const zWebhooksListEndpointsQuery = z.object({\n limit: z.int().gte(1).lte(100).optional().default(20),\n offset: z.int().gte(0).lte(9007199254740991).optional().default(0)\n});\n\n/**\n * OK\n */\nexport const zWebhooksListEndpointsResponse = z.object({\n object: z.literal('list'),\n data: z.array(z.object({\n id: z.string(),\n url: z.string(),\n description: z.string(),\n event_types: z.array(z.string()),\n disabled: z.boolean(),\n created_at: z.string(),\n updated_at: z.string()\n })),\n total: z.int().gte(-9007199254740991).lte(9007199254740991),\n limit: z.int().gte(-9007199254740991).lte(9007199254740991),\n offset: z.int().gte(-9007199254740991).lte(9007199254740991),\n has_more: z.boolean()\n});\n\nexport const zWebhooksCreateEndpointBody = z.object({\n url: z.url(),\n description: z.string().max(255).optional(),\n event_types: z.array(z.enum([\n 'webhook.ping',\n 'post.published',\n 'post.failed',\n 'post.completed'\n ]))\n});\n\n/**\n * OK\n */\nexport const zWebhooksCreateEndpointResponse = z.object({\n id: z.string(),\n url: z.string(),\n description: z.string(),\n event_types: z.array(z.string()),\n disabled: z.boolean(),\n created_at: z.string(),\n updated_at: z.string()\n});\n\nexport const zWebhooksDeleteEndpointPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zWebhooksDeleteEndpointResponse = z.object({\n id: z.string(),\n object: z.literal('webhook_endpoint'),\n deleted: z.literal(true)\n});\n\nexport const zWebhooksGetEndpointPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zWebhooksGetEndpointResponse = z.object({\n id: z.string(),\n url: z.string(),\n description: z.string(),\n event_types: z.array(z.string()),\n disabled: z.boolean(),\n created_at: z.string(),\n updated_at: z.string()\n});\n\nexport const zWebhooksUpdateEndpointBody = z.object({\n url: z.url().optional(),\n description: z.string().max(255).optional(),\n disabled: z.boolean().optional(),\n event_types: z.array(z.enum([\n 'webhook.ping',\n 'post.published',\n 'post.failed',\n 'post.completed'\n ])).optional()\n});\n\nexport const zWebhooksUpdateEndpointPath = z.object({\n id: z.string()\n});\n\n/**\n * OK\n */\nexport const zWebhooksUpdateEndpointResponse = z.object({\n id: z.string(),\n url: z.string(),\n description: z.string(),\n event_types: z.array(z.string()),\n disabled: z.boolean(),\n created_at: z.string(),\n updated_at: z.string()\n});\n\n/**\n * OK\n */\nexport const zWebhooksCreatePortalResponse = z.object({\n url: z.string()\n});\n\n/**\n * OK\n */\nexport const zWebhooksListEventTypesResponse = z.array(z.object({\n name: z.string(),\n group: z.string(),\n description: z.string()\n}));\n\nexport const zWebhooksPingBody = z.object({\n message: z.string().max(255).optional().default('Hello from Postrun')\n});\n\n/**\n * OK\n */\nexport const zWebhooksPingResponse = z.object({\n id: z.string()\n});\n\n/**\n * Mint a short-lived, profile-scoped frontend token. Called by your backend with a secret `pr_` key; the returned token is safe to hand to a browser.\n */\nexport const zTokensMintBody = z.object({\n profile_scope: z.union([\n z.object({\n type: z.literal('ids'),\n values: z.array(z.string()).min(1).max(100)\n }),\n z.object({\n type: z.literal('external_id'),\n values: z.array(z.string().min(1).max(255)).min(1).max(50)\n }),\n z.object({\n type: z.literal('all')\n })\n ]),\n scopes: z.array(z.enum([\n 'profiles:read',\n 'profiles:write',\n 'connections:read',\n 'connections:write',\n 'ads:read',\n 'ads:write',\n 'posts:read',\n 'posts:write',\n 'media:read',\n 'media:write'\n ])).min(1),\n ttl_seconds: z.int().gte(60).lte(1800).optional().default(900)\n});\n\n/**\n * OK\n */\nexport const zTokensMintResponse = z.object({\n token: z.string(),\n expires_at: z.string()\n});\n","import * as z from 'zod';\n\nimport { zErrorCode } from './client/zod.gen';\nimport type { ErrorCode } from './client/types.gen';\n\n/**\n * The closed set of machine-readable Postrun error codes — DERIVED from the\n * generated `ErrorCode` component union (emitted from the API's `ErrorCodeSchema`\n * via the OpenAPI spec), never hand-listed. Branch on `PostrunError.code` and the\n * compiler narrows + autocompletes the exact set the API can return. Each member\n * documents itself at https://docs.postrun.ai/errors/<code>.\n */\nexport type PostrunErrorCode = ErrorCode;\n\n/**\n * The RFC 9457 problem body the Postrun API returns on every transport error —\n * its `encodeProblem` emits `{ type, title, status, code, detail, request_id?,\n * errors? }`, with the human message in `detail`.\n *\n * Modeled here with a tolerant Zod schema rather than DERIVED from the generated\n * types ON PURPOSE: the OpenAPI spec narrows `code` per-endpoint+status, so there\n * is no single generated \"problem body\" type to derive from — we parse the real\n * body here and surface the closed `code` union via `PostrunErrorCode`.\n */\nconst ProblemSchema = z.object({\n type: z.string().optional(),\n title: z.string().optional(),\n status: z.number().optional(),\n code: z.string().optional(),\n detail: z.string().optional(),\n // RFC 9457 calls the occurrence id `instance`; our bodies emit it as\n // `request_id`. Tolerate both, preferring `request_id`.\n request_id: z.string().optional(),\n instance: z.string().optional(),\n errors: z\n .array(z.object({ field: z.string(), code: z.string(), detail: z.string() }))\n .optional(),\n});\n\nexport type PostrunProblem = z.infer<typeof ProblemSchema>;\n\n/** One invalid field on a validation (422) failure. */\nexport type PostrunFieldError = NonNullable<PostrunProblem['errors']>[number];\n\n/** A typed error thrown by the client on a failed request. */\nexport class PostrunError extends Error {\n readonly status: number;\n /** The machine-readable code to branch on (closed union), if the body had one. */\n readonly code?: PostrunErrorCode;\n /** The request id for support/debugging (our `request_id`, or RFC `instance`). */\n readonly request_id?: string;\n /** Per-field validation problems on a 422, surfaced for convenience. */\n readonly fieldErrors: PostrunFieldError[];\n readonly problem?: PostrunProblem;\n\n constructor(status: number, rawProblem?: unknown) {\n const problem = ProblemSchema.safeParse(rawProblem).data;\n super(problem?.detail ?? problem?.title ?? `Postrun API error (${status})`);\n this.name = 'PostrunError';\n this.status = status;\n // Re-validate the body's `code` against the generated closed set so the field\n // is the typed union, not a bare string — an unknown code stays `undefined`\n // (no swallowed surprise) rather than being cast in.\n this.code = zErrorCode.safeParse(problem?.code).data;\n this.request_id = problem?.request_id ?? problem?.instance;\n this.fieldErrors = problem?.errors ?? [];\n this.problem = problem;\n }\n}\n","import { createClient, createConfig } from './client/client';\nimport type { Client } from './client/client';\nimport { PostrunError } from './errors';\n\n/**\n * The strongly-typed Postrun API client (Hey API). Pass it to any generated SDK\n * function via `{ client }`; every path, param, body, and response is inferred\n * from the OpenAPI spec, so the SDK can never drift from the live API.\n */\nexport type PostrunClient = Client;\n\nexport interface PostrunClientOptions {\n /** Override the API base URL (defaults to the production gateway). */\n baseUrl?: string;\n /**\n * Returns a valid short-lived scoped token. The host app's backend mints it\n * from a secret `pr_` key (`POST /v1/tokens`); the secret never reaches the\n * browser. Called per request — cache/refresh before `exp` inside here.\n */\n getToken: () => string | Promise<string>;\n}\n\nconst DEFAULT_BASE_URL = 'https://api.postrun.ai/v1';\n\n/** Append `key=value` (URL-encoded) for one scalar to the running parts list. */\nfunction appendScalar(parts: string[], key: string, value: unknown): void {\n parts.push(\n `${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`,\n );\n}\n\n/**\n * Serialize the query string for every Postrun request, by value shape:\n *\n * - **Array** (e.g. `status`) → repeated params (`status=a&status=b`), the\n * OpenAPI `form`/`explode` form the API parses into a `.in(...)` filter. A\n * JSON-encoded array would fail the array-of-enum validation.\n * - **Object** (e.g. `metadata`) → one URL-encoded JSON blob, because the API's\n * schema runs a `JSON.parse` preprocess on it; bracket form would mean the\n * server never sees a `metadata` key and silently drops the filter.\n * - **Scalar** → the value as-is.\n *\n * Operations needing a different shape (the ads reads' `metrics`/`segments`\n * params) carry their own per-call serializer in the generated SDK, which\n * overrides this.\n */\nfunction serializeQuery(query: Record<string, unknown>): string {\n const parts: string[] = [];\n\n for (const [key, value] of Object.entries(query)) {\n if (value === undefined || value === null) {\n continue;\n }\n\n if (Array.isArray(value)) {\n for (const item of value) {\n if (item !== undefined && item !== null) {\n appendScalar(parts, key, item);\n }\n }\n } else if (typeof value === 'object') {\n appendScalar(parts, key, JSON.stringify(value));\n } else {\n appendScalar(parts, key, value);\n }\n }\n\n return parts.join('&');\n}\n\n/**\n * Construct a typed client. The browser only ever holds the scoped token —\n * `getToken` is invoked per request and its value is sent as `Bearer <token>`\n * for the spec's `bearerAuth` security scheme.\n *\n * Calls throw on failure (`throwOnError`), so SDK functions return the value\n * directly (no `{ data, error }` to unwrap) — the throw-based shape every major\n * SDK uses. The error interceptor maps the raw failure to a typed `PostrunError`\n * (status + machine `code` + RFC 9457 problem), so `catch` always gets the same\n * actionable shape.\n */\nexport function createPostrunClient(\n options: PostrunClientOptions,\n): PostrunClient {\n const client = createClient(\n createConfig({\n baseUrl: options.baseUrl ?? DEFAULT_BASE_URL,\n auth: () => options.getToken(),\n querySerializer: serializeQuery,\n throwOnError: true,\n }),\n );\n\n client.interceptors.error.use((error, response) =>\n error instanceof PostrunError\n ? error\n : new PostrunError(response?.status ?? 0, error),\n );\n\n return client;\n}\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport { type Client, 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: Client = createClient(createConfig<ClientOptions2>({ baseUrl: 'https://api.postrun.ai/v1', throwOnError: true }));\n","// This file is auto-generated by @hey-api/openapi-ts\n\nimport type { Client, ClientMeta, Options as Options2, RequestResult, TDataShape } from './client';\nimport { client } from './client.gen';\nimport type { ConnectionsConnectData, ConnectionsConnectErrors, ConnectionsConnectResponses, ConnectionsDeleteData, ConnectionsDeleteErrors, ConnectionsDeleteResponses, ConnectionsGetData, ConnectionsGetErrors, ConnectionsGetResponses, ConnectionsListAccountsData, ConnectionsListAccountsErrors, ConnectionsListAccountsResponses, ConnectionsListByProfileData, ConnectionsListByProfileErrors, ConnectionsListByProfileResponses, ConnectionsSelectData, ConnectionsSelectErrors, ConnectionsSelectResponses, GoogleCreateAdData, GoogleCreateAdErrors, GoogleCreateAdGroupData, GoogleCreateAdGroupErrors, GoogleCreateAdGroupResponses, GoogleCreateAdResponses, GoogleCreateBudgetData, GoogleCreateBudgetErrors, GoogleCreateBudgetResponses, GoogleCreateCampaignData, GoogleCreateCampaignErrors, GoogleCreateCampaignResponses, GoogleCreateConversionActionData, GoogleCreateConversionActionErrors, GoogleCreateConversionActionResponses, GoogleCreateDisplayAdData, GoogleCreateDisplayAdErrors, GoogleCreateDisplayAdResponses, GoogleCreateKeywordData, GoogleCreateKeywordErrors, GoogleCreateKeywordResponses, GoogleDeleteAdData, GoogleDeleteAdErrors, GoogleDeleteAdGroupData, GoogleDeleteAdGroupErrors, GoogleDeleteAdGroupResponses, GoogleDeleteAdResponses, GoogleDeleteBudgetData, GoogleDeleteBudgetErrors, GoogleDeleteBudgetResponses, GoogleDeleteCampaignData, GoogleDeleteCampaignErrors, GoogleDeleteCampaignResponses, GoogleDeleteKeywordData, GoogleDeleteKeywordErrors, GoogleDeleteKeywordResponses, GoogleEditAdGroupData, GoogleEditAdGroupErrors, GoogleEditAdGroupResponses, GoogleEditBudgetData, GoogleEditBudgetErrors, GoogleEditBudgetResponses, GoogleEditCampaignData, GoogleEditCampaignErrors, GoogleEditCampaignResponses, GoogleEnableAdData, GoogleEnableAdErrors, GoogleEnableAdGroupData, GoogleEnableAdGroupErrors, GoogleEnableAdGroupResponses, GoogleEnableAdResponses, GoogleEnableCampaignData, GoogleEnableCampaignErrors, GoogleEnableCampaignResponses, GoogleEnableKeywordData, GoogleEnableKeywordErrors, GoogleEnableKeywordResponses, GoogleGetAccountData, GoogleGetAccountErrors, GoogleGetAccountResponses, GoogleGetAdData, GoogleGetAdErrors, GoogleGetAdGroupData, GoogleGetAdGroupErrors, GoogleGetAdGroupResponses, GoogleGetAdResponses, GoogleGetCampaignData, GoogleGetCampaignErrors, GoogleGetCampaignResponses, GoogleGetConversionActionData, GoogleGetConversionActionErrors, GoogleGetConversionActionResponses, GoogleGetInsightsData, GoogleGetInsightsErrors, GoogleGetInsightsResponses, GoogleGetKeywordData, GoogleGetKeywordErrors, GoogleGetKeywordResponses, GoogleListAdGroupsData, GoogleListAdGroupsErrors, GoogleListAdGroupsResponses, GoogleListAdsData, GoogleListAdsErrors, GoogleListAdsResponses, GoogleListCampaignsData, GoogleListCampaignsErrors, GoogleListCampaignsResponses, GoogleListConversionActionsData, GoogleListConversionActionsErrors, GoogleListConversionActionsResponses, GoogleListConversionGoalsData, GoogleListConversionGoalsErrors, GoogleListConversionGoalsResponses, GoogleListKeywordsData, GoogleListKeywordsErrors, GoogleListKeywordsResponses, GooglePauseAdData, GooglePauseAdErrors, GooglePauseAdGroupData, GooglePauseAdGroupErrors, GooglePauseAdGroupResponses, GooglePauseAdResponses, GooglePauseCampaignData, GooglePauseCampaignErrors, GooglePauseCampaignResponses, GooglePauseKeywordData, GooglePauseKeywordErrors, GooglePauseKeywordResponses, GoogleRunGaqlData, GoogleRunGaqlErrors, GoogleRunGaqlResponses, GoogleSetAdGroupBidsData, GoogleSetAdGroupBidsErrors, GoogleSetAdGroupBidsResponses, GoogleSetConversionGoalData, GoogleSetConversionGoalErrors, GoogleSetConversionGoalResponses, GoogleSetKeywordBidData, GoogleSetKeywordBidErrors, GoogleSetKeywordBidResponses, GoogleUploadConversionsData, GoogleUploadConversionsErrors, GoogleUploadConversionsResponses, GoogleUploadImageAssetData, GoogleUploadImageAssetErrors, GoogleUploadImageAssetResponses, LogsGetData, LogsGetErrors, LogsGetResponses, LogsListData, LogsListErrors, LogsListResponses, MediaCreateData, MediaCreateErrors, MediaCreateResponses, MediaDeleteData, MediaDeleteErrors, MediaDeleteResponses, MediaGetData, MediaGetErrors, MediaGetResponses, MediaListData, MediaListErrors, MediaListResponses, MediaUpdateData, MediaUpdateErrors, MediaUpdateResponses, MetaAccountData, MetaAccountErrors, MetaAccountResponses, MetaAdData, MetaAdErrors, MetaAdResponses, MetaAdsData, MetaAdsErrors, MetaAdsetData, MetaAdsetErrors, MetaAdsetResponses, MetaAdsetsData, MetaAdsetsErrors, MetaAdsetsResponses, MetaAdsResponses, MetaCampaignData, MetaCampaignErrors, MetaCampaignResponses, MetaCampaignsData, MetaCampaignsErrors, MetaCampaignsResponses, MetaInsightsData, MetaInsightsErrors, MetaInsightsResponses, PostsCreateData, PostsCreateErrors, PostsCreateResponses, PostsDeleteData, PostsDeleteErrors, PostsDeleteResponses, PostsGetData, PostsGetErrors, PostsGetResponses, PostsListData, PostsListErrors, PostsListResponses, PostsUpdateData, PostsUpdateErrors, PostsUpdateResponses, PostsValidateData, PostsValidateErrors, PostsValidateResponses, ProfilesCreateData, ProfilesCreateErrors, ProfilesCreateResponses, ProfilesDeleteData, ProfilesDeleteErrors, ProfilesDeleteResponses, ProfilesGetData, ProfilesGetErrors, ProfilesGetResponses, ProfilesListData, ProfilesListErrors, ProfilesListResponses, ProfilesUpdateData, ProfilesUpdateErrors, ProfilesUpdateResponses, TiktokCreatorInfoData, TiktokCreatorInfoErrors, TiktokCreatorInfoResponses, TokensMintData, TokensMintErrors, TokensMintResponses, WebhooksCreateEndpointData, WebhooksCreateEndpointErrors, WebhooksCreateEndpointResponses, WebhooksCreatePortalData, WebhooksCreatePortalErrors, WebhooksCreatePortalResponses, WebhooksDeleteEndpointData, WebhooksDeleteEndpointErrors, WebhooksDeleteEndpointResponses, WebhooksGetEndpointData, WebhooksGetEndpointErrors, WebhooksGetEndpointResponses, WebhooksListEndpointsData, WebhooksListEndpointsErrors, WebhooksListEndpointsResponses, WebhooksListEventTypesData, WebhooksListEventTypesErrors, WebhooksListEventTypesResponses, WebhooksPingData, WebhooksPingErrors, WebhooksPingResponses, WebhooksUpdateEndpointData, WebhooksUpdateEndpointErrors, WebhooksUpdateEndpointResponses } from './types.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?: keyof ClientMeta extends never ? Record<string, unknown> : ClientMeta;\n};\n\n/**\n * List profiles\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `profiles:read` (the response is limited to the profiles the token is scoped to).\n *\n * Lists the profiles under your account, newest first.\n */\nexport const profilesList = <ThrowOnError extends boolean = true>(options?: Options<ProfilesListData, ThrowOnError>): RequestResult<ProfilesListResponses, ProfilesListErrors, ThrowOnError> => (options?.client ?? client).get<ProfilesListResponses, ProfilesListErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/profiles',\n ...options\n});\n\n/**\n * Create a profile\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `profiles:write` with account-wide profile scope (`all`); a profile-scoped token cannot create.\n *\n * Creates a profile — a client/brand workspace under your account, and the unit connections attach to.\n */\nexport const profilesCreate = <ThrowOnError extends boolean = true>(options: Options<ProfilesCreateData, ThrowOnError>): RequestResult<ProfilesCreateResponses, ProfilesCreateErrors, ThrowOnError> => (options.client ?? client).post<ProfilesCreateResponses, ProfilesCreateErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/profiles',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a profile\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `profiles:write` scoped to the target profile.\n *\n * Deletes a profile. The profile must have no connections — delete its connections first (and a connection in turn cannot be deleted while a post still publishes through it).\n */\nexport const profilesDelete = <ThrowOnError extends boolean = true>(options: Options<ProfilesDeleteData, ThrowOnError>): RequestResult<ProfilesDeleteResponses, ProfilesDeleteErrors, ThrowOnError> => (options.client ?? client).delete<ProfilesDeleteResponses, ProfilesDeleteErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/profiles/{id}',\n ...options\n});\n\n/**\n * Retrieve a profile\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `profiles:read` scoped to the target profile.\n *\n * Retrieves a single profile by id.\n */\nexport const profilesGet = <ThrowOnError extends boolean = true>(options: Options<ProfilesGetData, ThrowOnError>): RequestResult<ProfilesGetResponses, ProfilesGetErrors, ThrowOnError> => (options.client ?? client).get<ProfilesGetResponses, ProfilesGetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/profiles/{id}',\n ...options\n});\n\n/**\n * Update a profile\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `profiles:write` scoped to the target profile.\n *\n * Updates a profile. Send only the fields you want to change; provide at least one.\n */\nexport const profilesUpdate = <ThrowOnError extends boolean = true>(options: Options<ProfilesUpdateData, ThrowOnError>): RequestResult<ProfilesUpdateResponses, ProfilesUpdateErrors, ThrowOnError> => (options.client ?? client).patch<ProfilesUpdateResponses, ProfilesUpdateErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/profiles/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List a profile's connections\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `connections:read` scoped to the target profile.\n *\n * Lists the external accounts connected to a profile, most recent first. Returns 404 if the profile doesn't exist in your account.\n */\nexport const connectionsListByProfile = <ThrowOnError extends boolean = true>(options: Options<ConnectionsListByProfileData, ThrowOnError>): RequestResult<ConnectionsListByProfileResponses, ConnectionsListByProfileErrors, ThrowOnError> => (options.client ?? client).get<ConnectionsListByProfileResponses, ConnectionsListByProfileErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/profiles/{id}/connections',\n ...options\n});\n\n/**\n * Delete a connection\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `connections:write` scoped to the profile that owns the connection.\n *\n * Disconnects a connection. Returns a deletion marker; returns 404 if it does not exist in your account. Disconnect is unconditional — any scheduled posts that target this connection are not blocked; they fail gracefully at publish time with a `connection_removed` error until you reconnect and reschedule.\n */\nexport const connectionsDelete = <ThrowOnError extends boolean = true>(options: Options<ConnectionsDeleteData, ThrowOnError>): RequestResult<ConnectionsDeleteResponses, ConnectionsDeleteErrors, ThrowOnError> => (options.client ?? client).delete<ConnectionsDeleteResponses, ConnectionsDeleteErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/connections/{id}',\n ...options\n});\n\n/**\n * Retrieve a connection\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `connections:read` scoped to the profile that owns the connection.\n *\n * Retrieves a single connection by id.\n */\nexport const connectionsGet = <ThrowOnError extends boolean = true>(options: Options<ConnectionsGetData, ThrowOnError>): RequestResult<ConnectionsGetResponses, ConnectionsGetErrors, ThrowOnError> => (options.client ?? client).get<ConnectionsGetResponses, ConnectionsGetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/connections/{id}',\n ...options\n});\n\n/**\n * Select a connection account\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `connections:write` scoped to the profile that owns the connection.\n *\n * Activates a pending connection by choosing which external account (e.g. which Meta ad account) it uses. The account must be one reachable through the connection’s OAuth grant; its canonical name + currency are resolved server-side from discovery, so the stored display values can’t be spoofed by the caller.\n */\nexport const connectionsSelect = <ThrowOnError extends boolean = true>(options: Options<ConnectionsSelectData, ThrowOnError>): RequestResult<ConnectionsSelectResponses, ConnectionsSelectErrors, ThrowOnError> => (options.client ?? client).patch<ConnectionsSelectResponses, ConnectionsSelectErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/connections/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List a connection’s discoverable accounts\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `connections:read` scoped to the profile that owns the connection.\n *\n * Lists the external ad accounts reachable through this connection’s OAuth grant — the picker shown after OAuth, while the connection is still pending account selection. Returns 404 if the connection does not exist in your account, and 501 if account discovery is not yet supported for the connection’s platform.\n */\nexport const connectionsListAccounts = <ThrowOnError extends boolean = true>(options: Options<ConnectionsListAccountsData, ThrowOnError>): RequestResult<ConnectionsListAccountsResponses, ConnectionsListAccountsErrors, ThrowOnError> => (options.client ?? client).get<ConnectionsListAccountsResponses, ConnectionsListAccountsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/connections/{id}/accounts',\n ...options\n});\n\n/**\n * Connect a platform account\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `connections:write` scoped to the target profile.\n *\n * Starts an OAuth connect flow for a platform on this profile. Returns a short-lived session the client uses to authorize; the connection is created once authorization succeeds.\n */\nexport const connectionsConnect = <ThrowOnError extends boolean = true>(options: Options<ConnectionsConnectData, ThrowOnError>): RequestResult<ConnectionsConnectResponses, ConnectionsConnectErrors, ThrowOnError> => (options.client ?? client).post<ConnectionsConnectResponses, ConnectionsConnectErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/profiles/{id}/connect',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List media\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `media:read` (the response is limited to the profiles the token is scoped to).\n *\n * Lists the media assets under your account, newest first. Filter by profile, status, kind, your own external_id, or metadata.\n */\nexport const mediaList = <ThrowOnError extends boolean = true>(options?: Options<MediaListData, ThrowOnError>): RequestResult<MediaListResponses, MediaListErrors, ThrowOnError> => (options?.client ?? client).get<MediaListResponses, MediaListErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/media',\n ...options\n});\n\n/**\n * Upload media\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `media:write` scoped to the target profile.\n *\n * Creates a media asset. Two ways to supply the bytes: (1) omit `source_url` and PUT the bytes to the returned signed upload target (the direct-upload path; `upload` is non-null), or (2) supply a public `https` `source_url` and we fetch the bytes server-side, validate, transform, and store them (the import path; `upload` is null). Either way the asset settles through the same probe/transform flow.\n */\nexport const mediaCreate = <ThrowOnError extends boolean = true>(options: Options<MediaCreateData, ThrowOnError>): RequestResult<MediaCreateResponses, MediaCreateErrors, ThrowOnError> => (options.client ?? client).post<MediaCreateResponses, MediaCreateErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/media',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete media\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `media:write` scoped to the profile that owns the media asset.\n *\n * Deletes a media asset and its stored renditions.\n */\nexport const mediaDelete = <ThrowOnError extends boolean = true>(options: Options<MediaDeleteData, ThrowOnError>): RequestResult<MediaDeleteResponses, MediaDeleteErrors, ThrowOnError> => (options.client ?? client).delete<MediaDeleteResponses, MediaDeleteErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/media/{id}',\n ...options\n});\n\n/**\n * Retrieve media\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `media:read` scoped to the profile that owns the media asset.\n *\n * Retrieves a media asset, including its per-platform processing status and renditions.\n */\nexport const mediaGet = <ThrowOnError extends boolean = true>(options: Options<MediaGetData, ThrowOnError>): RequestResult<MediaGetResponses, MediaGetErrors, ThrowOnError> => (options.client ?? client).get<MediaGetResponses, MediaGetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/media/{id}',\n ...options\n});\n\n/**\n * Update media\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `media:write` scoped to the profile that owns the media asset.\n *\n * Updates a media asset (alt text, metadata, external_id) or adds `targets` to pre-warm more platforms. Send only the fields to change.\n */\nexport const mediaUpdate = <ThrowOnError extends boolean = true>(options: Options<MediaUpdateData, ThrowOnError>): RequestResult<MediaUpdateResponses, MediaUpdateErrors, ThrowOnError> => (options.client ?? client).patch<MediaUpdateResponses, MediaUpdateErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/media/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List posts\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `posts:read` (the response is limited to the profiles the token is scoped to).\n *\n * Lists the posts under your account, newest first. Filter by profile or your own external_id.\n */\nexport const postsList = <ThrowOnError extends boolean = true>(options?: Options<PostsListData, ThrowOnError>): RequestResult<PostsListResponses, PostsListErrors, ThrowOnError> => (options?.client ?? client).get<PostsListResponses, PostsListErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/posts',\n ...options\n});\n\n/**\n * Create a post\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `posts:write` scoped to the target profile.\n *\n * Composes a post + its per-channel variants. `publish` decides the outcome: `now` publishes immediately, `schedule` publishes at `schedule_at`, `draft` just stores it.\n */\nexport const postsCreate = <ThrowOnError extends boolean = true>(options: Options<PostsCreateData, ThrowOnError>): RequestResult<PostsCreateResponses, PostsCreateErrors, ThrowOnError> => (options.client ?? client).post<PostsCreateResponses, PostsCreateErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/posts',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a post\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `posts:write` scoped to the profile that owns the post.\n *\n * Deletes a post and its variants. Returns a deletion marker; 404 if it does not exist in your account. Already-published posts are not retracted from the platform.\n */\nexport const postsDelete = <ThrowOnError extends boolean = true>(options: Options<PostsDeleteData, ThrowOnError>): RequestResult<PostsDeleteResponses, PostsDeleteErrors, ThrowOnError> => (options.client ?? client).delete<PostsDeleteResponses, PostsDeleteErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/posts/{id}',\n ...options\n});\n\n/**\n * Retrieve a post\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `posts:read` scoped to the profile that owns the post.\n *\n * Retrieves a single post by id, including its per-channel variants and their derived status.\n */\nexport const postsGet = <ThrowOnError extends boolean = true>(options: Options<PostsGetData, ThrowOnError>): RequestResult<PostsGetResponses, PostsGetErrors, ThrowOnError> => (options.client ?? client).get<PostsGetResponses, PostsGetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/posts/{id}',\n ...options\n});\n\n/**\n * Update a post\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `posts:write` scoped to the profile that owns the post.\n *\n * Edits a post and/or transitions its publish state (`draft` / `schedule` / `now`). Valid only while the post is draft or scheduled. Send only the fields to change; providing `variants` replaces the whole set.\n */\nexport const postsUpdate = <ThrowOnError extends boolean = true>(options: Options<PostsUpdateData, ThrowOnError>): RequestResult<PostsUpdateResponses, PostsUpdateErrors, ThrowOnError> => (options.client ?? client).patch<PostsUpdateResponses, PostsUpdateErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/posts/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Validate a post\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `posts:read` scoped to the target profile.\n *\n * Runs the exact ownership + publish-readiness checks the create path runs under dry_run, with no side effects. Returns a per-issue verdict (`publishable` + `issues[]`) on 200; a reference to a connection/media outside the profile is a typed 422.\n */\nexport const postsValidate = <ThrowOnError extends boolean = true>(options: Options<PostsValidateData, ThrowOnError>): RequestResult<PostsValidateResponses, PostsValidateErrors, ThrowOnError> => (options.client ?? client).post<PostsValidateResponses, PostsValidateErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/posts/validate',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Retrieve the Meta ad account\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Retrieves the Meta ad account this connection is linked to — name, currency, status, and spend. Monetary fields are in the account currency’s minor units.\n */\nexport const metaAccount = <ThrowOnError extends boolean = true>(options: Options<MetaAccountData, ThrowOnError>): RequestResult<MetaAccountResponses, MetaAccountErrors, ThrowOnError> => (options.client ?? client).get<MetaAccountResponses, MetaAccountErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/account',\n ...options\n});\n\n/**\n * Retrieve Meta ad insights\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Retrieves performance insights for the connection’s Meta ad account, aggregated at the chosen `level` over a date window. Metric values are strings, in the account currency’s units.\n */\nexport const metaInsights = <ThrowOnError extends boolean = true>(options: Options<MetaInsightsData, ThrowOnError>): RequestResult<MetaInsightsResponses, MetaInsightsErrors, ThrowOnError> => (options.client ?? client).get<MetaInsightsResponses, MetaInsightsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/insights',\n ...options\n});\n\n/**\n * List Meta campaigns\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Lists the campaigns under the connection’s Meta ad account, with each campaign’s status, objective, and budgets (budgets in the account currency’s minor units).\n */\nexport const metaCampaigns = <ThrowOnError extends boolean = true>(options: Options<MetaCampaignsData, ThrowOnError>): RequestResult<MetaCampaignsResponses, MetaCampaignsErrors, ThrowOnError> => (options.client ?? client).get<MetaCampaignsResponses, MetaCampaignsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/campaigns',\n ...options\n});\n\n/**\n * Retrieve a Meta campaign\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Retrieves a single campaign under the connection’s Meta ad account by its campaign id — status, objective, and budgets.\n */\nexport const metaCampaign = <ThrowOnError extends boolean = true>(options: Options<MetaCampaignData, ThrowOnError>): RequestResult<MetaCampaignResponses, MetaCampaignErrors, ThrowOnError> => (options.client ?? client).get<MetaCampaignResponses, MetaCampaignErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/campaigns/{campaign_id}',\n ...options\n});\n\n/**\n * List Meta ad sets\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Lists the ad sets under the connection’s Meta ad account, with each ad set’s status, parent campaign, budgets, and optimization (budgets in the account currency’s minor units).\n */\nexport const metaAdsets = <ThrowOnError extends boolean = true>(options: Options<MetaAdsetsData, ThrowOnError>): RequestResult<MetaAdsetsResponses, MetaAdsetsErrors, ThrowOnError> => (options.client ?? client).get<MetaAdsetsResponses, MetaAdsetsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/adsets',\n ...options\n});\n\n/**\n * Retrieve a Meta ad set\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Retrieves a single ad set under the connection’s Meta ad account by its ad set id — status, parent campaign, budgets, and optimization.\n */\nexport const metaAdset = <ThrowOnError extends boolean = true>(options: Options<MetaAdsetData, ThrowOnError>): RequestResult<MetaAdsetResponses, MetaAdsetErrors, ThrowOnError> => (options.client ?? client).get<MetaAdsetResponses, MetaAdsetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/adsets/{adset_id}',\n ...options\n});\n\n/**\n * List Meta ads\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Lists the ads under the connection’s Meta ad account, with each ad’s status, parent ad set and campaign ids, and timestamps.\n */\nexport const metaAds = <ThrowOnError extends boolean = true>(options: Options<MetaAdsData, ThrowOnError>): RequestResult<MetaAdsResponses, MetaAdsErrors, ThrowOnError> => (options.client ?? client).get<MetaAdsResponses, MetaAdsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/ads',\n ...options\n});\n\n/**\n * Retrieve a Meta ad\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Retrieves a single ad under the connection’s Meta ad account by its ad id — status, parent ad set and campaign ids, and timestamps.\n */\nexport const metaAd = <ThrowOnError extends boolean = true>(options: Options<MetaAdData, ThrowOnError>): RequestResult<MetaAdResponses, MetaAdErrors, ThrowOnError> => (options.client ?? client).get<MetaAdResponses, MetaAdErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/meta/{connection_id}/ads/{ad_id}',\n ...options\n});\n\n/**\n * Retrieve the connected Google Ads account\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns the Google Ads account (the `customer` resource) backing this connection — id, descriptive name, currency, time zone, status, and whether it is a manager (MCC) or test account.\n */\nexport const googleGetAccount = <ThrowOnError extends boolean = true>(options: Options<GoogleGetAccountData, ThrowOnError>): RequestResult<GoogleGetAccountResponses, GoogleGetAccountErrors, ThrowOnError> => (options.client ?? client).get<GoogleGetAccountResponses, GoogleGetAccountErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/account',\n ...options\n});\n\n/**\n * Google Ads performance insights\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Performance metrics for the connection’s account, at a chosen level (account / campaign / ad group), for a date range, with optional breakdowns. The flagship cross-checked read; use `/gaql` for anything outside this shape.\n */\nexport const googleGetInsights = <ThrowOnError extends boolean = true>(options: Options<GoogleGetInsightsData, ThrowOnError>): RequestResult<GoogleGetInsightsResponses, GoogleGetInsightsErrors, ThrowOnError> => (options.client ?? client).post<GoogleGetInsightsResponses, GoogleGetInsightsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/insights',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Run a raw GAQL query\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Runs a raw Google Ads Query Language (GAQL) query against the connection’s account and returns the native rows. Read-only (GAQL only does `SELECT`). The power-user escape hatch beneath the typed reads.\n */\nexport const googleRunGaql = <ThrowOnError extends boolean = true>(options: Options<GoogleRunGaqlData, ThrowOnError>): RequestResult<GoogleRunGaqlResponses, GoogleRunGaqlErrors, ThrowOnError> => (options.client ?? client).post<GoogleRunGaqlResponses, GoogleRunGaqlErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/gaql',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Create a Google Ads campaign budget\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Creates a standalone daily campaign budget (the `campaign_budget` resource) on the connection’s account. Money write — secret-key-only. Pass `dry_run: true` to validate against Google without creating. Returns the new resource id + resource_name to chain into a campaign.\n */\nexport const googleCreateBudget = <ThrowOnError extends boolean = true>(options: Options<GoogleCreateBudgetData, ThrowOnError>): RequestResult<GoogleCreateBudgetResponses, GoogleCreateBudgetErrors, ThrowOnError> => (options.client ?? client).post<GoogleCreateBudgetResponses, GoogleCreateBudgetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/budgets',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a Google Ads campaign budget\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Removes a campaign budget by numeric id (Google’s native remove). Pass `dry_run: true` to validate the removal against Google without applying it.\n */\nexport const googleDeleteBudget = <ThrowOnError extends boolean = true>(options: Options<GoogleDeleteBudgetData, ThrowOnError>): RequestResult<GoogleDeleteBudgetResponses, GoogleDeleteBudgetErrors, ThrowOnError> => (options.client ?? client).delete<GoogleDeleteBudgetResponses, GoogleDeleteBudgetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/budgets/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Edit a Google Ads campaign budget\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Updates a budget’s daily amount (in micros) by numeric id. Money write — secret-key-only. Pass `dry_run: true` to validate against Google without applying.\n */\nexport const googleEditBudget = <ThrowOnError extends boolean = true>(options: Options<GoogleEditBudgetData, ThrowOnError>): RequestResult<GoogleEditBudgetResponses, GoogleEditBudgetErrors, ThrowOnError> => (options.client ?? client).patch<GoogleEditBudgetResponses, GoogleEditBudgetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/budgets/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List Google Ads campaigns\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns the campaigns (the `campaign` resource) on the connection’s account — id, name, status, advertising channel type, and bidding strategy type.\n */\nexport const googleListCampaigns = <ThrowOnError extends boolean = true>(options: Options<GoogleListCampaignsData, ThrowOnError>): RequestResult<GoogleListCampaignsResponses, GoogleListCampaignsErrors, ThrowOnError> => (options.client ?? client).get<GoogleListCampaignsResponses, GoogleListCampaignsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/campaigns',\n ...options\n});\n\n/**\n * Create a Google Ads campaign\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Creates a Search or Display campaign (the `campaign` resource) on the connection’s account, attached to an existing budget. Pass `dry_run: true` to validate against Google without creating. Returns the new resource id + resource_name.\n */\nexport const googleCreateCampaign = <ThrowOnError extends boolean = true>(options: Options<GoogleCreateCampaignData, ThrowOnError>): RequestResult<GoogleCreateCampaignResponses, GoogleCreateCampaignErrors, ThrowOnError> => (options.client ?? client).post<GoogleCreateCampaignResponses, GoogleCreateCampaignErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/campaigns',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a Google Ads campaign\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Removes a campaign by numeric id (Google’s native remove). Pass `dry_run: true` to validate the removal against Google without applying it.\n */\nexport const googleDeleteCampaign = <ThrowOnError extends boolean = true>(options: Options<GoogleDeleteCampaignData, ThrowOnError>): RequestResult<GoogleDeleteCampaignResponses, GoogleDeleteCampaignErrors, ThrowOnError> => (options.client ?? client).delete<GoogleDeleteCampaignResponses, GoogleDeleteCampaignErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/campaigns/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Retrieve a Google Ads campaign\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns a single campaign (the `campaign` resource) by its numeric id on the connection’s account — id, name, status, advertising channel type, and bidding strategy type.\n */\nexport const googleGetCampaign = <ThrowOnError extends boolean = true>(options: Options<GoogleGetCampaignData, ThrowOnError>): RequestResult<GoogleGetCampaignResponses, GoogleGetCampaignErrors, ThrowOnError> => (options.client ?? client).get<GoogleGetCampaignResponses, GoogleGetCampaignErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/campaigns/{id}',\n ...options\n});\n\n/**\n * Edit a Google Ads campaign\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Updates a campaign’s non-money fields (its name) by numeric id. Status has its own pause/enable endpoints; bids are a separate money write. Pass `dry_run: true` to validate against Google without applying.\n */\nexport const googleEditCampaign = <ThrowOnError extends boolean = true>(options: Options<GoogleEditCampaignData, ThrowOnError>): RequestResult<GoogleEditCampaignResponses, GoogleEditCampaignErrors, ThrowOnError> => (options.client ?? client).patch<GoogleEditCampaignResponses, GoogleEditCampaignErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/campaigns/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Pause a Google Ads campaign\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Pauses a campaign by its numeric id (reversible). Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googlePauseCampaign = <ThrowOnError extends boolean = true>(options: Options<GooglePauseCampaignData, ThrowOnError>): RequestResult<GooglePauseCampaignResponses, GooglePauseCampaignErrors, ThrowOnError> => (options.client ?? client).post<GooglePauseCampaignResponses, GooglePauseCampaignErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/campaigns/{id}/pause',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Enable a Google Ads campaign\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Enables (resumes) a campaign by its numeric id. Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googleEnableCampaign = <ThrowOnError extends boolean = true>(options: Options<GoogleEnableCampaignData, ThrowOnError>): RequestResult<GoogleEnableCampaignResponses, GoogleEnableCampaignErrors, ThrowOnError> => (options.client ?? client).post<GoogleEnableCampaignResponses, GoogleEnableCampaignErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/campaigns/{id}/enable',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List Google Ads ad groups\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Lists the ad groups (Google’s equivalent of an ad set) in the Google Ads account backing this connection — id, name, status, type, and parent campaign.\n */\nexport const googleListAdGroups = <ThrowOnError extends boolean = true>(options: Options<GoogleListAdGroupsData, ThrowOnError>): RequestResult<GoogleListAdGroupsResponses, GoogleListAdGroupsErrors, ThrowOnError> => (options.client ?? client).get<GoogleListAdGroupsResponses, GoogleListAdGroupsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups',\n ...options\n});\n\n/**\n * Create a Google Ads ad group\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Creates an ad group (the `ad_group` resource) under a campaign on the connection’s account. Pass `dry_run: true` to validate against Google without creating. Returns the new resource id + resource_name to chain into ads and keywords.\n */\nexport const googleCreateAdGroup = <ThrowOnError extends boolean = true>(options: Options<GoogleCreateAdGroupData, ThrowOnError>): RequestResult<GoogleCreateAdGroupResponses, GoogleCreateAdGroupErrors, ThrowOnError> => (options.client ?? client).post<GoogleCreateAdGroupResponses, GoogleCreateAdGroupErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a Google Ads ad group\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Removes an ad group by numeric id (Google’s native remove). Pass `dry_run: true` to validate the removal against Google without applying it.\n */\nexport const googleDeleteAdGroup = <ThrowOnError extends boolean = true>(options: Options<GoogleDeleteAdGroupData, ThrowOnError>): RequestResult<GoogleDeleteAdGroupResponses, GoogleDeleteAdGroupErrors, ThrowOnError> => (options.client ?? client).delete<GoogleDeleteAdGroupResponses, GoogleDeleteAdGroupErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Retrieve a Google Ads ad group\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns a single ad group by its numeric id from the Google Ads account backing this connection — id, name, status, type, and parent campaign.\n */\nexport const googleGetAdGroup = <ThrowOnError extends boolean = true>(options: Options<GoogleGetAdGroupData, ThrowOnError>): RequestResult<GoogleGetAdGroupResponses, GoogleGetAdGroupErrors, ThrowOnError> => (options.client ?? client).get<GoogleGetAdGroupResponses, GoogleGetAdGroupErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups/{id}',\n ...options\n});\n\n/**\n * Edit a Google Ads ad group\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Updates an ad group’s non-money fields (its name) by numeric id. Status has its own pause/enable endpoints; bids are a separate money write. Pass `dry_run: true` to validate without applying.\n */\nexport const googleEditAdGroup = <ThrowOnError extends boolean = true>(options: Options<GoogleEditAdGroupData, ThrowOnError>): RequestResult<GoogleEditAdGroupResponses, GoogleEditAdGroupErrors, ThrowOnError> => (options.client ?? client).patch<GoogleEditAdGroupResponses, GoogleEditAdGroupErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Set a Google Ads ad group’s bids\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Sets an ad group’s manual bids (cpc/cpm/target CPA in micros, target ROAS as a ratio) by numeric id. Money write — secret-key-only. Pass `dry_run: true` to validate without applying.\n */\nexport const googleSetAdGroupBids = <ThrowOnError extends boolean = true>(options: Options<GoogleSetAdGroupBidsData, ThrowOnError>): RequestResult<GoogleSetAdGroupBidsResponses, GoogleSetAdGroupBidsErrors, ThrowOnError> => (options.client ?? client).patch<GoogleSetAdGroupBidsResponses, GoogleSetAdGroupBidsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups/{id}/bids',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Pause a Google Ads ad group\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Pauses an ad group by its numeric id (reversible). Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googlePauseAdGroup = <ThrowOnError extends boolean = true>(options: Options<GooglePauseAdGroupData, ThrowOnError>): RequestResult<GooglePauseAdGroupResponses, GooglePauseAdGroupErrors, ThrowOnError> => (options.client ?? client).post<GooglePauseAdGroupResponses, GooglePauseAdGroupErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups/{id}/pause',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Enable a Google Ads ad group\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Enables (resumes) an ad group by its numeric id. Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googleEnableAdGroup = <ThrowOnError extends boolean = true>(options: Options<GoogleEnableAdGroupData, ThrowOnError>): RequestResult<GoogleEnableAdGroupResponses, GoogleEnableAdGroupErrors, ThrowOnError> => (options.client ?? client).post<GoogleEnableAdGroupResponses, GoogleEnableAdGroupErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ad-groups/{id}/enable',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List Google Ads ads\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns the ads (the `ad_group_ad` resource) on the connection’s account — id, name, creative type, serving status, and the owning ad group.\n */\nexport const googleListAds = <ThrowOnError extends boolean = true>(options: Options<GoogleListAdsData, ThrowOnError>): RequestResult<GoogleListAdsResponses, GoogleListAdsErrors, ThrowOnError> => (options.client ?? client).get<GoogleListAdsResponses, GoogleListAdsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ads',\n ...options\n});\n\n/**\n * Create a Google Ads responsive search ad\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Creates a Responsive Search Ad (the `ad_group_ad` resource, inline text — no image assets) under an ad group on the connection’s account. Pass `dry_run: true` to validate against Google without creating. Returns the new resource id + resource_name.\n */\nexport const googleCreateAd = <ThrowOnError extends boolean = true>(options: Options<GoogleCreateAdData, ThrowOnError>): RequestResult<GoogleCreateAdResponses, GoogleCreateAdErrors, ThrowOnError> => (options.client ?? client).post<GoogleCreateAdResponses, GoogleCreateAdErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ads',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a Google Ads ad\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Removes an ad (an `ad_group_ad`) by its numeric id (Google’s native remove). Pass `dry_run: true` to validate the removal against Google without applying it.\n */\nexport const googleDeleteAd = <ThrowOnError extends boolean = true>(options: Options<GoogleDeleteAdData, ThrowOnError>): RequestResult<GoogleDeleteAdResponses, GoogleDeleteAdErrors, ThrowOnError> => (options.client ?? client).delete<GoogleDeleteAdResponses, GoogleDeleteAdErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ads/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Retrieve a Google Ads ad\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns a single ad (the `ad_group_ad` resource) by its numeric id on the connection’s account — id, name, creative type, serving status, and the owning ad group.\n */\nexport const googleGetAd = <ThrowOnError extends boolean = true>(options: Options<GoogleGetAdData, ThrowOnError>): RequestResult<GoogleGetAdResponses, GoogleGetAdErrors, ThrowOnError> => (options.client ?? client).get<GoogleGetAdResponses, GoogleGetAdErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ads/{id}',\n ...options\n});\n\n/**\n * Create a Google Ads responsive display ad\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Creates a Responsive Display Ad (the `ad_group_ad` resource) under a Display ad group on the connection’s account, assembled from already-uploaded image-asset resource_names (upload them first via POST /v1/google/{connection_id}/assets). Pass `dry_run: true` to validate against Google without creating. Returns the new resource id + resource_name.\n */\nexport const googleCreateDisplayAd = <ThrowOnError extends boolean = true>(options: Options<GoogleCreateDisplayAdData, ThrowOnError>): RequestResult<GoogleCreateDisplayAdResponses, GoogleCreateDisplayAdErrors, ThrowOnError> => (options.client ?? client).post<GoogleCreateDisplayAdResponses, GoogleCreateDisplayAdErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/display-ads',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Pause a Google Ads ad\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Pauses an ad by its numeric id (reversible). Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googlePauseAd = <ThrowOnError extends boolean = true>(options: Options<GooglePauseAdData, ThrowOnError>): RequestResult<GooglePauseAdResponses, GooglePauseAdErrors, ThrowOnError> => (options.client ?? client).post<GooglePauseAdResponses, GooglePauseAdErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ads/{id}/pause',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Enable a Google Ads ad\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Enables (resumes) an ad by its numeric id. Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googleEnableAd = <ThrowOnError extends boolean = true>(options: Options<GoogleEnableAdData, ThrowOnError>): RequestResult<GoogleEnableAdResponses, GoogleEnableAdErrors, ThrowOnError> => (options.client ?? client).post<GoogleEnableAdResponses, GoogleEnableAdErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/ads/{id}/enable',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List Google Ads keywords\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Lists the keywords (`ad_group_criterion` of type KEYWORD) in the connection’s account — each with its criterion id, text, match type, status, negative flag, and owning ad group.\n */\nexport const googleListKeywords = <ThrowOnError extends boolean = true>(options: Options<GoogleListKeywordsData, ThrowOnError>): RequestResult<GoogleListKeywordsResponses, GoogleListKeywordsErrors, ThrowOnError> => (options.client ?? client).get<GoogleListKeywordsResponses, GoogleListKeywordsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/keywords',\n ...options\n});\n\n/**\n * Create a Google Ads keyword\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Creates a keyword (an `ad_group_criterion` of type KEYWORD) under an ad group on the connection’s account. Pass `dry_run: true` to validate against Google without creating. Returns the new resource id + resource_name.\n */\nexport const googleCreateKeyword = <ThrowOnError extends boolean = true>(options: Options<GoogleCreateKeywordData, ThrowOnError>): RequestResult<GoogleCreateKeywordResponses, GoogleCreateKeywordErrors, ThrowOnError> => (options.client ?? client).post<GoogleCreateKeywordResponses, GoogleCreateKeywordErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/keywords',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a Google Ads keyword\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Removes a keyword (an `ad_group_criterion`) by its criterion id (Google’s native remove). Pass `dry_run: true` to validate the removal against Google without applying it.\n */\nexport const googleDeleteKeyword = <ThrowOnError extends boolean = true>(options: Options<GoogleDeleteKeywordData, ThrowOnError>): RequestResult<GoogleDeleteKeywordResponses, GoogleDeleteKeywordErrors, ThrowOnError> => (options.client ?? client).delete<GoogleDeleteKeywordResponses, GoogleDeleteKeywordErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/keywords/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Retrieve a Google Ads keyword\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns one keyword (`ad_group_criterion` of type KEYWORD) by its criterion id, from the connection’s account — text, match type, status, negative flag, and owning ad group.\n */\nexport const googleGetKeyword = <ThrowOnError extends boolean = true>(options: Options<GoogleGetKeywordData, ThrowOnError>): RequestResult<GoogleGetKeywordResponses, GoogleGetKeywordErrors, ThrowOnError> => (options.client ?? client).get<GoogleGetKeywordResponses, GoogleGetKeywordErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/keywords/{id}',\n ...options\n});\n\n/**\n * Set a Google Ads keyword’s bid\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Sets a keyword’s manual CPC bid (in micros) by criterion id. Money write — secret-key-only. Pass `dry_run: true` to validate without applying.\n */\nexport const googleSetKeywordBid = <ThrowOnError extends boolean = true>(options: Options<GoogleSetKeywordBidData, ThrowOnError>): RequestResult<GoogleSetKeywordBidResponses, GoogleSetKeywordBidErrors, ThrowOnError> => (options.client ?? client).patch<GoogleSetKeywordBidResponses, GoogleSetKeywordBidErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/keywords/{id}/bid',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Pause a Google Ads keyword\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Pauses a keyword (`ad_group_criterion`) by its criterion id (reversible). Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googlePauseKeyword = <ThrowOnError extends boolean = true>(options: Options<GooglePauseKeywordData, ThrowOnError>): RequestResult<GooglePauseKeywordResponses, GooglePauseKeywordErrors, ThrowOnError> => (options.client ?? client).post<GooglePauseKeywordResponses, GooglePauseKeywordErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/keywords/{id}/pause',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Enable a Google Ads keyword\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Enables (resumes) a keyword (`ad_group_criterion`) by its criterion id. Pass `dry_run: true` to preview without applying. Returns the new status and whether it executed.\n */\nexport const googleEnableKeyword = <ThrowOnError extends boolean = true>(options: Options<GoogleEnableKeywordData, ThrowOnError>): RequestResult<GoogleEnableKeywordResponses, GoogleEnableKeywordErrors, ThrowOnError> => (options.client ?? client).post<GoogleEnableKeywordResponses, GoogleEnableKeywordErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/keywords/{id}/enable',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List Google Ads conversion actions\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns the conversion actions (the `conversion_action` resource) on the connection’s account — id, name, status, type, category, origin, primary-goal flag, counting type, value settings, and tag snippets.\n */\nexport const googleListConversionActions = <ThrowOnError extends boolean = true>(options: Options<GoogleListConversionActionsData, ThrowOnError>): RequestResult<GoogleListConversionActionsResponses, GoogleListConversionActionsErrors, ThrowOnError> => (options.client ?? client).get<GoogleListConversionActionsResponses, GoogleListConversionActionsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/conversion-actions',\n ...options\n});\n\n/**\n * Create a Google Ads conversion action\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Creates a conversion action (the `conversion_action` resource) — a website tag (WEBPAGE) or an offline/API-reported action (UPLOAD_CLICKS) — on the connection’s account. Pass `dry_run: true` to validate against Google without creating. Returns the new resource id + resource_name.\n */\nexport const googleCreateConversionAction = <ThrowOnError extends boolean = true>(options: Options<GoogleCreateConversionActionData, ThrowOnError>): RequestResult<GoogleCreateConversionActionResponses, GoogleCreateConversionActionErrors, ThrowOnError> => (options.client ?? client).post<GoogleCreateConversionActionResponses, GoogleCreateConversionActionErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/conversion-actions',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Retrieve a Google Ads conversion action\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns a single conversion action (the `conversion_action` resource) by its numeric id on the connection’s account.\n */\nexport const googleGetConversionAction = <ThrowOnError extends boolean = true>(options: Options<GoogleGetConversionActionData, ThrowOnError>): RequestResult<GoogleGetConversionActionResponses, GoogleGetConversionActionErrors, ThrowOnError> => (options.client ?? client).get<GoogleGetConversionActionResponses, GoogleGetConversionActionErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/conversion-actions/{id}',\n ...options\n});\n\n/**\n * List Google Ads conversion goals\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:read` scoped to the profile that owns the connection.\n *\n * Returns the conversion goals (the `customer_conversion_goal` resource) on the connection’s account — category, origin, and whether each is biddable. Google auto-creates these per category × origin.\n */\nexport const googleListConversionGoals = <ThrowOnError extends boolean = true>(options: Options<GoogleListConversionGoalsData, ThrowOnError>): RequestResult<GoogleListConversionGoalsResponses, GoogleListConversionGoalsErrors, ThrowOnError> => (options.client ?? client).get<GoogleListConversionGoalsResponses, GoogleListConversionGoalsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/conversion-goals',\n ...options\n});\n\n/**\n * Set a Google Ads conversion goal’s biddable flag\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Sets whether a conversion goal (selected by category × origin) is biddable — a primary goal Google optimises toward, or a secondary observation-only goal. Pass `dry_run: true` to preview without applying. Returns the goal and whether it executed.\n */\nexport const googleSetConversionGoal = <ThrowOnError extends boolean = true>(options: Options<GoogleSetConversionGoalData, ThrowOnError>): RequestResult<GoogleSetConversionGoalResponses, GoogleSetConversionGoalErrors, ThrowOnError> => (options.client ?? client).post<GoogleSetConversionGoalResponses, GoogleSetConversionGoalErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/conversion-goals',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Upload Google Ads offline conversions\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Uploads offline click conversions (the `UploadClickConversions` call) against the connection’s account — report conversions that happened off-site against the click (gclid/gbraid/wbraid) or first-party identifiers that drove them. Partial failure is per-row: the response reports how many rows succeeded/failed and Google’s own error for each failed row. Pass `dry_run: true` to validate the batch against Google without recording anything.\n */\nexport const googleUploadConversions = <ThrowOnError extends boolean = true>(options: Options<GoogleUploadConversionsData, ThrowOnError>): RequestResult<GoogleUploadConversionsResponses, GoogleUploadConversionsErrors, ThrowOnError> => (options.client ?? client).post<GoogleUploadConversionsResponses, GoogleUploadConversionsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/conversion-uploads',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Upload a Google Ads image asset\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `ads:write` scoped to the profile that owns the connection.\n *\n * Uploads a Postrun image asset (its validated Google Ads rendition) to the connection’s account as an `image` asset, returning the new resource id + resource_name to chain into an ad/asset assembly. Pass `dry_run: true` to validate against Google without creating anything (Google’s native validate_only). The media asset must have a ready Google Ads rendition, else a 409.\n */\nexport const googleUploadImageAsset = <ThrowOnError extends boolean = true>(options: Options<GoogleUploadImageAssetData, ThrowOnError>): RequestResult<GoogleUploadImageAssetResponses, GoogleUploadImageAssetErrors, ThrowOnError> => (options.client ?? client).post<GoogleUploadImageAssetResponses, GoogleUploadImageAssetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/google/{connection_id}/assets/images',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Retrieve TikTok creator info\n *\n * **Authentication.** Secret `pr_` API key, or a browser-safe frontend token granting `connections:read` scoped to the profile that owns the connection.\n *\n * Retrieves the TikTok creator's publish options live from TikTok — required by TikTok's Content Posting policy to render the publishing UI: the creator nickname + avatar, the privacy options to offer (with no default), and the Comment/Duet/Stitch flags to disable. Returns 404 if the connection does not exist in your account or is not a TikTok connection, 409 if the TikTok account must be reconnected, and 502 if TikTok’s creator-info call fails.\n */\nexport const tiktokCreatorInfo = <ThrowOnError extends boolean = true>(options: Options<TiktokCreatorInfoData, ThrowOnError>): RequestResult<TiktokCreatorInfoResponses, TiktokCreatorInfoErrors, ThrowOnError> => (options.client ?? client).get<TiktokCreatorInfoResponses, TiktokCreatorInfoErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }, {\n key: 'frontendToken',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/connections/{id}/tiktok/creator-info',\n ...options\n});\n\n/**\n * List request logs\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Lists the API activity for your account — one entry per action, newest first. Filter by profile, connection, platform, status, source, action, or time range.\n */\nexport const logsList = <ThrowOnError extends boolean = true>(options?: Options<LogsListData, ThrowOnError>): RequestResult<LogsListResponses, LogsListErrors, ThrowOnError> => (options?.client ?? client).get<LogsListResponses, LogsListErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/logs',\n ...options\n});\n\n/**\n * Retrieve a request log\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Retrieves a single request log entry by id.\n */\nexport const logsGet = <ThrowOnError extends boolean = true>(options: Options<LogsGetData, ThrowOnError>): RequestResult<LogsGetResponses, LogsGetErrors, ThrowOnError> => (options.client ?? client).get<LogsGetResponses, LogsGetErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/logs/{id}',\n ...options\n});\n\n/**\n * List webhook endpoints\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Lists the webhook endpoints registered for your account.\n */\nexport const webhooksListEndpoints = <ThrowOnError extends boolean = true>(options?: Options<WebhooksListEndpointsData, ThrowOnError>): RequestResult<WebhooksListEndpointsResponses, WebhooksListEndpointsErrors, ThrowOnError> => (options?.client ?? client).get<WebhooksListEndpointsResponses, WebhooksListEndpointsErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/endpoints',\n ...options\n});\n\n/**\n * Create a webhook endpoint\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Registers a URL to receive the chosen event types. Delivery, retries, and signing are handled for you.\n */\nexport const webhooksCreateEndpoint = <ThrowOnError extends boolean = true>(options: Options<WebhooksCreateEndpointData, ThrowOnError>): RequestResult<WebhooksCreateEndpointResponses, WebhooksCreateEndpointErrors, ThrowOnError> => (options.client ?? client).post<WebhooksCreateEndpointResponses, WebhooksCreateEndpointErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/endpoints',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete a webhook endpoint\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Deletes a webhook endpoint. Delivery to it stops immediately.\n */\nexport const webhooksDeleteEndpoint = <ThrowOnError extends boolean = true>(options: Options<WebhooksDeleteEndpointData, ThrowOnError>): RequestResult<WebhooksDeleteEndpointResponses, WebhooksDeleteEndpointErrors, ThrowOnError> => (options.client ?? client).delete<WebhooksDeleteEndpointResponses, WebhooksDeleteEndpointErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/endpoints/{id}',\n ...options\n});\n\n/**\n * Retrieve a webhook endpoint\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Retrieves a single webhook endpoint by id.\n */\nexport const webhooksGetEndpoint = <ThrowOnError extends boolean = true>(options: Options<WebhooksGetEndpointData, ThrowOnError>): RequestResult<WebhooksGetEndpointResponses, WebhooksGetEndpointErrors, ThrowOnError> => (options.client ?? client).get<WebhooksGetEndpointResponses, WebhooksGetEndpointErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/endpoints/{id}',\n ...options\n});\n\n/**\n * Update a webhook endpoint\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Updates a webhook endpoint. Send only the fields you want to change; provide at least one.\n */\nexport const webhooksUpdateEndpoint = <ThrowOnError extends boolean = true>(options: Options<WebhooksUpdateEndpointData, ThrowOnError>): RequestResult<WebhooksUpdateEndpointResponses, WebhooksUpdateEndpointErrors, ThrowOnError> => (options.client ?? client).patch<WebhooksUpdateEndpointResponses, WebhooksUpdateEndpointErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/endpoints/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Create a webhook portal link\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Mints a one-time App Portal URL where you (or your customer) self-serve webhook delivery logs and signing secrets.\n */\nexport const webhooksCreatePortal = <ThrowOnError extends boolean = true>(options?: Options<WebhooksCreatePortalData, ThrowOnError>): RequestResult<WebhooksCreatePortalResponses, WebhooksCreatePortalErrors, ThrowOnError> => (options?.client ?? client).post<WebhooksCreatePortalResponses, WebhooksCreatePortalErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/portal',\n ...options\n});\n\n/**\n * List webhook event types\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Lists the event types you can subscribe an endpoint to (the catalog).\n */\nexport const webhooksListEventTypes = <ThrowOnError extends boolean = true>(options?: Options<WebhooksListEventTypesData, ThrowOnError>): RequestResult<WebhooksListEventTypesResponses, WebhooksListEventTypesErrors, ThrowOnError> => (options?.client ?? client).get<WebhooksListEventTypesResponses, WebhooksListEventTypesErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/event-types',\n ...options\n});\n\n/**\n * Send a test event\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Emits a `webhook.ping` event to your subscribed endpoints so you can verify delivery end to end.\n */\nexport const webhooksPing = <ThrowOnError extends boolean = true>(options: Options<WebhooksPingData, ThrowOnError>): RequestResult<WebhooksPingResponses, WebhooksPingErrors, ThrowOnError> => (options.client ?? client).post<WebhooksPingResponses, WebhooksPingErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/webhooks/ping',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Mint a scoped frontend token\n *\n * **Authentication.** Secret `pr_` API key only — this endpoint cannot be called with a browser token.\n *\n * Mints a short-lived, profile-scoped token from your secret `pr_` key. Call this from your backend; the returned token is safe to hand to a browser, which then calls the Postrun API directly. The secret key never touches the browser.\n */\nexport const tokensMint = <ThrowOnError extends boolean = true>(options: Options<TokensMintData, ThrowOnError>): RequestResult<TokensMintResponses, TokensMintErrors, ThrowOnError> => (options.client ?? client).post<TokensMintResponses, TokensMintErrors, ThrowOnError>({\n security: [{\n key: 'secretKey',\n scheme: 'bearer',\n type: 'http'\n }],\n url: '/tokens',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n","import { createPostrunClient } from './client';\nimport type { PostrunClient } from './client';\nimport { tokensMint } from './client/sdk.gen';\nimport type { TokensMintData, TokensMintResponse } from './client/types.gen';\n\n/**\n * The body for minting a scoped token — the generated request shape (snake_case,\n * the exact wire contract). `scopes` is the closed `resource:action` union and\n * `profile_scope` the `{ type, values }` selector, both derived from the spec so\n * they can never drift. Money/structural writes are NOT scopes: those endpoints\n * are secret-key-only and a browser token simply cannot reach them, by design.\n */\nexport type MintTokenInput = TokensMintData['body'];\n\nexport interface PostrunServerOptions {\n /** Your secret `pr_` API key. NEVER expose this to a browser. */\n secretKey: string;\n /** Override the API base URL (defaults to the production gateway). */\n baseUrl?: string;\n}\n\nexport interface PostrunServer {\n /** A typed client authenticated with the secret key — for any server-side call. */\n readonly client: PostrunClient;\n readonly tokens: {\n /** Mint a short-lived, scoped frontend token from the secret key. */\n mint(input: MintTokenInput): Promise<TokensMintResponse>;\n };\n}\n\n/** The secret key must never reach a browser — fail loudly if it would. */\nfunction assertServerOnly(): void {\n if (typeof window !== 'undefined' && typeof window.document !== 'undefined') {\n throw new Error(\n 'createPostrunServer must run only on a server — it holds your secret pr_ key. ' +\n 'In the browser, use createPostrunClient with a minted scoped token instead.',\n );\n }\n}\n\n/**\n * Create a server-side Postrun client from a secret `pr_` key. Its primary job\n * is `tokens.mint` — issue a short-lived, scoped token your frontend hands to\n * `createPostrunClient`, so the secret key never reaches the browser. The raw\n * `client` is exposed for any other server-side call (e.g. the generated SDK\n * functions: `postsCreate({ client })`).\n */\nexport function createPostrunServer(options: PostrunServerOptions): PostrunServer {\n assertServerOnly();\n if (!options.secretKey) {\n throw new Error('createPostrunServer requires a secret `pr_` key (secretKey).');\n }\n\n const client = createPostrunClient({\n baseUrl: options.baseUrl,\n getToken: () => options.secretKey,\n });\n\n async function mint(input: MintTokenInput): Promise<TokensMintResponse> {\n const { data } = await tokensMint({ client, body: input });\n return data;\n }\n\n return { client, tokens: { mint } };\n}\n"]}