All CDE CAD blog posts

CAD API Endpoints: Developer Reference Guide

Developer reference guide for CDE CAD API endpoints. Covers authentication, person lookups, vehicle queries, dispatch integration, and webhook configuration for FiveM server integration.

The CDE CAD API enables developers to build powerful integrations between FiveM servers and the CAD system. From in-game plate lookups to automated status updates and webhook notifications, the API provides programmatic access to all CAD features. This guide covers authentication, available endpoints, and integration best practices.

Authentication

API Key Authentication

All API requests require a valid API key passed in the Authorization header. API keys are generated in the CAD admin panel and can be scoped to specific permissions and rate limits.

Bearer Token Format

Include your API key in requests using the format: Authorization: Bearer YOUR_API_KEY. All requests without valid authentication return a 401 Unauthorized response.

Rate Limiting

API requests are rate-limited to prevent abuse. Default limits are 100 requests per minute for standard keys and 500 per minute for premium keys. Exceeding limits returns 429 Too Many Requests.

HTTPS Required

All API requests must be made over HTTPS. HTTP requests are rejected. This ensures all data transmitted between your server and the CAD is encrypted.

Person Endpoints

GET /api/v1/persons/search

Search for persons by name, DOB, or ID. Query parameters: firstName, lastName, dateOfBirth, personId. Returns matching records with basic information and criminal history summary.

GET /api/v1/persons/

Retrieve complete person record by ID. Returns full profile including physical description, addresses, vehicles, criminal history, warrants, and associated reports.

GET /api/v1/persons//history

Retrieve criminal history for a specific person. Returns all arrests, citations, warrants, court appearances, and sentences in chronological order.

POST /api/v1/persons

Create a new person record (civilian character). Required fields: firstName, lastName, dateOfBirth, gender. Optional: physical description, address, phone number.

Vehicle Endpoints

GET /api/v1/vehicles/search

Search vehicles by plate, VIN, or owner. Query parameters: plate, vin, ownerId, ownerName. Returns matching vehicles with registration status and flags.

GET /api/v1/vehicles/

Retrieve complete vehicle record by ID. Returns registration details, owner information, status flags (stolen, impounded), and associated incidents.

POST /api/v1/vehicles

Register a new vehicle. Required fields: plate, make, model, year, color, ownerId. Optional: vin, insuranceStatus, registrationExpiry.

PATCH /api/v1/vehicles//status

Update vehicle status. Valid statuses: active, stolen, impounded, suspended. Status changes trigger appropriate CAD alerts and BOLO generation.

Dispatch Endpoints

GET /api/v1/dispatch/calls

Retrieve active dispatch calls. Returns all current 911 calls with priority, type, location, assigned units, and status. Supports filtering by priority and type.

POST /api/v1/dispatch/calls

Create a new 911 call. Required fields: callType, priority, location, description. Optional: callerName, callerPhone, notes.

PATCH /api/v1/dispatch/units//status

Update unit status. Valid statuses: available, busy, enRoute, onScene, outOfService. Automatically updates the dispatch board and LiveMap.

POST /api/v1/dispatch/bolo

Create a new BOLO. Required fields: type (person/vehicle), description, reason. Optional: plate, suspectName, lastSeenLocation, expiryTime.

Webhook Configuration

Webhook Events

Subscribe to events including: newCall, callUpdated, callClosed, newArrest, newCitation, newBOLO, boloResolved, warrantIssued, warrantServed, unitStatusChange.

Webhook Payload Format

Webhooks deliver JSON payloads containing the event type, timestamp, and relevant data. Discord-formatted payloads are available for direct Discord channel integration.

Retry Policy

Failed webhook deliveries are retried up to 3 times with exponential backoff (1 minute, 5 minutes, 15 minutes). After 3 failures, the webhook is marked as failing and an admin alert is generated.

Webhook Security

Webhook payloads include an HMAC signature in the X-Webhook-Signature header for verification. Validate this signature to ensure payloads are genuine and not tampered with.

Best Practices

Cache Responses

Cache frequently accessed data like person and vehicle lookups on your FiveM server to reduce API calls. Use reasonable TTLs (5-15 minutes) and invalidate on updates.

Handle Errors Gracefully

Implement proper error handling for all API calls. Check HTTP status codes and display user-friendly messages. Never expose raw API errors to players.

Use Webhooks for Real-Time

Instead of polling the API for updates, subscribe to webhook events. This reduces API load and provides instant notifications when data changes.

Secure Your API Key

Never expose your API key in client-side code or public repositories. Store it in server-side configuration files and use environment variables when possible.

Continue exploring CDE CAD

  • All blog posts
  • Features
  • Pricing
  • Comparison vs other FiveM CAD systems
  • FAQ
  • Get started
  • Documentation
  • FiveM integration (ESX, QBCore, vRP)
  • Community directory

CDE CAD is a professional Computer-Aided Dispatch (CAD) and Mobile Data Terminal (MDT) platform for FiveM roleplay servers. Native support for ESX, QBCore and vRP. Plans from $15 per month.