ComTrack API Documentation
This document describes the search endpoint for retrieving commission rows from ComTrack.
- Base URL:
https://commissionconnector.com - Endpoint:
GET /api/reference - Purpose: Return commission rows matching the provided query parameters.
- Auth: API key from the user’s Integrations tab.
Authentication
Pass your API key in the request header using x-api-key.
x-api-key: <YOUR_API_KEY>
Where to find your key: ComTrack app → Integrations tab → API Key.
If the header is missing or invalid, the API returns 401 Unauthorized.
Query Parameters
All parameters are optional. When multiple parameters are provided, records must match all of them (logical AND).
| Parameter | Type | Match type | Notes |
|---|---|---|---|
agent_name |
string | case-insensitive contains | Partial search supported. |
carrier |
string | case-insensitive contains | Partial search supported. |
client_full_name |
string | case-insensitive contains | Partial search supported. |
date |
string | nearest-date to input | Provide any human-readable date format; API returns rows closest to the requested date. |
policy_number |
string | case-insensitive contains | Partial search supported. |
Notes
- Text fields perform contains matching (case-insensitive); partial searches are supported.
dateaccepts flexible formats (e.g.,2025-09-01,Sep 1 2025,9/1/25); the API finds rows closest to the provided date value.
Note: This endpoint currently performs exact matching (case-insensitive for text fields). Partial/contains searches and date ranges are not supported in this version.
Request Examples
cURL
curl -G \
'https://commissionconnector.com/api/reference' \
-H 'x-api-key: YOUR_API_KEY' \
--data-urlencode 'agent_name=Jane Smith' \
--data-urlencode 'carrier=Aetna' \
--data-urlencode 'date=2025-09-01'
```bash
curl -G \
'https://commissionconnector.com/api/reference' \
-H 'Authorization: Bearer YOUR_API_KEY' \
--data-urlencode 'agent_name=Jane Smith' \
--data-urlencode 'carrier=Aetna' \
--data-urlencode 'date=2025-09-01'
JavaScript (fetch)
const params = new URLSearchParams({
agent_name: 'Jane', // contains match
carrier: 'Aetna', // contains match
date: 'Sep 1, 2025' // any format; nearest-date search
});
const res = await fetch(`https://commissionconnector.com/api/reference?${params.toString()}` , {
method: 'GET',
headers: {
'x-api-key': process.env.COMTRACK_API_KEY
}
});
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
```javascript
const params = new URLSearchParams({
agent_name: 'Jane Smith',
carrier: 'Aetna',
date: '2025-09-01'
});
const res = await fetch(`https://commissionconnector.com/api/reference?${params.toString()}` , {
method: 'GET',
headers: {
Authorization: `Bearer ${process.env.COMTRACK_API_KEY}`
}
});
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import os, requests
params = {
'agent_name': 'Jane',
'carrier': 'Aetna',
'date': '9/1/25'
}
headers = {
'x-api-key': os.environ['COMTRACK_API_KEY']
}
r = requests.get('https://commissionconnector.com/api/reference', params=params, headers=headers)
r.raise_for_status()
print(r.json())
```python
import os, requests
params = {
'agent_name': 'Jane Smith',
'carrier': 'Aetna',
'date': '2025-09-01'
}
headers = {
'Authorization': f"Bearer {os.environ['COMTRACK_API_KEY']}"
}
r = requests.get('https://commissionconnector.com/api/reference', params=params, headers=headers)
r.raise_for_status()
print(r.json())
Response
Status: 200 OK
{
"id": "f3781798-cb6c-458f-82e7-11125162df37",
"case_id": "9a9e2074-4444-4323-843a-881120e514ab",
"agent_name": "Example Agent",
"carrier": "Manhattan Life",
"agent_id": "555555555",
"agent_npn": "",
"statement_date": "07/01/2025",
"payment_period": "July 2025",
"client_full_name": "William Johnson",
"client_first_name": "William",
"client_middle_name": "",
"client_last_name": "Johnson",
"carrier_member_id": "",
"policy_number": "123456789",
"effective_date": "04/01/2022",
"prior_plan": "",
"termination_date": "",
"termination_reason": "",
"line": "",
"sub_line": "",
"plan_type": "MSPL10GVA",
"plan": "MEDICARE SUPPLEMENT PLAN G",
"contract": "",
"pbp": "",
"member_state": "VA",
"member_county": "",
"premium": "121.17",
"agent_split": "",
"comp_rate": "0.23",
"lives": null,
"commission": 2787,
"expected_comm": "",
"reconcile": "",
"commission_action": "",
"classification": "Advance",
"agent_comp_plan": "",
"agent_payroll": 0,
"apply_payroll_to": "",
"locked": false,
"upline1_name": "",
"upline1_comp_plan": "",
"upline1_payroll": 0,
"upline2_name": "",
"upline2_comp_plan": "",
"upline2_payroll": 0,
"upline3_name": "",
"upline3_comp_plan": "",
"upline3_payroll": 0,
"upline4_name": "",
"upline4_comp_plan": "",
"upline4_payroll": 0,
"upline5_name": "",
"upline5_comp_plan": "",
"upline5_payroll": 0,
"upline6_name": "",
"upline6_comp_plan": "",
"upline6_payroll": 0,
"upline7_name": "",
"upline7_comp_plan": "",
"upline7_payroll": 0,
"your_spread": 0,
"statement_link_id": "b55e9afb-b658-4fa4-ba33-ead9f4460170",
"statement_link": {
"id": "00000000-0000-0000-0000-000000000000",
"case_id": "00000000-0000-0000-0000-000000000000",
"name": "",
"file_hash": "",
"created": "0001-01-01T00:00:00Z"
},
"case_name": "parsing"
}
The response body represents a single commission row object. Your queries may return multiple objects in an array depending on matches.
Errors
| Status | Error Code | When it happens |
|---|---|---|
400 |
invalid_parameter |
A parameter is malformed or unsupported. |
401 |
unauthorized |
Missing/invalid API key. |
404 |
not_found |
Endpoint not found. |
429 |
rate_limited |
Too many requests (back off and retry). |
5xx |
server_error |
Unexpected error on ComTrack’s side. |
Error body example
{
"error": {
"code": "invalid_parameter",
"message": "date must be YYYY-MM-DD"
}
}
FAQ
How are multiple parameters combined? Logical AND.
Do you support partial matches or wildcards? Yes. Text fields use case-insensitive contains matching.
How does date work? Provide any reasonable date format; the API returns rows closest to that date.
Do you support date ranges or pagination? Date ranges are not supported in this version. Pagination is not documented for this endpoint.
Changelog
- 2025-09-25 – Updated: switched auth to
x-api-keyheader; text fields now use case-insensitive contains matching;dateaccepts flexible formats and returns nearest-date rows; parameters listed alphabetically. - 2025-09-25 – Initial public docs for
GET /api/reference.
Contact
Questions or requests? Reach out to your ComTrack rep or email support at support@commissionconnector.com.