Skip to main content

Additional Queries

Supplementary queries for vehicle data summaries, attestations, and daily activity.

dataSummary

Returns a summary of all signal and event data for a given vehicle, including total signal count, available signal names, and per-signal/per-event breakdowns with first/last seen timestamps.

Arguments

tokenIdInt!Required
The vehicle token ID.
filterSignalFilterOptional
Optional filter by source.

DataSummary

Fields

numberOfSignalsUint64!
Total number of signals collected for this vehicle.
availableSignals[String!]!
List of signal names that have stored data.
firstSeenTime!
Timestamp of the earliest signal received.
lastSeenTime!
Timestamp of the most recent signal received.
signalDataSummary[signalDataSummary!]!
Per-signal breakdown. Each entry has: `name` (String!), `numberOfSignals` (Uint64!), `firstSeen` (Time!), `lastSeen` (Time!).
eventDataSummary[eventDataSummary!]!
Per-event breakdown. Each entry has: `name` (String!), `numberOfEvents` (Uint64!), `firstSeen` (Time!), `lastSeen` (Time!).
query GetDataSummary {
dataSummary(tokenId: 12345) {
numberOfSignals
availableSignals
firstSeen
lastSeen
signalDataSummary {
name
numberOfSignals
firstSeen
lastSeen
}
eventDataSummary {
name
numberOfEvents
firstSeen
lastSeen
}
}
}

attestations

Returns attestations for a given vehicle. Attestations are signed records that certify vehicle data.

Arguments

tokenIdIntOptional
The vehicle token ID.
subjectStringOptional
The subject of the attestation.
filterAttestationFilterOptional
Filter attestations by metadata fields.

AttestationFilter

Filter Fields

id
Filter by attestation ID.
sourceAddress
Filter by the attesting party address.
dataVersion
Filter by data version.
producer
Filter by producer.
beforeTime
Filter attestations made before this timestamp.
afterTime
Filter attestations made after this timestamp.
limitInt
Limit results returned. Default: 10.
cursorTime
Cursor for pagination (exclusive).
tagsStringArrayFilter
Filter attestations by tags.

Attestation

Fields

idString!
Unique attestation identifier.
vehicleTokenIdInt!
The token ID of the vehicle.
timeTime!
Timestamp when the attestation was made.
attestationString!
JSON-encoded attestation data.
typeString!
Type of the attestation.
sourceAddress!
Address that created and signed the attestation.
dataVersionString!
Data version of the attestation.
producerString
Producer of the attestation data.
signatureString!
Signature of the attestation data.
tags[String!]
Tags associated with the attestation.
query GetAttestations {
attestations(
tokenId: 12345
filter: {
after: "2025-01-01T00:00:00Z"
limit: 5
}
) {
id
vehicleTokenId
time
type
source
dataVersion
producer
signature
tags
}
}

dailyActivity

Returns one record per calendar day in the date range, summarizing vehicle activity. Maximum date range: 31 days.Note: The mechanism must be ignitionDetection, frequencyAnalysis, or changePointDetection. The idling, refuel, and recharge mechanisms are not supported for daily activity.

Arguments

tokenIdInt!Required
The vehicle token ID.
fromTime!Required
Start time of the range.
toTime!Required
End time of the range.
mechanismDetectionMechanism!Required
The method used to detect activity segments. Only ignitionDetection, frequencyAnalysis, and changePointDetection are allowed.
configSegmentConfigOptional
Configuration for segment detection parameters.
signalRequests[SegmentSignalRequest!]Optional
Request specific signal aggregations per day.
eventRequests[SegmentEventRequest!]Optional
Request specific event counts per day.
timezoneStringOptional
Timezone for day boundaries (e.g. "America/New_York").

DailyActivity

Fields

startSignalLocation
Start of day (timestamp and location). Null if not available.
endSignalLocation
End of day (timestamp and location). Null if not available.
segmentCountInt!
Number of activity segments that started or fell within that day.
durationInt!
Sum of segment durations (total active time that day) in seconds.
signals[SignalAggregationValue!]!
Per-day signal aggregates. Each entry has `name` (String!), `agg` (String!), and `value` (Float!).
eventCounts[EventCount!]!
Per-day event counts. Each entry has `name` (String!) and `count` (Int!).
query GetDailyActivity {
dailyActivity(
tokenId: 12345
from: "2025-11-01T00:00:00Z"
to: "2025-11-07T00:00:00Z"
mechanism: frequencyAnalysis
signalRequests: [
{ name: "speed", agg: MAX }
]
timezone: "America/New_York"
) {
start {
timestamp
value { latitude longitude }
}
end {
timestamp
value { latitude longitude }
}
segmentCount
duration
signals { name agg value }
eventCounts { name count }
}
}

Response Example

{
"data": {
"dailyActivity": [
{
"start": {
"timestamp": "2025-11-01T08:30:00Z",
"value": { "latitude": 40.7128, "longitude": -74.006 }
},
"end": {
"timestamp": "2025-11-01T22:15:00Z",
"value": { "latitude": 40.758, "longitude": -73.9855 }
},
"segmentCount": 3,
"duration": 7200,
"signals": [
{ "name": "speed", "agg": "MAX", "value": 95.2 }
],
"eventCounts": []
}
]
}
}

vinVCLatest

Returns the latest VIN Verifiable Credential (VC) for a given vehicle token.Note: Requires the VEHICLE_VIN_CREDENTIAL privilege.

Arguments

tokenIdInt!Required
The vehicle token ID.

VINVC

Fields

vehicleTokenIdInt
The token ID of the vehicle.
vinString
The vehicle identification number.
recordedByString
The entity that recorded the VIN.
recordedAtTime
The time the VIN was recorded.
countryCodeString
The country code that the VIN belongs to.
vehicleContractAddressString
The address of the vehicle contract.
validFromTime
The time the VC is valid from.
validToTime
The time the VC is valid to.
rawVCString!
The raw VC JSON.
query GetVINVC {
vinVCLatest(tokenId: 12345) {
vin
recordedBy
recordedAt
countryCode
validFrom
validTo
}
}