Skip to content

Fleet API

API endpoints for Fleet operations in LSP.

Endpoints

API Reference

Create a fleet

http
POST /v1/lsp/fleets/create

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Request Body

typescript
interface Create a fleetRequest {
  type: string;
  code: string;
  name: string;
  description: string;
  contacts: {
    emails: string[];
    phones: string[]
  };
  address: {
    name: string;
    street1: string;
    city: string;
    state: string;
    country: string;
    coordinates: number[]
  };
  timezone: string;
  level: string;
  operatingMode: string;
  operatingHours: {
    dayOfWeek: string;
    openTime: string;
    closeTime: string;
    isClosed: boolean
  }[];
  digitalTwinSync: boolean;
}

Example:

json
{
  "type": "URBAN_TRANSIT",
  "code": "1F-1",
  "name": "Mijo Fleet",
  "description": "Urban transit mini buses",
  "contacts": {
    "emails": [
      "[email protected]"
    ],
    "phones": [
      "+1 898 938 382 422",
      "+233 204 55323"
    ]
  },
  "address": {
    "name": "Nunta Block",
    "street1": "Community 2, Tema",
    "city": "Tema",
    "state": "Greater Accra",
    "country": "Ghana",
    "coordinates": [
      -0.1387423,
      5.1284859
    ]
  },
  "timezone": "Africa/Accra",
  "level": "STANDARD",
  "operatingMode": "24_7",
  "operatingHours": [
    {
      "dayOfWeek": "MONDAY",
      "openTime": "07:00",
      "closeTime": "19:00",
      "isClosed": false
    },
    {
      "dayOfWeek": "TUESDAY",
      "openTime": "07:00",
      "closeTime": "19:00",
      "isClosed": false
    },
    {
      "dayOfWeek": "WEDNESDAY",
      "openTime": "07:00",
      "closeTime": "19:00",
      "isClosed": false
    },
    {
      "dayOfWeek": "THURSDAY",
      "openTime": "07:00",
      "closeTime": "19:00",
      "isClosed": false
    },
    {
      "dayOfWeek": "FRIDAY",
      "openTime": "07:00",
      "closeTime": "19:00",
      "isClosed": false
    },
    {
      "dayOfWeek": "SATURDAY",
      "openTime": "08:00",
      "closeTime": "16:00",
      "isClosed": false
    },
    {
      "dayOfWeek": "SUNDAY",
      "openTime": "00:00",
      "closeTime": "00:00",
      "isClosed": true
    }
  ],
  "digitalTwinSync": true
}

Get Fleet profile

http
GET /v1/lsp/fleets/:id

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Get all fleet

http
GET /v1/lsp/fleets

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Update fleet profile

http
PATCH /v1/lsp/fleets/:id

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Delete Fleet

http
DELETE /v1/lsp/fleets/:id

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Add vehicle to fleet

http
POST /v1/lsp/fleets/:id/vehicles/add

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Request Body

typescript
interface Add vehicle to fleetRequest {
  type: string;
  grade: string;
  status: string;
  specs: {
    category: string;
    VIN: string;
    brand: string;
    model: string;
    color: string;
    engine: string;
    mode: string;
    condition: string;
    seats: number;
    manufactured: number;
    registrationNumber: string;
    maxWeightCapacity: {
    value: number;
    unit: string
  }
  };
  ownership: string;
}

Example:

json
{
  "type": "MINIBUS",
  "grade": "2H",
  "status": "INACTIVE",
  "specs": {
    "category": "commuters",
    "VIN": "1HGBH41JXMN109186",
    "brand": "Toyota",
    "model": "HiAce",
    "color": "white",
    "engine": "DIESEL",
    "mode": "MANUAL",
    "condition": "EXCELLENT",
    "seats": 16,
    "manufactured": 2024,
    "registrationNumber": "GU-2022-BL",
    "maxWeightCapacity": {
      "value": 560,
      "unit": "kg"
    }
  },
  "ownership": "LEASED"
}

Get vehicle information

http
GET /v1/lsp/fleets/:id/vehicles/:vid

Headers

  • de-user-agent (required)
  • de-auth-token (optional)
  • de-auth-device (optional)

Get all vehicles in the fleet

http
GET /v1/lsp/fleets/:id/vehicles

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Update vehicle information

http
PATCH /v1/lsp/fleets/:id/vehicles/:vid

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Update Vehicle Specs

http
PATCH /v1/lsp/fleets/:id/vehicles/:vid/specs

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Update Vehicle IoT Specs

http
PATCH /v1/lsp/fleets/:id/vehicles/:vid/iot

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Allocate vehicle to a service

http
PUT /v1/lsp/fleets/:id/vehicles/:vid/allocate

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Deallocate vehicle from a service

http
PATCH /v1/lsp/fleets/:id/vehicles/:vid/deallocate

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Remove vehicle from the fleet

http
DELETE /v1/lsp/fleets/:id/vehicles/:vid

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Add parking facility

http
POST /v1/lsp/fleet/parking/facilities

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Request Body

typescript
interface Add parking facilityRequest {
  name: string;
  type: string;
  status: string;
  address: {
    name: string;
    street1: string;
    city: string;
    state: string;
    country: string;
    coordinates: number[]
  };
  access: {
    type: string;
    restrictions: string[]
  };
  securityLevel: string;
  amenities: object;
}

Example:

json
{
  "name": "Spintex - Sakumono Ecobank",
  "type": "TERMINAL",
  "status": "OPERATIONAL",
  "address": {
    "name": "Rolling Plaza",
    "street1": "Spintex Road, Baatsona",
    "city": "Accra",
    "state": "Greater Accra",
    "country": "Ghana",
    "coordinates": [
      -0.1387423,
      5.1284859
    ]
  },
  "access": {
    "type": "SCHEDULED",
    "restrictions": [
      "Always schedule before arrival",
      "20 min after schedule is tolerated"
    ]
  },
  "securityLevel": "STANDARD",
  "amenities": {}
}

Get Parking facility

http
GET /v1/lsp/fleet/parking/facilities/:id

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Get All Parking facility

http
GET /v1/lsp/fleet/parking/facilities

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)

Decommission Parking Facility

http
DELETE /v1/lsp/fleet/parking/facilities/:id

Headers

  • de-user-agent (required)
  • de-auth-token (required)
  • de-auth-device (required)