soonPython code generator
OpenAPI to in seconds.
Production-grade API infrastructure. Typed SDKs, Zod schemas, TanStack Query hooks, and 20+ plugins. Free and open source.
7.4M downloads last week
export type Order = { id: string; symbol: string; side: 'buy' | 'sell'; type: 'market' | 'limit' | 'stop' | 'stop_limit'; quantity: number; price?: number; status: 'pending' | 'open' | 'filled' | 'partially_filled' | 'cancelled' | 'rejected'; createdAt: string;};
export type CreateOrderData = { body: Order;};
export type CreateOrderResponse = Order;import { z } from 'zod';
export const zOrder = z.object({ id: z.string().uuid(), symbol: z.string(), side: z.enum(['buy', 'sell']), type: z.enum(['market', 'limit', 'stop', 'stop_limit']), quantity: z.number(), price: z.number().optional(), status: z.enum(['pending', 'open', 'filled', 'partially_filled', 'cancelled', 'rejected']), createdAt: z.string().datetime(),});
export type Order = z.infer<typeof zOrder>;import * as v from 'valibot';
export const vOrder = v.object({ id: v.pipe(v.string(), v.uuid()), symbol: v.string(), side: v.picklist(['buy', 'sell']), type: v.picklist(['market', 'limit', 'stop', 'stop_limit']), quantity: v.number(), price: v.optional(v.number()), status: v.picklist(['pending', 'open', 'filled', 'partially_filled', 'cancelled', 'rejected']), createdAt: v.pipe(v.string(), v.isoTimestamp()),});
export type Order = v.InferOutput<typeof vOrder>;import { createOrder } from './sdk.gen';
const { data, error } = await createOrder({ symbol: 'AAPL', side: 'buy', type: 'limit', quantity: 10, price: 189.5,});
if (error) { console.error('Order failed:', error.message);