{"openapi": "3.1.0", "info": {"title": "Turkey Cinema Search API", "version": "1.0.0", "description": "Live showtimes, movies and theaters across Turkey. No auth. Every response includes a `time` object (today/tomorrow, Europe/Istanbul) for resolving relative dates. Human-readable docs: /llms.txt"}, "servers": [{"url": "https://cinema.siberofis.com"}], "paths": {"/api/meta": {"get": {"summary": "Available filter values (cities, genres, age ratings, formats, languages, date range) + current time", "responses": {"200": {"description": "Meta object", "content": {"application/json": {}}}}}}, "/api/search": {"get": {"summary": "Search sessions, movies or theaters via query string", "parameters": [{"name": "type", "in": "query", "schema": {"type": "string", "enum": ["sessions", "movies", "theaters"], "default": "sessions"}}, {"name": "city", "in": "query", "schema": {"type": "string"}, "description": "City name, e.g. Istanbul, Ankara (see GET /api/meta -> cities)"}, {"name": "side", "in": "query", "schema": {"type": "string", "enum": ["anadolu", "avrupa"]}, "description": "Istanbul side (anadolu=Asian, avrupa=European). Implies Istanbul."}, {"name": "genre", "in": "query", "schema": {"type": "string"}, "description": "One genre, partial match, e.g. Komedi, Animasyon (see meta.genres)"}, {"name": "movie", "in": "query", "schema": {"type": "string"}, "description": "Movie title, partial match (Turkish or original title)"}, {"name": "theater", "in": "query", "schema": {"type": "string"}, "description": "Theater name, partial match"}, {"name": "date", "in": "query", "schema": {"type": "string", "format": "date"}, "description": "Single date YYYY-MM-DD. Resolve 'today'/'tomorrow' from the time object in any response."}, {"name": "date_from", "in": "query", "schema": {"type": "string", "format": "date"}, "description": ""}, {"name": "date_to", "in": "query", "schema": {"type": "string", "format": "date"}, "description": ""}, {"name": "time_from", "in": "query", "schema": {"type": "string"}, "description": "Sessions at or after HH:MM (24h)"}, {"name": "time_to", "in": "query", "schema": {"type": "string"}, "description": "Sessions at or before HH:MM (24h)"}, {"name": "format", "in": "query", "schema": {"type": "string", "enum": ["2D", "3D"]}, "description": ""}, {"name": "language", "in": "query", "schema": {"type": "string"}, "description": "Altyazılı (subtitled) or Dublaj (dubbed)"}, {"name": "age_rating", "in": "query", "schema": {"type": "string"}, "description": "Exact rating, e.g. 13+ (see meta.age_ratings)"}, {"name": "age_rating_max", "in": "query", "schema": {"type": "integer"}, "description": "Numeric age limit — include films rated up to N; unrated included. Prefer for kids."}, {"name": "limit", "in": "query", "schema": {"type": "integer", "default": 100, "maximum": 1000}, "description": ""}], "responses": {"200": {"description": "Search results with time, count, filters_applied, results[]", "content": {"application/json": {}}}}}, "post": {"summary": "Search via JSON body", "requestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"type": {"type": "string", "enum": ["sessions", "movies", "theaters"], "default": "sessions"}, "filters": {"type": "object", "properties": {"city": {"type": "string", "description": "City name, e.g. Istanbul, Ankara (see GET /api/meta -> cities)"}, "side": {"type": "string", "enum": ["anadolu", "avrupa"], "description": "Istanbul side (anadolu=Asian, avrupa=European). Implies Istanbul."}, "genre": {"type": "string", "description": "One genre, partial match, e.g. Komedi, Animasyon (see meta.genres)"}, "movie": {"type": "string", "description": "Movie title, partial match (Turkish or original title)"}, "theater": {"type": "string", "description": "Theater name, partial match"}, "date": {"type": "string", "format": "date", "description": "Single date YYYY-MM-DD. Resolve 'today'/'tomorrow' from the time object in any response."}, "date_from": {"type": "string", "format": "date"}, "date_to": {"type": "string", "format": "date"}, "time_from": {"type": "string", "description": "Sessions at or after HH:MM (24h)"}, "time_to": {"type": "string", "description": "Sessions at or before HH:MM (24h)"}, "format": {"type": "string", "enum": ["2D", "3D"]}, "language": {"type": "string", "description": "Altyazılı (subtitled) or Dublaj (dubbed)"}, "age_rating": {"type": "string", "description": "Exact rating, e.g. 13+ (see meta.age_ratings)"}, "age_rating_max": {"type": "integer", "description": "Numeric age limit — include films rated up to N; unrated included. Prefer for kids."}, "limit": {"type": "integer", "default": 100, "maximum": 1000}}}}}}}}, "responses": {"200": {"description": "Search results with time, count, filters_applied, results[]", "content": {"application/json": {}}}}}}}}