UNPKG

@mintlify/validation

Version:

Validates mint.json files

42 lines (41 loc) 1.4 kB
import { apiParamFieldOptions, requestExampleLanguages } from '@mintlify/models'; import { z } from 'zod'; import { openapiStringSchema } from './openapiString.js'; export const openApiSchema = z .union([openapiStringSchema, z.array(openapiStringSchema)]) .describe('A string or an array of strings of absolute or relative urls pointing to your OpenAPI files'); export const apiSchema = z .object({ baseUrl: z.union([z.string().url(), z.array(z.string().url())]).optional(), auth: z .object({ method: z.enum(['bearer', 'basic', 'key', 'cobo']).optional(), name: z.string().optional(), inputPrefix: z.string().optional(), // deprecated }) .strict() .optional(), playground: z .object({ mode: z.enum(['show', 'simple', 'hide']).optional().default('show'), disableProxy: z.boolean().optional(), }) .optional(), request: z .object({ example: z .object({ showOptionalParams: z.boolean().optional(), languages: z.array(z.union([z.enum(requestExampleLanguages), z.string()])).optional(), }) .optional(), }) .optional(), maintainOrder: z.boolean().optional(), paramFields: z .object({ expanded: z.enum(apiParamFieldOptions).optional(), }) .optional(), }) .strict();