Skip to main content

Bamboo HR Destination

Nexla's bi-directional connectors allow data to flow both to and from any location, making it simple to create a sync or streaming data flow that sends data to a BambooHR location.
bamboohr_api.png

Bamboo HR

Create a BambooHR Destination

  1. Click the + icon on the Nexset that will be sent to the BambooHR destination, and select the Send to Destination option from the menu.

  2. Select the BambooHR connector from the list of available destination connectors. Then, select the credential that will be used to connect to the BambooHR organization, and click Next; or, create a new BambooHR credential for use in this flow.

  3. In Nexla, BambooHR destinations can be created using pre-built endpoint templates, which expedite destination setup for common BambooHR endpoints. Each template is designed specifically for the corresponding BambooHR endpoint, making destination configuration easy and efficient.
    • To configure this destination using a template, follow the instructions in Configure Using a Template.

    BambooHR destinations can also be configured manually, allowing you to send data to BambooHR endpoints not included in the pre-built templates or apply further customizations to exactly suit your needs.
    • To configure this destination manually, follow the instructions in Configure Manually.

Configure Using a Template

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common BambooHR endpoints. Each template is designed specifically for the corresponding BambooHR endpoint, making destination setup easy and efficient.

  • To configure this destination using a template, select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.

    Add new Employees

    This endpoint creates new employee records in your BambooHR account. Use this endpoint when you need to add new employees from your data sources, such as onboarding new hires or importing employee data from other systems.

    • This endpoint uses POST requests to the BambooHR Employees API endpoint (https://api.bamboohr.com/api/gateway.php/{companyDomain}/v1/employees). The endpoint URL is automatically constructed based on your credential's company subdomain configuration.
    • The endpoint sends data from your Nexset as the request body in JSON format. Each record in your Nexset will be sent as a JSON object containing the employee data to create. The request body should follow the BambooHR API specification for adding employees, including required fields and field names.
    • Ensure your Nexset data includes the required fields for employee creation. New employees must have at least a first name and a last name. Additional fields such as email, job title, department, and other employee information can be included based on your BambooHR account configuration and field requirements.
    • Batch mode is disabled by default for this endpoint. Each record in your Nexset will be sent as a separate API request to create an employee. If you need to add multiple employees, you can send multiple records, but each will be processed as a separate request.

    The request body must be properly formatted JSON that matches the BambooHR API specification for adding employees. New employees must have at least a first name (firstName) and a last name (lastName) in the request body. The endpoint requires Basic Authentication with your API key, which is handled automatically by your credential configuration. The Content-Type: application/json header is automatically included in requests. Batch mode is disabled by default (batch.mode: false), so each record will be sent as a separate request. For detailed information about adding employees, including required fields, field names, and request formats, see the BambooHR API documentation.

Configure Manually

BambooHR destinations can be manually configured to send data to any valid BambooHR API endpoint. Manual configuration provides maximum flexibility for accessing endpoints not covered by pre-built templates or when you need custom API configurations.

API Method

  1. To manually configure this destination, select the Advanced tab at the top of the configuration screen.

  2. Select the API method that will be used for calls to the BambooHR API from the Method pulldown menu. The BambooHR API primarily uses POST, PUT, and PATCH requests for data writing operations. The most common methods are:

    • POST: For creating new resources (e.g., creating employees)
    • PUT: For updating existing data
    • PATCH: For partial updates to existing data
    • DELETE: For removing data

API Endpoint URL

  1. Enter the URL of the BambooHR API endpoint to which this destination will send data in the Set API URL field. This should be the complete URL including the protocol (https://) and any required path parameters. BambooHR API endpoints typically follow the pattern https://api.bamboohr.com/api/gateway.php/{companyDomain}/v1/{api_path} where {companyDomain} is your company subdomain and {api_path} is the specific API path.

Ensure the API endpoint URL is correct and accessible with your current credentials. The BambooHR API endpoint URL is automatically constructed based on your credential's company subdomain configuration. You can test the endpoint using the Test button after configuring the URL. BambooHR API requests require Basic Authentication with your API key, which is handled automatically by your credential configuration. For detailed information about BambooHR API endpoints and available APIs, see the BambooHR API documentation.

Request Headers

Optional
  • If Nexla should include any additional request headers in API calls to this destination, enter the headers & corresponding values as comma-separated pairs in the Request Headers field (e.g., header1:value1,header2:value2). Additional headers are often required for API versioning, content type specifications, or custom authentication requirements.

    You do not need to include any headers already present in the credentials. Common headers like Authorization, Content-Type, and Accept are typically handled automatically by Nexla based on your credential configuration. BambooHR API requests require Basic Authentication with your API key, which is handled automatically by your credential configuration. The Content-Type: application/json header is typically set automatically for JSON request bodies.

Request Body

Optional
  • If the API endpoint requires a specific request body format, configure how Nexla should format the request body from your Nexset data. The request body can be sent as JSON, XML, or form data, depending on the API endpoint requirements.

    • For JSON format, select JSON from the Request Body Format dropdown, and the Nexset data will be sent as a JSON object in the request body. BambooHR API endpoints typically use JSON format for request bodies.

    • For XML format, select XML from the Request Body Format dropdown, and the Nexset data will be converted to XML format in the request body.

    • For Form data format, select Form Data from the Request Body Format dropdown, and the Nexset data will be sent as form-encoded data in the request body.

The request body format should match the requirements of the specific BambooHR API endpoint you're using. Most BambooHR API endpoints use JSON format for request bodies. Ensure your Nexset data structure matches the expected format for the API endpoint, including required fields, data types, and nested structures as specified in the BambooHR API documentation. For employee creation, ensure the request body includes at least firstName and lastName fields.

Save & Activate the Destination

  1. Once all of the relevant steps in the above sections have been completed, click the Create button in the upper right corner of the screen to save and create the new BambooHR destination. Nexla will now begin sending data from the selected Nexset to the configured endpoint.