Hi - I answer from the OpenSmartRoute documentation: routing, the API, plans and quotas, self-hosting. Ask away, or open a support ticket if you need a person.
Grounded in the docs - follow a source before acting on it.
zod-schemas - Skill - OpenSmartRoute
Skillv1.0.0
zod-schemas
Use when creating or editing Zod schemas for form validation. Covers mask stripping, optional fields, and DTO mirroring patterns.
Instruction file imported from jucandrade/gestao-de-frotas-frontend (.github/instructions/zod-schemas.instructions.md). Copyright stays with the author.
Zod Schema Guidelines
Structure
One schema file per entity: <entity>.schema.ts
Schema must mirror the backend DTO exactly (same field names)
Export the schema and the inferred type: export type <Entity>FormData = z.infer<typeof <entity>Schema>
Field Patterns
Required string
z.string().min(1, "Mensagem de erro em português")
Use z.object() with all fields — no partial schemas
Define a reusable optionalString helper when many optional fields exist
Use it
Copy one of these into your project. Installing also returns the manifest and these snippets.
# after Install: the listing is in your workspace's routing pool - a plan picks it for its slot
curl -s -X POST https://api.opensmartroute.ai/api/v1/route -H 'Authorization: Bearer $OSR_API_KEY' -H 'Content-Type: application/json' -d '{"text": "...", "plan": true}'
Manifest
An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.