API VEZOO para rutas y logística
Integra rutas por carretera, autocompletado, geocodificación y puntos de interés en webs, CRM, ERP, reparto y transporte.
Cobertura actual: Rusia, CEI, Europa, Norteamérica y Sudamérica, Oriente Medio y Egipto.
OpenAPI 3.1 incluye parámetros, bodies, cabeceras, errores, scopes y ejemplos.
Acceso de prueba
Tras registrarte, solicita acceso a la API desde tu cuenta de desarrollador. El administrador revisará el uso, los scopes y la carga antes de que la clave aparezca en tu cuenta.
Autenticación
Envía Authorization: Bearer <api-key>. Las claves pueden desactivarse o rotarse.
Acceso comercial
Plan, scopes, RPM, cuota, vencimiento y browser origins se pueden configurar por cliente.
Inicio rápido
Obtén una clave, calcula una ruta y usa route.polyline para POI y paradas inteligentes.
Cómo se conectan los métodos
La ruta es la base. Su polyline se envía a /places/along-route y /trip-insights.
POST /routeReturns distance, duration, segments and route.polyline.
POST /places/along-routeUse the polyline to fetch roadside objects by category.
POST /trip-insightsUse the same polyline for stop suggestions and smart trip planning.
Métodos API
/citiesscope: cities≤ 120 RPMAutocomplete / location search
q: string (2–80, required) · limit: integer (1–20, default 10)/geocodescope: geocode≤ 30 RPMForward and reverse geocoding
q: string OR lat + lon/routescope: route≤ 60 RPMRoad route with up to 12 via points and exclusions
from, to · vias[] / v · exclude: toll,motorway,ferry/places/along-routescope: places≤ 20 RPMFuel, food, lodging, service, tyres, parking and charging
polyline · categories[] (optional)/trip-insightsscope: insights≤ 12 RPMSuggested stops and automatic trip plan
polylineLímites
Se aplica el menor límite entre cliente y endpoint. Al superarlo se devuelve HTTP 429.
Scopes
Cada clave puede limitarse a los métodos necesarios.
citiesroutegeocodeplacesinsightsBrowser origins
Las peticiones desde navegador pueden restringirse a Origins permitidos.
Ejemplos listos
curl -G 'https://vezoo.ru/api/v1/route' \
-H 'Authorization: Bearer YOUR_API_KEY' \
--data-urlencode 'from=Москва' \
--data-urlencode 'to=Казань' \
--data-urlencode 'v=Владимир' \
--data-urlencode 'exclude=ferry'const response = await fetch('https://vezoo.ru/api/v1/route', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
from: 'Москва',
to: 'Казань',
vias: ['Владимир'],
exclude: ['ferry'],
}),
});
const data = await response.json();
console.log(data.route.polyline);curl -X POST 'https://vezoo.ru/api/v1/places/along-route' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"polyline":"ENCODED_POLYLINE_FROM_ROUTE",
"categories":["fuel","food","lodging","parking","charging"]
}'$payload = json_encode([
'from' => 'Москва',
'to' => 'Казань',
]);
$ch = curl_init('https://vezoo.ru/api/v1/route');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer YOUR_API_KEY',
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => $payload,
CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);{
"success": true,
"from": "Москва",
"to": "Казань",
"via": [],
"exclude": [],
"route": {
"kilometers": 817.4,
"minutes": 667,
"polyline": "...",
"segments": [...]
}
}Errores
Los errores de autenticación y cuota usan error_code estables. La validación devuelve HTTP 422.
| HTTP | error_code | Meaning |
|---|---|---|
| 401 | invalid_api_key | Missing or invalid key |
| 401 | api_key_disabled | Key was disabled |
| 401 | api_key_expired | Key expired |
| 403 | scope_forbidden | Scope is not allowed |
| 403 | origin_forbidden | Browser Origin is not allowed |
| 404 | not_found / unknown_location / no_route | Location or route was not found |
| 422 | validation error | Request parameters are invalid |
| 429 | rate_limit_exceeded | Per-minute limit exceeded |
| 429 | quota_exceeded | Total key quota exhausted |
| 503 | api_disabled / api_not_configured | Public API unavailable |
| 503 | service_unavailable | Required routing service unavailable |
Cabeceras de respuesta
Usa X-Request-Id para soporte y X-RateLimit-* para controlar el tráfico.
X-API-VersionAPI version used for the response
X-Request-IdUnique request identifier for diagnostics
X-RateLimit-LimitEffective requests-per-minute limit
X-RateLimit-RemainingRequests remaining in the current minute
X-Quota-LimitTotal quota when configured for this key
X-Quota-RemainingRemaining total quota
Retry-AfterSeconds before retrying after HTTP 429
Base URL
https://vezoo.ru/api/v1Authentication: Authorization: Bearer YOUR_API_KEY