openapi: 3.0.3 info: title: hakuna Time Tracking Absences Users API description: 'The hakuna REST API provides programmatic access to the hakuna time-tracking and personnel-management platform: the running timer, time entries, absences, projects, tasks, clients, users, and account-wide company settings. Personal endpoints act in the context of the authenticated user; management endpoints require an admin token and the organization endpoint requires an organization-level token. All requests and responses are JSON. Generated by the API Evangelist enrichment pipeline from the published API documentation; not an official hakuna machine-readable specification.' version: v1 x-apievangelist-generated: '2026-07-19' x-apievangelist-method: generated x-apievangelist-source: https://app.hakuna.ch/api_docs contact: name: hakuna Support url: https://www.hakuna.ch/kontakt termsOfService: https://www.hakuna.ch/rechtliches/agb servers: - url: https://app.hakuna.ch/api/v1 description: Production security: - AuthToken: [] tags: - name: Users description: Users of the account paths: /users: get: operationId: listUsers summary: List users tags: - Users responses: '200': description: A list of users content: application/json: schema: type: array items: $ref: '#/components/schemas/User' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/RateLimited' /users/me: get: operationId: getCurrentUser summary: Get the authenticated user tags: - Users responses: '200': description: The authenticated user content: application/json: schema: $ref: '#/components/schemas/User' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/RateLimited' components: responses: RateLimited: description: Too many requests. Limited to 100 requests per minute per customer. headers: X-RateLimit-Limit: schema: type: integer description: Maximum requests allowed in the window. X-RateLimit-Remaining: schema: type: integer description: Requests remaining in the current window. X-RateLimit-Reset: schema: type: integer description: Seconds until the window resets. Retry-After: schema: type: integer description: Seconds to wait before retrying. content: application/json: schema: $ref: '#/components/schemas/Error' Unauthorized: description: The auth token is missing or invalid. content: application/json: schema: $ref: '#/components/schemas/Error' schemas: User: type: object description: A user of the account. properties: id: type: string name: type: string email: type: string format: email role: type: string Error: type: object description: JSON error object with a descriptive message. properties: message: type: string description: Human-readable description of the error. securitySchemes: AuthToken: type: apiKey in: header name: X-Auth-Token description: Personal API token managed under "My Settings". Organization endpoints require a separate organization-level token; management endpoints require an admin token.