AeroModel
Documentation
GET /v1/assets/*
Public proxy for static files (airline and manufacturer logos) stored in R2. URLs returned by /v1/info/* always point at these routes — the internal R2 paths are never exposed.
GET /v1/assets/airline-logo/{slug}
Logo of an airline.
Example
GET https://api.aeromodel.dash-systems.fr/v1/assets/airline-logo/air-france?api-key=YOUR_KEY
Response: binary SVG / PNG / JPG / WebP (depending on what's stored), with Content-Type correctly detected from the source file extension.
| Header | Example |
|---|---|
Content-Type | image/svg+xml (or image/png, etc.) |
Cache-Control | public, max-age=86400, s-maxage=86400, stale-while-revalidate=604800 |
ETag | included for If-None-Match |
Errors
| Code | Case |
|---|---|
400 | Invalid slug (disallowed characters) |
404 | Unknown slug or logo unavailable for this airline |
401 | No API key |
GET /v1/assets/manufacturer-logo/{slug}
Logo of an aircraft manufacturer (Boeing, Airbus, Embraer, ...).
Example
GET https://api.aeromodel.dash-systems.fr/v1/assets/manufacturer-logo/airbus?api-key=YOUR_KEY
The slug is derived from the manufacturer name (Airbus → airbus, Bombardier Aerospace → bombardier-aerospace).
Errors
Same codes as airline logos.
Client-side usage
<img src="https://api.aeromodel.dash-systems.fr/v1/assets/airline-logo/air-france?api-key=YOUR_KEY"
alt="Air France logo"
loading="lazy">
Returned SVGs can be displayed directly in an
<img>. To inline them as<svg>, fetch the response and inject the body (theContent-Type: image/svg+xmlheader is set correctly).
See also
/v1/info/airlines/{slug}— metadata + logo URL/v1/info/planes/{slug}— metadata + manufacturer logo URL