REST API Overview
The SubSwift API provides developers with simple REST endpoints to query subtitle files, lookup synced translations, and integrate movie records. Responses are served in high-speed, CORS-enabled JSON payloads optimized for client-side fetches.
No Authentication Required: Basic subtitle fetching is fully public and rate-limited at 60 queries/minute. For high-volume application endpoints or premium integrations, contact us to provision custom developer keys.
Get Movies
Fetch the list of movies indexed on SubSwift. Returns paginated movie logs sorted in descending order of database creation.
GET
/api/movies
| Parameter | Type | Required | Description |
|---|---|---|---|
| limit | integer | No (Default: 20) | Number of results to retrieve. Max 100. |
| offset | integer | No (Default: 0) | Pagination offset. |
Example Response
{
"status": "success",
"count": 2,
"data": [
{
"imdb_id": "tt1375666",
"title": "Inception",
"year": 2010,
"rating": 8.8,
"poster": "https://image.tmdb...jpg",
"created_at": "2026-05-18T11:00:00Z"
},
{
"imdb_id": "tt0111161",
"title": "The Shawshank Redemption",
"year": 1994,
"rating": 9.3,
"poster": "https://image.tmdb...jpg",
"created_at": "2026-05-18T10:30:00Z"
}
]
}
Get Subtitles
Retrieve all subtitles associated with a specific movie identifier (IMDb ID). Returns both verified source subtitles and the auto-translated AI nodes.
GET
/api/subtitles
| Parameter | Type | Required | Description |
|---|---|---|---|
| imdb_id | string | Yes | Target movie's IMDb ID starting with "tt". |
Example Response
{
"imdb_id": "tt1375666",
"title": "Inception",
"subtitles": [
{
"sub_id": 105,
"language": "en",
"type": "verified",
"file_name": "Inception.2010.BluRay.en.srt",
"download_url": "https://subswift.xyz/dl/105"
},
{
"sub_id": 2045,
"language": "si",
"type": "ai_translated",
"source_lang": "en",
"file_name": "Inception_Sinhala_AI.srt",
"download_url": "https://subswift.xyz/dl/2045"
}
]
}
Search Subtitles
Query subtitles and movies across indices with fuzzy match titles. Ideal for autocomplete or query widgets.
GET
/api/search
| Parameter | Type | Required | Description |
|---|---|---|---|
| q | string | Yes | Search query (minimum 3 characters). |
Example Response
{
"query": "Incept",
"results": [
{
"imdb_id": "tt1375666",
"title": "Inception",
"year": 2010,
"score": 0.95,
"languages": ["en", "si", "hi"]
}
]
}