This document describes the API endpoints available in the TMDB Addon.
All URLs referenced in the documentation have the following base:
http://your_domain:1337
Most endpoints don't require authentication. However, some features might require API keys to be set in the environment variables.
GET /manifest.json
Returns the Stremio addon manifest with addon details and available resources.
{
"id": "tmdb-addon",
"version": "1.0.0",
"name": "TMDB Addon",
"description": "TMDB Addon for Stremio",
"resources": ["catalog", "meta", "stream"],
"types": ["movie", "series"],
"catalogs": [...]
}
GET /catalog/:type/:id/:extra?.json
Returns a catalog of items based on type and ID.
type
: Type of content (movie
orseries
)id
: Catalog IDextra
: Additional parameters (optional)
{
"metas": [
{
"id": "tmdb:106646",
"type": "movie",
"name": "Movie Title",
"poster": "https://image.url/poster.jpg",
"background": "https://image.url/background.jpg"
}
]
}
GET /meta/:type/:id.json
Returns metadata for a specific item.
type
: Type of content (movie
orseries
)id
: TMDB ID or IMDb ID
{
"meta": {
"id": "tmdb:106646",
"type": "movie",
"name": "Movie Title",
"poster": "https://image.url/poster.jpg",
"background": "https://image.url/background.jpg",
"description": "Movie description",
"runtime": "120",
"year": 2023,
"director": ["Director Name"],
"cast": ["Actor 1", "Actor 2"]
}
}
GET /configure
Returns the configuration page for the addon.
The API uses standard HTTP response codes:
200
: Success400
: Bad Request404
: Not Found500
: Internal Server Error
Error response format:
{
"error": "Error message",
"code": "ERROR_CODE"
}
The API implements rate limiting to prevent abuse:
- 100 requests per minute per IP
- 1000 requests per hour per IP
Rate limit headers:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 99
X-RateLimit-Reset: 1613937600
The API implements caching for better performance:
- Manifest: 24 hours
- Catalog: 1 hour
- Meta: 24 hours
Cache headers:
Cache-Control: public, max-age=3600
ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
GET /catalog/movie/tmdb.top/skip=0&limit=100.json
GET /meta/movie/tmdb:106646.json
GET /configure
For development and testing, you can use the following tools:
-
Postman Collection: Download our Postman collection for easy API testing.
-
Development Environment:
npm run dev:server