openapi: 3.0.3 info: title: Stage 1 Contracts (Auth, Users, Health, Audit) version: 1.0.0 paths: /health: get: summary: Health check responses: '200': description: OK /auth/login: post: summary: Login requestBody: required: true content: application/json: schema: type: object required: [username, password] properties: username: { type: string } password: { type: string } responses: '200': description: Token response /users: get: summary: List users responses: '200': description: Users list post: summary: Create user responses: '200': description: User created /users/{user_id}: get: summary: Get user by id parameters: - in: path name: user_id required: true schema: { type: string } responses: '200': description: User data /audit/events: get: summary: List audit events responses: '200': description: Audit list post: summary: Create audit event responses: '200': description: Event created