---
title: Rippling API Integration on Truto
slug: rippling
category: HRIS
canonical: "https://truto.one/integrations/detail/rippling/"
---

# Rippling API Integration on Truto



**Category:** HRIS  
**Status:** Beta

## Unified APIs

### Unified HRIS API

- **Companies** — Companies represent the companies in HRIS
- **Employee Compensations** — Represent the compensation configuration for an Employee
- **Employees** — Represents an employee in HRIS
- **Employments** — Employments represent a job position at a company.
- **Fields** — Represent the fields for various entities in the company
- **Groups** — Groups represent the groups for an Employee
- **Locations** — Locations represent the locations in HRIS

### Unified User Directory API

- **Groups** — Groups are a collection of users in the source application. In some applications, they might also be called Teams.
- **Users** — The User object represents a User.

## MCP-ready AI tools

Truto exposes 56 tools for Rippling that AI agents can call directly.

- **list_all_rippling_users** — List users in Rippling. Returns id, created_at, updated_at, active, username, name, display_name, emails, phone_numbers, addresses, photos, preferred_language, locale, timezone, and number fields for each user.
- **get_single_rippling_user_by_id** — Get a specific user in Rippling by id. Returns id, created_at, updated_at, active, username, name, display_name, emails, phone_numbers, addresses, photos, preferred_language, locale, timezone, number, and any redacted_fields with reasons in the response.
- **list_all_rippling_teams** — List teams in Rippling. Returns id, created_at, updated_at, parent_id, parent, and name fields for each team.
- **get_single_rippling_team_by_id** — Get a specific team in Rippling. Requires id. Returns id, created_at, updated_at, parent_id, parent, name, and any redacted_fields specified in __meta.
- **list_all_rippling_companies** — List companies in Rippling. Returns id, created_at, updated_at, name, legal_name, primary_email, legal_entities and parent_legal_entity with key details like country, entity level, registration date, and addresses for each company.
- **list_all_rippling_custom_fields** — List custom fields in Rippling. Returns id, created_at, updated_at, name, description, required, and type fields for each custom field in the response.
- **list_all_rippling_departments** — List departments in Rippling. Returns id, created_at, updated_at, name, parent_id, reference_code, department_hierarchy_id, and department_hierarchy in the response. Requires API Tier 1.
- **get_single_rippling_department_by_id** — Get a specific department in Rippling using id. Returns fields such as id, created_at, updated_at, name, parent_id, reference_code, department_hierarchy_id, and __meta.redacted_fields with reasons for redactions.
- **list_all_rippling_employment_types** — List employment types in Rippling. Returns id, created_at, updated_at, label, name, type, compensation_time_period, and amount_worked for each employment type.
- **get_single_rippling_employment_type_by_id** — Get details about a specific employment type in Rippling using id. Returns fields such as id, created_at, updated_at, label, name, type, compensation_time_period, amount_worked, and __meta.redacted_fields indicating data redacted due to insufficient entitlements.
- **list_all_rippling_work_locations** — List work locations in Rippling. Returns id, created_at, updated_at, name, and address fields (type, formatted, street_address, locality, region, postal_code, country) for each work location.
- **get_single_rippling_work_location_by_id** — Get a specific work location in Rippling. Requires id. Returns id, created_at, updated_at, name, address (type, formatted, street_address, locality, region, postal_code, country), and __meta.redacted_fields with redaction details in the response.
- **list_all_rippling_workers** — List workers in Rippling. Returns id, created_at, updated_at, user details, status, legal_entity, department, compensation, title, manager, teams, employment_type, termination_details, country_fields, and business_partners fields for each worker.
- **get_single_rippling_worker_by_id** — Get a specific worker in Rippling by id. Returns fields including id, created_at, updated_at, user details, legal_entity, status, employment_type, compensation, department, level, teams, business_partners, and more. All returned fields may be subject to access limitations and field redaction.
- **list_all_rippling_business_partners** — List business partners in Rippling. Returns id, created_at, updated_at, business_partner_group_id, business_partner_group, worker_id, worker, client_group_id, client_group, and client_group_member_count fields in the response.
- **create_a_rippling_business_partner** — Create a new business partner in Rippling. Requires business_partner_group_id and worker_id. Returns id, created_at, updated_at, business_partner_group_id, business_partner_group with details, worker_id, worker details, client_group_id, client_group details, and client_group_member_count in the response.
- **get_single_rippling_business_partner_by_id** — Get a specific business partner in Rippling. Requires id. Returns detailed information including id, created_at, updated_at, business_partner_group_id, business_partner_group details, worker_id, worker details, client_group_id, client_group details, and client_group_member_count.
- **delete_a_rippling_business_partner_by_id** — Delete a business partner in Rippling. Requires id. Returns a successful deletion status with a 204 response code.
- **list_all_rippling_business_partner_groups** — List business partner groups in Rippling. Returns id, created_at, updated_at, name, domain, default_business_partner_id, and nested default_business_partner details for each group.
- **create_a_rippling_business_partner_group** — Create a new business partner group in Rippling. Returns id, created_at, updated_at, name, domain, default_business_partner_id, and default_business_partner fields in the response.
- **get_single_rippling_business_partner_group_by_id** — Get a specific business partner group in Rippling by id. Returns id, created_at, updated_at, name, domain, default_business_partner_id, default_business_partner, and related nested fields for detailed group and partner information.
- **delete_a_rippling_business_partner_group_by_id** — Delete a business partner group in Rippling using id. Returns successful status if the resource is deleted.
- **list_all_rippling_custom_object_fields** — List custom object fields in Rippling using custom_object_api_name. Returns id, created_at, updated_at, name, custom_object, description, api_name, data_type, is_unique, is_immutable, is_standard, managed_package_install_id, and enable_history fields.
- **create_a_rippling_custom_object_field** — Create a new custom object field in Rippling. Requires custom_object_api_name. Returns id, created_at, updated_at, name, custom_object, description, api_name, data_type, is_unique, is_immutable, is_standard, managed_package_install_id, enable_history in the response.
- **get_single_rippling_custom_object_field_by_id** — Get details of a specific custom object field in Rippling. Requires custom_object_api_name and id. Returns id, created_at, updated_at, name, custom_object, description, api_name, data_type, is_unique, is_immutable, is_standard, managed_package_install_id, and enable_history.
- **delete_a_rippling_custom_object_field_by_id** — Delete a custom object field in Rippling. Requires custom_object_api_name and id. Returns no content if the field was deleted successfully.
- **update_a_rippling_custom_object_field_by_id** — Update a custom object field in Rippling using custom_object_api_name and id. Returns fields such as id, created_at, updated_at, name, custom_object, api_name, data_type, is_unique, is_immutable, is_standard, enable_history, and more.
- **list_all_rippling_custom_object_records** — List custom object records in Rippling with custom_object_api_name. Returns id, created_at, updated_at, name, external_id, created_by, last_modified_by, owner_role, and system_updated_at fields in the response.
- **create_a_rippling_custom_object_record** — Create a new custom object record in Rippling. Requires custom_object_api_name. Returns id, created_at, updated_at, name, external_id, created_by, last_modified_by, owner_role, and system_updated_at fields in the response.
- **get_single_rippling_custom_object_record_by_id** — Get a specific custom object record in Rippling using custom_object_api_name and id. Returns id, created_at, updated_at, name, external_id, created_by, last_modified_by, owner_role, and system_updated_at fields.
- **update_a_rippling_custom_object_record_by_id** — Update a specific custom object record in Rippling. Requires custom_object_api_name and id. Returns id, created_at, updated_at, name, external_id, created_by, last_modified_by, owner_role, and system_updated_at fields in the response.
- **delete_a_rippling_custom_object_record_by_id** — Delete a custom object record in Rippling. Requires custom_object_api_name and id. Returns status 204 if the resource was deleted successfully.
- **rippling_custom_object_records_by_external_id** — Get a specific custom object record in Rippling using custom_object_api_name and external_id. Returns id, created_at, updated_at, name, external_id, created_by, last_modified_by, owner_role, and system_updated_at fields in the response.
- **rippling_custom_object_records_bulk_create** — Bulk create custom object records in Rippling. Requires custom_object_api_name. Returns for each created record: id, created_at, updated_at, name, external_id, created_by, last_modified_by, owner_role, and system_updated_at.
- **rippling_custom_object_records_bulk_update** — Bulk update custom-object-records in Rippling using custom_object_api_name. Returns list of updated records with id, created_at, updated_at, name, external_id, created_by, last_modified_by, owner_role, and system_updated_at fields.
- **rippling_custom_object_records_bulk_delete** — Bulk delete custom object records in Rippling. Requires custom_object_api_name and rows_to_delete. Returns 204 on successful deletion of all specified records.
- **list_all_rippling_query_custom_object_records** — List custom object records in Rippling filtered by query. Requires custom_object_api_name. Returns id, created_at, updated_at, name, external_id, created_by, last_modified_by, owner_role, and system_updated_at for each record.
- **list_all_rippling_custom_objects** — List custom objects in Rippling. Returns id, created_at, updated_at, name, plural_label, category_id, enable_history, and other key fields for each custom object.
- **create_a_rippling_custom_object** — Create a new custom object in Rippling. Returns fields: id (identifier), created_at (creation date), updated_at (update date), name (custom object name), description, api_name, plural_label, category_id, native_category_id, managed_package_install_id, enable_history (history tracking status), and owner_id (owner information). Requires name and category in the request.
- **get_single_rippling_custom_object_by_id** — Get a specific custom object in Rippling by id. Returns id, created_at, updated_at, name, plural_label, category_id, enable_history, and other relevant fields in the response.
- **update_a_rippling_custom_object_by_id** — Update a custom object in Rippling. Requires id. Returns id, created_at, updated_at, name, description, api_name, plural_label, category_id, native_category_id, managed_package_install_id, enable_history, and owner_id.
- **delete_a_rippling_custom_object_by_id** — Delete a custom object in Rippling. Requires id. Returns 204 status when the resource is deleted successfully.
- **list_all_rippling_entitlements** — List entitlements in Rippling. Returns id, description, and display_name fields for each entitlement in the response.
- **list_all_rippling_me** — Get SSO information about the current user in Rippling. Returns id, created_at, updated_at, work_email, company_id, and detailed company object including company name, legal_name, primary_email, company phone, legal entities and their hierarchy, and address information.
- **list_all_rippling_object_categories** — List object categories in Rippling. Returns id, created_at, updated_at, name, and description fields for each object category.
- **create_a_rippling_object_category** — Create a new object category in Rippling. Returns the id, created_at, updated_at, name, and description fields for the created category.
- **get_single_rippling_object_category_by_id** — Get a specific object category in Rippling using id. Returns id, created_at, updated_at, name, and description fields in the response.
- **update_a_rippling_object_category_by_id** — Update object category in Rippling by id. Returns id, created_at, updated_at, name, and description fields in the response.
- **delete_a_rippling_object_category_by_id** — Delete an object category in Rippling. Requires id. No response content is returned upon successful deletion.
- **list_all_rippling_supergroups** — List supergroups in Rippling. Returns fields such as id, created_at, updated_at, display_name, name, app_owner_id, group_type, description, parent, priority, and related group attributes in the response.
- **get_single_rippling_supergroup_by_id** — Retrieve a specific supergroup in Rippling. Requires id. Returns fields: id, created_at, updated_at, display_name, name, app_owner_id, group_type, sub_group_type, read_only, description, parent, mutually_exclusive_key, cumulatively_exhaustive_default, include_terminated, allow_non_employees, can_override_role_states, priority, is_invisible, ignore_prov_group_matching, and __meta.redacted_fields with name and reason for any redacted fields.
- **list_all_rippling_supergroup_members** — List supergroup members in Rippling based on group_id. Returns id, created_at, updated_at, full_name, and work_email for each member in the response.
- **list_all_rippling_supergroup_inclusion_members** — List supergroup inclusion members in Rippling for a given group_id. Returns id, created_at, updated_at, full_name, and work_email fields for each member in the response.
- **update_a_rippling_supergroup_inclusion_member_by_id** — Update supergroup inclusion members in Rippling. Requires group_id. Returns ok indicating whether the operation succeeded.
- **list_all_rippling_supergroup_exclusion_members** — List supergroup exclusion members in Rippling requiring group_id. Returns id, created_at, updated_at, full_name, and work_email for each exclusion member in the response.
- **update_a_rippling_supergroup_exclusion_member_by_id** — Update supergroup exclusion members in Rippling using group_id. Returns ok indicating whether the operation succeeded.

## How it works

1. **Link your customer's Rippling account.** Use Truto's frontend SDK; we handle every OAuth and API key flow so you don't need to create the OAuth app.
2. **Authentication is automatic.** Truto refreshes tokens, stores credentials securely, and injects them into every API request.
3. **Call Truto's API to reach Rippling.** The Proxy API is a 1-to-1 mapping of the Rippling API.
4. **Get a unified response format.** Every response uses a single shape, with cursor-based pagination and data in the `result` field.

## Use cases

- **Sync employee rosters and org charts in real time** — SaaS companies offering workforce-aware products need an always-current view of their customers' employees, managers, departments, and teams. Integrating with Rippling via Truto lets you continuously pull workers, departments, teams, and work locations without managing OAuth flows, pagination, or Rippling-specific API quirks.
- **Automate user provisioning and deprovisioning based on employment status** — When a customer's employee is hired or terminated in Rippling, your product can automatically create or disable their account. Polling the workers endpoint for status changes lets you build lifecycle-aware provisioning without requiring your customers to manually manage users.
- **Assign roles and permissions using Rippling's dynamic supergroups** — Rippling's supergroups define dynamic employee cohorts based on attributes like department, location, or salary band. SaaS companies can map these groups to permission tiers or feature access in their own product, enabling attribute-based access control driven directly from HR data.
- **Write domain-specific data back into Rippling employee profiles** — Products like compliance training platforms or IT asset managers can push completion dates, asset assignments, or certification statuses back into Rippling using custom objects and custom object records. This gives HR admins a single-pane view without leaving Rippling.
- **Segment users by employment type, location, and department for targeted workflows** — SaaS products that need to differentiate between full-time employees, contractors, or workers in specific locations can pull employment types, work locations, and departments from Rippling to drive conditional logic like training assignments, budget limits, or compliance requirements.

## What you can build

- **Automated employee directory sync** — Continuously import employees, departments, teams, and reporting hierarchies from Rippling using the Unified HRIS API so your product always reflects the customer's current org structure.
- **Lifecycle-triggered account provisioning** — Detect new hires and terminations by polling Rippling workers and automatically create, suspend, or delete user accounts in your product without manual intervention.
- **Supergroup-based role mapping** — Read Rippling supergroups and their inclusion/exclusion members to dynamically assign roles, permissions, or feature entitlements inside your application based on HR-defined cohorts.
- **Custom data write-back to Rippling profiles** — Create custom objects and bulk-create or bulk-update custom object records to push your product's data—like training completion dates, license assignments, or risk scores—directly onto employee profiles in Rippling.
- **Location-aware workflow routing** — Pull work locations with addresses and country codes from Rippling to drive location-specific logic such as shipping destinations, regional compliance rules, or office-based feature toggles.
- **Compensation and employment type segmentation** — Use employee compensation data and employment type classifications from the Unified HRIS API to build tiered experiences—like different onboarding flows for full-time employees versus contractors.

## FAQs

### What authentication method does Rippling use, and how does Truto handle it?

Rippling uses OAuth 2.0 for third-party integrations. Truto manages the entire OAuth flow—token exchange, storage, and refresh—so your team never handles credentials directly. Your end users connect their Rippling account through Truto's embedded linking experience.

### What is the difference between the Users and Workers endpoints in Rippling?

Users represent the identity/SSO layer (email, locale) and are available through the Unified User Directory API. Workers represent the full employment profile including department, manager, compensation, employment type, and work location, available through the Unified HRIS API. Most B2B SaaS workflows rely on the Workers endpoint for richer contextual data.

### How does Truto handle Rippling's field-level data redactions?

Rippling enforces strict data entitlements—your integration may not have access to every field on a worker profile (e.g., compensation may be redacted). Rippling returns redaction metadata in the response. Truto passes this through faithfully, so your application can detect redacted fields and handle them gracefully rather than assuming missing data.

### Can I write data back to Rippling, or is the integration read-only?

The integration supports both reads and writes. You can create, update, and delete custom objects, custom object records (including bulk operations), business partners, business partner groups, object categories, and supergroup inclusion/exclusion members. This enables write-back workflows like pushing training completion dates or asset assignments onto employee profiles.

### Does Truto support Rippling's custom fields and custom objects?

Yes. You can list custom fields via the dedicated endpoint and the Unified HRIS API's Fields resource. For custom objects, you have full CRUD access—create custom objects, define custom object fields, and manage custom object records individually or in bulk. You can also query custom object records and look them up by external ID.

### What Rippling resources are available through Truto's Unified APIs versus native proxy endpoints?

The Unified HRIS API covers Companies, Employees, Employee Compensations, Employments, Fields, Groups, and Locations. The Unified User Directory API covers Users and Groups. For Rippling-specific resources like supergroups, custom objects, business partners, entitlements, and object categories, Truto exposes dedicated native proxy endpoints that give you full access without building against the Rippling API directly.

## Related reading

- [Best Unified API for HRIS in 2026: Workday, Gusto, & Rippling](https://truto.one/blog/best-unified-api-for-hris-in-2026-workday-gusto-and-rippling-compared/) — Compare the best unified APIs for HRIS in 2026. Learn how to navigate Workday, Gusto, and Rippling integrations without draining engineering bandwidth.
