{ "info": { "name": "Kenjo API", "description": "Kenjo all-in-one HR (HRIS) REST API. Base URL: https://api.kenjo.io/api/v1 (production) or https://sandbox-api.kenjo.io/api/v1 (sandbox). Access is a Connect-plan capability activated by Kenjo Customer Success. Exchange an API key via POST /auth/login for a bearer token, then send it on every request.", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json" }, "auth": { "type": "bearer", "bearer": [ { "key": "token", "value": "{{bearerToken}}", "type": "string" } ] }, "variable": [ { "key": "baseUrl", "value": "https://api.kenjo.io/api/v1", "type": "string" }, { "key": "apiKey", "value": "", "type": "string" }, { "key": "bearerToken", "value": "", "type": "string" } ], "item": [ { "name": "Authentication", "item": [ { "name": "Log in an API token", "request": { "auth": { "type": "noauth" }, "method": "POST", "header": [{ "key": "Content-Type", "value": "application/json" }], "body": { "mode": "raw", "raw": "{\n \"apiKey\": \"{{apiKey}}\"\n}" }, "url": { "raw": "{{baseUrl}}/auth/login", "host": ["{{baseUrl}}"], "path": ["auth", "login"] }, "description": "Exchanges a Kenjo API key for a bearer token." } }, { "name": "Log out an API token", "request": { "method": "POST", "header": [], "url": { "raw": "{{baseUrl}}/auth/logout", "host": ["{{baseUrl}}"], "path": ["auth", "logout"] }, "description": "Invalidates the current bearer token." } } ] }, { "name": "Employees", "item": [ { "name": "List employees", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/employees", "host": ["{{baseUrl}}"], "path": ["employees"] }, "description": "Returns a paginated list of employees." } }, { "name": "Create a new employee", "request": { "method": "POST", "header": [{ "key": "Content-Type", "value": "application/json" }], "body": { "mode": "raw", "raw": "{\n \"email\": \"new.hire@example.com\",\n \"firstName\": \"New\",\n \"lastName\": \"Hire\",\n \"externalId\": \"EXT-123\"\n}" }, "url": { "raw": "{{baseUrl}}/employees", "host": ["{{baseUrl}}"], "path": ["employees"] }, "description": "Creates a new employee (deactivated by default)." } }, { "name": "Get an employee", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/employees/:employeeId", "host": ["{{baseUrl}}"], "path": ["employees", ":employeeId"] }, "description": "Returns all sections for a given employee id." } }, { "name": "List employee accounts", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/employees/accounts", "host": ["{{baseUrl}}"], "path": ["employees", "accounts"] }, "description": "Returns email, external id, language, and activation status per employee." } }, { "name": "Update employee work section", "request": { "method": "PUT", "header": [{ "key": "Content-Type", "value": "application/json" }], "body": { "mode": "raw", "raw": "{}" }, "url": { "raw": "{{baseUrl}}/employees/:employeeId/works", "host": ["{{baseUrl}}"], "path": ["employees", ":employeeId", "works"] }, "description": "Updates the work section for a given employee id." } }, { "name": "Activate an employee", "request": { "method": "PUT", "header": [], "url": { "raw": "{{baseUrl}}/employees/:employeeId/activate", "host": ["{{baseUrl}}"], "path": ["employees", ":employeeId", "activate"] }, "description": "Activates an employee." } }, { "name": "Deactivate an employee", "request": { "method": "PUT", "header": [], "url": { "raw": "{{baseUrl}}/employees/:employeeId/deactivate", "host": ["{{baseUrl}}"], "path": ["employees", ":employeeId", "deactivate"] }, "description": "Deactivates an employee." } } ] }, { "name": "Attendance", "item": [ { "name": "List attendances", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/attendances", "host": ["{{baseUrl}}"], "path": ["attendances"] }, "description": "Returns a list of attendance entries." } }, { "name": "Create an attendance", "request": { "method": "POST", "header": [{ "key": "Content-Type", "value": "application/json" }], "body": { "mode": "raw", "raw": "{\n \"email\": \"employee@example.com\",\n \"date\": \"2026-07-11\",\n \"startTime\": \"2026-07-11T09:00:00Z\",\n \"endTime\": \"2026-07-11T17:00:00Z\"\n}" }, "url": { "raw": "{{baseUrl}}/attendances", "host": ["{{baseUrl}}"], "path": ["attendances"] }, "description": "Creates a new attendance entry by userId, email, or externalId." } }, { "name": "Track an attendance entry", "request": { "method": "POST", "header": [{ "key": "Content-Type", "value": "application/json" }], "body": { "mode": "raw", "raw": "{\n \"email\": \"employee@example.com\",\n \"dateTime\": \"2026-07-11T09:00:00Z\"\n}" }, "url": { "raw": "{{baseUrl}}/attendances/track-time", "host": ["{{baseUrl}}"], "path": ["attendances", "track-time"] }, "description": "Tracks a clock-in/clock-out by employee identifier and dateTime." } }, { "name": "List expected time", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/attendances/expected-time?from=2026-07-01&to=2026-07-31", "host": ["{{baseUrl}}"], "path": ["attendances", "expected-time"], "query": [{ "key": "from", "value": "2026-07-01" }, { "key": "to", "value": "2026-07-31" }] }, "description": "Returns expected working time per user for a date range." } } ] }, { "name": "Time Off", "item": [ { "name": "List time-off requests", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/time-off-requests", "host": ["{{baseUrl}}"], "path": ["time-off-requests"] }, "description": "Returns a list of time-off requests." } }, { "name": "Create a time-off request", "request": { "method": "POST", "header": [{ "key": "Content-Type", "value": "application/json" }], "body": { "mode": "raw", "raw": "{\n \"employeeId\": \"\",\n \"timeOffTypeId\": \"\",\n \"from\": \"2026-08-01\",\n \"to\": \"2026-08-05\"\n}" }, "url": { "raw": "{{baseUrl}}/time-off-requests", "host": ["{{baseUrl}}"], "path": ["time-off-requests"] }, "description": "Creates a time-off request." } }, { "name": "List time-off types", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/time-off-types", "host": ["{{baseUrl}}"], "path": ["time-off-types"] }, "description": "Returns a list of time-off types." } }, { "name": "Set a time-off balance", "request": { "method": "PUT", "header": [{ "key": "Content-Type", "value": "application/json" }], "body": { "mode": "raw", "raw": "{\n \"balance\": 25\n}" }, "url": { "raw": "{{baseUrl}}/time-off/set-balance/:timeOffTypeId/:employeeId", "host": ["{{baseUrl}}"], "path": ["time-off", "set-balance", ":timeOffTypeId", ":employeeId"] }, "description": "Sets an employee's balance for a given time-off type." } } ] }, { "name": "Documents", "item": [ { "name": "List company documents", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/documents/company", "host": ["{{baseUrl}}"], "path": ["documents", "company"] }, "description": "Returns a paginated list of company documents." } } ] }, { "name": "Compensation", "item": [ { "name": "List contracts", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/compensation/contracts", "host": ["{{baseUrl}}"], "path": ["compensation", "contracts"] }, "description": "Returns a list of contracts." } }, { "name": "List salaries", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/compensation/salaries", "host": ["{{baseUrl}}"], "path": ["compensation", "salaries"] }, "description": "Returns a list of salaries." } }, { "name": "List additional payments", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/compensation/additional-payments", "host": ["{{baseUrl}}"], "path": ["compensation", "additional-payments"] }, "description": "Returns a list of additional payments." } } ] }, { "name": "Organization", "item": [ { "name": "List companies", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/companies", "host": ["{{baseUrl}}"], "path": ["companies"] }, "description": "Returns a list of companies." } }, { "name": "List offices", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/offices", "host": ["{{baseUrl}}"], "path": ["offices"] }, "description": "Returns a list of offices." } }, { "name": "List departments", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/departments", "host": ["{{baseUrl}}"], "path": ["departments"] }, "description": "Returns a list of departments." } }, { "name": "List teams", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/teams", "host": ["{{baseUrl}}"], "path": ["teams"] }, "description": "Returns a list of teams." } } ] }, { "name": "Recruiting", "item": [ { "name": "List positions", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/recruiting/positions", "host": ["{{baseUrl}}"], "path": ["recruiting", "positions"] }, "description": "Returns a list of job openings, including public positions for a custom career site." } }, { "name": "List candidates", "request": { "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/recruiting/candidates", "host": ["{{baseUrl}}"], "path": ["recruiting", "candidates"] }, "description": "Returns a list of candidates." } }, { "name": "Create a candidate", "request": { "method": "POST", "header": [{ "key": "Content-Type", "value": "application/json" }], "body": { "mode": "raw", "raw": "{\n \"firstName\": \"Jane\",\n \"lastName\": \"Doe\",\n \"email\": \"jane.doe@example.com\"\n}" }, "url": { "raw": "{{baseUrl}}/recruiting/candidates", "host": ["{{baseUrl}}"], "path": ["recruiting", "candidates"] }, "description": "Creates a new candidate." } } ] } ] }