{"openapi":"3.1.0","info":{"title":"Official UK Charts API","description":"\nPrivate API for cached Official UK chart data.\n\nProtected endpoints require the `X-API-Key` header.\n\nMain endpoint:\n\n`GET /official-uk/singles-chart/latest?limit=100`\n","version":"1.0.0"},"paths":{"/":{"get":{"tags":["system"],"summary":"Root","operationId":"root__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/official-uk/health":{"get":{"tags":["system"],"summary":"Health","operationId":"health_official_uk_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/official-uk/charts":{"get":{"tags":["official-uk"],"summary":"List Charts","operationId":"list_charts_official_uk_charts_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"APIKeyHeader":[]}]}},"/official-uk/snapshots":{"get":{"tags":["official-uk"],"summary":"List Snapshots","operationId":"list_snapshots_official_uk_snapshots_get","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"chart_key","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Chart Key"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":20,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/official-uk/search":{"get":{"tags":["official-uk"],"summary":"Search Entries","operationId":"search_entries_official_uk_search_get","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":2,"title":"Q"}},{"name":"chart_key","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Chart Key"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/official-uk/{chart_key}/latest":{"get":{"tags":["official-uk"],"summary":"Latest Chart","operationId":"latest_chart_official_uk__chart_key__latest_get","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"chart_key","in":"path","required":true,"schema":{"type":"string","title":"Chart Key"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":100,"title":"Limit"}},{"name":"include_raw","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Include Raw"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/official-uk/{chart_key}/{week_start}":{"get":{"tags":["official-uk"],"summary":"Chart By Week Start","operationId":"chart_by_week_start_official_uk__chart_key___week_start__get","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"chart_key","in":"path","required":true,"schema":{"type":"string","title":"Chart Key"}},{"name":"week_start","in":"path","required":true,"schema":{"type":"string","title":"Week Start"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":100,"title":"Limit"}},{"name":"include_raw","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Include Raw"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}},"securitySchemes":{"APIKeyHeader":{"type":"apiKey","description":"Enter your private API key from the .env file.","in":"header","name":"X-API-Key"}}}}