Skip to main content

Keka

The Keka connector syncs employee, attendance, leave, and project timesheet data from the Keka API to your destination.

Prerequisites​

  • A Keka API subscription. Keka API access is an add-on feature.
  • Global admin access in Keka. Only Global admins can generate and manage API keys.
  • Your company's Keka subdomain. For https://acme.keka.com, the subdomain is acme.

Set up the Keka connector​

Step 1: Generate API credentials in Keka​

  1. In Keka, go to Global admin settings > Integrations & Automations > API access > API key.
  2. Generate an API key. Keka shows the client ID, client secret, and API key for your account.
  3. Configure the API key's scopes to cover the data you want to sync. Keka assigns scopes per API key, and an access token can only read data that the key's scopes allow. The available scopes are Employee And Org Information, Leave, Attendance, Payroll, Timesheet, and Performance.

For more information, see Keka's getting started guide.

Step 2: Configure the connector in Airbyte​

InputTypeDescription
subdomainstringYour company subdomain, without https:// or .keka.com.
client_idstringThe client ID from your Keka API key.
client_secretstringThe client secret from your Keka API key.
api_keystringYour Keka API key.
grant_typestringEnter kekaapi.
scopestringEnter kekaapi.

The connector requests an access token from https://login.keka.com/connect/token and reads data from https://<subdomain>.keka.com/api/v1. Keka's sandbox environment (kekademo.com) isn't supported.

If you're upgrading from a version earlier than 0.1.0, follow the migration guide to configure the company subdomain before syncing.

Supported sync modes​

The Keka connector supports Full Refresh syncs only. It doesn't support incremental syncs.

Supported streams​

StreamKeka API endpointPrimary key
Employees/hris/employees
Attendance/time/attendance
Clients/psa/clients
Projects/psa/projects
Project Timesheets/psa/timeentries
Leave Type/time/leavetypesidentifier
Leave Request/time/leaverequests

Limitations​

  • 30-day window for date-based streams: The connector doesn't send a date range, so the Attendance, Leave Request, and Project Timesheets streams return Keka's default: records from the last 30 days. Each sync reads all pages within that range, not the complete history.
  • Rate limits: Keka allows 50 API requests per minute and returns a 429 error when you exceed the limit. The connector retries rate-limited requests with backoff. For details, see Keka's rate limit documentation.

IP allow list​

If you use Airbyte Cloud and your organization restricts access to specific IPs, add the Airbyte Cloud IP addresses to your allow list.

Reference​

Config fields reference

Field
Type
Property name
API Key
required
string
api_key
string
client_id
string
client_secret
Grant Type
required
string
grant_type
Scope
required
string
scope
string
subdomain

Changelog​

Expand to review
VersionDatePull RequestSubject
0.1.22026-10-1388671Update dependencies
0.1.12026-10-0988404Mark api_key as airbyte_secret
0.1.02026-10-0988299Require the company subdomain, correct pagination, and allow authentication requests.
0.0.562026-10-0687915Update dependencies
0.0.552026-09-2987199Update dependencies
0.0.542026-09-2286688Update dependencies
0.0.532026-09-1586112Update dependencies
0.0.522026-09-0885545Update dependencies
0.0.512026-08-1884630Update dependencies
0.0.502026-08-1183994Update dependencies
0.0.492026-08-0483510Update dependencies
0.0.482026-07-2882966Update dependencies
0.0.472026-07-2182460Update dependencies
0.0.462026-07-1481880Update dependencies
0.0.452026-06-3081118Update dependencies
0.0.442026-06-2380519Update dependencies
0.0.432026-06-1679925Update dependencies
0.0.422026-06-0979363Update dependencies
0.0.412026-06-0278789Update dependencies
0.0.402026-04-2877326Update dependencies
0.0.392026-04-2176634Update dependencies
0.0.382026-03-3175700Update dependencies
0.0.372026-03-2474439Update dependencies
0.0.362026-03-0374235Update dependencies
0.0.352026-02-1773542Update dependencies
0.0.342026-02-1073040Update dependencies
0.0.332026-02-0372739Update dependencies
0.0.322026-01-2071961Update dependencies
0.0.312026-01-1471389Update dependencies
0.0.302025-12-1870772Update dependencies
0.0.292025-11-2569502Update dependencies
0.0.282025-10-2968521Update dependencies
0.0.272025-10-1467974Update dependencies
0.0.262025-10-0767355Update dependencies
0.0.252025-09-3066804Update dependencies
0.0.242025-09-0966103Update dependencies
0.0.232025-08-2365386Update dependencies
0.0.222025-08-0964621Update dependencies
0.0.212025-08-0264243Update dependencies
0.0.202025-07-2663908Update dependencies
0.0.192025-07-1963459Update dependencies
0.0.182025-07-1263145Update dependencies
0.0.172025-07-0562645Update dependencies
0.0.162025-06-2862172Update dependencies
0.0.152025-06-2161849Update dependencies
0.0.142025-06-1461129Update dependencies
0.0.132025-05-2459800Update dependencies
0.0.122025-05-0359247Update dependencies
0.0.112025-04-2658796Update dependencies
0.0.102025-04-1958156Update dependencies
0.0.92025-04-1257690Update dependencies
0.0.82025-04-0557093Update dependencies
0.0.72025-03-2956700Update dependencies
0.0.62025-03-2255498Update dependencies
0.0.52025-03-0154766Update dependencies
0.0.42025-02-2254328Update dependencies
0.0.32025-02-1553861Update dependencies
0.0.22025-02-0853271Update dependencies
0.0.12025-01-29Initial release by @bhushan-barbuddhe via Connector Builder