Complete guide to integrating with the HavaHR platform
The HavaHR API allows you to integrate your applications with our HR management platform. Build custom integrations, automate workflows, and sync data between systems.
# Get your API key from the dashboard curl -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ https://api.havaHR.com/v1/users
Generate and manage your API keys from the dashboard. Keep your keys secure and rotate them regularly.
/api/users
Get all users in company
{ "users": [ { "id": "user_123", "name": "John Doe", "email": "john@company.com", "role": "USER", "position": "Software Engineer", "department": "Engineering" } ] }
/api/users
Create a new user
{ "name": "Jane Smith", "email": "jane@company.com", "role": "USER", "position": "Designer", "department": "Design" }
{ "id": "user_124", "name": "Jane Smith", "email": "jane@company.com", "role": "USER" }
Webhooks allow you to receive real-time notifications when events occur in your HavaHR account. Configure webhook endpoints in your dashboard to receive HTTP POST requests.
Triggered when a new user is created
{ "event": "user.created", "data": { "id": "user_123", "name": "John Doe", "email": "john@company.com", "companyId": "company_123" }, "timestamp": "2024-11-15T10:00:00Z" }
Triggered when payroll is approved
{ "event": "payroll.approved", "data": { "id": "payroll_123", "userId": "user_123", "month": 11, "year": 2024, "netSalary": 4200 }, "timestamp": "2024-11-15T10:00:00Z" }
Triggered when leave request status changes
{ "event": "leave.status_changed", "data": { "id": "leave_123", "userId": "user_123", "status": "APPROVED", "adminComment": "Approved for vacation" }, "timestamp": "2024-11-15T10:00:00Z" }
Official SDK for Node.js and browser environments
npm install @havaHR/sdk
Official Python SDK with async support
pip install havaHR-python
Community-maintained PHP library
composer require havaHR/php-sdk
Lightweight Go client library
go get github.com/havaHR/go-sdk