# CryptoTokenImg API - Full Documentation
## Overview
CryptoTokenImg provides a free REST API for fetching crypto token images (logos/icons).
Images are sourced from multiple blockchain data providers with edge caching.
## Endpoints
### GET /{chainId}/{tokenAddress}
Fetch token image by chain ID and contract address.
Returns: Binary image (PNG/JPEG/SVG)
Example: GET /8453/0x3c2dfe6d969ad9de9d566727607eb2e9139d3596
Response Headers:
- X-Cache: HIT | MISS | STALE
- X-Source: source identifier (e.g., primary, secondary)
- X-Cache-Age: seconds since cached (when STALE)
- Content-Type: image/png, image/jpeg, etc.
- Cache-Control: public, max-age=2592000
### GET /symbol/{symbol}
Fetch token image by ticker symbol.
Returns: Binary image
Example: GET /symbol/eth
### GET /api/stats
Returns API statistics including supported chain count and source info.
### GET /api/chains?page=1&limit=50&search=ethereum
Paginated list of supported chains. Each chain has:
- chain_id, name, short_name, icon_url
### POST /api/corrections
Submit an image correction.
Body: { chainId?, address?, symbol?, submittedImageUrl, submitterName?, submitterEmail?, reason? }
## Caching
- Edge cache with 30-day TTL
- Stale-while-revalidate: images older than 7 days are served immediately and revalidated in background
- First request is a cache miss (slower), subsequent requests are fast
## Image Sources
The API uses multiple upstream data providers in a fallback chain.
For chain+address lookups, DEX and on-chain sources are tried first.
For symbol lookups, logo registries and market data providers are used.
## Integration Examples
HTML:
React:
## No Authentication Required
All endpoints are free and require no API keys.