Skip to main content

Zenefits

Zenefits (now part of the TriNet HR platform) is a cloud-based human resources platform that manages employees, employment records, departments, time off, and time and attendance. The Zenefits REST API exposes this HR data over OAuth 2.0, letting Nexla ingest core people and organizational data and push updates back to platform company installs and subscriptions.

Zenefits icon

Power end-to-end data operations for your Zenefits API with Nexla. Our bi-directional Zenefits connector is purpose-built for Zenefits, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Zenefits or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Zenefits workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

The Zenefits connector authenticates with OAuth 2.0. To connect, you need a registered Zenefits developer application that provides a Client ID and Client Secret, along with the OAuth scopes your integration requires. OAuth access to the Zenefits API is limited to account administrators.

To obtain your credentials, follow these steps:

  1. Sign in to the Zenefits Developer Portal with an administrator account.

  2. Register a new application. During registration you provide a redirect URI and request the scopes your integration needs (for example, platform, companies, people, and employments).

  3. After the application is registered, Zenefits issues a Client ID and a Client Secret. Copy both values and store the Client Secret securely, as it should not be shared.

  4. Confirm the OAuth endpoints for the authorization-code flow: the authorization URL is https://secure.zenefits.com/oauth2/platform-authorize/ and the token URL is https://secure.zenefits.com/oauth2/token/. These are used to authorize the app and exchange the authorization code for an access token and refresh token.

When you create the credential in Nexla, you will be redirected to Zenefits to authorize the application; Nexla then stores the resulting tokens and refreshes them automatically. For details on authentication and available resources, see the Zenefits API documentation.

Authenticate

Credentials required

An OAuth authentication flow where users must authorize an application to access their data

FieldRequiredSecretDescription
Authorization URLNoNoThe URL endpoint where users authenticate and authorize access
Token URLNoNoThe URL endpoint used to exchange the authorization code for an access token
Client IDYesNoA unique public identifier assigned to your Zenefits application
Client IDYesNoA unique public identifier assigned to your Zenefits application
Client SecretYesYesA confidential password provided alongside the client ID
Response TypeNoNoThe OAuth2 response type requested during authorization
Grant TypeNoNoThe OAuth2 grant type used when exchanging the authorization code
ScopesNoNoSpace-delimited list of Zenefits OAuth scopes requested during authorization

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

  2. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  3. Confirm the pre-filled Authorization URL, Token URL, Response Type, Grant Type, and Scopes values, adjusting the scopes if your integration requires additional access.

  4. Enter the Client ID and Client Secret from your registered Zenefits application.

  5. Click the Save button, then complete the Zenefits authorization prompt to grant Nexla access. Once authorized, the credential will appear as a tile on the Authenticate screen during data source/destination creation.

    OAuth access to the Zenefits API is limited to account administrators, so authorize the application with an admin account. Nexla stores the access and refresh tokens returned by Zenefits and refreshes them automatically.

    For detailed information about authentication, scopes, and available resources, see the Zenefits API documentation.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Zenefits connector tile, then select the credential that will be used to connect to Zenefits, and click Next; or, create a new Zenefits credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Zenefits endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

[Rest API] List Labor Groups

This endpoint template retrieves labor groups from your Zenefits account. Use it when you need to ingest labor group records for analysis, reporting, or downstream integration.

  • This endpoint returns paginated results. Nexla automatically follows the pagination links to fetch subsequent pages of data.

For detailed information about this resource and its response fields, see the Zenefits API documentation.

[Rest API] List Labor Group Types

This endpoint template retrieves labor group types from your Zenefits account. Use it when you need to ingest the set of labor group type definitions for analysis, reporting, or downstream integration.

  • This endpoint returns paginated results. Nexla automatically follows the pagination links to fetch subsequent pages of data.

For detailed information about this resource and its response fields, see the Zenefits API documentation.

[Rest API] List People

This endpoint template retrieves people (employees) from your Zenefits account. Use it when you need to ingest employee records for analysis, reporting, or downstream integration.

  • This endpoint returns paginated results. Nexla automatically follows the pagination links to fetch subsequent pages of data.

For detailed information about this resource and its response fields, see the Zenefits API documentation.

[Rest API] List Employments

This endpoint template retrieves employment records from your Zenefits account. Use it when you need to ingest employment history and status data for analysis, reporting, or downstream integration.

  • This endpoint returns paginated results. Nexla automatically follows the pagination links to fetch subsequent pages of data.

For detailed information about this resource and its response fields, see the Zenefits API documentation.

[Rest API] List Departments

This endpoint template retrieves departments from your Zenefits account. Use it when you need to ingest department records for analysis, reporting, or downstream integration.

  • This endpoint returns paginated results. Nexla automatically follows the pagination links to fetch subsequent pages of data.

For detailed information about this resource and its response fields, see the Zenefits API documentation.

[Rest API] List Locations

This endpoint template retrieves locations from your Zenefits account. Use it when you need to ingest company location records for analysis, reporting, or downstream integration.

  • This endpoint returns paginated results. Nexla automatically follows the pagination links to fetch subsequent pages of data.

For detailed information about this resource and its response fields, see the Zenefits API documentation.

[Rest API] List Custom Fields

This endpoint template retrieves custom field definitions from your Zenefits account. Use it when you need to ingest the set of custom fields configured on your account for analysis, reporting, or downstream integration.

  • This endpoint returns paginated results. Nexla automatically follows the pagination links to fetch subsequent pages of data.

For detailed information about this resource and its response fields, see the Zenefits API documentation.

[Rest API] List Custom Field Values

This endpoint template retrieves custom field values from your Zenefits account. Use it when you need to ingest the values recorded for custom fields for analysis, reporting, or downstream integration.

  • This endpoint returns paginated results. Nexla automatically follows the pagination links to fetch subsequent pages of data.

For detailed information about this resource and its response fields, see the Zenefits API documentation.

[Rest API] List Vacation Requests

This endpoint template retrieves vacation requests from your Zenefits account. Use it when you need to ingest time-off request records for analysis, reporting, or downstream integration.

  • This endpoint returns paginated results. Nexla automatically follows the pagination links to fetch subsequent pages of data.

For detailed information about this resource and its response fields, see the Zenefits API documentation.

[Rest API] List Vacation Types

This endpoint template retrieves vacation types from your Zenefits account. Use it when you need to ingest the set of time-off type definitions for analysis, reporting, or downstream integration.

  • This endpoint returns paginated results. Nexla automatically follows the pagination links to fetch subsequent pages of data.

For detailed information about this resource and its response fields, see the Zenefits API documentation.

[Rest API] List Time Durations

This endpoint template retrieves time durations from your Zenefits account. Use it when you need to ingest time and attendance duration records for analysis, reporting, or downstream integration.

  • This endpoint returns paginated results. Nexla automatically follows the pagination links to fetch subsequent pages of data.

For detailed information about this resource and its response fields, see the Zenefits API documentation.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

Zenefits data sources can also be manually configured to ingest data from any valid Zenefits API endpoint, including endpoints not covered by the pre-built templates, chained API calls, or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.

Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Zenefits data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.

Use as a destination

Click the + icon on the Nexset that will be sent to the Zenefits destination, and select the Send to Destination option from the menu. Select the Zenefits connector from the list of available destination connectors, then select the credential that will be used to connect to Zenefits, and click Next; or, create a new Zenefits credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Zenefits endpoints. 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.

[Rest API] Update Company Install Fields

This endpoint template modifies field values for a company application installation. Use it when you need to push field changes to a Zenefits company install based on records from a Nexset.

  • This endpoint sends each record from your Nexset as a JSON request body to the company install fields-changes endpoint. Ensure the record structure matches the format expected by the Zenefits API.

For detailed information about request body formats and platform resources, see the Zenefits getting started documentation.

[Rest API] Update Company Install Status

This endpoint template updates the operational status of a company application installation. Use it when you need to change the state of a Zenefits company install based on records from a Nexset.

  • This endpoint sends each record from your Nexset as a JSON request body to the company install status-changes endpoint. Ensure the record structure matches the format expected by the Zenefits API.

For detailed information about request body formats and platform resources, see the Zenefits getting started documentation.

[Rest API] Create Platform Flow

This endpoint template establishes a new platform workflow subscription and automation rule. Use it when you need to create Zenefits platform flows based on records from a Nexset.

  • This endpoint sends each record from your Nexset as a JSON request body to the platform flows endpoint. Ensure the record structure matches the format expected by the Zenefits API.

For detailed information about request body formats and platform resources, see the Zenefits getting started documentation.

[Rest API] Update Person Subscription Fields

This endpoint template modifies field settings for an individual employee subscription record. Use it when you need to push field changes to a Zenefits person subscription based on records from a Nexset.

  • This endpoint sends each record from your Nexset as a JSON request body to the person subscription fields-changes endpoint. Ensure the record structure matches the format expected by the Zenefits API.

For detailed information about request body formats and platform resources, see the Zenefits getting started documentation.

[Rest API] Update Person Subscription Status

This endpoint template changes the active or inactive state of an employee subscription. Use it when you need to update the status of a Zenefits person subscription based on records from a Nexset.

  • This endpoint sends each record from your Nexset as a JSON request body to the person subscription status-changes endpoint. Ensure the record structure matches the format expected by the Zenefits API.

For detailed information about request body formats and platform resources, see the Zenefits getting started documentation.

Manual configuration

Zenefits destinations can also be manually configured to send data to any valid Zenefits API endpoint. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, data format, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.

Zenefits platform endpoints expect JSON request bodies. Several endpoints target a specific company install, person subscription, or flow, so ensure your Nexset provides the identifiers required by the endpoint you select.

Save & activate

Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To send the data to the configured Zenefits endpoint, open the destination resource menu, and select Activate.

The Nexset data will not be sent to the Zenefits endpoint until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.