RestAPI is a comprehensive Django REST Framework service designed for managing vehicle-based advertising campaigns with full-featured campaign, vehicle, and user management capabilities.
Overview
RestAPI provides a complete backend solution for managing advertising campaigns on vehicles. The system supports multiple user roles, campaign management, vehicle tracking, financial transactions, and real-time notifications.Key Features
JWT Authentication
Secure authentication with 8-hour access tokens using Simple JWT
Campaign Management
Create and manage advertising campaigns with geographic sectors and geofencing
Vehicle Tracking
Track vehicles, routes, and advertising coverage in real-time
Multi-Role System
Support for admins, advertisers, companies, and drivers with role-based permissions
Firebase Integration
Push notifications via Firebase Cloud Messaging
Email Notifications
HTML email templates for user communications
PostgreSQL Database
Robust data storage with Django ORM
Financial Tracking
Track payments, transactions, and campaign budgets
What You Can Build
With RestAPI, you can build:- Campaign Management Platforms: Create and manage advertising campaigns with geographic targeting
- Vehicle Tracking Systems: Monitor vehicle routes and advertising exposure
- Driver Applications: Allow drivers to register vehicles and track earnings
- Advertiser Dashboards: Enable companies to create campaigns and monitor performance
- Workshop Management: Coordinate vehicle branding installations across workshops
Architecture
RestAPI is built with:- Django 4.2.6: Web framework for the backend
- Django REST Framework 3.14.0: RESTful API development
- PostgreSQL: Primary database
- Simple JWT: Token-based authentication
- Firebase Cloud Messaging: Push notifications
- CORS Headers: Cross-origin resource sharing support
Core Components
Campaign System
Campaign System
Manage advertising campaigns with customizable parameters including budget, geographic sectors, vehicle types, branding options, and monetization schedules.
Vehicle Management
Vehicle Management
Register and track vehicles with detailed information including make, model, images, and associated drivers or clients.
User Roles
User Roles
Three primary user types: Administrators (full system access), Advertisers/Publicists (campaign creation), and Companies (campaign management). Driver and client roles for campaign participation.
Geofencing
Geofencing
Define geographic sectors with virtual boundaries using JSON coordinate data for targeted advertising zones.
Financial System
Financial System
Track capital movements, transactions, and campaign budgets with detailed financial records.
Permission System
Permission System
Granular role-based permissions with menu, view, and action-level controls.
Getting Started
Quickstart
Get your development environment up and running in minutes
Authentication
Learn how to authenticate and secure your API requests
API Reference
Explore the complete API documentation
Configuration
Configure your environment variables and settings
API Endpoints
RestAPI provides RESTful endpoints for all resources:- User management and authentication
- Campaign creation and management
- Vehicle registration and tracking
- Company and advertiser profiles
- Financial transactions
- Geographic sectors
- Workshop coordination
- Email and push notifications