Employment Hero is a comprehensive cloud-based human resources software solution designed to cater to the needs of small and medium-sized businesses. As an all-in-one platform, it centralizes a variety of HR functions, including hiring, HR management, payroll, and employee engagement, making it an essential tool for businesses looking to streamline their HR processes. The software is highly customizable, allowing organizations to create an integrated Human Resource Information System (HRIS) and payroll system that aligns with their specific requirements. This flexibility ensures that businesses can efficiently manage their workforce while focusing on growth and productivity.
One of the standout features of Employment Hero is its ability to manage the entire employee lifecycle. From recruitment and onboarding to payroll, time and attendance, and people management, the platform offers a suite of modules designed to simplify HR tasks. Additionally, Employment Hero can integrate seamlessly with other HR and payroll software, facilitating the handling of employee data such as new hires, salary adjustments, and benefit deductions. This integration capability, particularly through the Employment Hero API, is crucial for businesses aiming to consolidate their HR operations into a single, cohesive system, thereby enhancing efficiency and reducing administrative burdens.
Key highlights of Employment Hero APIs
Employment Hero offers a suite of APIs designed to facilitate seamless integration with its HR and payroll platforms. These APIs enable developers to automate processes, manage employee data, and integrate various HR functionalities into their applications. Below is an overview of the available APIs, their functionalities, authentication methods, and rate limits.
Available APIs and Functionalities:
- HRIS API:
- Functionality: Provides access to core HR data, including employee records, organizational information, and related HR functionalities.
- Use Cases: Automating employee onboarding, updating employee details, and retrieving organizational data.
- Documentation: Employment Hero API - Australia
- Payroll API:
- Functionality: Offers endpoints to manage payroll operations, such as processing payroll, managing deductions, and generating payslips.
- Use Cases: Automating payroll calculations, integrating with accounting systems, and retrieving payroll reports.
- Documentation: Employment Hero Payroll API Reference - KeyPay
- Careers Page API:
- Functionality: Allows integration of Employment Hero's careers page with an organization's website, ensuring job listings are synchronized.
- Use Cases: Displaying current job openings on a company's website and automating job posting updates.
- Documentation: API Reference 1 - Australia
Authentication Methods:
- OAuth 2.0:
- Employment Hero's APIs primarily use OAuth 2.0 for secure authentication. Developers must register their applications through the Employment Hero Developer Portal to obtain client credentials (Client ID and Client Secret). The authentication flow involves obtaining an access token, which is then used to authorize API requests.
- Steps:
- Register your application in the Developer Portal.
- Obtain client credentials.
- Authorize the application to receive an authorization code.
- Exchange the authorization code for an access token.
- Use the access token to authenticate API requests.
- Reference: API Reference - Australia
- API Key Authentication:
- Some APIs, like the Careers Page API, utilize API key authentication. Users can generate an API access token within the Employment Hero platform, which is then included in the request headers to authenticate API calls.
- Reference: API Reference 1 - Australia
Rate Limits:
Employment Hero enforces rate limits to ensure fair usage and maintain system performance. While specific rate limits may vary across different APIs, it's essential to implement error handling for potential rate limiting responses. Developers are advised to consult the respective API documentation or contact Employment Hero support for detailed rate limit information.
Additional Resources:
- Developer Portal: Access to API documentation, client registration, and other developer tools.some text
- Payroll API Reference: Detailed documentation for payroll-related API endpoints.some text
For comprehensive information and to get started with the Employment Hero API, refer to their official API documentation. Employment Hero Developer
Employment Hero API Endpoints
Organisation APIs
- GET https://api.employmenthero.com/api/v1/organisations : This API retrieves a list of organisations from Employment Hero. The request must include an access token in the Authorization header, which is obtained from the Employment Hero Authorisation Server. The API uses the GET method and the endpoint is https://api.employmenthero.com/api/v1/organisations. The response includes details of each organisation such as its unique identifier, name, creation date, and last update date.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id : This API endpoint retrieves detailed information about a specific organisation using its UUID. The request requires an Authorization header with a bearer token for authentication. The response includes various details about the organisation such as its name, phone number, country, logo URL, primary address, end of week, typical work day, payroll admin emails, subscription plan, superfund name, employee counts, time zone, and creation date.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/certifications : This API endpoint retrieves a list of all certifications for a specific organisation identified by the organisation_id. The request requires an Authorization header with a bearer token for authentication. The response includes a data object containing an array of certification objects, each with an id, name, and status. Pagination details such as items per page, current page index, total pages, and total items are also provided in the response.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/custom_fields : This API endpoint retrieves a list of all custom fields for a specific organisation. The request requires an 'organisation_id' as a path parameter and an 'Authorization' header with a bearer token. The response includes a data object containing an array of custom field objects, each with details such as id, name, hint, description, type, onboarding status, requirement status, permissions, and options. The response also provides pagination details including items per page, current page index, total pages, and total items.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/policies : This API endpoint retrieves a list of all policies for a specific organisation identified by the organisation_id. The request requires an Authorization header with a bearer token for authentication. The response includes a data object containing an array of policy objects, each with details such as id, name, induction status, and creation date. Pagination details such as items per page, current page index, total pages, and total items are also provided.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/teams : The 'Get All Teams' API retrieves an array of all teams associated with a specified organisation. The request requires an 'organisation_id' as a path parameter and an 'Authorization' header with a bearer token for authentication. The response includes a 'data' object containing an array of team objects, each with an 'id', 'name', and 'status'. Additionally, pagination details such as 'item_per_page', 'page_index', 'total_pages', and 'total_items' are provided.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/leave_requests : The Get Leave Requests API retrieves a list of all leave requests for a specified organisation. The request requires an organisation_id as a path parameter and an Authorization header with a bearer token for authentication. The response includes a data object containing an array of leave request objects, each with details such as id, start_date, end_date, total_hours, comment, status, leave_balance_amount, leave_category_name, reason, and employee_id.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/rostered_shifts : The 'List Rostered Shifts' API allows users to retrieve all rostered shifts accessible by the current user within a specified organisation. The API supports pagination and filtering by various parameters such as date range, shift statuses, location IDs, member IDs, and more. The request requires an organisation ID as a path parameter and an authorization bearer token in the headers. Optional query parameters include from_date, to_date, statuses, location_ids, member_ids, unassigned_shifts_only, and exclude_shifts_overlapping_from_date. The response includes a list of shifts with details such as start and end times, status, location, member information, and shift swap details.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/unavailabilities : The List Unavailabilities API retrieves all unavailability records that match the specified conditions for a given organisation. The API requires an organisation ID as a path parameter and supports optional query parameters such as from_date, to_date, location_id, member_id, item_per_page, and page_index to filter the results. The response includes a list of unavailability records with details such as member ID, description, start and end dates, and recurring patterns. The API uses a bearer token for authorization.
Employee APIs
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/employees : The Get Employees API retrieves an array of all employees managed by a specified organisation. The API requires an organisation ID as a path parameter and an authorization bearer token in the headers. The response includes a data object containing an array of employee objects, each with detailed information such as ID, email, name, address, job title, and more. If there are no employees, the array will be empty.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/employees/:employee_id : This API endpoint retrieves a specific employee's details from the Employment Hero platform. It requires the organisation ID and employee ID as path parameters, and an authorization bearer token in the headers. The response includes detailed information about the employee, such as their name, contact details, job title, and associated managers and cost centres.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/employees/:employee_id/bank_accounts : This API endpoint retrieves a list of all bank accounts for a specific employee within an organisation. The request requires the organisation_id and employee_id as path parameters, and an Authorization header with a bearer token for authentication. The response includes a data object containing an array of bank account records, each with details such as account name, account number, BSB, amount, and whether it is the primary account. Pagination details such as items per page, page index, total pages, and total items are also provided.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/employees/:employee_id/certifications : This API endpoint retrieves a list of all certifications assigned to a specific employee within an organisation. The request requires the organisation_id and employee_id as path parameters, and an Authorization header with a bearer token for authentication. The response includes a data object containing an array of certification items, each with details such as certification ID, name, type, expiry date, completion date, status, and any driver problems. The response also includes pagination details like items per page, current page index, total pages, and total items.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/employees/:employee_id/custom_fields : This API endpoint retrieves a list of all custom fields for a specific employee within an organisation. It requires the organisation_id and employee_id as path parameters and an Authorization header with a bearer token for authentication. The response includes a data object containing an array of employee custom field objects, each with properties such as id, value, name, description, and type. The response also includes pagination details like items per page, current page index, total pages, and total items.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/employees/:employee_id/emergency_contacts : This API endpoint retrieves a list of all emergency contacts for a specific employee within an organisation. It requires the organisation_id and employee_id as path parameters, and an Authorization header with a bearer token for authentication. The response includes a data object containing an array of emergency contact objects, each with details such as contact name, contact numbers, relationship, and contact type. Pagination details such as items per page, page index, total pages, and total items are also provided.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/employees/:employee_id/employment_histories : This API endpoint retrieves the complete employment history for a specific employee within a given organisation. It requires the organisation_id and employee_id as path parameters and an Authorization header with a bearer token for authentication. The response includes an array of employment history records, each containing details such as the position title, start and end dates, and employment type. The response also provides pagination details including items per page, current page index, total pages, and total items.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/employees/:employee_id/pay_details : This API endpoint retrieves a list of all pay details for a specific employee within a given organisation. The request requires the organisation_id and employee_id as path parameters, and an Authorization header with a bearer token for authentication. The response includes a data object containing an array of pay details, each with properties such as id, effective_from, classification, industrial_instrument, pay_rate_template, anniversary_date, salary, salary_type, pay_unit, pay_category, leave_allowance_template, change_reason, and comments. The response also includes pagination details like item_per_page, page_index, total_pages, and total_items.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/employees/:employee_id/payslips : This API endpoint retrieves a list of all payslips for a specific employee within an organisation. It requires the organisation ID and employee ID as path parameters, and an Authorization header with a bearer token for authentication. The response includes a data object containing an array of payslip records, each with details such as employee name, total deductions, net pay, wages, tax, and other payroll-related information. The response also includes pagination details like items per page, current page index, total pages, and total items.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/employees/:employee_id/superannuation_detail : This API endpoint retrieves the superannuation detail for a specific employee within a given organisation. It requires the organisation_id and employee_id as path parameters, and an Authorization header with a bearer token. The response includes details such as the fund name, member number, product code, and other relevant superannuation account information. If the employee does not have a superannuation detail, a not found error will be returned.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/employees/:employee_id/tax_declaration : The Get Tax Declaration Detail API retrieves the tax declaration details for a specific employee within an organisation. It requires the organisation_id and employee_id as path parameters, and an Authorization header with a bearer token. The response includes details such as the employee's first and last name, tax file number, residency status, and any applicable tax debts. If no tax declaration is found, a not found error is returned.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/employees/:employee_id/timesheet_entries : The Get Timesheet Entries API retrieves a list of all timesheet entries for a specific employee within an organisation. The API requires the organisation ID and employee ID as path parameters. The employee ID can be a specific UUID or '-' to retrieve timesheets for all employees. Optional query parameters include start_date and end_date to filter the timesheet entries by date range. The request must include an Authorization header with a bearer token. The response contains a data object with an array of timesheet entries, each entry includes details such as date, start and end times, status, units, and associated cost centre.
- GET https://api.employmenthero.com/api/v1/organisations/:organisation_id/teams/:team_id/employees : This API retrieves all employees associated with a specific team within a managed organization. It requires the organization ID and team ID as path parameters and an authorization bearer token in the headers. The response includes an array of employee objects, each containing detailed information such as ID, email, name, job title, and more. The response also provides pagination details like items per page, current page index, total pages, and total items.
Authorization APIs
- GET https://oauth.employmenthero.com/oauth2/authorize : The Obtain Access Token API is used to initiate the OAuth 2.0 authorization process to obtain an access token for accessing private data over the Employment Hero API. The API requires the client ID, redirect URI, and response type as query parameters. The user will be prompted to log in and grant permissions, after which they will be redirected to the specified redirect URI with an authorization code. This code can then be used to obtain the access token. The Employment Hero account used for authorization can only access data within its roles or permissions.
- POST https://oauth.employmenthero.com/oauth2/token : The Refresh Access Token API is used to obtain a new access token using a refresh token. Access tokens expire after 15 minutes, and this API allows for continuous usage by providing a new access token and a new refresh token, invalidating the previous refresh token. The API requires the client_id, client_secret, grant_type, and refresh_token as query parameters. The response includes a new access_token, refresh_token, token_type, expires_in, and scope.
Employment Hero API FAQs
How can I access the Employment Hero API?
- Answer: To access the Employment Hero API, you need to have a Platinum subscription or higher. Once subscribed, you can register your application through the Employment Hero Developer Portal to obtain client credentials, including a Client ID and Client Secret. These credentials are necessary for authenticating your API requests using the OAuth 2.0 protocol.
- Source: API Reference - Australia
What authentication method does the Employment Hero API use?
- Answer: The Employment Hero API utilizes the OAuth 2.0 protocol for secure authentication. After registering your application and obtaining client credentials, you will perform an authorization flow to receive an access token. This token must be included in the Authorization header of your API requests.
- Source: API Reference - Australia
Are there rate limits for the Employment Hero API?
- Answer: Yes, Employment Hero enforces rate limits to ensure fair usage and maintain system performance. While specific rate limits are not publicly detailed, it's recommended to implement error handling for potential rate limiting responses and to contact Employment Hero support for detailed rate limit information.
- Source: Employment Hero API - Australia
Can I retrieve employee data using the Employment Hero API?
- Answer: Yes, the Employment Hero API provides endpoints to retrieve employee data. For example, you can use the /v1/employees endpoint to fetch a list of employees. Ensure that your application has the necessary scopes and permissions to access this data.
- Source: API Reference - Australia
Does the Employment Hero API support webhooks for real-time data updates?
- Answer: As of the latest available information, the Employment Hero API does not natively support webhooks. For real-time data updates, consider implementing periodic polling or integrating with third-party services that provide webhook functionality.
- Source: Employment Hero API - Australia
Get Started with Employment Hero API Integration
Knit API offers a convenient solution for quick and seamless integration with Employment Hero API. Our AI-powered integration platform allows you to build any Employment Hero API Integration use case. By integrating with Knit just once, you can integrate with multiple other CRM, Accounting, HRIS, ATS, and other systems in one go with a unified approach. Knit handles all the authentication, authorization, and ongoing integration maintenance. This approach saves time and ensures a smooth and reliable connection to Employment Hero API.
To sign up for free, click here. To check the pricing, see our pricing page.