# Developer Docs Documentation > The Developer Docs is where you'll find comprehensive guides and documentation to help you start working with Bob as quickly as possible. ## Guides - [Getting started with Bob's API](https://apidocs.hibob.com/docs/getting-started.md) - [API Service users](https://apidocs.hibob.com/docs/api-service-users.md): Use service users to authenticate API calls to Bob - [API Terms of Use](https://apidocs.hibob.com/docs/api-terms-of-use.md) - [Explore Employee data API](https://apidocs.hibob.com/docs/explore-employee-data.md): Understand the basic concepts of employee data API in Bob - [Explore Time off API](https://apidocs.hibob.com/docs/explore-time-off-api.md): Understand the basic concepts of time off requests and policies in Bob - [Explore Attendance API](https://apidocs.hibob.com/docs/explore-attendance-api.md): Understand the basic concepts of attendance entries in Bob - [Explore Tasks API](https://apidocs.hibob.com/docs/explore-tasks.md): Understand the basic concepts of Tasks and how you can access them via the Public API - [Explore Reports API](https://apidocs.hibob.com/docs/explore-reports.md): Understand the basic concepts of Reports and how you can access them via the Public API - [Explore Docs API](https://apidocs.hibob.com/docs/explore-docs-api.md): Understand the basic concepts of Documents in Bob and how you can access them via the Docs Public API - [Explore Skills API](https://apidocs.hibob.com/docs/explore-skills-api.md): Understand the basic concepts of Skills in Bob and how to push, sync, and search skills with the Public API - [Explore Employer API](https://apidocs.hibob.com/docs/explore-employer-api.md): Understand the basic concepts of Employers and Work locations in Bob and how to search and sync them with the Public API - [Explore Goals API](https://apidocs.hibob.com/docs/explore-goals-api.md): Understand the basic concepts of Goals in Bob and how to utilize them with the Public API - [Explore Hiring API ](https://apidocs.hibob.com/docs/explore-hiring-api.md): Understand the basic concepts of hiring data and workflows and how to use them with the Public API - [Explore Learning API ](https://apidocs.hibob.com/docs/explore-learning-lms-api.md): Learn how to use the Bob Learning API to add course providers and training content - [Explore Job catalog API](https://apidocs.hibob.com/docs/explore-job-catalog-api.md): Understand the basic concepts of Job catalog in Bob and how to utilize it with the Public API - [Explore Workforce planning API](https://apidocs.hibob.com/docs/explore-workforce-planning.md): Understand the basic concepts of workforce planning in Bob and how to utilize it with the Public API - [HiBob MCP Server](https://apidocs.hibob.com/docs/hibob-mcp-server.md): Connect AI developer tools to Bob with a service user - [Migrate to Webhooks V2](https://apidocs.hibob.com/docs/migrate-to-webhooks-v2.md): Learn how to smoothly migrate from Webhooks V1 to Webhooks V2 - [Working with employee search](https://apidocs.hibob.com/docs/how-to-read-employee-data-tutorial.md): Step-by-step tutorial for using the employee Search endpoint to retrieve employee data - [Working patterns in the Public API](https://apidocs.hibob.com/docs/how-to-work-with-working-patterns.md): Learn how to fetch and process an employee's working patterns using the Public API - [Transition from API Access tokens](https://apidocs.hibob.com/docs/transition-from-api-access-tokens.md): Learn how to transition from API Access Token to Service User - [Integrate with your Careers page](https://apidocs.hibob.com/docs/how-to-use-hiring-api-careers-page.md): Use Bob's Hiring API to integrate with your external careers page directly from Bob Hiring - [Integrate with ATS (Hire API)](https://apidocs.hibob.com/docs/how-to-integrate-with-ats-hire-api.md): How to develop an integration with Applicant Tracking Systems (ATS) and push new hires into Bob seamlessly - [Read employee data](https://apidocs.hibob.com/docs/how-to-read-employee-data.md): Learn how to retrieve and process employee data using Bob’s API - [People read API contract](https://apidocs.hibob.com/docs/people-read-api-contract.md): Request and response rules for POST /people/search and POST /people/{identifier} — field IDs, permissions, filters, no pagination (full result set), silent omissions, and payload shapes. - [Update employee data](https://apidocs.hibob.com/docs/update-employee-data.md): Learn how to update employee data fields using Bob’s API - [Create an employee](https://apidocs.hibob.com/docs/create-employee.md): Learn how to update employee data fields using Bob’s API - [Categories and permissions](https://apidocs.hibob.com/docs/categories-and-permissions.md): Understand how to set service user permissions to fields and categories - [Fields and lists metadata](https://apidocs.hibob.com/docs/fields-metadata.md): Learn how to use field metadata to efficiently extract and manage field data. - [Employee tables and custom tables](https://apidocs.hibob.com/docs/additional-employee-data.md): Learn how to retrieve employee data stored in tables - [Marketplace partner integrations](https://apidocs.hibob.com/docs/marketplace-partner-integrations-oauth-only.md): Documentation for approved HiBob Marketplace partners building OAuth app integrations via the Developer Portal - [Quick start guide](https://apidocs.hibob.com/docs/add-and-submit-an-app.md): Learn how to add and submit an app in the Developer Portal - [Managing customer installations](https://apidocs.hibob.com/docs/managing-customer-installations.md): Multi-tenant install scenarios for Marketplace partners — linking Bob companies to your customers, handling callbacks, and detecting uninstalls - [Getting started with partner webhooks ](https://apidocs.hibob.com/docs/getting-started-with-partner-webhooks.md): Learn how partner applications manage webhook delivery and retries ## API Reference - [Start developing with the API](https://apidocs.hibob.com/reference/getting-started-with-bob-api.md): Get started with Bob's API reference guide - [Authorization](https://apidocs.hibob.com/reference/authorization.md): How to build the authorization header when sending HTTP calls to Bob. - [Permissions](https://apidocs.hibob.com/reference/permissions.md): Learn about setting service user permissions to access the data in Bob - [Testing](https://apidocs.hibob.com/reference/testing.md): Learn how to test endpoints using your own data - [Rate limiting](https://apidocs.hibob.com/reference/rate-limiting.md): Learn how we limit access to endpoints and to our server - [Pagination](https://apidocs.hibob.com/reference/pagination-1.md): Bob offers cursor-based pagination for some of our API’s collection endpoints. - [Object-based endpoints](https://apidocs.hibob.com/reference/object-based-endpoints.md): Learn about the new object-based endpoints in our public API - [Error handling](https://apidocs.hibob.com/reference/error-handling.md): Learn how Bob's public APIs handle errors - [OAuth 2.0](https://apidocs.hibob.com/reference/oauth-20.md): Learn how partners can use HiBob's OAuth Integration - [Scopes mapping to endpoints](https://apidocs.hibob.com/reference/scopes-mapping-to-endpoints.md): Learn how to work with scopes when integrating with ob - [Getting started with Webhooks](https://apidocs.hibob.com/reference/getting-started-webhooks.md): Learn how to subscribe to events in Bob and be notified whenever a change occurs. - [Sample API calls from webhook](https://apidocs.hibob.com/reference/api-calls-for-webhook-events.md): API calls examples to retrieve the data relevant to webhook events - [[ Legacy] Webhooks v1](https://apidocs.hibob.com/reference/webhook-events-v1.md) - [Employee events (v1 Legacy)](https://apidocs.hibob.com/reference/employee-changes-events.md): The following events can be used to create Employee data updates Webhooks. - [Time off events (v1 Legacy)](https://apidocs.hibob.com/reference/time-off-webhook-events.md): The following events can be used to create Time off request Webhooks. - [Task events (v1 Legacy)](https://apidocs.hibob.com/reference/employee-task-events.md): Receive notifications about triggered task lists and tasks status updates. - [eSign events (v1 Legacy)](https://apidocs.hibob.com/reference/esign-document-signing-event.md) - [People](https://apidocs.hibob.com/reference/people.md): The People API provides access to the details of your company employees. - [Search for employees](https://apidocs.hibob.com/reference/post_people-search.md): Search employee fields for many employees in one call.

See Critical behaviors below on this page for field IDs, filters, showInactive, permissions, no pagination, large-company batching, and integration limits. Full contract: People read API contract.

Testing notes:

  1. Use Try It! and Examples > Request Example (default: active employees only; other examples cover terminated employees and batched reads by ID).
  2. Explore the response payload using the Example in the Response panel.
- [Read company employee fields by employee ID.](https://apidocs.hibob.com/reference/post_people-identifier.md): Single-employee read endpoint (not bulk search): returns field data for one employee identified by backend ID or email in the path in a single response. No pagination. For many employees in one call, use Search for employees. See Pagination and result scope. This endpoint uses POST (not GET) because the request body selects fields.

Before using this endpoint — see the People read API contract and People API (rate limits, permissions table, troubleshooting):

Testing notes:

  1. Use the testing widget's Try It! option to test this endpoint.
  2. Use Examples > Request Example to see body parameters.
  3. Explore the response payload using the Example in the Response panel (human-readable and machine-format).
- [Update company employee.](https://apidocs.hibob.com/reference/put_people-identifier.md): This endpoint allows you to update specific fields in an employee's record in Bob.

**Important**: Although this is a PUT method, it behaves like a PATCH request—you only need to send the fields you want to update, and any other fields will remain unchanged.

**Before using this endpoint**, read the instructions on how to update employee data. You can find them here: Update Employee data.

**Notes**:
  1. Only employee **fields** are supported; table updates are not allowed via this endpoint.
  2. **Position** fields cannot be updated using this endpoint.
  3. Recently updated employee data may take a few seconds to become available when fetching data. If you read immediately after an update, the response may still show the previous value or null. Wait up to 20 seconds before a follow-up read. See Read-after-update consistency.
- [Read the public profile section of all active employees.](https://apidocs.hibob.com/reference/get_profiles.md):

Returns a predefined list of fields for all active employees the service user can access. Refer to the '200' response for the response schema.

Ensure the service user has the necessary permissions to access all the users and fields you want to retrieve, including the vasic default fields permissions.

Explore the People API main reference page for information about rate limits, permissions, troubleshooting and more.

- [Create company employee.](https://apidocs.hibob.com/reference/post_people.md):
This endpoint allows you to create a new employee in the system.
The request body must include the minimum required fields: `email`, `firstName`, `surname`, and the `work` object with `site` and `startDate`.
While not all fields are mandatory, we recommend populating as many fields as possible to ensure complete employee records from the start.
Specifically, it's recommended to include `work.department` and `work.title`.
You can include **any additional fields** from the [Fields Metadata API](https://apidocs.hibob.com/reference/get_company-people-fields) to enrich the employee's profile during creation. - [Revoke access to Bob for an employee.](https://apidocs.hibob.com/reference/post_employees-identifier-uninvite.md):

Explore the People API main reference page for information about rate limits, permissions, troubleshooting and more.

- [Terminate company employee.](https://apidocs.hibob.com/reference/post_employees-identifier-terminate.md): This changes the employee’s status to Terminated according to specified termination date.

Explore the People API main reference page for information about rate limits, permissions, troubleshooting and more.

- [Invite an employee with a welcome wizard ID.](https://apidocs.hibob.com/reference/post_employees-employeeid-invitations.md):

Explore the People API main reference page for information about rate limits, permissions, troubleshooting and more.

- [Set or update an employee's start date.](https://apidocs.hibob.com/reference/post_employees-employeeid-start-date.md):

Explore the People API main reference page for information about rate limits, permissions, troubleshooting and more.

- [Read avatar for an employee email](https://apidocs.hibob.com/reference/get_avatars.md): Returns the avatar image URL of the employee. - [Read avatar for an employee ID.](https://apidocs.hibob.com/reference/get_avatars-employeeid.md): Returns the avatar image URL of the employee. - [Upload employee's avatar by image url](https://apidocs.hibob.com/reference/put_avatars-employeeid.md): Upload an employee's Avatar by providing a URL to the image to upload.
- [Update an employee's email address.](https://apidocs.hibob.com/reference/put_people-id-email.md): Change an employee's email address. If you cannot change the self email an invitation will be sent to the new address to verify the email if the employee is invited/active.
- [Onboarding](https://apidocs.hibob.com/reference/onboarding.md): The Onboarding API provides access to the details of your onboarding wizards. - [Get a summary of all onboarding wizards.](https://apidocs.hibob.com/reference/get_onboarding-wizards.md): Wizard info includes Wizard ID, name and description.
Supported user types: Service. - [Metadata](https://apidocs.hibob.com/reference/metadata.md): The Matadata API provides access to the details of your company resources. - [Get all employee fields.](https://apidocs.hibob.com/reference/get_company-people-fields.md): This endpoint retrieves only metadata about the employee fields and includes all employee fields. Calling this endpoint does not require any permissions for the service user performing this action.

However, fetching the actual data requires setting the relevant permissions for the service user, including permissions to access employee data and relevant categories.
To learn more, see Search for employees . - [Create a new field.](https://apidocs.hibob.com/reference/post_company-people-fields.md) - [Update an existing field](https://apidocs.hibob.com/reference/put_company-people-fields-fieldid.md) - [Delete an existing field.](https://apidocs.hibob.com/reference/delete_company-people-fields-fieldid.md) - [Get all company lists](https://apidocs.hibob.com/reference/get_company-named-lists.md) - [Get a specific company list by name.](https://apidocs.hibob.com/reference/get_company-named-lists-listname.md) - [Add a new item to an existing list.](https://apidocs.hibob.com/reference/post_company-named-lists-listname.md) - [Update an existing item from a list.](https://apidocs.hibob.com/reference/put_company-named-lists-listname-itemid.md) - [Delete an item from an existing list.](https://apidocs.hibob.com/reference/delete_company-named-lists-listname-itemid.md) - [Employee Tables](https://apidocs.hibob.com/reference/employee-tables.md): The Employee Tables API provides access to the details of your company employees's data tables. - [List work history for a list of employees](https://apidocs.hibob.com/reference/get_bulk-people-work.md): Returns a list of historical work entries from the work table for all employees or a specific list of employees.

**Required permissions**
In order to access the work history of each requested employee, the service user making the call must have the following permissions:
**For all the work table entries**: People's Data > Work > View selected employees' Work section histories.
**For the current effective work entry only**: People's Data > Work > View selected employees' Work sections.
**For the employees**: People's Data > Access data for > Make sure the employees are in the list. Employees that are not listed and were specifically requested will be listed under `errors` in the response.

**Pagination**
This endpoint uses cursor-based pagination to handle large number of table entries. To learn more, see Pagination in Bob's API - [List the lifecycle history for a list of employees.](https://apidocs.hibob.com/reference/get_bulk-people-lifecycle.md): Returns a list of historical lifecycle entries from the lifecycle table for all employees or a specific list of employees.

**Required permissions**
In order to access the lifecycle history of each requested employee, the service user making the call must have the following permissions:
**For all the lifecycle table entries**: People's Data > Lifecycle > View selected employees' Lifecycle section histories.
**For the current effective lifecycle entry only**: People's Data > Lifecycle > View selected employees' Lifecycle sections.
**For the employees**: People's Data > Access data for > Make sure the employees are in the list. Employees that are not listed and were specifically requested will be listed under `errors` in the response.
**Pagination**
This endpoint uses cursor-based pagination to handle large number of table entries. To learn more, see Pagination in Bob's API - [List employment history for a list of employees.](https://apidocs.hibob.com/reference/get_bulk-people-employment.md):

Returns a list of historical employment entries from the employment table for all employees or a specific list of employees.

Each employment entry includes the working pattern assigned to this employee. To learn more about working patterns, see How to work with Working patterns.

Required permissions

In order to access the employment history of each requested employee, the service user making the call must have the following permissions:

  • For all the employment table entries: People's Data > Employment > View selected employees' Employment section histories.
  • For the current effective employment entry only: People's Data > Employment > View selected employees' Employment sections.
  • For the employees: People's Data > Access data for: Make sure the employees are in the list. Employees that are not listed and were specifically requested will be listed under `errors` in the response.
  • Pagination

    This endpoint uses cursor-based pagination to handle large number of table entries. To learn more, see Pagination in Bob's API.

    - [List payroll history (salaries) for a list of employees.](https://apidocs.hibob.com/reference/get_bulk-people-salaries.md): Returns a list of historical salary entries from the payroll table for all employees or a specific list of employees.

    **Required permissions**
    In order to access the payroll history of each requested employee, the service user making the call must have the following permissions:
    **For all the salary table entries**: People's Data > Payroll > View selected employees' Payroll section histories.
    **For the current effective salary entry only**: People's Data > Payroll > View selected employees' Payroll sections.
    **For the employees**: People's Data > Access data for > Make sure the employees are in the list. Employees that are not listed and were specifically requested will be listed under `errors` in the response.
    **Pagination**
    This endpoint uses cursor-based pagination to handle large number of table entries. To learn more, see Pagination in Bob's API - [Search for actual payments](https://apidocs.hibob.com/reference/post_people-actual-payments-search.md): This endpoint allows you to search for actual payments based on various filters.

    **Pagination**
    This endpoint uses cursor-based pagination to handle large number of table entries. To learn more, see Pagination in Bob's API

    Required permissions
    **For all the actual payments table entries**: People's Data > Payroll > View selected employees' Payroll section histories.
    **For the employees**: People's Data > Access data for > Make sure the employees are in the list. Employees that are not listed and were specifically requested will be listed under `errors` in the response.

    **Testing notes**:
    1. Use the testing widget's **Try It!** option to test this endpoint.
    2. Request Example: Use the **Examples > Request example** option to see how to initiate body parameters.
    3. **To test more than a single filter**, copy the example to an external API testing app like Postman for better filtering options.
    4. Response Example: View the response payload using the **Response > Response example** option in the response on the right. - [List employee's work history](https://apidocs.hibob.com/reference/get_people-id-work.md): Returns a list of historical work entries from the work table for an employee.

    **Required permissions**
    In order to access the work history, the service user making the call must have the following permissions:
    **For all the work table entries**: People's Data > Work > View selected employees' Work section histories.
    **For the current effective work entry only**: People's Data > Work > View selected employees' Work sections.
    **For the employee**: People's Data > Access data for > Make sure the employee is in the list.

    - [Create a new work entry for a given employee.](https://apidocs.hibob.com/reference/post_people-id-work.md) - [Update a work entry in the employee's work history table.](https://apidocs.hibob.com/reference/put_people-id-work-entry-id.md): This endpoint updates an entry in the employee’s work history table.
    The unique identifier for the work entry is the site and effective date.

    Note that the entire work entry will be overwritten with the data provided in your payload. Any columns not included in the payload will be cleared (set to empty values).

    Patch Update Flag:
    As a best practice, we recommend reading the entire work entry data, updating the necessary fields, and then writing back the entire entry. However, for legacy purposes, we provide the flag: patchUpdate=true, which functions similarly to a PATCH request.
    When using this flag, please note:
    1. Only the fields included in the payload will be updated; all others will remain unchanged.
    2. The identifier for the work entry should be entry_id, not the site/effective date.
    3. Note that using the patchUpdate approach is not recommended and should be reserved for legacy implementations only. - [Deletes a work entry from a given employee's work history.](https://apidocs.hibob.com/reference/delete_people-id-work-entry-id.md) - [List employee's employment history.](https://apidocs.hibob.com/reference/get_people-id-employment.md):

    Returns a list of employment history entries for a given employee.

    Each employment entry includes the working pattern assigned to this employee. To learn more about working patterns, see How to work with Working patterns.

    Required permissions

  • For all the employment table entries: People's Data > Employment > View selected employees' Employment section histories.
  • For the current effective employment entry only: People's Data > Employment > View selected employees' Employment sections.
  • For the employees: People's Data > Access data for: Make sure the employees are in the list. Employees that are not listed and were specifically requested will be listed under `errors` in the response.
  • - [Creates a new employment entry for a given employee.](https://apidocs.hibob.com/reference/post_people-id-employment.md) - [Update an employment entry from a given employee's employment history.](https://apidocs.hibob.com/reference/put_people-id-employment-entry-id.md): This endpoint updates an entry in the employee’s employment history table.

    Note that the entire employnebt entry will be overwritten with the data provided in your payload. Any columns not included in the payload will be cleared (set to empty values).

    - [Deletes an employment entry from a given employee's employment history.](https://apidocs.hibob.com/reference/delete_people-id-employment-entry-id.md) - [List employee's lifecycle status history.](https://apidocs.hibob.com/reference/get_people-id-lifecycle.md): Returns a list of historical lifecycle entries from the lifecycle table for an employee.

    **Required permissions**
    In order to access the lifecycle history, the service user making the call must have the following permissions:
    **For all the lifecycle table entries**: People's Data > Lifecycle > View selected employees' Lifecycle section histories.
    **For the current effective lifecycle entry only**: People's Data > Lifecycle > View selected employees' Lifecycle sections.
    **For the employees**: People's Data > Access data for > Make sure the employee is in the list. - [List employee's salary history.](https://apidocs.hibob.com/reference/get_people-id-salaries.md): Returns a list of historical salary entries from the salary table in the payroll section for an employee.

    **Required permissions**
    In order to access the payroll history, the service user making the call must have the following permissions:
    **For all the salary table entries**: People's Data > Payroll > View selected employees' Payroll section histories.
    **For the current effective salary entry only**: People's Data > Payroll > View selected employees' Payroll sections.
    **For the employee**: People's Data > Access data for > Make sure the employee is in the list. - [Creates a new salary entry for a given employee.](https://apidocs.hibob.com/reference/post_people-id-salaries.md) - [Deletes a salary entry from the employee's list.](https://apidocs.hibob.com/reference/delete_people-id-salaries-entry-id.md) - [Read payroll tables history.](https://apidocs.hibob.com/reference/get_payroll-history.md): Note: This endpoint is maintained for legacy purposes but is planned for deprecation in the future. We recommend using alternative employee table endpoints where possible. - [List the employee's equity grants.](https://apidocs.hibob.com/reference/get_people-id-equities.md): Returns a list of equity grants for a given employee. - [Creates a new equity grant for a given employee.](https://apidocs.hibob.com/reference/post_people-id-equities.md) - [Updates an equity grant for an employee](https://apidocs.hibob.com/reference/put_people-id-equities-entry-id.md): This endpoint updates an entry in the employee’s equity table.

    Note that the entire equities entry will be overwritten with the data provided in your payload. Any columns not included in the payload will be cleared (set to empty values).

    - [Deletes an equity grant for an employee.](https://apidocs.hibob.com/reference/delete_people-id-equities-entry-id.md) - [List employee's variable payments](https://apidocs.hibob.com/reference/get_people-id-variable.md): Returns a list of variable payments for a given employee.
    Returns a list of the bank accounts table entries for a given employee.

    Important:
    The Bank Account details are listed under the 'Financial' category in Bob's UI. They include basic bank account details, and may include also a list of bank accounts (if using more than a single bank account).

    If you are using a list of Bank Accounts:
    Use this endpoint will fetch the list of bank accounts.
    Use the Read metadata for specific custom table endpoint and provide the table name: `bankAccounts` to fetch the table's metadata.

    If you are using only a single Bank Account:
    To fetch the basic bank account details (not the table), use the employee's search endpoint instead, and specify the fields you want to fetch (e.g. 'financial.bankName'). To learn more, see how to work with Fields, Custom fields and Lists.

    See the '200' response for the body response. - [Create a new bank account entry for a given employee.](https://apidocs.hibob.com/reference/post_people-id-bank-accounts.md) - [Update a bank account entry in the employee's bank accounts table.](https://apidocs.hibob.com/reference/put_people-id-bank-accounts-entry-id.md): This endpoint updates an entry in the employee’s Bank accounts table.
    The unique identifier for the bank account entry is the entry id. To obtain the employee's bank account entries use the GET /people/{employee-id}/bank-accounts endpoint.

    **Notes**:
    1. **Out-of-the-box columns**: These columns will be completely overwritten with the data provided in your payload. Any columns not included in the payload will be cleared (set to empty values). 2. **Custom columns**: These columns will remain unchanged unless explicitly included in the payload.

    - [Deletes a bank account entry from a given employee's bank accounts table.](https://apidocs.hibob.com/reference/delete_people-id-bank-accounts-entry-id.md) - [Custom Tables](https://apidocs.hibob.com/reference/custom-tables.md): The Custom Tables API provides access to the details of your company employees's custom tables. - [Read metadata of custom tables defined](https://apidocs.hibob.com/reference/get_people-custom-tables-metadata.md) - [Read metadata for specific custom table](https://apidocs.hibob.com/reference/get_people-custom-tables-metadata-custom-table-id.md) - [Read all entries of the given custom table](https://apidocs.hibob.com/reference/get_people-custom-tables-employee-id-custom-table-id.md) - [Create new custom table entry](https://apidocs.hibob.com/reference/post_people-custom-tables-employee-id-custom-table-id.md): Provide an array of columns and their values. Columns that are defined as **Mandatory** (from the custom column's settings) must be provided.
    Values can be any of the supported field types.

    **Note**: You can use **Examples > Request Example** option for a basic example, however, we recommend that you copy the endpoint to Postman and test more complicated structures using the JSON editor. - [Update custom table entry.](https://apidocs.hibob.com/reference/put_people-custom-tables-employee-id-custom-table-id-entry-id.md): Provide an array of columns and their values.
    **Important**: Although this is a PUT method, it behaves like a PATCH request, meaning you only need to send the fields you want to update, and any other fields will remain unchanged.
    Values can be any of the supported field types.

    **Note**: You can use **Examples > Request Example** option for a basic example, however, we recommend that you copy the endpoint to Postman and test more complicated structures using the JSON editor. - [Delete custom table entry](https://apidocs.hibob.com/reference/delete_people-custom-tables-employee-id-custom-table-id-entry-id.md) - [Employee data Webhooks](https://apidocs.hibob.com/reference/employee-data-webhooks.md): Receive notificaions about employee updates - [Employee created](https://apidocs.hibob.com/reference/post_webhook_employee-created.md): Triggered when an employee is created. In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Employee updated](https://apidocs.hibob.com/reference/post_webhook_employee-updated.md): Triggered when an employee's field is updated. The payload includes only the fields that were explicitly changed. Calculated fields affected by an update (e.g., age when birthDate changes) are not included. This event is also sent when a table entry create or update causes employee-level fields to change; the payload then contains the affected field IDs in fieldUpdates. Bank accounts and custom tables do not trigger this event when their entries change. In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Employee deleted](https://apidocs.hibob.com/reference/post_webhook_employee-deleted.md): Triggered when an employee is deleted. The payload includes the employee email so you can retain a reference to the deleted employee after their record is no longer accessible. In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Employee joined](https://apidocs.hibob.com/reference/post_webhook_employee-joined.md): Triggered when an employee is granted access, once the corresponding lifecycle entry becomes effective. Lifecycle events are triggered automatically at midnight on the effective date of the lifecycle table entry (according to the site's timezone). In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Employee terminated](https://apidocs.hibob.com/reference/post_webhook_employee-left.md): Triggered when an employee is set as terminated or on Garden leave (whichever occurs first), once the corresponding lifecycle entry becomes effective. Lifecycle events are triggered automatically at midnight on the effective date of the lifecycle table entry (according to the site's timezone). In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Employee activated](https://apidocs.hibob.com/reference/post_webhook_employee-activated.md): Triggered when an employee's access is enabled, once the corresponding lifecycle entry becomes effective. In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Employee inactivated](https://apidocs.hibob.com/reference/post_webhook_employee-inactivated.md): Triggered when an employee is set to be on leave or terminated, once the corresponding lifecycle entry becomes effective. This event is not triggered if **Remain active** is selected when putting the employee on leave. In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Employee on temporary leave](https://apidocs.hibob.com/reference/post_webhook_employee-temporary-leave.md): Triggered when an employee is set to be on temporary leave, once the corresponding lifecycle entry becomes effective. This event is not triggered if **Remain active** is selected when putting the employee on leave. In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Table entry created](https://apidocs.hibob.com/reference/post_webhook_table-entry-created.md): Triggered when an entry is added to an employee's table (including out-of-the-box and custom tables). Does not apply to Training, Equity, Positions, or Jobs tables. To identify the row/entry when fetching using the API, use the property that appears in the payload for that table type: - **id** — Included only for non-historical tables (e.g. custom tables, bank accounts). Identifies the entry row. Omitted for historical tables. - **effectiveDate** — Included only for historical tables. Identifies the entry row for that table type. Omitted for non-historical tables. Each event includes exactly one of `effectiveDate` or `id` inside `data`, depending on whether the table is historical. To learn more about table types, see Employee data modeling. When a table entry is created or updated, it may also update employee-level fields (e.g. derived or linked). In that case you will also receive an employee.updated event with the list of changed field IDs in fieldUpdates. Bank accounts and custom tables do not trigger this additional employee.updated event. In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Table entry updated](https://apidocs.hibob.com/reference/post_webhook_table-entry-updated.md): Triggered when an entry is updated in an employee's table (including out-of-the-box and custom tables). Does not apply to Training, Equity, Positions, or Jobs tables. To identify the row/entry when fetching using the API, use the property that appears in the payload for that table type: - **id** — Included only for non-historical tables (e.g. custom tables, bank accounts). Identifies the entry row. Omitted for historical tables. - **effectiveDate** — Included only for historical tables. Identifies the entry row for that table type. Omitted for non-historical tables. Each event includes exactly one of `effectiveDate` or `id` inside `data`, depending on whether the table is historical. To learn more about table types, see Employee data modeling. When a table entry is created or updated, it may also update employee-level fields (e.g. derived or linked). In that case you will also receive an employee.updated event with the list of changed field IDs in fieldUpdates. Bank accounts and custom tables do not trigger this additional employee.updated event. In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Time off requests](https://apidocs.hibob.com/reference/time-off.md): The Time off API provides access to the details of your company time off requests and policies. - [Submit a new time off request.](https://apidocs.hibob.com/reference/post_timeoff-employees-id-requests.md): Submits a new time off request.

    Time off requests can be of the listed types in the body params section below.

    Each request type requires different parameters in the body params. Select the type in the body params section to view the expected fields.

    **Testing Note:**
    To test each type of request:
    1. Open the relevant request type in the body params section.
    2. In the test widget on the right, click "Request Example" to open the menu, and select the request type you want to send.
    3. Update values and send.

    **Important testing disclaimer:** Changing the request type example does not automatically switch the parameters. First, select the request schema, and then select the equivalent request in the "Request Example" to avoid inconsistencies in the example fields. - [Get the details of an existing time off request.](https://apidocs.hibob.com/reference/get_timeoff-employees-id-requests-requestid.md): Retrieve the detailed info about an existing time off request.

    Possible time off request types: Each request type is represented by a separate schema with the relevant fields.

    Daily durations and cost:This endpoint returns a full daily duration and cost breakdown for all request types when includeDailyDurations=true is provided.

    Permissions required: Please refer to the main Time off API Required Permissions page.

    - [Cancel an existing time off request](https://apidocs.hibob.com/reference/delete_timeoff-employees-id-requests-requestid.md): Cancels an existing time off request.

    **Permissions required**: Please refer to the main Time off API Required Permissions page. - [Get time off requests changes](https://apidocs.hibob.com/reference/get_timeoff-requests-changes.md): Returns an array of all changes made to time off requests within a specified date range. Each item in the array includes: the time off request details at the time of the change, and the type of change, such as `created` or `deleted`. Optionally, requests that were changed to status `pending` can also be included.

    **Notes:**

    Durations and cost:

    Permissions required: Please refer to the main Time off API Required Permissions page.

    - [Read a list of who's out of the office.](https://apidocs.hibob.com/reference/get_timeoff-whosout.md): Returns time off information for a given date range, only for the users the Service User can access.

    Possible time off request types: Each request type is represented by a separate schema with the relevant fields.

    Durations and cost:

    Notes:

    - [Read a list of who's out of the office today or on the specified date.](https://apidocs.hibob.com/reference/get_timeoff-outtoday.md): Returns the list of people that have a time off request today or on the specified date, only for the users the Service User can access.

    Possible time off request types (requestRangeType): Each request type is represented by a separate schema with the relevant fields.

    Durations and cost:

    Notes:

    - [Time off balance](https://apidocs.hibob.com/reference/time-off-balance.md) - [Get the balance for a given employee](https://apidocs.hibob.com/reference/get_timeoff-employees-id-balance.md): Retrieve the balance for a given employee, for a given policy type, as of a given date.

    **Permissions required**: Please refer to the main Time off API Required Permissions page. - [Create a balance adjustment.](https://apidocs.hibob.com/reference/post_timeoff-employees-id-adjustments.md): Create a balance adjustment for a given employee for a given effective date.

    **Permissions required**: Please refer to the main Time off API Required Permissions page. - [Time off policies](https://apidocs.hibob.com/reference/time-off-policies.md) - [Get Policy type reason codes](https://apidocs.hibob.com/reference/get_timeoff-policy-types-policytype-reason-codes.md): Get list of reason codes for a given policy type.

    **Permissions required**: Please refer to the main Time off API Required Permissions page. - [Add a list of reason codes for a given policy type.](https://apidocs.hibob.com/reference/post_timeoff-policy-types-policytype-reason-codes.md): Add a list of reason codes for a given policy type.
    Supported user types: Service.
    **Permissions required**: Please refer to the main Time off API Required Permissions page. - [Get Policy type details](https://apidocs.hibob.com/reference/get_timeoff-policy-types-policytype.md): Get details about a given policy type.

    **Permissions required**: Please refer to the main Time off API Required Permissions page.

    - [Get all policy types names.](https://apidocs.hibob.com/reference/get_timeoff-policy-types.md): Get a list of all policy type names.

    **Permissions required**: Please refer to the main Time off API Required Permissions page. - [Get Policy details.](https://apidocs.hibob.com/reference/get_timeoff-policies.md): Get details about a given policy.

    **Permissions required**: Please refer to the main Time off API Required Permissions page. - [Get a list of policy names for a given policy type.](https://apidocs.hibob.com/reference/get_timeoff-policies-names.md): Get a list of policy names for the user's defined policy type.

    **Permissions required**: Please refer to the main Time off API Required Permissions page. - [Calendar events](https://apidocs.hibob.com/reference/calendar-events.md) - [Search calendar events](https://apidocs.hibob.com/reference/post_timeoff-calendars-events-search.md): Read company-wide holidays and closures for a date range. Use with Search employee calendars to resolve which calendar applies to each employee before fetching events. - [Search Employee Calendars](https://apidocs.hibob.com/reference/post_timeoff-calendars-employees-search.md): Resolves which holiday calendar applies to each employee in a single bulk call. Each employee's effective calendar is computed server-side using the canonical resolution rule (matches Bob's product behaviour): 1. **Employment override** — if `payroll.employment.calendarId` is set on the employee's employment record **and** that calendar currently exists in the company, it is returned with `source = employment`. 2. **Site default** — otherwise, the calendar assigned to the employee's site is returned with `source = site`. 3. **None** — if neither layer supplies a calendar (no override and the site has no calendar configured, or the employee has no site), the item is returned with `source = none` and `calendarId` / `calendarName` set to `null`. **Missing employees:** Employee IDs that don't exist in the caller's company are silently dropped from `items` (the request does **not** fail). Diff the requested IDs against the returned `employeeId`s to detect unknowns. **OAuth scopes (app-user):** `timeoff.calendars:write` AND `employee_data:read`. **IAM permission:** `Settings / Calendars / Manage` (company-scoped). - [Time off Webhooks](https://apidocs.hibob.com/reference/time-off-webhooks.md): Receive notifications about Time off requests - [Time off request requested](https://apidocs.hibob.com/reference/post_webhook_timeoff-request-requested.md): Triggered when submitting a time off request. Use the **getApi** URL in the payload to retrieve the full request details. When using the getApi URL immediately after this event, the status in the response will be **approved** if the request was auto-approved, or **pending** if it is awaiting approval. In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Time off request approved](https://apidocs.hibob.com/reference/post_webhook_timeoff-request-approved.md): Triggered when approving a time off request. For auto-approved requests, two events are sent in sequence: **requested** then **approved**. In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Time off request declined](https://apidocs.hibob.com/reference/post_webhook_timeoff-request-declined.md): Triggered when declining a time off request. When using the **getApi** URL to retrieve details of a declined request, the status in the response will be **disapproved** (not "declined"). In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Time off request cancelled](https://apidocs.hibob.com/reference/post_webhook_timeoff-request-cancelled.md): Triggered when cancelling a time off request. In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Time off request deleted](https://apidocs.hibob.com/reference/post_webhook_timeoff-request-deleted.md): Triggered when deleting a time off request. In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Time off request updated](https://apidocs.hibob.com/reference/post_webhook_timeoff-request-updated.md): Triggered when updating a time off request. For date or time changes (hard-update), a new request replaces the existing one. The payload then includes **originalRequestId** (the very first request before any modifications) and **previousRequestId** (the most recently replaced request). In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Time off request created from import](https://apidocs.hibob.com/reference/post_webhook_timeoff-request-imported.md): Triggered when importing a time off request. Imported requests are always approved by default. When using the **getApi** URL immediately after this event, the status in the response will be **approved**. In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Set end date to a time off request](https://apidocs.hibob.com/reference/post_webhook_timeoff-request-set-end-date.md): Triggered when setting the end date of an open-ended time off request. In the right panel, open **Examples** and select **Payload Example** to see a real payload. - [Attendance](https://apidocs.hibob.com/reference/attendance.md): Use the API to manage attendance entries and projects in Bob - [Import attendance data](https://apidocs.hibob.com/reference/post_attendance-import-importmethod.md):

    This endpoint allows you to import attendance punches (entries) for employees.

    Before using this endpoint: