API docs

Build with pPULSE.

REST endpoints with predictable shapes, webhooks for every state change, and SCIM for identity provisioning. Versioned, documented, with curl + Python + Node + Go examples.

REST API v3

90+ endpoints. Versioned. OpenAPI 3.0 spec.

Current version v3 (released January 2026). Backward-compatible v2 deprecation notice runs through October 2025. Breaking changes always announced 6 months in advance.

  • 90+ endpoints. Employees, payroll, attendance, performance, ATS, expenses, integrations.
  • OpenAPI 3.0 spec. Always current. Auto-generated client SDKs from the spec.
  • Idempotency keys. All POST endpoints accept Idempotency-Key header. Replays are safe.
  • Predictable errors. Standard error envelope: code, message, details, doc_url, request_id.
See API key
REST · v3
90+ endpoints
OpenAPI 3.0 spec
Base URL
https://api.ppulse.com/v3
Auth
Bearer · pp_live_•••• / pp_test_••••
Rate limit
5,000 req/hr (default)
Idempotency
Idempotency-Key on POST
Spec
/v3/openapi.json
Sandbox
https://sandbox.ppulse.com
Webhooks · this org
32 event types
84,000 / day delivered
employee.created
Avg 3 / day
payroll.run.completed
Monthly · 1 entity
leave.approved
Avg 12 / day
expense.submitted
Avg 42 / day
Delivery success (24 hr)
99.94%
Avg latency (P50)
212 ms
Webhooks

32 event types. Signed. At-least-once delivery.

Subscribe to hire, exit, pay-day, role-change, comp-revision, leave-approve, expense-approve, and more. Webhooks are signed with HMAC-SHA256. Delivery retries with exponential backoff for up to 24 hours.

  • 32 event types. Lifecycle (hire, exit, role-change), payroll, leave, expense, performance, ATS.
  • HMAC-SHA256 signed. Verify with your shared secret. Every payload includes timestamp and request_id.
  • At-least-once delivery. Retries with exponential backoff for 24 hours. Idempotency keys recommended on consumers.
  • Replay tool. Webhook replay UI for the last 7 days of events. Useful for testing consumer changes.
See API docs
SCIM 2.0

Production-grade identity provisioning.

Okta, Azure AD, JumpCloud, OneLogin, Google Workspace integrations. Just-in-time provisioning. Auto-deprovisioning. Group-based role assignment so HR doesn't manage permissions from two tools.

  • RFC 7644 compliant. Standard SCIM 2.0 endpoints. /Users, /Groups, /Schemas.
  • JIT provisioning. New IdP user → new pPULSE employee, automatically. No manual export/import.
  • Auto-deprovisioning. IdP removal → pPULSE access ends within seconds.
  • Group-mapped roles. IdP groups map to pPULSE roles. HR gets HR access. Engineering manager gets manager access.
See enterprise
SCIM · this org
Okta connected
412 users · 14 groups
IdP
Okta
Provisioned users
412 (100% via SCIM)
Groups synced
14
Last sync
12 min ago
JIT provisions today
3
Deprovisions today
1
API topics

What you'll find in the docs.

All endpoints, organised by topic. Each comes with curl, Python, Node.js, and Go examples.

Authentication

API keys, OAuth 2.0, rate limits, idempotency keys, signed webhooks.

See docs

Employees

CRUD on the people in your org. Bulk operations. Scoped permissions.

See Core HR

Payroll runs

Trigger, query, audit. Read-only by default for safety.

See payroll

Attendance

Push events, query timesheets, manage shifts. WebSocket for live data.

See attendance

Hiring (ATS)

Job postings, candidates, interviews, offers. Webhook on every state change.

See hiring

Webhooks + SCIM

Subscribe to events. Provision identity through Okta, Azure AD.

See enterprise

Why developers choose this API

Built like an API your team would build.

90+ versioned endpoints
v3 current. 6 month deprecation window for breaking changes.
HMAC-signed webhooks
Verify every payload. At-least-once delivery with 24-hr retry.
OpenAPI 3.0 spec
Auto-generated client SDKs. Always current with production.
Idempotency keys on POST
Replays are safe. Important for payroll and other side-effecting operations.
Predictable errors
Standard envelope: code, message, details, doc_url, request_id.
Free sandbox
sandbox.ppulse.com with realistic seed data. No charge to develop against.
Frequently asked

API questions.

Email contact. Trial keys provided for sandbox. Production keys provided once subscription is active.
Python, Node.js, Go are officially maintained. PHP and Ruby are community-supported. We accept community PRs for Java and C#.
Yes. HMAC-SHA256 with a shared secret per integration. Verify before processing.
5,000 req/hr default. 50,000/hr Enterprise. Rate-limit headers on every response: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.
Yes. sandbox.ppulse.com with realistic seed data. Free for all customers. Pre-prod available on Enterprise.
Email + changelog + API response headers (Deprecation: timestamp). Minimum 6 months notice.

Ready to get started?

Start a free 14 day trial in minutes, or chat with us about a custom rollout for your team.

See what you'll pay

Clear per person pricing. No surprise setup or onboarding fees.

Pricing details

Book a demo

A 30 minute walkthrough, tailored to how your team actually works.

Schedule a demo