fix(GRO-636): input validation fixes for 5 API routes
Adds Zod validation across 5 API routes: 1. invoices GET / — query param validation (uuid, enum, int bounds) 2. book POST / — future-time refinement on startTime 3. appointments — recurrence series capped at 1 year 4. services — durationMinutes capped at 480 (8 hours) 5. stripe-webhooks — UUID validation on invoice IDs before DB lookup Closes GRO-636 Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit was merged in pull request #294.
This commit is contained in:
committed by
GitHub
parent
80b66fe20c
commit
e1e13d5091
@@ -41,6 +41,10 @@ const createAppointmentSchema = z.object({
|
||||
frequencyWeeks: z.number().int().min(1).max(52),
|
||||
count: z.number().int().min(2).max(52),
|
||||
})
|
||||
.refine(
|
||||
(r) => r.frequencyWeeks * r.count <= 52,
|
||||
{ message: "Recurrence series must not exceed 1 year" }
|
||||
)
|
||||
.optional(),
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user