Rippling website screenshot

Rippling

Rippling is a unified workforce platform spanning HR, IT, and Finance with programmable APIs for employees, payroll, devices, apps, time tracking, benefits, expenses, and SCIM identity provisioning.

21 APIs 9 Features
HRHCMPayrollITIdentitySCIMDevicesSpend Management

APIs

Rippling Platform API

The Rippling Platform API exposes core HRIS resources — companies, employees, departments, work locations, custom fields, employment types, and compensation history — for partne...

Rippling Employees API

Read and write employee records — personal information, employment details, manager hierarchy, work email, work location, and custom employee fields — for active and terminated ...

Rippling Companies API

Retrieve company-level metadata, legal entities, business addresses, and account-wide configuration scoped to the authenticated tenant.

Rippling Departments API

List and manage departments and the hierarchical org structure used to group employees and route approvals.

Rippling Teams API

Manage cross-functional teams that group employees independently of the department hierarchy.

Rippling Work Locations API

Read and manage company work locations including office addresses and remote-work designations referenced by employee records.

Rippling Payroll API

Push earnings, deductions, and reimbursements into Rippling Payroll for off-cycle and on-cycle pay runs, and read pay-history events.

Rippling Time Off API

Submit and manage time-off requests, leave balances, and policies for vacation, sick leave, and other absence categories.

Rippling Time Tracking API

Capture clock-in / clock-out events, hourly timesheets, breaks, and shift schedules for hourly and shift-based workers.

Rippling Benefits API

Retrieve employee benefits enrollments, dependents, and plan details across health, dental, vision, and other insurance lines.

Rippling Expenses API

Submit and approve employee expense reports, attach receipts, and reimburse approved expenses through Rippling Spend.

Rippling Corporate Cards API

Issue, manage, and reconcile corporate cards, spend limits, and transactions for Rippling Spend customers.

Rippling Bill Pay API

Manage vendor invoices, approvals, and payments through Rippling Bill Pay for accounts-payable workflows.

Rippling Recruiting API

Sync candidates, applications, and offers between external ATS platforms and Rippling's recruiting and onboarding flows.

Rippling Onboarding API

Trigger new-hire onboarding, capture personal details, distribute offer letters and policy documents, and provision day-one access.

Rippling Devices API

Manage company-owned devices, MDM enrollment, ownership assignment, and lifecycle status across macOS, Windows, iOS, and Android.

Rippling Apps API

Manage SaaS app provisioning, role assignment, and de-provisioning across the Rippling Apps catalog for IT teams.

Rippling SCIM API

SCIM 2.0 endpoints for inbound user, group, and role provisioning from identity providers (Okta, Azure AD, Google) and outbound to partner SaaS applications.

Rippling SSO API

Configure SAML/OIDC single sign-on between Rippling as an IdP and external service providers, plus SP integrations into Rippling.

Rippling Custom Fields API

Define and read custom fields attached to employees, departments, and other Rippling resources for tenant-specific metadata.

Rippling Webhooks API

Subscribe to Rippling events (employee created/updated/terminated, time-off approved, payroll finalized, device assigned) for near real-time downstream integration.

Collections

GraphQL

Rippling GraphQL Schema

This document describes a conceptual GraphQL schema for the Rippling unified workforce platform. Rippling provides REST APIs across HR, IT, and Finance domains. The GraphQL sche...

GRAPHQL

Pricing Plans

Rippling Plans Pricing

8 plans

PLANS

Rate Limits

Rippling Rate Limits

4 limits

RATE LIMITS

FinOps

Features

Unified HR, IT, and Finance platform with composable products
Per-employee-per-month pricing across all modules (custom-quoted)
Platform API for HRIS data partners
SCIM 2.0 inbound and outbound for IdP and SaaS provisioning
Devices and MDM across macOS, Windows, iOS, Android
Apps catalog for SaaS provisioning and de-provisioning
Webhooks for HRIS, payroll, time-off, and device events
OAuth2 Marketplace apps for partner integrations
SAML / OIDC SSO as IdP and SP

Event Specifications

Rippling Partner Webhooks

Rippling Partner Applications listed in the Rippling App Shop can register a webhook URL to receive event-triggered notifications when relevant changes occur in a customer's Rip...

ASYNCAPI

Resources

🔗
LinkedIn
LinkedIn
🔗
Website
Website
🔗
Documentation
Documentation
🔗
APIReference
APIReference
💰
Pricing
Pricing
🔗
Login
Login
🟢
StatusPage
StatusPage
📰
Blog
Blog
💬
Support
Support
👥
GitHubOrganization
GitHubOrganization
📜
PrivacyPolicy
PrivacyPolicy
📜
TermsOfService
TermsOfService
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps
🔗
LlmsText
LlmsText

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Rippling Platform API (Base API)
  version: 1.0.0
request:
  auth:
    type: bearer
    token: '{{bearerToken}}'
items:
- info:
    name: Get the authenticated user / current token context
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/me
  docs: Get the authenticated user / current token context
- info:
    name: List companies accessible to the token
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/companies
  docs: List companies accessible to the token
- info:
    name: List recent company activity events
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/company_activity
    params:
    - name: startDate
      value: ''
      type: query
    - name: limit
      value: ''
      type: query
    - name: next
      value: ''
      type: query
  docs: List recent company activity events
- info:
    name: List active employees
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/employees
    params:
    - name: limit
      value: ''
      type: query
    - name: offset
      value: ''
      type: query
  docs: List active employees
- info:
    name: List employees including terminated workers
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/employees/include_terminated
    params:
    - name: limit
      value: ''
      type: query
    - name: offset
      value: ''
      type: query
  docs: List employees including terminated workers
- info:
    name: Get an employee by ID
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/employees/:employee_id
    params:
    - name: employee_id
      value: ''
      type: path
  docs: Get an employee by ID
- info:
    name: List departments
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/departments
  docs: List departments
- info:
    name: List work locations
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/work_locations
  docs: List work locations
- info:
    name: List career/job levels
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/levels
  docs: List career/job levels
- info:
    name: List teams
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/teams
  docs: List teams
- info:
    name: List custom field definitions
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/custom_fields
  docs: List custom field definitions
- info:
    name: List groups
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/groups
  docs: List groups
- info:
    name: Create a group
    type: http
  http:
    method: POST
    url: https://api.rippling.com/platform/api/groups
    body:
      type: json
      data: '{}'
  docs: Create a group
- info:
    name: Get a group by ID
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/groups/:group_id
    params:
    - name: group_id
      value: ''
      type: path
  docs: Get a group by ID
- info:
    name: Replace a group
    type: http
  http:
    method: PUT
    url: https://api.rippling.com/platform/api/groups/:group_id
    params:
    - name: group_id
      value: ''
      type: path
    body:
      type: json
      data: '{}'
  docs: Replace a group
- info:
    name: Partially update a group
    type: http
  http:
    method: PATCH
    url: https://api.rippling.com/platform/api/groups/:group_id
    params:
    - name: group_id
      value: ''
      type: path
    body:
      type: json
      data: '{}'
  docs: Partially update a group
- info:
    name: Delete a group
    type: http
  http:
    method: DELETE
    url: https://api.rippling.com/platform/api/groups/:group_id
    params:
    - name: group_id
      value: ''
      type: path
  docs: Delete a group
- info:
    name: List leave requests
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/leave_requests
    params:
    - name: startDate
      value: ''
      type: query
    - name: endDate
      value: ''
      type: query
  docs: List leave requests
- info:
    name: Create a leave request
    type: http
  http:
    method: POST
    url: https://api.rippling.com/platform/api/leave_requests
    body:
      type: json
      data: '{}'
  docs: Create a leave request
- info:
    name: Update a leave request
    type: http
  http:
    method: PATCH
    url: https://api.rippling.com/platform/api/leave_requests/:leave_request_id
    params:
    - name: leave_request_id
      value: ''
      type: path
    body:
      type: json
      data: '{}'
  docs: Update a leave request
- info:
    name: Approve or reject a leave request
    type: http
  http:
    method: POST
    url: https://api.rippling.com/platform/api/leave_requests/process
    body:
      type: json
      data: '{}'
  docs: Approve or reject a leave request
- info:
    name: Cancel a leave request
    type: http
  http:
    method: POST
    url: https://api.rippling.com/platform/api/leave_requests/cancel
    body:
      type: json
      data: '{}'
  docs: Cancel a leave request
- info:
    name: List leave balances for all employees
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/leave_balances
  docs: List leave balances for all employees
- info:
    name: Get leave balance for one employee
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/leave_balances/:employee_id
    params:
    - name: employee_id
      value: ''
      type: path
  docs: Get leave balance for one employee
- info:
    name: List company-defined leave types
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/company_leave_types
  docs: List company-defined leave types
- info:
    name: Retrieve SAML Identity Provider metadata for the company
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/saml/idp_metadata
  docs: Retrieve SAML Identity Provider metadata for the company
- info:
    name: List users in the company that match the calling app
    type: http
  http:
    method: GET
    url: https://api.rippling.com/platform/api/app/matching_users
  docs: List users in the company that match the calling app
- info:
    name: Mark the calling app as installed for the company
    type: http
  http:
    method: POST
    url: https://api.rippling.com/platform/api/mark_app_installed
  docs: Mark the calling app as installed for the company
- info:
    name: Push an ATS candidate into Rippling
    type: http
  http:
    method: POST
    url: https://api.rippling.com/platform/api/ats/candidates/push_candidate
    body:
      type: json
      data: '{}'
  docs: Push an ATS candidate into Rippling
bundled: true