Nintendo Switch API
API Documentation
đ Statistics
/nx/stats
Retrieve comprehensive statistics about the Nintendo Switch game library.
Response
{ "success": true, "data": { "total_games": 15420, "last_sync": "2025-10-12T10:30:00Z", "by_type": { "base": 12000, "update": 2500, "dlc": 920 }, "games_vs_demos": { "games": 14800, "demos": 620 }, "by_region": { "US": 8500, "EU": 4200, "JP": 2720 }, "by_console": { "nx": 15420 }, "top_publishers": [ { "name": "Nintendo", "games_count": 450 } ], "recent_updates": [ { "tid": "0100ABC001234000", "name": "Example Game", "updated_at": "..." } ] } }
đŽ Game Data
/nx/:tid
Get detailed information about a game by its Title ID.
Parameters
tid
path required - 16-character hexadecimal Title IDlang
query optional - Language code for descriptions (en, fr, ja, es, de, nl, pt, it, zh, ko, ru). Default:en
fields
query optional - Comma-separated list of fields to include in response. Always includesid
. Example:name,description,publisher
Example Requests
# Full response GET /nx/0100ABC001234000?lang=en # Only specific fields GET /nx/0100ABC001234000?fields=name,description GET /nx/0100ABC001234000?fields=description GET /nx/0100ABC001234000?fields=name,publisher,releaseDate,icon # Combine with language GET /nx/0100ABC001234000?lang=fr&fields=name,description
Example Response
{ "description": "Full game description...", "id": "0100ABC001234000", "name": "The Legend of Zelda: Breath of the Wild", "publisher": "Nintendo", "releaseDate": "2017-03-03", "version": 196608, "category": ["Adventure", "Action"], "developer": "Nintendo EPD", "intro": "Brief summary...", "isDemo": false, "languages": ["en", "fr", "es", "de", "it"], "nsuId": 70010000000025, "numberOfPlayers": 1, "ratingContent": ["Violence"], "region": "US", "rightsId": "0100ABC00123400000000000000000AB", "console": "nx", "type": "base", "icon": "https://api.nlib.cc/nx/0100ABC001234000/icon", "banner": "https://api.nlib.cc/nx/0100ABC001234000/banner", "screens": { "count": 8, "screenshots": [ "https://api.nlib.cc/nx/0100ABC001234000/screen/1", "https://api.nlib.cc/nx/0100ABC001234000/screen/2", "https://api.nlib.cc/nx/0100ABC001234000/screen/3" ] } }
Example Filtered Response
# GET /nx/0100ABC001234000?fields=name,description { "id": "0100ABC001234000", "name": "The Legend of Zelda: Breath of the Wild", "description": "Full game description..." }
Performance Notes
The fields
parameter optimizes both SQL queries and filesystem operations. Only requested fields are selected from the database, and media checks are skipped if not requested. This can reduce response time from ~15ms to ~3ms and response size from 2-5 KB to ~100-200 bytes.
Media URLs (icon
, banner
, screens
) are only included if the corresponding media files are available.
đŧī¸ Media Assets
/nx/:tid/icon/:width?/:height?
Retrieve the game icon with optional resizing (JPEG format). Icons are always square.
Parameters
width
path optional - Size in pixels (30-4096). Rounded to nearest 10 for cache optimization.height
path optional - Must equal width if provided. Icons are always square.
Examples
GET /nx/0100ABC001234000/icon # Original size GET /nx/0100ABC001234000/icon/32 # 30x30 (rounded) GET /nx/0100ABC001234000/icon/64 # 60x60 (rounded) GET /nx/0100ABC001234000/icon/256 # 260x260 (rounded) GET /nx/0100ABC001234000/icon/256/256 # 260x260 (explicit) GET /nx/0100ABC001234000/icon/512/512 # 510x510 (rounded) GET /nx/0100ABC001234000/icon/1024 # 1020x1020 (rounded)
Response
Returns raw JPEG image data with Content-Type: image/jpeg
. Icons are always square. Sizes are automatically rounded to the nearest 10 pixels for cache optimization (e.g., 32->30, 64->60, 67->70). Header X-Size-Rounded
shows the actual size served.
/nx/:tid/banner/:size?
/nx/:tid/banner/:width/:height
Retrieve the game banner with optional size selection (JPEG format).
Parameters
size
path optional - Banner size:240
/240p
,360
/360p
,480
/480p
,540
/540p
,720
/720p
,1080
/1080p
, or specific widths. Default: 1920x1080width
path optional - Custom width in pixels (100-1920)height
path optional - Custom height in pixels (100-1080)
Examples (Shortcuts)
GET /nx/0100ABC001234000/banner # 1920x1080 (default) GET /nx/0100ABC001234000/banner/1080p # 1920x1080 GET /nx/0100ABC001234000/banner/720p # 1280x720 GET /nx/0100ABC001234000/banner/540p # 960x540 GET /nx/0100ABC001234000/banner/480p # 854x480 GET /nx/0100ABC001234000/banner/360p # 640x360 GET /nx/0100ABC001234000/banner/240p # 426x240
Examples (Custom dimensions)
GET /nx/0100ABC001234000/banner/1280/720 # Custom 1280x720 GET /nx/0100ABC001234000/banner/1920/1080 # Custom 1920x1080 GET /nx/0100ABC001234000/banner/800/450 # Custom 800x450 GET /nx/0100ABC001234000/banner/640/360 # Custom 640x360
Response
Returns raw JPEG image data with Content-Type: image/jpeg
. Supports shortcuts (240p-1080p) or custom dimensions (100-1920 x 100-1080).
/nx/:tid/screens
List all available screenshots for a game.
Response
{ "count": 8, "screenshots": [ "https://api.nlib.cc/nx/0100ABC001234000/screen/1", "https://api.nlib.cc/nx/0100ABC001234000/screen/2", "https://api.nlib.cc/nx/0100ABC001234000/screen/3" ] }
Screenshot URLs are dynamically generated based on the API domain.
/nx/:tid/screen/:index
Retrieve a specific screenshot by index (JPEG format).
Parameters
index
path required - Screenshot index (starts at 1)
Example
GET /nx/0100ABC001234000/screen/1
Response
Returns raw JPEG image data with Content-Type: image/jpeg
âšī¸ Information
đ Important Notes
- All Title IDs are automatically converted to uppercase
- Endpoints can be called with or without a trailing slash
- All images are served in JPEG format
- Icons support optional resizing (30-4096 pixels, rounded to nearest 10) and are always square
- Banners support multiple sizes: 240p, 360p, 480p, 540p, 720p, 1080p
- Banners support custom dimensions: /banner/:width/:height (100-1920 x 100-1080)
- Resized images are cached on disk for optimal performance
- Screenshot URLs are generated dynamically based on the API domain
- Database is automatically synchronized with TitleDB
- API responses use standard HTTP status codes (200, 404, 500)