Skip to content

Feature Avoidance

Feature Avoidance allows you to exclude specific road features from the route.


What is Feature Avoidance?

Avoid Features allows you to avoid specific road types or features during route calculation.


Basic Usage

Avoid Features in the Request Body

{
  "origin": {"latitude": 41.0082, "longitude": 28.9784},
  "destination": {"latitude": 41.0150, "longitude": 28.9850},
  "avoidFeatures": ["tollRoad", "tunnel", "ferry"]
}

Available Features

Feature Description
tunnel Tunnels
ferry Ferry services
tollRoad Toll roads
seasonalClosure Seasonally closed roads
controlledAccessHighway Controlled-access highways

Use Cases

1. Avoiding Toll Roads

{
  "origin": {"latitude": 41.0082, "longitude": 28.9784},
  "destination": {"latitude": 41.0150, "longitude": 28.9850},
  "avoidFeatures": ["tollRoad"]
}

2. Tunnel-Restricted Route

For vehicles transporting hazardous materials:

{
  "origin": {"latitude": 41.0082, "longitude": 28.9784},
  "destination": {"latitude": 41.0150, "longitude": 28.9850},
  "vehicle": {"hazardousGoods": ["flammable"]},
  "avoidFeatures": ["tunnel"]
}

3. Excluding Ferries

For routes that require road-only travel:

{
  "origin": {"latitude": 41.0082, "longitude": 28.9784},
  "destination": {"latitude": 41.0150, "longitude": 28.9850},
  "avoidFeatures": ["ferry"]
}

Configuration

Multiple Features

You can avoid multiple features at the same time:

{
  "avoidFeatures": ["tollRoad", "tunnel", "ferry", "controlledAccessHighway"]
}

Combination with Avoid Areas

Use together with polygon areas:

{
  "avoidFeatures": ["tollRoad"],
  "avoidAreas": [
    [[41.010, 28.980], [41.012, 28.980], [41.012, 28.985], [41.010, 28.985]]
  ]
}

Python Example

import requests

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

payload = {
    "origin": {"latitude": 41.0082, "longitude": 28.9784},
    "destination": {"latitude": 41.0150, "longitude": 28.9850},
    "avoidFeatures": ["tollRoad", "tunnel"]
}

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

Feature Avoidance — Flio.ai

Next Steps