Scheduling API
A scheduling API for product deliveries: a supplier books a time with an employee, with availability and conflict checking — not a spreadsheet.
- 2025
- backend API
- published
- Go · Gin · PostgreSQL · JWT
the problem
Scheduling a supplier delivery usually ends up in a shared spreadsheet or a group chat. The result is predictable: two suppliers in the same slot, an employee who isn't available, and no history of who booked what.
For whoever builds it, the interesting problem isn't storing the date — it's deciding whether that slot can exist before accepting it, with role-based access and without scattering that logic across the routes.
the approach
The API is Go with Gin and GORM over PostgreSQL, JWT authentication and role-based access control. Availability checking and conflict detection happen in the rules layer, before any write — the handler decides nothing on its own.
The layering is deliberate: the scheduling rules stay testable in isolation, which is where most mistakes tend to be born.
where it stands
Published on GitHub, with authentication, conflict-aware scheduling, availability checking, appointment management and statistics/reporting endpoints.