{"openapi":"3.1.0","info":{"title":"Oesnada public API","version":"1","summary":"Read-only access to Oesnada tech news in English and Turkish.","description":"Free, read-only and keyless. Every response carries an `attribution` object and every item a `url` and a `cite_url`. When you show or quote anything from a response, credit \"Oesnada\" and link the item url. Summaries are produced automatically from public reporting; do not present them as quotes. An empty result means Oesnada has not covered it, not that it did not happen. Structured data (AI models, importance index, most covered) is CC BY 4.0. Editorial text is under the Oesnada API Terms. Responses are GET only. Unknown query parameters are rejected with 400. Lists use signed keyset cursors. Rate limits are per client and reported in the RateLimit headers. Breaking changes will ship as /v2; v1 stays available for at least 6 months afterwards (Deprecation and Sunset headers).","license":{"name":"CC BY 4.0","url":"https://creativecommons.org/licenses/by/4.0/"},"contact":{"name":"Oesnada","url":"https://oesnada.com"}},"servers":[{"url":"https://oesnada.com","description":"Production"}],"tags":[{"name":"stories"},{"name":"search"},{"name":"storylines"},{"name":"topics","description":"Entity hubs."},{"name":"analysis"},{"name":"ai-models"},{"name":"data"},{"name":"meta"}],"paths":{"/api/v1":{"get":{"summary":"API index","tags":["meta"],"operationId":"index","responses":{"200":{"description":"Links, version, attribution text and the MCP url.","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/openapi.json":{"get":{"summary":"This document","tags":["meta"],"operationId":"openapi","responses":{"200":{"description":"OpenAPI 3.1","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/stories":{"get":{"summary":"List stories","description":"Published stories, newest first.","tags":["stories"],"operationId":"listStories","parameters":[{"name":"lang","in":"query","required":false,"schema":{"type":"string","enum":["en","tr"],"default":"en"},"description":"Edition. A Turkish item appears only when Turkish text exists."},{"name":"entity","in":"query","required":false,"schema":{"type":"string","pattern":"^[a-z0-9-]{1,80}$"},"description":"Topic slug, for example openai."},{"name":"category","in":"query","required":false,"schema":{"type":"string"}},{"name":"storyline","in":"query","required":false,"schema":{"type":"string"}},{"name":"since","in":"query","required":false,"schema":{"type":"string","format":"date-time"},"description":"Published at or after. ISO 8601 date or date-time."},{"name":"until","in":"query","required":false,"schema":{"type":"string","format":"date-time"},"description":"Published before. ISO 8601 date or date-time."},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":50,"default":20}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"},"description":"The next_cursor of the previous page. Signed and short-lived; do not build or edit one."}],"responses":{"200":{"description":"OK","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"ETag":{"schema":{"type":"string"}},"X-Attribution":{"schema":{"type":"string"},"description":"The attribution line, repeated outside the body."}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data","meta","attribution"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Story"}},"meta":{"$ref":"#/components/schemas/EnvelopeMeta"},"attribution":{"$ref":"#/components/schemas/Attribution"}}}}}},"400":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Overloaded"}}}},"/api/v1/stories/{id}":{"get":{"summary":"Get a story","description":"404 when the story is not published or has no text in `lang`.","tags":["stories"],"operationId":"getAStory","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"},"description":"Story id."},{"name":"lang","in":"query","required":false,"schema":{"type":"string","enum":["en","tr"],"default":"en"},"description":"Edition. A Turkish item appears only when Turkish text exists."}],"responses":{"200":{"description":"OK","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"ETag":{"schema":{"type":"string"}},"X-Attribution":{"schema":{"type":"string"},"description":"The attribution line, repeated outside the body."}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data","meta","attribution"],"properties":{"data":{"$ref":"#/components/schemas/Story"},"meta":{"$ref":"#/components/schemas/EnvelopeMeta"},"attribution":{"$ref":"#/components/schemas/Attribution"}}}}}},"400":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Overloaded"}}}},"/api/v1/search":{"get":{"summary":"Search coverage","description":"Ranked results from published text only. No synthesis and no cursor: refine the query instead of paging.","tags":["search"],"operationId":"searchCoverage","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":2,"maxLength":200}},{"name":"lang","in":"query","required":false,"schema":{"type":"string","enum":["en","tr"],"default":"en"},"description":"Edition. A Turkish item appears only when Turkish text exists."},{"name":"kinds","in":"query","required":false,"schema":{"type":"string"},"description":"Comma-separated: story, storyline, hub, analysis, essay, model."},{"name":"entity","in":"query","required":false,"schema":{"type":"string","pattern":"^[a-z0-9-]{1,80}$"},"description":"Topic slug, for example openai."},{"name":"since","in":"query","required":false,"schema":{"type":"string","format":"date-time"},"description":"Published at or after. ISO 8601 date or date-time."},{"name":"until","in":"query","required":false,"schema":{"type":"string","format":"date-time"},"description":"Published before. ISO 8601 date or date-time."},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":25,"default":10}}],"responses":{"200":{"description":"OK","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"ETag":{"schema":{"type":"string"}},"X-Attribution":{"schema":{"type":"string"},"description":"The attribution line, repeated outside the body."}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data","meta","attribution"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/SearchHit"}},"meta":{"$ref":"#/components/schemas/EnvelopeMeta"},"attribution":{"$ref":"#/components/schemas/Attribution"}}}}}},"400":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Overloaded"}}}},"/api/v1/storylines":{"get":{"summary":"List storylines","description":"Public storylines only (active, dormant, closed).","tags":["storylines"],"operationId":"listStorylines","parameters":[{"name":"lang","in":"query","required":false,"schema":{"type":"string","enum":["en","tr"],"default":"en"},"description":"Edition. A Turkish item appears only when Turkish text exists."},{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["active","dormant","closed"]}},{"name":"entity","in":"query","required":false,"schema":{"type":"string","pattern":"^[a-z0-9-]{1,80}$"},"description":"Topic slug, for example openai."},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":50,"default":20}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"},"description":"The next_cursor of the previous page. Signed and short-lived; do not build or edit one."}],"responses":{"200":{"description":"OK","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"ETag":{"schema":{"type":"string"}},"X-Attribution":{"schema":{"type":"string"},"description":"The attribution line, repeated outside the body."}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data","meta","attribution"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Storyline"}},"meta":{"$ref":"#/components/schemas/EnvelopeMeta"},"attribution":{"$ref":"#/components/schemas/Attribution"}}}}}},"400":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Overloaded"}}}},"/api/v1/storylines/{slug}":{"get":{"summary":"Get a storyline","description":"With the dated events and, when every citation verified, the so-far text.","tags":["storylines"],"operationId":"getAStoryline","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"},"description":"Storyline slug in `lang`."},{"name":"lang","in":"query","required":false,"schema":{"type":"string","enum":["en","tr"],"default":"en"},"description":"Edition. A Turkish item appears only when Turkish text exists."}],"responses":{"200":{"description":"OK","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"ETag":{"schema":{"type":"string"}},"X-Attribution":{"schema":{"type":"string"},"description":"The attribution line, repeated outside the body."}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data","meta","attribution"],"properties":{"data":{"$ref":"#/components/schemas/Storyline"},"meta":{"$ref":"#/components/schemas/EnvelopeMeta"},"attribution":{"$ref":"#/components/schemas/Attribution"}}}}}},"400":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Overloaded"}}}},"/api/v1/topics":{"get":{"summary":"List topics","description":"Entity hubs with at least three stories.","tags":["topics"],"operationId":"listTopics","parameters":[{"name":"lang","in":"query","required":false,"schema":{"type":"string","enum":["en","tr"],"default":"en"},"description":"Edition. A Turkish item appears only when Turkish text exists."},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":50,"default":20}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"},"description":"The next_cursor of the previous page. Signed and short-lived; do not build or edit one."}],"responses":{"200":{"description":"OK","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"ETag":{"schema":{"type":"string"}},"X-Attribution":{"schema":{"type":"string"},"description":"The attribution line, repeated outside the body."}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data","meta","attribution"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Topic"}},"meta":{"$ref":"#/components/schemas/EnvelopeMeta"},"attribution":{"$ref":"#/components/schemas/Attribution"}}}}}},"400":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Overloaded"}}}},"/api/v1/topics/{slug}":{"get":{"summary":"Get a topic","description":"The checked story-so-far summary and the recent stories.","tags":["topics"],"operationId":"getATopic","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"},"description":"Topic slug."},{"name":"lang","in":"query","required":false,"schema":{"type":"string","enum":["en","tr"],"default":"en"},"description":"Edition. A Turkish item appears only when Turkish text exists."}],"responses":{"200":{"description":"OK","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"ETag":{"schema":{"type":"string"}},"X-Attribution":{"schema":{"type":"string"},"description":"The attribution line, repeated outside the body."}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data","meta","attribution"],"properties":{"data":{"$ref":"#/components/schemas/Topic"},"meta":{"$ref":"#/components/schemas/EnvelopeMeta"},"attribution":{"$ref":"#/components/schemas/Attribution"}}}}}},"400":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Overloaded"}}}},"/api/v1/analysis":{"get":{"summary":"List analysis","description":"Published posts. Notes essays are listed with kind \"essay\" and carry only their summary.","tags":["analysis"],"operationId":"listAnalysis","parameters":[{"name":"lang","in":"query","required":false,"schema":{"type":"string","enum":["en","tr"],"default":"en"},"description":"Edition. A Turkish item appears only when Turkish text exists."},{"name":"series","in":"query","required":false,"schema":{"type":"string","enum":["this-week-in-tech","ai-model-market","notes"]}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":50,"default":20}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"},"description":"The next_cursor of the previous page. Signed and short-lived; do not build or edit one."}],"responses":{"200":{"description":"OK","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"ETag":{"schema":{"type":"string"}},"X-Attribution":{"schema":{"type":"string"},"description":"The attribution line, repeated outside the body."}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data","meta","attribution"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Analysis"}},"meta":{"$ref":"#/components/schemas/EnvelopeMeta"},"attribution":{"$ref":"#/components/schemas/Attribution"}}}}}},"400":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Overloaded"}}}},"/api/v1/analysis/{series}/{key}":{"get":{"summary":"Get an analysis post","description":"404 when unpublished or without text in `lang`.","tags":["analysis"],"operationId":"getAnAnalysisPost","parameters":[{"name":"series","in":"path","required":true,"schema":{"type":"string"},"description":"Series slug."},{"name":"key","in":"path","required":true,"schema":{"type":"string"},"description":"Period key, for example 2026-42."},{"name":"lang","in":"query","required":false,"schema":{"type":"string","enum":["en","tr"],"default":"en"},"description":"Edition. A Turkish item appears only when Turkish text exists."}],"responses":{"200":{"description":"OK","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"ETag":{"schema":{"type":"string"}},"X-Attribution":{"schema":{"type":"string"},"description":"The attribution line, repeated outside the body."}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data","meta","attribution"],"properties":{"data":{"$ref":"#/components/schemas/Analysis"},"meta":{"$ref":"#/components/schemas/EnvelopeMeta"},"attribution":{"$ref":"#/components/schemas/Attribution"}}}}}},"400":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Overloaded"}}}},"/api/v1/ai-models":{"get":{"summary":"List AI models","description":"The latest daily snapshot, ordered by slug. Prices are USD per million tokens. CC BY 4.0.","tags":["ai-models"],"operationId":"listAIModels","parameters":[{"name":"provider","in":"query","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":50,"default":20}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"},"description":"The next_cursor of the previous page. Signed and short-lived; do not build or edit one."}],"responses":{"200":{"description":"OK","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"ETag":{"schema":{"type":"string"}},"X-Attribution":{"schema":{"type":"string"},"description":"The attribution line, repeated outside the body."}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data","meta","attribution"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Model"}},"meta":{"$ref":"#/components/schemas/EnvelopeMeta"},"attribution":{"$ref":"#/components/schemas/Attribution"}}}}}},"400":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Overloaded"}}}},"/api/v1/ai-models/price-changes":{"get":{"summary":"List AI model price changes","description":"Recorded changes between the latest snapshot and the newest one at least `days` older, or the first snapshot when none is that old: `meta.comparison` gives the baseline date, the requested and actual days and whether the list was cut at 200. An empty list means no change was recorded between those two snapshots, not that none happened.","tags":["ai-models"],"operationId":"listAIModelPriceChanges","parameters":[{"name":"days","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":90,"default":7}},{"name":"provider","in":"query","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"ETag":{"schema":{"type":"string"}},"X-Attribution":{"schema":{"type":"string"},"description":"The attribution line, repeated outside the body."}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data","meta","attribution"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PriceChange"}},"meta":{"$ref":"#/components/schemas/EnvelopeMeta"},"attribution":{"$ref":"#/components/schemas/Attribution"}}}}}},"400":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Overloaded"}}}},"/api/v1/ai-models/{slug}":{"get":{"summary":"Get an AI model","description":"The latest snapshot of one model.","tags":["ai-models"],"operationId":"getAnAIModel","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"},"description":"Model slug."}],"responses":{"200":{"description":"OK","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"ETag":{"schema":{"type":"string"}},"X-Attribution":{"schema":{"type":"string"},"description":"The attribution line, repeated outside the body."}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data","meta","attribution"],"properties":{"data":{"$ref":"#/components/schemas/Model"},"meta":{"$ref":"#/components/schemas/EnvelopeMeta"},"attribution":{"$ref":"#/components/schemas/Attribution"}}}}}},"400":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Overloaded"}}}},"/api/v1/ai-models/{slug}/history":{"get":{"summary":"Get an AI model history","description":"One row per daily snapshot, oldest first.","tags":["ai-models"],"operationId":"getAnAIModelHistory","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"},"description":"Model slug."}],"responses":{"200":{"description":"OK","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"ETag":{"schema":{"type":"string"}},"X-Attribution":{"schema":{"type":"string"},"description":"The attribution line, repeated outside the body."}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data","meta","attribution"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Model"}},"meta":{"$ref":"#/components/schemas/EnvelopeMeta"},"attribution":{"$ref":"#/components/schemas/Attribution"}}}}}},"400":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Overloaded"}}}},"/api/v1/data/importance-index":{"get":{"summary":"Get the importance index","description":"Aggregates only. Importance is an automated model judgement. CC BY 4.0.","tags":["data"],"operationId":"getTheImportanceIndex","parameters":[{"name":"lang","in":"query","required":false,"schema":{"type":"string","enum":["en","tr"],"default":"en"},"description":"Edition. A Turkish item appears only when Turkish text exists."}],"responses":{"200":{"description":"OK","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"ETag":{"schema":{"type":"string"}},"X-Attribution":{"schema":{"type":"string"},"description":"The attribution line, repeated outside the body."}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data","meta","attribution"],"properties":{"data":{"$ref":"#/components/schemas/ImportanceIndex"},"meta":{"$ref":"#/components/schemas/EnvelopeMeta"},"attribution":{"$ref":"#/components/schemas/Attribution"}}}}}},"400":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Overloaded"}}}},"/api/v1/data/most-covered":{"get":{"summary":"Get most-covered subjects","description":"Subjects ranked by published stories in a month. CC BY 4.0.","tags":["data"],"operationId":"getMostCoveredSubjects","parameters":[{"name":"lang","in":"query","required":false,"schema":{"type":"string","enum":["en","tr"],"default":"en"},"description":"Edition. A Turkish item appears only when Turkish text exists."},{"name":"month","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}$"}}],"responses":{"200":{"description":"OK","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"ETag":{"schema":{"type":"string"}},"X-Attribution":{"schema":{"type":"string"},"description":"The attribution line, repeated outside the body."}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data","meta","attribution"],"properties":{"data":{"$ref":"#/components/schemas/MostCovered"},"meta":{"$ref":"#/components/schemas/EnvelopeMeta"},"attribution":{"$ref":"#/components/schemas/Attribution"}}}}}},"400":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Overloaded"}}}}},"components":{"schemas":{"Attribution":{"type":"object","additionalProperties":false,"required":["required","text","url","publisher","licence","licence_url","terms_url"],"properties":{"required":{"type":"boolean","const":true},"text":{"type":"string","description":"Show this next to anything taken from the response.","examples":["Source: Oesnada","Kaynak: Oesnada"]},"url":{"type":"string","format":"uri"},"publisher":{"type":"string"},"licence":{"type":"string","examples":["Oesnada API Terms","CC BY 4.0"]},"licence_url":{"oneOf":[{"type":"string","format":"uri"},{"type":"null"}]},"terms_url":{"oneOf":[{"type":"string","format":"uri"},{"type":"null"}]}}},"EnvelopeMeta":{"type":"object","additionalProperties":false,"required":["api_version","lang","count","next_cursor","as_of"],"properties":{"api_version":{"type":"string","const":"1"},"lang":{"type":"string","enum":["en","tr"]},"count":{"type":"integer","minimum":0},"next_cursor":{"oneOf":[{"type":"string"},{"type":"null"}]},"as_of":{"oneOf":[{"type":"string","format":"date-time"},{"type":"null"}]},"comparison":{"$ref":"#/components/schemas/PriceComparison"}}},"PriceComparison":{"type":"object","additionalProperties":false,"required":["requested_days","actual_days","baseline_date","latest_date","history","total_changes","truncated"],"properties":{"requested_days":{"type":"integer","minimum":1},"actual_days":{"oneOf":[{"type":"integer","minimum":0},{"type":"null"}]},"baseline_date":{"oneOf":[{"type":"string","format":"date"},{"type":"null"}]},"latest_date":{"oneOf":[{"type":"string","format":"date"},{"type":"null"}]},"history":{"type":"string","enum":["full","shortened","insufficient"],"description":"full: a snapshot at least requested_days old was the baseline. shortened: the first snapshot was used, so actual_days is less than requested_days. insufficient: only one snapshot exists, nothing was compared."},"total_changes":{"type":"integer","minimum":0},"truncated":{"type":"boolean","description":"True when more than 200 models changed and data holds the 200 largest moves."}}},"Problem":{"type":"object","additionalProperties":false,"required":["type","title","status","code","detail"],"properties":{"type":{"type":"string","format":"uri"},"title":{"type":"string"},"status":{"type":"integer"},"code":{"type":"string","enum":["invalid_request","not_found","method_not_allowed","payload_too_large","rate_limited","overloaded","internal"]},"detail":{"type":"string"},"errors":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["param","message"],"properties":{"param":{"type":"string"},"message":{"type":"string"}}}},"retry_after":{"type":"integer"}}},"Entity":{"type":"object","additionalProperties":false,"required":["slug","name","type","topic_url"],"properties":{"slug":{"type":"string"},"name":{"type":"string"},"type":{"type":"string"},"topic_url":{"oneOf":[{"type":"string","format":"uri"},{"type":"null"}]}}},"Outlet":{"type":"object","additionalProperties":false,"required":["name","url"],"properties":{"name":{"type":"string"},"url":{"type":"string","format":"uri"}}},"StorylineRef":{"type":"object","additionalProperties":false,"required":["slug","title","url"],"properties":{"slug":{"type":"string"},"title":{"type":"string"},"url":{"type":"string","format":"uri"}}},"Story":{"type":"object","additionalProperties":false,"required":["id","lang","title","summary","category","published_at","updated_at","url","cite_url","urls","outlets","entities","storyline","is_translated","source"],"properties":{"id":{"type":"integer"},"lang":{"type":"string","enum":["en","tr"]},"title":{"type":"string"},"summary":{"type":"object","additionalProperties":false,"required":["what_happened","why_it_matters"],"properties":{"what_happened":{"oneOf":[{"type":"string"},{"type":"null"}]},"why_it_matters":{"oneOf":[{"type":"string"},{"type":"null"}]}}},"category":{"oneOf":[{"type":"string"},{"type":"null"}]},"published_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"},"url":{"type":"string","format":"uri"},"cite_url":{"type":"string","format":"uri"},"urls":{"type":"object","additionalProperties":false,"required":["en","tr"],"properties":{"en":{"oneOf":[{"type":"string","format":"uri"},{"type":"null"}]},"tr":{"oneOf":[{"type":"string","format":"uri"},{"type":"null"}]}}},"outlets":{"type":"array","items":{"$ref":"#/components/schemas/Outlet"}},"entities":{"type":"array","items":{"$ref":"#/components/schemas/Entity"}},"storyline":{"oneOf":[{"$ref":"#/components/schemas/StorylineRef"},{"type":"null"}]},"is_translated":{"type":"boolean"},"source":{"type":"string","const":"Oesnada"}}},"SearchHit":{"type":"object","additionalProperties":false,"required":["kind","id","lang","title","snippet","published_at","url","cite_url","relevance","is_translated","source"],"properties":{"kind":{"type":"string","enum":["story","storyline","hub","analysis","essay","model"]},"id":{"type":"string"},"lang":{"type":"string","enum":["en","tr"]},"title":{"type":"string"},"snippet":{"type":"string","maxLength":300},"published_at":{"type":"string","format":"date-time"},"url":{"type":"string","format":"uri"},"cite_url":{"type":"string","format":"uri"},"relevance":{"type":"number","minimum":0,"maximum":1,"description":"Ranking relevance for this query. Not an importance score."},"is_translated":{"type":"boolean"},"source":{"type":"string","const":"Oesnada"}}},"StorylineEvent":{"type":"object","additionalProperties":false,"required":["story_id","seq","event_at","significance","headline","update","source","category","url","cite_url"],"properties":{"story_id":{"type":"integer"},"seq":{"type":"integer"},"event_at":{"type":"string","format":"date-time"},"significance":{"type":"integer","enum":[0,1,2,3]},"headline":{"type":"string"},"update":{"type":"string"},"source":{"oneOf":[{"type":"string"},{"type":"null"}]},"category":{"oneOf":[{"type":"string"},{"type":"null"}]},"url":{"type":"string","format":"uri"},"cite_url":{"type":"string","format":"uri"}}},"Storyline":{"type":"object","additionalProperties":false,"required":["slug","lang","title","status","event_count","first_event_at","last_event_at","latest","entity_slugs","url","cite_url","urls","so_far","events","source"],"properties":{"slug":{"type":"string"},"lang":{"type":"string","enum":["en","tr"]},"title":{"type":"string"},"status":{"type":"string","enum":["active","dormant","closed"]},"event_count":{"type":"integer"},"first_event_at":{"oneOf":[{"type":"string","format":"date-time"},{"type":"null"}]},"last_event_at":{"oneOf":[{"type":"string","format":"date-time"},{"type":"null"}]},"latest":{"oneOf":[{"type":"object","additionalProperties":false,"required":["story_id","headline","update","event_at"],"properties":{"story_id":{"type":"integer"},"headline":{"type":"string"},"update":{"type":"string"},"event_at":{"type":"string","format":"date-time"}}},{"type":"null"}]},"entity_slugs":{"type":"array","items":{"type":"string"}},"url":{"type":"string","format":"uri"},"cite_url":{"type":"string","format":"uri"},"urls":{"type":"object","additionalProperties":false,"required":["en","tr"],"properties":{"en":{"oneOf":[{"type":"string","format":"uri"},{"type":"null"}]},"tr":{"oneOf":[{"type":"string","format":"uri"},{"type":"null"}]}}},"so_far":{"oneOf":[{"type":"string"},{"type":"null"}]},"events":{"type":"array","items":{"$ref":"#/components/schemas/StorylineEvent"}},"source":{"type":"string","const":"Oesnada"}}},"Topic":{"type":"object","additionalProperties":false,"required":["slug","lang","name","type","summary","summary_as_of","stories_last_30_days","latest_story_at","url","cite_url","recent_stories","source"],"properties":{"slug":{"type":"string"},"lang":{"type":"string","enum":["en","tr"]},"name":{"type":"string"},"type":{"type":"string"},"summary":{"oneOf":[{"type":"string"},{"type":"null"}]},"summary_as_of":{"oneOf":[{"type":"string","format":"date-time"},{"type":"null"}]},"stories_last_30_days":{"type":"integer"},"latest_story_at":{"oneOf":[{"type":"string","format":"date-time"},{"type":"null"}]},"url":{"type":"string","format":"uri"},"cite_url":{"type":"string","format":"uri"},"recent_stories":{"type":"array","items":{"$ref":"#/components/schemas/Story"}},"source":{"type":"string","const":"Oesnada"}}},"Analysis":{"type":"object","additionalProperties":false,"required":["kind","series","key","lang","title","summary","sections","points","watch","published_at","url","cite_url","source"],"properties":{"kind":{"type":"string","enum":["analysis","essay"]},"series":{"type":"string","enum":["this-week-in-tech","ai-model-market","notes"]},"key":{"type":"string"},"lang":{"type":"string","enum":["en","tr"]},"title":{"type":"string"},"summary":{"type":"string"},"sections":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["title","body","story_ids"],"properties":{"title":{"type":"string"},"body":{"type":"string"},"story_ids":{"type":"array","items":{"type":"integer"}}}}},"points":{"type":"array","items":{"type":"string"}},"watch":{"oneOf":[{"type":"string"},{"type":"null"}]},"published_at":{"type":"string","format":"date-time"},"url":{"type":"string","format":"uri"},"cite_url":{"type":"string","format":"uri"},"source":{"type":"string","const":"Oesnada"}}},"Model":{"type":"object","additionalProperties":false,"required":["id","slug","name","provider","price_in_per_m","price_out_per_m","price_blended_per_m","context_tokens","released_at","modality","provider_count","uptime","latency_ms","arena","usage","snapshot_date","url","cite_url","source"],"properties":{"id":{"type":"string"},"slug":{"type":"string"},"name":{"type":"string"},"provider":{"type":"string"},"price_in_per_m":{"oneOf":[{"type":"number"},{"type":"null"}]},"price_out_per_m":{"oneOf":[{"type":"number"},{"type":"null"}]},"price_blended_per_m":{"oneOf":[{"type":"number"},{"type":"null"}]},"context_tokens":{"oneOf":[{"type":"integer"},{"type":"null"}]},"released_at":{"type":"string","format":"date-time"},"modality":{"type":"string"},"provider_count":{"oneOf":[{"type":"integer"},{"type":"null"}]},"uptime":{"oneOf":[{"type":"number"},{"type":"null"}]},"latency_ms":{"oneOf":[{"type":"number"},{"type":"null"}]},"arena":{"oneOf":[{"type":"object","additionalProperties":false,"required":["score","rank","votes"],"properties":{"score":{"oneOf":[{"type":"number"},{"type":"null"}]},"rank":{"oneOf":[{"type":"integer"},{"type":"null"}]},"votes":{"oneOf":[{"type":"integer"},{"type":"null"}]}}},{"type":"null"}]},"usage":{"oneOf":[{"type":"object","additionalProperties":false,"required":["share_pct","rank","tokens_7d"],"properties":{"share_pct":{"oneOf":[{"type":"number"},{"type":"null"}]},"rank":{"oneOf":[{"type":"integer"},{"type":"null"}]},"tokens_7d":{"oneOf":[{"type":"number"},{"type":"null"}]}}},{"type":"null"}]},"snapshot_date":{"type":"string","format":"date"},"url":{"type":"string","format":"uri"},"cite_url":{"type":"string","format":"uri"},"source":{"type":"string","const":"Oesnada"}}},"PriceChange":{"type":"object","additionalProperties":false,"required":["model_id","slug","name","provider","price_in_per_m","price_out_per_m","baseline_date","snapshot_date","url","cite_url"],"properties":{"model_id":{"type":"string"},"slug":{"type":"string"},"name":{"type":"string"},"provider":{"type":"string"},"price_in_per_m":{"type":"object","additionalProperties":false,"required":["before","after","change_pct"],"properties":{"before":{"oneOf":[{"type":"number"},{"type":"null"}]},"after":{"oneOf":[{"type":"number"},{"type":"null"}]},"change_pct":{"oneOf":[{"type":"number"},{"type":"null"}]}}},"price_out_per_m":{"type":"object","additionalProperties":false,"required":["before","after","change_pct"],"properties":{"before":{"oneOf":[{"type":"number"},{"type":"null"}]},"after":{"oneOf":[{"type":"number"},{"type":"null"}]},"change_pct":{"oneOf":[{"type":"number"},{"type":"null"}]}}},"baseline_date":{"type":"string","format":"date","description":"The day the before prices are from."},"snapshot_date":{"type":"string","format":"date"},"url":{"type":"string","format":"uri"},"cite_url":{"type":"string","format":"uri"}}},"ImportanceIndex":{"type":"object","additionalProperties":false,"required":["generated","total","first_day","last_day","average","days","categories","weeks","url","cite_url"],"properties":{"generated":{"type":"string","format":"date-time"},"total":{"type":"integer"},"first_day":{"oneOf":[{"type":"string","format":"date"},{"type":"null"}]},"last_day":{"oneOf":[{"type":"string","format":"date"},{"type":"null"}]},"average":{"oneOf":[{"type":"number","description":"Mean importance, 0 to 100. An automated judgement by a language model, not a measurement."},{"type":"null"}]},"days":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["date","count","average"],"properties":{"date":{"type":"string","format":"date"},"count":{"type":"integer"},"average":{"type":"number"}}}},"categories":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["category","count","average","last_30_days"],"properties":{"category":{"type":"string"},"count":{"type":"integer"},"average":{"type":"number"},"last_30_days":{"type":"integer"}}}},"weeks":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["week_start","category","count","average"],"properties":{"week_start":{"type":"string","format":"date"},"category":{"type":"string"},"count":{"type":"integer"},"average":{"type":"number"}}}},"url":{"type":"string","format":"uri"},"cite_url":{"type":"string","format":"uri"}}},"MostCovered":{"type":"object","additionalProperties":false,"required":["month","previous_month","rows","url","cite_url"],"properties":{"month":{"type":"string","pattern":"^\\d{4}-\\d{2}$"},"previous_month":{"type":"string","pattern":"^\\d{4}-\\d{2}$"},"rows":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["rank","slug","name","count","previous_rank","previous_count","move","is_new","topic_url"],"properties":{"rank":{"type":"integer"},"slug":{"type":"string"},"name":{"type":"string"},"count":{"type":"integer"},"previous_rank":{"oneOf":[{"type":"integer"},{"type":"null"}]},"previous_count":{"type":"integer"},"move":{"oneOf":[{"type":"integer"},{"type":"null"}]},"is_new":{"type":"boolean"},"topic_url":{"oneOf":[{"type":"string","format":"uri"},{"type":"null"}]}}}},"url":{"type":"string","format":"uri"},"cite_url":{"type":"string","format":"uri"}}}},"headers":{"RateLimitPolicy":{"description":"IETF RateLimit-Policy, for example \"read\";q=60;w=60.","schema":{"type":"string"}},"RateLimit":{"description":"IETF RateLimit, for example \"read\";r=42;t=17.","schema":{"type":"string"}},"RetryAfter":{"description":"Seconds to wait.","schema":{"type":"integer"}}},"responses":{"Problem":{"description":"Error (RFC 9457 problem+json).","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"RateLimited":{"description":"Rate limited.","headers":{"Retry-After":{"$ref":"#/components/headers/RetryAfter"},"RateLimit":{"$ref":"#/components/headers/RateLimit"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"Overloaded":{"description":"The origin is shedding load. Retry after the interval; cached responses are still served.","headers":{"Retry-After":{"$ref":"#/components/headers/RetryAfter"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}}