Datasets
List records
Returns a page of records from one of your datasets, filtered and sorted. Reading records never uses a run.
- No daily limit.
- Your access on the account must include this dataset.
- For assistants, the MCP tool list_dataset_records.
Request
curl -G https://api.clickr.cloud/v2/datasets/66f2a91c4b7e3d0012a8c5f1/records \
-H "Authorization: Bearer $CLICKR_API_KEY" \
--data-urlencode "filter[isCompleted][eq]=false" \
--data-urlencode "sort=startDate" \
--data-urlencode "limit=1"const response = await fetch(`https://api.clickr.cloud/v2/datasets/66f2a91c4b7e3d0012a8c5f1/records?${new URLSearchParams({
"filter[isCompleted][eq]": "false",
"sort": "startDate",
"limit": "1"
})}`, {
headers: {
Authorization: `Bearer ${process.env.CLICKR_API_KEY}`,
},
});
const data = await response.json();import os
import requests
response = requests.get(
"https://api.clickr.cloud/v2/datasets/66f2a91c4b7e3d0012a8c5f1/records",
headers={"Authorization": f"Bearer {os.environ['CLICKR_API_KEY']}"},
params={
"filter[isCompleted][eq]": "false",
"sort": "startDate",
"limit": "1"
},
)
data = response.json()Response
{
"records": [
{
"scheduleItemId": "9100209",
"jobId": "7310423",
"jobName": "Patel Basement Finish",
"builderId": "48213",
"phaseId": "304",
"phaseTitle": "Inspections",
"title": "Electrical rough-in inspection",
"startDate": "2026-10-15T00:00:00",
"endDate": "2026-10-15T00:00:00",
"durationWorkdays": 1,
"isHourly": false,
"isCompleted": false,
"percentComplete": 0,
"assignees": [
{
"id": "6120404",
"name": "Tasha Nguyen"
}
],
"showOwner": true,
"notes": "Inspector did not show for the original slot. Rebooking with the City of Louisville.",
"commentCount": 0,
"attachedFileCount": 0,
"isDeleted": false
}
],
"count": 99,
"limit": 1,
"skip": 0,
"sort": [
{
"field": "startDate",
"direction": "asc"
},
{
"field": "_id",
"direction": "asc"
}
]
}From the sample builder, Halvorsen & Styke.
Ask Claude or ChatGPT about the same records: add https://api.clickr.cloud/mcp/playground as a connector, with no sign-in. Try it on a sample builder ›
Each dataset's page lists the fields its records carry. Filter and sort on any of them.
Path parameters
datasetIdstringRequiredThe dataset to read. Copy it from the dataset's API panel in Clickr, or ask the MCP tool list_datasets.
Query parameters
filter[field][operator]stringKeeps the records where the field matches: filter[jobName][contains]=patel. Operators are eq, ne, gt, gte, lt, lte, contains and in. in takes a comma-separated list and contains ignores case. Repeat it to combine filters; a record must match all of them.
sortstringUp to 3 fields, comma-separated: sort=jobName,-startDate. Prefix a field with a minus sign, or add :desc, to sort it descending.
limitintegerHow many records to return, from 1 to 200. Defaults to 50.
skipintegerHow many matching records to skip before the page starts. Defaults to 0.
Response
200, as JSON.
recordsarray of objectsThe page of records, with the fields listed on the dataset's page.
countnumberHow many records match the filters, across every page.
limitnumberThe page size used.
skipnumberThe offset used.
sortarray of objectsThe sort applied, as field and direction. The last entry is always _id, which keeps pages stable.
fieldstringdirectionstringOne of asc, desc
Errors
JSON with an error and, on most, a message saying what to change. All errors
| Status | Error | When |
|---|---|---|
| 400 | Invalid request | A filter, sort, limit or skip can't be read. The message names the parameter and what was expected. |
| 401 | No API Key provided | The Authorization header is missing. |
| 401 | No account found for api key provided | The key isn't recognised: mistyped, revoked, or held by someone who has left the account. |
| 401 | No integration found for account | The account has no connector connected yet. |
| 403 | Forbidden | Your access on the account doesn't include this dataset. |
| 404 | Failed to list dataset records | No dataset on your account has this id. |
| 500 | Failed to list dataset records | The id isn't a valid dataset id. |