API Documentation
Complete reference for the LogoAPI logo endpoint. Authenticate and retrieve airline logos.
On this page
Authentication
Include your API key as a Bearer token in every request, or use the X-API-Key header. Keys are delivered after subscribing to a plan.
# Bearer token (recommended)
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://logoapi.cc/v1/logos/AAL/s/200x200.png -o aal-logo.png
# Alternative: X-API-Key header
curl -H "X-API-Key: YOUR_API_KEY" \
https://logoapi.cc/v1/logos/AAL/s/200x200.png -o aal-logo.png
https://logoapi.cc/v1
/logos/:code/:type/:size.:format
Retrieve an airline logo image. Returns binary image data with the appropriate Content-Type header. Supports square, tail, and rectangular variants in multiple formats.
Parameters
| Name | In | Required | Description |
|---|---|---|---|
code |
path | ✓ | ICAO 3-letter (preferred) or IATA 2-letter airline code (e.g. AAL or AA) |
type |
path | ✓ | Logo type: s (square), t (tail), or r (rectangular). All types available on all plans. |
size |
path | ✓ | Dimensions as WxH in pixels (e.g. 200x200). Maximum depends on plan: Starter up to 200×200, Pro up to 500×500, Business up to 1000×1000. SVG scales to any display size; the WxH URL parameter must still contain positive dimensions within your plan limit, but does not determine the vector resolution. |
format |
path | ✓ | Output format: png and jpg on all plans. gif and svg available on Pro and Business. |
theme |
query | — | Logo theme: light (default) or dark. Dark theme requires Pro or Business plan — Starter receives 403. |
image/png, image/svg+xml). Not a JSON response.
Cache-Control: max-age=86400 (24 hours). Cache logos locally to minimize API calls.
Response Details
Plan limits
| Feature | Type | Plan | Details |
|---|---|---|---|
Max resolution |
— | All | Raster output: Starter 200×200 px, Pro 500×500 px, Business 1000×1000 px. SVG is scalable; request dimensions must still pass plan validation. |
Formats |
— | All | Starter: png, jpg. Pro & Business: png, jpg, gif, svg |
Dark theme |
— | All | Pro and Business only. Starter receives 403. |
Rate limit |
— | All | Starter: 25 req/s, Pro: 500 req/s, Business: 2500 req/s |
Response
(binary image data — Content-Type: image/png, image/svg+xml, etc.)
Examples
Square logo — American Airlines
Retrieve a 200×200 square logo using ICAO code AAL.
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://logoapi.cc/v1/logos/AAL/s/200x200.png?theme=dark
Tail logo — Emirates
Fetch the tail fin artwork for Emirates at 200×200.
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://logoapi.cc/v1/logos/UAE/t/200x200.png?theme=dark
Rectangular logo — Lufthansa
Get a rectangular 350×100 banner for Lufthansa via ICAO code DLH.
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://logoapi.cc/v1/logos/DLH/r/350x100.png?theme=dark
SVG vector logo (Pro+)
Download a scalable vector square logo for Qatar Airways. The SVG can be displayed at any size. Use positive dimensions within your plan limit in the request URL.
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://logoapi.cc/v1/logos/QTR/s/200x200.svg -o qatar-logo.svg
Error Codes
| Code | Description |
|---|---|
400 | Invalid request parameters — malformed dimensions, dimensions below 1×1, or an invalid theme. Dimensions above your plan limit return 403. |
401 | Missing or invalid API key. Check your Authorization or X-API-Key header. |
403 | Plan does not permit this resource — resolution exceeds plan limit, format not allowed, or dark theme on Starter |
404 | Airline code not found in the database |
429 | Per-second rate limit exceeded. Back off and retry. Standard rate headers included in response. |
502 | Upstream logo service temporarily unavailable — retry after a short delay |
Rate Limits
Rate limits are enforced per second based on your plan. Starter: 25 requests/second, Pro: 500 requests/second, Business: 2500 requests/second. Standard rate headers (RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset) are included in every response. Cache logos locally to stay well within limits.