Skip to content

Skills

The Skills system allows you to perform specialized matching between vehicles and jobs.


What are Skills?

Skills match the capabilities that vehicles possess with the capabilities that jobs require. This ensures that appropriate vehicles are assigned to jobs with specific requirements.


Basic Usage

Vehicle Skills

{
  "vehicles": [
    {
      "id": "vehicle_1",
      "start": {"latitude": 41.0082, "longitude": 28.9784},
      "skills": [1, 2, 3]
    }
  ]
}

Job Skills

{
  "jobs": [
    {
      "id": "job_1",
      "start": {"latitude": 41.0100, "longitude": 28.9800},
      "end": {"latitude": 41.0150, "longitude": 28.9850},
      "skills": [1, 2]
    }
  ]
}

Matching Logic

All skills of a job must be present in the assigned vehicle's skills list.

Example: - Job skills: [1, 2] - Vehicle skills: [1, 2, 3] → ✅ Match - Vehicle skills: [1, 3] → ❌ No match (2 is missing)


Use Cases

1. Cold Chain Transport

{
  "vehicles": [
    {"id": "refrigerated_truck", "skills": [1]}
  ],
  "jobs": [
    {"id": "frozen_goods", "skills": [1]}
  ]
}

Skill 1 = Refrigerated vehicle

2. Crane-Equipped Vehicle

{
  "vehicles": [
    {"id": "crane_truck", "skills": [2]}
  ],
  "jobs": [
    {"id": "heavy_equipment", "skills": [2]}
  ]
}

Skill 2 = Crane equipment

3. Hazardous Materials Certification

{
  "vehicles": [
    {"id": "hazmat_truck", "skills": [3]}
  ],
  "jobs": [
    {"id": "chemical_delivery", "skills": [3]}
  ]
}

Skill 3 = Hazardous materials certification


Configuration

Skill IDs

Skill IDs are integer values. Their meaning is left to the user.

Skill ID Example Meaning
1 Refrigerated vehicle
2 Crane equipment
3 Hazardous materials
4 Zone permit (Istanbul)
5 Zone permit (Ankara)

Python Example

import requests

API_BASE_URL = "https://api.flio.ai"
API_KEY = "YOUR-API-KEY"

payload = {
    "vehicles": [
        {
            "id": "vehicle_1",
            "start": {"latitude": 41.0082, "longitude": 28.9784},
            "skills": [1, 2]
        }
    ],
    "jobs": [
        {
            "id": "job_1",
            "start": {"latitude": 41.0100, "longitude": 28.9800},
            "end": {"latitude": 41.0150, "longitude": 28.9850},
            "skills": [1]
        }
    ],
    "options": {"minimize": "cost"}
}

url = f"{API_BASE_URL}/solver/optimize?apiKey={API_KEY}"
response = requests.post(url, json=payload)
result = response.json()

Skills system — Flio.ai

Next Steps