{"openapi":"3.1.0","info":{"title":"Lubbock Scanner public API","version":"1","description":"Public JSON for Lubbock Scanner: recent police, fire and EMS calls heard on scanner radio, block-level locations, 60-day window. Human notes at /api."},"paths":{"/api/public/search":{"get":{"summary":"Api Public Search","description":"Search the last DISCOVER_DAYS days of Lubbock incidents by kind of call and street. Returns the\nwords it understood, the matching incidents (newest first) and the source note. Cached 10 minutes.","operationId":"api_public_search_api_public_search_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","maxLength":120,"description":"Plain words: a kind of call and/or a street, for example 'gunshots 34th street' or 'choque slide road' (English and Spanish).","default":"","title":"Q"},"description":"Plain words: a kind of call and/or a street, for example 'gunshots 34th street' or 'choque slide road' (English and Spanish)."},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":50,"minimum":1,"description":"Results to return, at most 50.","default":20,"title":"Limit"},"description":"Results to return, at most 50."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"head":{"summary":"Api Public Search","description":"Search the last DISCOVER_DAYS days of Lubbock incidents by kind of call and street. Returns the\nwords it understood, the matching incidents (newest first) and the source note. Cached 10 minutes.","operationId":"api_public_search_api_public_search_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","maxLength":120,"description":"Plain words: a kind of call and/or a street, for example 'gunshots 34th street' or 'choque slide road' (English and Spanish).","default":"","title":"Q"},"description":"Plain words: a kind of call and/or a street, for example 'gunshots 34th street' or 'choque slide road' (English and Spanish)."},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":50,"minimum":1,"description":"Results to return, at most 50.","default":20,"title":"Limit"},"description":"Results to return, at most 50."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/public/recent":{"get":{"summary":"Api Public Recent","description":"The latest Lubbock incidents from the last DISCOVER_DAYS days, newest first, optionally filtered by\nkind, street and part of town. `total` is the size of the filtered list; `next` is the URL of the next\npage or null. Cached 10 minutes.","operationId":"api_public_recent_api_public_recent_get","parameters":[{"name":"kind","in":"query","required":false,"schema":{"type":"string","description":"One of the kind slugs (shots-fired, fires, crashes, pursuits, burglaries, thefts, assaults, disturbances, suspicious-activity, hazards, alarms, traffic) or an everyday word such as gunshots, wreck, chase, break-in, balacera, choque.","default":"","title":"Kind"},"description":"One of the kind slugs (shots-fired, fires, crashes, pursuits, burglaries, thefts, assaults, disturbances, suspicious-activity, hazards, alarms, traffic) or an everyday word such as gunshots, wreck, chase, break-in, balacera, choque."},{"name":"street","in":"query","required":false,"schema":{"type":"string","description":"A street name, for example '34th Street' or 'MLK Boulevard'.","default":"","title":"Street"},"description":"A street name, for example '34th Street' or 'MLK Boulevard'."},{"name":"area","in":"query","required":false,"schema":{"type":"string","description":"A part of town: central, north, south, east, west, northwest, northeast, southwest, southeast, near-texas-tech.","default":"","title":"Area"},"description":"A part of town: central, north, south, east, west, northwest, northeast, southwest, southeast, near-texas-tech."},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Results per page, at most 100.","default":30,"title":"Limit"},"description":"Results per page, at most 100."},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":0,"description":"Skip this many newest results (0 to 500) to page.","default":0,"title":"Offset"},"description":"Skip this many newest results (0 to 500) to page."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"head":{"summary":"Api Public Recent","description":"The latest Lubbock incidents from the last DISCOVER_DAYS days, newest first, optionally filtered by\nkind, street and part of town. `total` is the size of the filtered list; `next` is the URL of the next\npage or null. Cached 10 minutes.","operationId":"api_public_recent_api_public_recent_get","parameters":[{"name":"kind","in":"query","required":false,"schema":{"type":"string","description":"One of the kind slugs (shots-fired, fires, crashes, pursuits, burglaries, thefts, assaults, disturbances, suspicious-activity, hazards, alarms, traffic) or an everyday word such as gunshots, wreck, chase, break-in, balacera, choque.","default":"","title":"Kind"},"description":"One of the kind slugs (shots-fired, fires, crashes, pursuits, burglaries, thefts, assaults, disturbances, suspicious-activity, hazards, alarms, traffic) or an everyday word such as gunshots, wreck, chase, break-in, balacera, choque."},{"name":"street","in":"query","required":false,"schema":{"type":"string","description":"A street name, for example '34th Street' or 'MLK Boulevard'.","default":"","title":"Street"},"description":"A street name, for example '34th Street' or 'MLK Boulevard'."},{"name":"area","in":"query","required":false,"schema":{"type":"string","description":"A part of town: central, north, south, east, west, northwest, northeast, southwest, southeast, near-texas-tech.","default":"","title":"Area"},"description":"A part of town: central, north, south, east, west, northwest, northeast, southwest, southeast, near-texas-tech."},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Results per page, at most 100.","default":30,"title":"Limit"},"description":"Results per page, at most 100."},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":0,"description":"Skip this many newest results (0 to 500) to page.","default":0,"title":"Offset"},"description":"Skip this many newest results (0 to 500) to page."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/public/incident/{iid}":{"get":{"summary":"Api Public Incident","description":"One incident from the index as JSON (the same fields as the lists plus last_update_at); 404 when\nit is outside the window, void, excluded or a crisis call. The timeline and transcripts are on the\nincident page itself.","operationId":"api_public_incident_api_public_incident__iid__get","parameters":[{"name":"iid","in":"path","required":true,"schema":{"type":"integer","title":"Iid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/public/":{"get":{"summary":"Api Doc Page","operationId":"api_doc_page_api_public__get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}}},"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"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}