Datasets · Buildertrend
Buildertrend Daily Logs Dataset
Field crew site-visit entries with their job, notes, weather and location.
- Record type
buildertrend:dailyLogs - Read it with List records, or the MCP tool list_dataset_records.
Request
curl -G https://api.clickr.cloud/v2/datasets/{datasetId}/records \
-H "Authorization: Bearer $CLICKR_API_KEY" \
--data-urlencode "limit=10"const response = await fetch(`https://api.clickr.cloud/v2/datasets/{datasetId}/records?${new URLSearchParams({
"limit": "10"
})}`, {
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/{datasetId}/records",
headers={"Authorization": f"Bearer {os.environ['CLICKR_API_KEY']}"},
params={
"limit": "10"
},
)
data = response.json()Record
{
"dailyLogId": "5200001",
"builderId": "48213",
"jobId": "7310422",
"jobName": "Ortega Kitchen Remodel",
"logDate": "2026-11-03T16:40:00",
"title": "Cabinet install day 2",
"notes": "Upper cabinets installed on north wall. Electrician roughed in under-cabinet lighting. Countertop template booked for Saturday, November 7. One base cabinet (sink base) arrived with a cracked side panel; replacement ordered, ETA 5 business days. Homeowner walked the site at 4 pm and approved the layout.",
"addedById": "6120403",
"addedByName": "Marcus Lee",
"addedByDateUtc": "2026-11-03T23:40:00",
"updatedById": "6120403",
"updatedByDateUtc": "2026-11-03T23:40:00",
"viewableBySubs": false,
"viewableByOwner": true,
"viewableByInternalUsers": true,
"weatherNotes": "Sunny, 58°F",
"weather": {
"conditions": "Sunny",
"maxTemp": 58,
"minTemp": 34
},
"tags": [],
"customFields": [],
"commentCount": 0,
"hasDocs": false,
"status": 0,
"isDeleted": false
}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 ›
Fields
Every field a record can carry. Filter and sort on them by name, as in filter[jobName][contains]=patel. A field without a value can be missing from a record.
dailyLogIdstringBuildertrend's id for the daily log.
externalIdstringAn external id Buildertrend sends with the log.
builderIdstringBuildertrend's id for the builder account the log belongs to.
jobIdstringBuildertrend's id for the log's job. Joins to the Buildertrend Jobs Dataset.
jobNamestringThe name of the log's job, as Buildertrend shows it.
logDatestringWhen the log entry is dated, in the jobsite's local time with no time zone, for example 2026-08-21T13:31:00.
titlestringThe log's title. Absent when the log has none.
notesstringThe notes written on the log.
addedByIdstringBuildertrend's user id for the person who added the log.
addedByNamestringThe name of the person who added the log.
addedByDateUtcstringWhen the log was added, in UTC. The value carries no Z or offset, so treat it as UTC rather than local time.
updatedByIdstringBuildertrend's user id for the person who last updated the log.
updatedByDateUtcstringWhen the log was last updated, in UTC. The value carries no Z or offset, so treat it as UTC rather than local time.
viewableBySubsbooleanWhether the log is visible to subs and vendors in Buildertrend.
viewableByOwnerbooleanWhether the log is visible to the client in Buildertrend.
viewableByInternalUsersbooleanWhether the log is visible to the builder's internal users in Buildertrend.
coordinateobjectThe location recorded with the log. This is the log's own position, not the weather station's.
coordinate.latitudenumberLatitude of the location recorded with the log, in decimal degrees.
coordinate.longitudenumberLongitude of the location recorded with the log, in decimal degrees.
isLocationTrackingEnabledbooleanBuildertrend's location tracking flag for the log.
weatherNotesstringThe weather notes written on the log.
weatherobjectThe weather reading Buildertrend attached to the log, with each figure as a number.
weather.conditionsstringThe conditions in words, for example Partly Cloudy with Thunderstorms.
weather.maxTempnumberThe high temperature in the log's weather reading. Buildertrend sends no unit with it.
weather.minTempnumberThe low temperature in the log's weather reading. Buildertrend sends no unit with it.
weather.maxWindSpeednumberThe highest wind speed in the log's weather reading. Buildertrend sends no unit with it.
weather.maxWindGustnumberThe strongest wind gust in the log's weather reading. Buildertrend sends no unit with it.
weather.precipnumberThe precipitation in the log's weather reading. Buildertrend sends no unit with it.
weather.maxHumiditynumberThe highest humidity in the log's weather reading.
weather.minHumiditynumberThe lowest humidity in the log's weather reading.
weather.heatIndexnumberThe heat index in the log's weather reading, when Buildertrend sends one.
weather.windChillnumberThe wind chill in the log's weather reading, when Buildertrend sends one.
customFieldsarrayThe account's custom fields on the log, as Buildertrend sends them. Absent when there are none.
commentCountnumberHow many comments the log has.
hasDocsbooleanWhether anything is attached to the log. Equivalent to files being non-empty, and kept because it can be filtered on where files cannot.
filesarray of objectsThe photos and documents attached to the log, one entry per file, sorted by fileId. Absent when the log has none.
files.fileIdstringBuildertrend's id for the file.
files.titlestringThe file's name as uploaded, extension included.
files.extensionstringThe file's extension, for example jpeg.
files.isPhotobooleanWhether Buildertrend treats the file as a photo.
files.sizeInBytesnumberThe file's size in bytes.
files.addedBystringThe name of the person who attached the file.
files.dateAttachedstringWhen the file was attached.
files.lastModifiedOnstringWhen the file was last modified.
files.jobIdstringBuildertrend's id for the job the file belongs to. It has matched the log's jobId in every case seen so far.
files.rowVersionstringBuildertrend's version marker for the file, which changes when the file does.
files.downloadUrlstringA link to download the file that needs no API key. It is made fresh each time the record is read and expires 1 hour later, so read the record again rather than storing it.
statusnumberBuildertrend's status code for the log. It has been 0 on every log seen so far, so no labels are published for it.
isDeletedbooleanTrue once the log has been removed in Buildertrend. Clickr keeps the record so you can see it went.
deletedAtdate and timeWhen Clickr saw the log removed.