API version
API versionv1
Versioned contract rooted under /api/v1.
BPPE Career
Admissions Representative
What is this page?
This page proves the first versioned admissions JSON API contract, including Zod schemas, local lead-list responses, create-lead validation, stage-change preview, and OpenAPI output.
Use Sev3 if endpoint behavior, validation errors, or proof-only write boundaries are unclear and Sev4 for labels, ordering, or proof-copy feedback. This panel does not submit a support case.
Sev1: Critical outage or data-risk emergency
Target: 1-hour response, 24/7 paging during pilot
Sev2: Major workflow blocked
Target: 4 business hours
Sev3: Standard product question or non-urgent issue
Target: 1 business day
Sev4: How-to, cosmetic, or future enhancement
Target: 2 business days
These preview controls are placeholders. Real AI answers, search, walkthroughs, and support submission come in later tickets.
Static proof preview
Real notification feeds, delivery, and preferences arrive in a later ticket.
Mina Patel
mina.patel@otto-fixture.test
Switch local proof role
This changes only the local shell proof. Production role changes remain server-validated future work.
Search is a keyboard-focusable skeleton. No real index or permissioned search results are implemented in this ticket.
Admissions CRM
A local proof surface for versioned admissions JSON endpoints, Zod schemas, generated OpenAPI components, and disabled write behavior.
Otto Fixture BPPE Career School · API proof
Admissions Representative · Mina Patel
Admissions API
Ticket 036 exposes the local admissions proof through versioned JSON endpoints. Read routes return fixture data, while write routes only validate payloads and return previews with no accepted writes.
API version
API versionv1
Versioned contract rooted under /api/v1.
Paths
Paths3
Route paths described in the OpenAPI proof document.
Schemas
Schemas9
OpenAPI components generated from Zod contracts.
Writes
Writes0
POST and PATCH validate only.
The first admissions API endpoints cover lead listing, create-lead validation, stage-change preview, and the generated OpenAPI document.
read-only
Local only: true · database backed: false
validation-preview
Local only: true · database backed: false
validation-preview
Local only: true · database backed: false
read-only
Local only: true · database backed: false
Schema registry
POST /api/v1/leads
{
"legalName": "Nadia Torres",
"preferredName": "Nadia",
"email": "nadia.torres@example.test",
"phone": "(408) 555-0144",
"source": "Website form",
"campaign": "Fall program interest",
"program": "Medical Assistant Certificate",
"campus": "San Jose",
"startDateLabel": "March 2027",
"assignedRep": "Mina Patel",
"consentChannels": [
"email",
"sms"
],
"consentWording": "Applicant agreed to be contacted by Otto Demo Career School about admissions.",
"idempotencyKey": "idem_036_nadia_torres",
"dryRun": true
}PATCH /api/v1/leads/id/stage
{
"targetStageId": "applied",
"expectedVersion": "lead-local-proof-v1",
"reason": "Applicant submitted the proof application form.",
"idempotencyKey": "idem_036_stage_preview"
}Proof boundary