Report

Overview

The Reports API provides powerful analytics and insights derived from your fleet's telematics data. These endpoints enable you to access various metrics, statistics, and trends to inform decision-making, measure performance, and identify opportunities for improvement across your entire fleet or specific vehicles.

Available Report Types

The Reports API includes several specialized endpoints:

  1. Event Accuracy Report - Analyze detection accuracy of safety events
  2. Incident Report - Review normalized incident counts per distance driven
  3. Global Report - Access anonymized industry benchmarks across all clients
  4. Usage Report - Examine daily distance metrics and hourly driving patterns
  5. Behavioral Report - Evaluate detailed driver behavior metrics and trends
  6. Environmental Report - Understand road usage, weather impact, and intersection analytics

Common Parameters

Many report endpoints support these common parameters:

ParameterTypeDescription
connectionIdUUID(Optional) Filter report by specific connection
vehicleIdUUID(Optional) Filter report by specific vehicle
fromdate-timeStart date for the report period (ISO 8601 format)
todate-timeEnd date for the report period (ISO 8601 format)

Event Accuracy Report

GET /reports/event-accuracy

Retrieve comprehensive statistics on the accuracy of detected events within your fleet. This report provides insights into event detection reliability, categorized by incident type and evaluated across different intensity levels. The data includes comparative metrics from both the telematics service provider (TSP) and Manifold's AI validation system.

Request Parameters

ParameterTypeLocationRequiredDescription
x-api-keyStringHeaderYesAPI authentication key
Connection-IdUUIDHeaderNoConnection identifier (if filtering by connection)
connectionIdUUIDQueryNoFilter results by specific connection ID
providerIdUUIDQueryNoFilter results by specific telematics provider ID
fromdate-timeQueryNoStart date for report data (ISO 8601 format)
todate-timeQueryNoEnd date for report data (ISO 8601 format)

Example Request

curl --request GET \
  --url "https://api.analytics.autos/reports/event-accuracy?from=2024-10-01T00:00:00Z&to=2024-10-12T23:59:59Z&eventTypes=Crash" \
  --header "x-api-key: YOUR-API-KEY" \
  --header "Connection-Id: YOUR-CONNECTION-ID"

Response Structure

{
  "status": 200,
  "message": null,
  "data": [
    {
      "incidentType": "Tailgating",
      "accuracy": {
        "tsp": {
          "accurateCount": 3,
          "inaccurateCount": 0
        },
        "manifold": 2
      },
      "intensity": {
        "veryLow": 0,
        "low": 0,
        "medium": 3,
        "high": 2,
        "critical": 0
      }
    },
    {
      "incidentType": "Hard Braking",
      "accuracy": {
        "tsp": {
          "accurateCount": 48,
          "inaccurateCount": 3
        },
        "manifold": 2
      },
      "intensity": {
        "veryLow": 7,
        "low": 24,
        "medium": 18,
        "high": 4,
        "critical": 0
      }
    }
  ],
  "next": null
}

Response Fields

FieldTypeDescription
statusIntegerHTTP status code (200 for success)
messageStringResponse message (null if successful)
dataArrayArray of event accuracy objects
data[].incidentTypeStringType of incident being analyzed (e.g., "Tailgating", "Hard Braking")
data[].accuracy.tsp.accurateCountIntegerNumber of events correctly detected by the telematics service provider
data[].accuracy.tsp.inaccurateCountIntegerNumber of events incorrectly detected by the telematics service provider
data[].accuracy.manifoldIntegerNumber of additional events validated or identified by Manifold's AI system
data[].intensity.veryLowIntegerCount of events with very low intensity classification
data[].intensity.lowIntegerCount of events with low intensity classification
data[].intensity.mediumIntegerCount of events with medium intensity classification
data[].intensity.highIntegerCount of events with high intensity classification
data[].intensity.criticalIntegerCount of events with critical intensity classification
nextStringPagination cursor (null if no additional pages)

Usage Notes

  • Use this endpoint to evaluate the reliability of your fleet's event detection system
  • Compare TSP detection accuracy with Manifold's enhanced detection capabilities
  • Analyze intensity distributions to understand the severity patterns of incidents
  • Monitor accuracy trends over time to measure improvements in detection systems
  • Filter by specific date ranges to correlate accuracy with other operational variables

Incident Report

GET /reports/incident

Retrieve a normalized report of incident counts per type, calculated per 1000 kilometers of driving distance. This standardized metric allows for fair comparison across different vehicles, time periods, or fleets with varying mileage, making it ideal for benchmarking and trend analysis.

Request Parameters

ParameterTypeLocationRequiredDescription
x-api-keyStringHeaderYesAPI authentication key
connectionIdUUIDQueryYesConnection ID for which to generate the report
fromdate-timeQueryNoStart date for data collection (ISO 8601 format)
todate-timeQueryNoEnd date for data collection (ISO 8601 format)

Example Request

curl --request GET \
  --url "https://api.analytics.autos/reports/incident?connectionId=123e4567-e89b-12d3-a456-426614174000&from=2024-01-01T00:00:00Z&to=2024-01-31T23:59:59Z" \
  --header "x-api-key: YOUR-API-KEY"

Response Structure

[
  {
    "type": "Harsh Braking",
    "count": 12.5
  },
  {
    "type": "Speeding",
    "count": 8.3
  },
  {
    "type": "Tailgating",
    "count": 3.7
  },
  {
    "type": "Hard Cornering",
    "count": 5.9
  },
  {
    "type": "Rapid Acceleration",
    "count": 6.2
  }
]

Response Fields

FieldTypeDescription
typeStringHuman-readable name of the incident type
countNumberNormalized count of incidents per 1000 kilometers driven

Usage Notes

  • This normalized metric enables equitable comparison across fleets of different sizes
  • Use this data to establish internal safety benchmarks and set improvement targets
  • Track metrics over time to assess the effectiveness of safety initiatives and driver training
  • Compare incident types to identify priority areas for safety improvements
  • Correlate with behavioral and environmental reports for root cause analysis

Global Report

GET /reports/global

Retrieve a global report containing industry benchmarks and aggregated metrics across all clients in the Manifold system. This data provides valuable context for comparing your fleet's performance against industry standards.

Request Parameters

ParameterTypeLocationRequiredDescription
x-api-keyStringHeaderYesAPI authentication key

Example Request

curl --request GET \
  --url "https://api.analytics.autos/reports/global" \
  --header "x-api-key: YOUR-API-KEY"

Response Structure

{
  "normalizedAccurateIncidentAveragePerType": [
    {
      "type": "Harsh Braking",
      "count": 10.2
    },
    {
      "type": "Speeding",
      "count": 5.8
    },
    {
      "type": "Hard Cornering",
      "count": 4.3
    },
    {
      "type": "Rapid Acceleration",
      "count": 3.9
    },
    {
      "type": "Tailgating",
      "count": 2.4
    },
    {
      "type": "Phone Distraction",
      "count": 3.6
     }
  ]
}

Response Fields

FieldTypeDescription
normalizedAccurateIncidentAveragePerTypeArrayArray of incident types with industry averages
normalizedAccurateIncidentAveragePerType[].typeStringHuman-readable name of the incident type
normalizedAccurateIncidentAveragePerType[].countNumberAverage normalized count of incidents per 1000 kilometers across all clients

Usage Notes

  • Use global averages as performance benchmarks for your fleet
  • Identify areas where your fleet exceeds or falls below industry standards
  • Set realistic safety and performance targets based on industry metrics
  • Understand your relative position within the broader fleet management landscape
  • Factor industry benchmarks into your safety and operational improvement strategies

Usage Report

GET /reports/overview/usage

Retrieve comprehensive daily distance-driven statistics and hourly driving patterns for the specified time period. This detailed report helps fleet managers understand vehicle utilization patterns and driving habits, enabling optimized scheduling and resource allocation.

Request Parameters

ParameterTypeLocationRequiredDescription
x-api-keyStringHeaderYesAPI authentication key
fromdate-timeQueryNoStart date-time for the report in UTC (ISO 8601 format). Limited to a 90 day window with respect to from and to.
todate-timeQueryNoEnd date-time for the report in UTC (ISO 8601 format)
connectionIdUUIDQueryNoFilter by specific connection
vehicleIdUUIDQueryNoFilter by specific vehicle

Example Request

curl --request GET \
  --url "https://api.analytics.autos/reports/overview/usage?from=2024-01-01T00:00:00Z&to=2024-01-31T23:59:59Z&vehicleId=123e4567-e89b-12d3-a456-426614174000" \
  --header "x-api-key: YOUR-API-KEY"

Response Structure

{
  "dailyDistanceDriven": [
    {
      "dateTime": "2024-01-01T00:00:00Z",
      "distanceInMeter": 125000
    },
    {
      "dateTime": "2024-01-02T00:00:00Z",
      "distanceInMeter": 85000
    },
    {
      "dateTime": "2024-01-03T00:00:00Z",
      "distanceInMeter": 142000
    },
    {
      "dateTime": "2024-01-04T00:00:00Z",
      "distanceInMeter": 97500
    }
  ],
  "hourlyKilometerPercentage": [
    {
      "time": "08:00:00",
      "percent": 12.5,
      "rushHourTrafficType": 1
    },
    {
      "time": "09:00:00",
      "percent": 9.2,
      "rushHourTrafficType": 1
    },
    {
      "time": "17:00:00",
      "percent": 15.3,
      "rushHourTrafficType": 2
    },
    {
      "time": "18:00:00",
      "percent": 14.1,
      "rushHourTrafficType": 2
    }
  ]
}

Response Fields

FieldTypeDescription
dailyDistanceDrivenArrayArray of daily distance measurements
dailyDistanceDriven[].dateTimeStringISO 8601 date for the distance measurement
dailyDistanceDriven[].distanceInMeterNumberDistance driven in meters for that day
hourlyKilometerPercentageArrayArray of hourly driving distribution data
hourlyKilometerPercentage[].timeStringTime in format "HH:MM:SS" indicating the hour
hourlyKilometerPercentage[].percentNumberPercentage of total kilometers driven during this hour
hourlyKilometerPercentage[].rushHourTrafficTypeIntegerTraffic condition indicator: 0 (Normal), 1 (High Traffic), 2 (Very High Traffic)

Usage Notes

  • Analyze daily distance patterns to identify usage anomalies and optimization opportunities
  • Examine hourly distribution to understand rush hour exposure for more efficient scheduling
  • Compare multiple vehicles to identify utilization disparities within your fleet
  • Track changes over time to assess the impact of policy or route changes
  • Use rush hour traffic indicators to optimize scheduling for fuel efficiency and reduced idle time
  • Monitor days without activity to improve asset utilization
  • Correlate peak usage days with business operations for better resource planning

Behavioral Report

GET /reports/overview/behavioral

Retrieve comprehensive behavioral analytics data, including incident risk metrics, speeding patterns, and detailed analytics comparing fleet-specific data against client-wide benchmarks. This in-depth report provides valuable insights into driver behavior trends, risk factors, and safety performance over time.

Request Parameters

ParameterTypeLocationRequiredDescription
x-api-keyStringHeaderYesAPI authentication key
fromdate-timeQueryYesStart date for the behavioral analysis (ISO 8601 format). Limited to a 90 day window with respect to from and to.
todate-timeQueryYesEnd date for the behavioral analysis (ISO 8601 format)
vehicleIdUUIDQueryNoFilter by specific vehicle
connectionIdUUIDQueryNoFilter by specific connection
incidentTypeStringQueryNoFilter by specific incident type

Example Request

curl --request GET \
  --url "https://api.analytics.autos/reports/overview/behavioral?from=2024-01-01T00:00:00Z&to=2024-01-31T23:59:59Z" \
  --header "x-api-key: YOUR-API-KEY"

Response Structure

{
  "incidentRiskAndRates": [
    {
      "type": "Late Braking",
      "risk": 0,
      "rate": 0.113515
    },
    {
      "type": "Lane Departure",
      "risk": 2.98287,
      "rate": 0.158921
    },
    {
      "type": "Hard Brake",
      "risk": 3156.18142,
      "rate": 6.311428
    },
    {
      "type": "Harsh Motion",
      "risk": 62.43325,
      "rate": 0.249733
    },
    {
      "type": "Stop Sign Pass",
      "risk": 728.883344,
      "rate": 6.833597
    },
    {
      "type": "Distracted Driving",
      "risk": 11081.3238,
      "rate": 221.626476
    },
    {
      "type": "Accident",
      "risk": 2224.894,
      "rate": 0.317842
    },
    {
      "type": "Malfunction",
      "risk": 0,
      "rate": 154.19863
    }
  ],
  "speedingAnalytics": {
    "totalSpeedingDistanceDriven": 10976045.894263,
    "totalDistanceDriven": 4404708396.175931,
    "dayTimeSpeedingDistance": 2712773988.974922,
    "clientAveragePercent": 0.249189,
    "filteredSpeedingDistanceTrendOverTime": {
      "2025-02-01T00:00:00Z": 0.002939759915409048,
      "2025-03-01T00:00:00Z": 0.002109952362244875,
      "2025-04-01T00:00:00Z": 0.0020224219211965105
    },
    "clientSpeedingDistanceTrendOverTime": {
      "2025-02-01T00:00:00Z": 0.002939759915409048,
      "2025-03-01T00:00:00Z": 0.002109952362244875,
      "2025-04-01T00:00:00Z": 0.0020224219211965105
    }
  },
  "incidentAnalytics": {
    "incidentType": "allIncident",
    "filteredRate": 568.800423,
    "clientRate": 568.800423,
    "filteredRisk": 0,
    "clientRisk": 0,
    "filteredRiskTrendOverTime": {
      "2025-02-01T00:00:00Z": 0,
      "2025-03-01T00:00:00Z": 0,
      "2025-04-01T00:00:00Z": 0
    },
    "clientRiskTrendOverTime": {
      "2025-02-01T00:00:00Z": 0,
      "2025-03-01T00:00:00Z": 0,
      "2025-04-01T00:00:00Z": 0
    },
    "filteredRateTrendOverTime": {
      "2025-02-01T00:00:00Z": 550.104876,
      "2025-03-01T00:00:00Z": 583.110091,
      "2025-04-01T00:00:00Z": 638.430086
    },
    "clientRateTrendOverTime": {
      "2025-02-01T00:00:00Z": 550.104876,
      "2025-03-01T00:00:00Z": 583.110091,
      "2025-04-01T00:00:00Z": 638.430086
    }
  }
}

Response Fields

FieldTypeDescription
incidentRiskAndRatesArrayArray of risk and rate metrics for different incident types
incidentRiskAndRates[].typeStringSpecific type of incident (e.g., "Hard Brake", "Distracted Driving")
incidentRiskAndRates[].riskNumberRisk score calculated for this incident type (higher indicates greater risk)
incidentRiskAndRates[].rateNumberOccurrence rate per 1000 kilometers for this incident type
speedingAnalyticsObjectDetailed analysis of speeding behaviors
speedingAnalytics.totalSpeedingDistanceDrivenNumberTotal distance driven while speeding (meters)
speedingAnalytics.totalDistanceDrivenNumberTotal distance driven in the analyzed period (meters)
speedingAnalytics.dayTimeSpeedingDistanceNumberDistance driven while speeding during daylight hours (meters)
speedingAnalytics.clientAveragePercentNumberAverage percentage of distance driven while speeding across all clients
speedingAnalytics.filteredSpeedingDistanceTrendOverTimeObjectTemporal trend of speeding distance for the filtered dataset
speedingAnalytics.clientSpeedingDistanceTrendOverTimeObjectTemporal trend of speeding distance across all clients
incidentAnalyticsObjectDetailed analysis of a specific incident type or all incidents combined
incidentAnalytics.incidentTypeStringThe incident type being analyzed (or "allIncident" for combined analysis)
incidentAnalytics.filteredRateNumberRate value for filtered data (per 1000 kilometers)
incidentAnalytics.clientRateNumberAverage rate across all client data (per 1000 kilometers)
incidentAnalytics.filteredRiskNumberRisk score for filtered data
incidentAnalytics.clientRiskNumberAverage risk score across all client data
incidentAnalytics.filteredRiskTrendOverTimeObjectTemporal trend of risk values for filtered data
incidentAnalytics.clientRiskTrendOverTimeObjectTemporal trend of risk values across all clients
incidentAnalytics.filteredRateTrendOverTimeObjectTemporal trend of incident rates for filtered data
incidentAnalytics.clientRateTrendOverTimeObjectTemporal trend of incident rates across all clients

Usage Notes

  • Use comparative metrics between your filtered data and client-wide averages for performance benchmarking
  • Analyze temporal trends to identify improvement or deterioration patterns
  • Drill down into specific incident types to focus safety initiatives and driver coaching
  • Consider daylight vs. nighttime speeding patterns for targeted safety programs
  • Examine associated factors to understand contextual influences on driver behavior
  • Track behavior scores over time to measure the effectiveness of safety programs
  • Use speeding severity breakdowns to prioritize interventions for high-risk behaviors
  • Correlate behavior metrics with environmental factors for comprehensive risk assessment

Environmental Report

GET /reports/overview/environmental

Retrieve comprehensive environmental analytics including road type usage, weather conditions encountered during trips, and intersection analytics. This report helps understand how external factors affect fleet operations and safety, enabling better route planning and risk management.

Request Parameters

ParameterTypeLocationRequiredDescription
x-api-keyStringHeaderYesAPI authentication key
fromdate-timeQueryYesStart date for the environmental analysis (ISO 8601 format). Limited to a 90 day window with respect to from and to.
todate-timeQueryYesEnd date for the environmental analysis (ISO 8601 format)
connectionIdUUIDQueryNoFilter by specific connection
vehicleIdUUIDQueryNoFilter by specific vehicle

Example Request

curl --request GET \
  --url "https://api.analytics.autos/reports/overview/environmental?from=2024-01-01T00:00:00Z&to=2024-01-31T23:59:59Z" \
  --header "x-api-key: YOUR-API-KEY"

Response Structure

{
  "roadTypeAnalytics": [
    {
      "roadType": "Other/Inactive",
      "distancePercentage": 0.17271703314147951
    },
    {
      "roadType": "Special Purpose Roads",
      "distancePercentage": 0.09721514617499712
    },
    {
      "roadType": "Small Ways",
      "distancePercentage": 6.19513863970309303
    },
    {
      "roadType": "Major Roads",
      "distancePercentage": 90.68600371439669
    },
    {
      "roadType": "Local Roads",
      "distancePercentage": 1.2727019952205858
    },
    {
      "roadType": "Secondary Roads",
      "distancePercentage": 1.5762234713631627
    }
  ],
  "weatherAnalytics": [
    {
      "weatherType": "Snow",
      "distance": 130310838.49529277,
      "isSevere": true
    },
    {
      "weatherType": "Rain/Drizzle",
      "distance": 231885495.49258122,
      "isSevere": false
    },
    {
      "weatherType": "Mist/Fog",
      "distance": 323046750.49691814,
      "isSevere": false
    },
    {
      "weatherType": "Ice Pellets",
      "distance": 7133679.96133968,
      "isSevere": true
    },
    {
      "weatherType": "Thunderstorms",
      "distance": 55325020.3920226,
      "isSevere": false
    },
    {
      "weatherType": "Clear/Partly Cloudy",
      "distance": 1676696557.333202,
      "isSevere": false
    },
    {
      "weatherType": "Sleet",
      "distance": 9153790.84128854,
      "isSevere": true
    },
    {
      "weatherType": "Cloudy/Overcast",
      "distance": 1907548852.6034174,
      "isSevere": false
    }
  ],
  "intersectionPassedAnalytics": {
    "intersectionPassedCount": 2943427,
    "distanceWithIntersection": 4023191415.937812,
    "intersectionRate": 731.6149533277633,
    "topIntersectionsDensity": [
      {
        "postalCode": "07033",
        "state": "New Jersey",
        "country": "USA",
        "intersectionRate": 1107397.4854366921
      },
      {
        "postalCode": "07410",
        "state": "New Jersey",
        "country": "USA",
        "intersectionRate": 137207.28907399077
      },
      {
        "postalCode": "07002",
        "state": "New Jersey",
        "country": "USA",
        "intersectionRate": 63319.081312534436
      }
    ]
  }
}

Response Fields

FieldTypeDescription
roadTypeAnalyticsArrayArray of analytics about road type usage
roadTypeAnalytics[].roadTypeStringType of road (e.g., "Major Roads", "Local Roads")
roadTypeAnalytics[].distancePercentageNumberPercentage of total distance traveled on this road type
weatherAnalyticsArrayArray of analytics about weather conditions encountered
weatherAnalytics[].weatherTypeStringType of weather condition (e.g., "Snow", "Rain/Drizzle")
weatherAnalytics[].distanceNumberDistance traveled in this weather condition (meters)
weatherAnalytics[].isSevereBooleanIndicates if this weather condition is considered severe
intersectionPassedAnalyticsObjectAnalytics about intersections encountered during trips
intersectionPassedAnalytics.intersectionPassedCountIntegerTotal number of intersections passed
intersectionPassedAnalytics.distanceWithIntersectionNumberTotal distance traveled through intersections (meters)
intersectionPassedAnalytics.intersectionRateNumberRate of intersections per unit of distance
intersectionPassedAnalytics.topIntersectionsDensityArrayList of areas with highest intersection density
intersectionPassedAnalytics.topIntersectionsDensity[].postalCodeStringPostal/ZIP code of the area
intersectionPassedAnalytics.topIntersectionsDensity[].stateStringState/province of the area
intersectionPassedAnalytics.topIntersectionsDensity[].countryStringCountry of the area
intersectionPassedAnalytics.topIntersectionsDensity[].intersectionRateNumberRate of intersections in this area

Usage Notes

  • Analyze road type distribution to understand your fleet's typical driving environment and exposure
  • Correlate weather conditions with safety events to identify environmental risk factors and seasonal patterns
  • Use intersection analytics to optimize routes and reduce exposure to high-density intersection areas
  • Consider seasonal variations in environmental factors when planning operations and training
  • Identify high-risk combinations of road types, weather conditions, and time of day
  • Use time-of-day analytics to schedule operations during safer time periods
  • Compare incident rates across different environmental conditions to prioritize safety interventions
  • Target driver training for specific environmental challenges identified in the report

Best Practices for Reports API

Optimizing Report Requests

  1. Date Range Selection
    • Use appropriate time ranges to optimize response times and data relevance
    • For large fleets, shorter time ranges (e.g., 1-4 weeks) typically provide more manageable and actionable datasets
    • Historical trend analysis may require longer ranges with lower detail levels
  2. Filtering Strategies
    • Filter by connection ID when analyzing data from specific telematics providers
    • Use vehicle ID filtering for individual vehicle performance assessment
    • Apply multiple filters to pinpoint specific patterns or issues
  3. Caching Considerations
    • Cache report data for frequently accessed time periods to reduce API load
    • Implement time-based cache invalidation aligned with your operational cycles
    • Consider incremental updates for long-term trend data