ARU Developer Portal
Comprehensive API frameworks, SDK integrations, architecture models, and real-time mapping documentation to build reliable ride-hailing and fleet management solutions.
Quick Actions
Quick Start
Initiate and trigger your first ride-hailing request using our API collection.
Authentication
Set up Bearer tokens, scopes, security validations, and session parameters.
Real-time Tracking
Listen to spatial-temporal drivers via WebSockets and cloud updates.
Pricing Engine
Examine variables, base prices, distance estimates, and multiplier structures.
Webhooks
Register and receive payloads on trip achievements, failures, and updates.
Errors & Codes
Troubleshoot API requests, validation logic, and server responses easily.
Quick Start Guide
All requests must navigate through secured HTTPS. The dynamic root configuration URL is structured as:
Security & Authentication
The ARU developer portal enforces authentication via JSON Web Tokens (JWT). After initiating login via credential nodes, pass the acquired token inside the header standard.
rider, driver, business, admin) preventing unauthorized functional requests across portals.Architecture Stack
| Core Component | Technologies | Operational Scope |
|---|---|---|
| Backend Server | Node.js (Express.js) | REST architectural logic, state mapping, token checks. |
| Cloud Database | PostgreSQL (AWS RDS) | Users database, trip entries, records, configuration history. |
| Synchronous Update | Firebase Realtime / WebSockets | Real-time driver location stream, status shifts. |
| Static Asset Storage | AWS S3 Containers | Image records, KYC papers, maps vectors, transaction logs. |
User Roles & Access Permissions
Every account tier defines structural rules, query parameters, and operation controls.
| Role Code | Target User | Functional Capabilities |
|---|---|---|
| rider | Passenger / Business Client | Book trips, list deliveries, issue instant payments, review drivers. |
| driver | Registered Transporter | Retrieve localized job grids, manage states, check earnings records. |
| business | Logistics Partner / Fleet Manager | Manage fleet list, schedule multiple dispatches, check analytics maps. |
Real-time Tracking Implementation
ARU manages spatial data through Firebase Realtime Databases. The coordinates updates ping every two seconds across active dispatches.
import { getDatabase, ref, onValue } from 'firebase/database';
const db = getDatabase();
const jobRef = ref(db, 'jobs/YOUR_JOB_ID/driver_location');
onValue(jobRef, (snapshot) => {
const { lat, lng, heading } = snapshot.val();
map.updateDriverMarker(lat, lng, heading);
});
Dynamic Pricing Engine
Fares calculations are structured around localized rates, dynamic surge metrics (based on passenger densities), and selected custom transport parameters.
// Standardized Pricing Parameters Matrix
fare = base_rate + (distance_km * per_km_rate)
if (moving_assistance_active) fare += assistance_fee
if (fragile_handling_selected) fare += fragile_addon
if (surge_density_threshold_met) fare = fare * surge_coefficient
Webhooks & Events
Integrators can trigger secondary tasks inside external servers on critical updates by supplying secure endpoint targets.
| Event Scope | System Trigger |
|---|---|
| job.created | A booking (delivery or passenger ride) is validated. |
| job.accepted | A spatial transporter accepts a waiting job packet. |
| job.completed | Dispatched driver completes tracking and locks coordinate maps. |
| payment.success | The payment processor validates incoming transactions. |
X-ARU-Signature header. Verify utilizing standard HMAC-SHA256 protocols matching your secret before processing.Rate Limits
| User Tier Role | Per-Minute Rate Limit | Daily Max Allowance |
|---|---|---|
| rider | 60 queries | 5,000 queries |
| driver | 120 queries | 10,000 queries |
| business | 300 queries | 50,000 queries |
Exceptions & Errors Standard
ARU triggers explicit HTTP states containing structural code variables.
"success": false,
"code": "DRIVER_NOT_AVAILABLE",
"message": "No drivers are currently available in your area.",
"status": 503
}