fix: expand /v1/responses inputs (#1229) (thanks @RyanLisse)
This commit is contained in:
@@ -111,6 +111,54 @@ export type GatewayHttpResponsesConfig = {
|
||||
* Default: false when absent.
|
||||
*/
|
||||
enabled?: boolean;
|
||||
/**
|
||||
* Max request body size in bytes for `/v1/responses`.
|
||||
* Default: 20MB.
|
||||
*/
|
||||
maxBodyBytes?: number;
|
||||
/** File inputs (input_file). */
|
||||
files?: GatewayHttpResponsesFilesConfig;
|
||||
/** Image inputs (input_image). */
|
||||
images?: GatewayHttpResponsesImagesConfig;
|
||||
};
|
||||
|
||||
export type GatewayHttpResponsesFilesConfig = {
|
||||
/** Allow URL fetches for input_file. Default: true. */
|
||||
allowUrl?: boolean;
|
||||
/** Allowed MIME types (case-insensitive). */
|
||||
allowedMimes?: string[];
|
||||
/** Max bytes per file. Default: 5MB. */
|
||||
maxBytes?: number;
|
||||
/** Max decoded characters per file. Default: 200k. */
|
||||
maxChars?: number;
|
||||
/** Max redirects when fetching a URL. Default: 3. */
|
||||
maxRedirects?: number;
|
||||
/** Fetch timeout in ms. Default: 10s. */
|
||||
timeoutMs?: number;
|
||||
/** PDF handling (application/pdf). */
|
||||
pdf?: GatewayHttpResponsesPdfConfig;
|
||||
};
|
||||
|
||||
export type GatewayHttpResponsesPdfConfig = {
|
||||
/** Max pages to parse/render. Default: 4. */
|
||||
maxPages?: number;
|
||||
/** Max pixels per rendered page. Default: 4M. */
|
||||
maxPixels?: number;
|
||||
/** Minimum extracted text length to skip rasterization. Default: 200 chars. */
|
||||
minTextChars?: number;
|
||||
};
|
||||
|
||||
export type GatewayHttpResponsesImagesConfig = {
|
||||
/** Allow URL fetches for input_image. Default: true. */
|
||||
allowUrl?: boolean;
|
||||
/** Allowed MIME types (case-insensitive). */
|
||||
allowedMimes?: string[];
|
||||
/** Max bytes per image. Default: 10MB. */
|
||||
maxBytes?: number;
|
||||
/** Max redirects when fetching a URL. Default: 3. */
|
||||
maxRedirects?: number;
|
||||
/** Fetch timeout in ms. Default: 10s. */
|
||||
timeoutMs?: number;
|
||||
};
|
||||
|
||||
export type GatewayHttpEndpointsConfig = {
|
||||
|
||||
@@ -302,6 +302,36 @@ export const ClawdbotSchema = z
|
||||
responses: z
|
||||
.object({
|
||||
enabled: z.boolean().optional(),
|
||||
maxBodyBytes: z.number().int().positive().optional(),
|
||||
files: z
|
||||
.object({
|
||||
allowUrl: z.boolean().optional(),
|
||||
allowedMimes: z.array(z.string()).optional(),
|
||||
maxBytes: z.number().int().positive().optional(),
|
||||
maxChars: z.number().int().positive().optional(),
|
||||
maxRedirects: z.number().int().nonnegative().optional(),
|
||||
timeoutMs: z.number().int().positive().optional(),
|
||||
pdf: z
|
||||
.object({
|
||||
maxPages: z.number().int().positive().optional(),
|
||||
maxPixels: z.number().int().positive().optional(),
|
||||
minTextChars: z.number().int().nonnegative().optional(),
|
||||
})
|
||||
.strict()
|
||||
.optional(),
|
||||
})
|
||||
.strict()
|
||||
.optional(),
|
||||
images: z
|
||||
.object({
|
||||
allowUrl: z.boolean().optional(),
|
||||
allowedMimes: z.array(z.string()).optional(),
|
||||
maxBytes: z.number().int().positive().optional(),
|
||||
maxRedirects: z.number().int().nonnegative().optional(),
|
||||
timeoutMs: z.number().int().positive().optional(),
|
||||
})
|
||||
.strict()
|
||||
.optional(),
|
||||
})
|
||||
.strict()
|
||||
.optional(),
|
||||
|
||||
Reference in New Issue
Block a user