Compensation API
82 endpoints. All requests need an Authorization header — see Authentication. API keys additionally need the matching scope.
| Method | Path | Description |
|---|---|---|
GET |
/api/compensation/admin/booking-summary |
Booking Summary Query: period_id, fiscal_year. |
GET |
/api/compensation/admin/booking-summary/export |
Export Booking Summary Query: period_id, fiscal_year. |
GET |
/api/compensation/admin/dashboard |
Admin Dashboard |
GET |
/api/compensation/admin/team-earnings |
Team Earnings |
GET |
/api/compensation/assignments/ |
List Assignments Query: user_id, plan_id, active. |
POST |
/api/compensation/assignments/ |
Create Assignment Accepts a JSON body. |
PATCH |
/api/compensation/assignments/{assignment_id} |
Update Assignment Accepts a JSON body. |
DELETE |
/api/compensation/assignments/{assignment_id} |
Delete Assignment |
GET |
/api/compensation/deals |
Deals To Commission Query: period_id, limit. |
GET |
/api/compensation/disputes |
List Disputes Query: status. |
POST |
/api/compensation/disputes |
Create Dispute Accepts a JSON body. |
POST |
/api/compensation/disputes/{dispute_id}/escalate |
Escalate Dispute |
POST |
/api/compensation/disputes/{dispute_id}/evidence |
Add Dispute Evidence Accepts a JSON body. |
POST |
/api/compensation/disputes/{dispute_id}/resolve |
Resolve Dispute Accepts a JSON body. |
GET |
/api/compensation/my-compensation |
My Compensation |
POST |
/api/compensation/my-compensation/accept-plan |
Accept My Plan Accepts a JSON body. |
GET |
/api/compensation/my-compensation/forecast |
My Compensation Forecast |
GET |
/api/compensation/my-compensation/live |
My Compensation Live |
POST |
/api/compensation/my-compensation/model |
Model Deal Commission Query: opportunity_id. |
GET |
/api/compensation/my-compensation/plan |
My Plan Detail |
GET |
/api/compensation/my-compensation/plan-card.pdf |
My Plan Card Pdf |
GET |
/api/compensation/my-compensation/potential |
My Potential Deals |
POST |
/api/compensation/my-compensation/scenario |
My Compensation Scenario Accepts a JSON body. |
GET |
/api/compensation/my-compensation/statements |
My Statements |
POST |
/api/compensation/my-compensation/statements/{statement_id}/acknowledge |
Acknowledge Statement Accepts a JSON body. |
GET |
/api/compensation/my-compensation/statements/{statement_id}/pdf |
My Statement Pdf |
GET |
/api/compensation/my-compensation/transactions |
My Transactions Query: limit, offset. |
GET |
/api/compensation/pay-runs |
List Pay Runs |
POST |
/api/compensation/pay-runs |
Create Pay Run Accepts a JSON body. |
GET |
/api/compensation/pay-runs/preview |
Preview Pay Run Query: period_start, period_end. |
GET |
/api/compensation/pay-runs/{run_id} |
Get Pay Run |
DELETE |
/api/compensation/pay-runs/{run_id} |
Delete Pay Run |
POST |
/api/compensation/pay-runs/{run_id}/approve |
Approve Pay Run |
GET |
/api/compensation/pay-runs/{run_id}/export |
Export Pay Run Query: format. |
POST |
/api/compensation/pay-runs/{run_id}/mark-paid |
Mark Pay Run Paid |
GET |
/api/compensation/periods/ |
List Periods Query: fiscal_year, status. |
POST |
/api/compensation/periods/ |
Create Period Accepts a JSON body. |
POST |
/api/compensation/periods/generate |
Generate Periods Accepts a JSON body. |
GET |
/api/compensation/periods/{period_id} |
Get Period |
POST |
/api/compensation/periods/{period_id}/calculate |
Calculate Period Accepts a JSON body. |
POST |
/api/compensation/periods/{period_id}/commit |
Commit Period Endpoint |
GET |
/api/compensation/periods/{period_id}/export |
Export Period |
GET |
/api/compensation/periods/{period_id}/preview |
Preview Period |
POST |
/api/compensation/periods/{period_id}/reopen |
Reopen Period Endpoint |
POST |
/api/compensation/periods/{period_id}/submit |
Submit Period Endpoint |
GET |
/api/compensation/periods/{period_id}/transactions |
Period Transactions Query: user_id, status. |
GET |
/api/compensation/plan-templates |
List Plan Templates |
POST |
/api/compensation/plan-templates/{template_id}/create-from |
Create Plan From Template Query: fiscal_year. |
GET |
/api/compensation/plan-types/ |
List Plan Types Query: include_inactive. |
POST |
/api/compensation/plan-types/ |
Create Plan Type Accepts a JSON body. |
PATCH |
/api/compensation/plan-types/{type_id} |
Update Plan Type Accepts a JSON body. |
DELETE |
/api/compensation/plan-types/{type_id} |
Delete Plan Type |
GET |
/api/compensation/plans/ |
List Plans Query: fiscal_year, status, type. |
POST |
/api/compensation/plans/ |
Create Plan Accepts a JSON body. |
GET |
/api/compensation/plans/{plan_id} |
Get Plan |
PATCH |
/api/compensation/plans/{plan_id} |
Update Plan Accepts a JSON body. |
DELETE |
/api/compensation/plans/{plan_id} |
Delete Plan |
POST |
/api/compensation/plans/{plan_id}/activate |
Activate Plan Version |
POST |
/api/compensation/plans/{plan_id}/components |
Add Component Accepts a JSON body. |
PATCH |
/api/compensation/plans/{plan_id}/components/{component_id} |
Update Component Accepts a JSON body. |
DELETE |
/api/compensation/plans/{plan_id}/components/{component_id} |
Delete Component |
GET |
/api/compensation/plans/{plan_id}/gates |
List Plan Gates |
POST |
/api/compensation/plans/{plan_id}/gates |
Add Plan Gate Accepts a JSON body. |
DELETE |
/api/compensation/plans/{plan_id}/gates/{gate_id} |
Delete Plan Gate |
GET |
/api/compensation/plans/{plan_id}/history |
Plan History Query: limit. |
POST |
/api/compensation/plans/{plan_id}/new-version |
Create New Plan Version |
GET |
/api/compensation/plans/{plan_id}/versions |
List Plan Versions |
GET |
/api/compensation/roster |
Get Roster |
PATCH |
/api/compensation/roster/{user_id} |
Update Roster User Accepts a JSON body. |
GET |
/api/compensation/team-rollup |
Team Rollup |
GET |
/api/compensation/terms/ |
List Terms |
POST |
/api/compensation/terms/ |
Create Terms Draft Accepts a JSON body. |
GET |
/api/compensation/terms/current |
Current Terms |
PATCH |
/api/compensation/terms/{terms_id} |
Update Terms Draft Accepts a JSON body. |
DELETE |
/api/compensation/terms/{terms_id} |
Delete Terms Draft |
POST |
/api/compensation/terms/{terms_id}/publish |
Publish Terms |
GET |
/api/compensation/transactions/ |
List Transactions Query: user_id, status, type, period_start, period_end, limit. |
POST |
/api/compensation/transactions/ |
Create Transaction Accepts a JSON body. |
POST |
/api/compensation/transactions/bulk-approve |
Bulk Approve Transactions Accepts a JSON body. |
PATCH |
/api/compensation/transactions/{txn_id} |
Update Transaction Accepts a JSON body. |
POST |
/api/compensation/transactions/{txn_id}/approve |
Approve Transaction |
POST |
/api/compensation/transactions/{txn_id}/reject |
Reject Transaction |
Try it
The full request/response schema for every endpoint is in the OpenAPI spec served by your own workspace.