Runs

Real-time vehicle monitoring with webhook alerts

What is Runs?

Runs provides real-time vehicle monitoring with instant webhook notifications when issues are detected. Subscribe to vehicles and get alerted when maintenance is needed, problems arise, or important events occur.

Perfect for proactive fleet management and predictive maintenance.

Who Uses Runs?

Fleet Software Platforms

  • Add real-time monitoring to existing platforms
  • Alert fleet managers to vehicle issues instantly
  • Provide predictive maintenance insights

Insurance Companies

  • Monitor insured vehicles for risk indicators
  • Detect accidents and incidents in real-time
  • Track usage patterns for usage-based insurance

Service Shops

  • Monitor customer vehicles remotely
  • Alert customers before problems become expensive
  • Schedule maintenance proactively

Rental Companies

  • Monitor rental fleet in real-time
  • Detect maintenance needs between rentals
  • Track vehicle condition automatically

How It Works

1. Subscribe to Vehicles

POST https://api.honeyruns.com/v1/runs/subscribe
Content-Type: application/json
Authorization: Bearer YOUR_API_KEY
 
{
  "vehicle_id": "vehicle_123",
  "webhook_url": "https://your-app.com/webhooks/runs",
  "events": [
    "maintenance_needed",
    "check_engine_light",
    "low_battery",
    "hard_impact",
    "geo_fence_exit"
  ]
}

2. Receive Real-Time Webhooks

When an event occurs, you receive:

{
  "event": "maintenance_needed",
  "vehicle_id": "vehicle_123",
  "timestamp": "2025-01-15T14:30:00Z",
  "severity": "medium",
  "details": {
    "type": "oil_change",
    "description": "Oil life at 5%, change recommended",
    "current_mileage": 45230,
    "last_service": "2024-10-15",
    "estimated_cost": "$45-65"
  },
  "actions": {
    "recommended": "Schedule oil change within 500 miles",
    "urgent": false,
    "can_drive": true
  }
}

3. Take Action

Use the webhook data to:

  • Alert vehicle owners
  • Schedule maintenance
  • Update fleet dashboards
  • Trigger automated workflows

Available Events

Maintenance Alerts

  • oil_change_needed - Oil life low
  • brake_wear_detected - Brake pads wearing
  • tire_pressure_low - Tire pressure below threshold
  • battery_voltage_low - Battery needs attention
  • coolant_temperature_high - Overheating detected

System Warnings

  • check_engine_light - Check engine light activated
  • abs_warning - ABS system issue
  • airbag_warning - Airbag system fault
  • transmission_fault - Transmission issue detected

Incident Detection

  • hard_impact - Collision or impact detected
  • rapid_deceleration - Harsh braking event
  • aggressive_acceleration - Rapid acceleration
  • airbag_deployment - Airbag deployed

Location Events

  • geo_fence_exit - Vehicle left defined area
  • geo_fence_entry - Vehicle entered defined area
  • speed_limit_exceeded - Speeding detected
  • excessive_idling - Engine idling too long

Usage Alerts

  • mileage_threshold - Reached mileage limit
  • fuel_level_low - Fuel below threshold
  • maintenance_due - Scheduled maintenance needed

Pricing

$1 - $5 per vehicle/month

Pricing based on:

  • Event frequency (basic vs. comprehensive monitoring)
  • Webhook volume (number of alerts)
  • Data retention (how long history is stored)

Pricing Tiers

TierPrice/VehicleEvents IncludedRetention
Basic$1/moMaintenance only30 days
Standard$2.50/moMaintenance + Warnings90 days
Premium$5/moAll events + Predictions1 year

Volume Discounts

  • 100+ vehicles: 15% off
  • 1,000+ vehicles: 25% off
  • 10,000+ vehicles: Custom pricing

Webhook Security

Signature Verification

All webhooks include a signature header for verification:

X-HoneyRuns-Signature: sha256=abc123...

Verify in your code:

const crypto = require('crypto');
 
function verifyWebhook(payload, signature, secret) {
  const hash = crypto
    .createHmac('sha256', secret)
    .update(JSON.stringify(payload))
    .digest('hex');
 
  return `sha256=${hash}` === signature;
}

Retry Logic

  • Failed webhooks are retried 3 times
  • Exponential backoff: 1min, 5min, 15min
  • Monitor delivery status in dashboard

Use Cases

Predictive Fleet Maintenance

Problem: Reactive maintenance is expensive and causes downtime Solution: Get alerts before failures occur, schedule proactively

Example: Oil change alerts save $500+ per vehicle/year by preventing engine damage

Insurance Telematics

Problem: Manual claims processing is slow Solution: Instant incident detection with automatic claim initiation

Example: Hard impact alert triggers immediate customer contact and claims workflow

Service Shop Monitoring

Problem: Customers ignore maintenance until it's too late Solution: Monitor customer vehicles and alert before problems escalate

Example: Low battery alert prevents roadside breakdown and lost customer time

Rental Fleet Management

Problem: Vehicle issues discovered only between rentals Solution: Continuous monitoring catches problems during rentals

Example: Check engine light alert allows vehicle swap before customer is stranded

Integration Examples

Node.js Webhook Handler

app.post('/webhooks/runs', (req, res) => {
  const event = req.body;
 
  // Verify signature
  if (!verifyWebhook(event, req.headers['x-honeyruns-signature'], SECRET)) {
    return res.status(401).send('Invalid signature');
  }
 
  // Handle event
  switch (event.event) {
    case 'maintenance_needed':
      scheduleService(event.vehicle_id, event.details);
      break;
    case 'hard_impact':
      notifyFleetManager(event.vehicle_id, event.details);
      break;
    // ... handle other events
  }
 
  res.status(200).send('OK');
});

Python Webhook Handler

from flask import Flask, request
import hmac
import hashlib
 
@app.route('/webhooks/runs', methods=['POST'])
def handle_webhook():
    signature = request.headers.get('X-HoneyRuns-Signature')
    payload = request.get_json()
 
    # Verify signature
    expected = hmac.new(
        SECRET.encode(),
        request.data,
        hashlib.sha256
    ).hexdigest()
 
    if f"sha256={expected}" != signature:
        return 'Invalid signature', 401
 
    # Handle event
    if payload['event'] == 'maintenance_needed':
        schedule_service(payload['vehicle_id'], payload['details'])
 
    return 'OK', 200

Getting Started

1. Create Account

Sign up at runs.honeyruns.com

2. Set Up Webhook Endpoint

Create an endpoint to receive webhook POSTs

3. Subscribe to Vehicles

curl -X POST https://api.honeyruns.com/v1/runs/subscribe \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "vehicle_id": "vehicle_123",
    "webhook_url": "https://your-app.com/webhooks/runs",
    "events": ["maintenance_needed", "check_engine_light"]
  }'

4. Monitor & Respond

Start receiving real-time alerts and take action

Next Steps


Ready to monitor? Get started →

On this page