{"openapi":"3.1.0","info":{"title":"Oligrail free API","version":"0.2.0","description":"Free Atlanta restaurant scores (formula 2026-10-v2). Each place includes a name, its ZIP, a whole-number Oligrail score or null with score_status \"limited\" (Limited coverage), a score breakdown, and one short reason that names the outlet. There is no rank. The MCP tool get_restaurant also returns in_list: true for the 355 places in our data, and in_list: false with in_list_note \"Not in our scored list of 355 places in our data; it may be left out by a rule in our method, such as the chain rule, or not yet matched.\" for any other open, visible restaurant. Paid lookups for agents are coming soon."},"servers":[{"url":"https://oligrail.ai"}],"paths":{"/v1/zips":{"get":{"summary":"List the 40 standard Atlanta ZIPs","responses":{"200":{"description":"ZIP list"}}}},"/v1/atlanta/{zip}":{"get":{"summary":"Free places in one ZIP: name, Oligrail score or Limited coverage, score breakdown, and one reason line","parameters":[{"name":"zip","in":"path","required":true,"schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","enum":["score-desc","score-asc","name-asc","name-desc"],"default":"score-desc"}},{"name":"show","in":"query","required":false,"schema":{"type":"string","enum":["all","scored","limited"],"default":"all"}}],"responses":{"200":{"description":"counts (places, scored, limited) for the whole ZIP and the places shown: score_status \"scored\" with a whole-number oligrail_score, or score_status \"limited\" with oligrail_score null. Default order: scored places by score, high to low (ties A to Z), then Limited coverage places A to Z. With show=limited the places are A to Z whatever the sort, and sort is reported as name-asc. No rank."},"404":{"description":"Unknown ZIP"}}}},"/v1/dishes":{"get":{"summary":"Published dish lists","responses":{"200":{"description":"Dish list index"}}}},"/v1/dish/{dish}":{"get":{"summary":"Free dish list: name, rank, score, and one reason line","parameters":[{"name":"dish","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Every place, numbered, in our dish score order (ties share a rank and the next rank skips)"},"404":{"description":"Unknown or unpublished dish"}}}},"/v1/methodology":{"get":{"summary":"Published scoring method","responses":{"200":{"description":"Method"}}}},"/v1/terms":{"get":{"summary":"Terms of use","responses":{"200":{"description":"Terms"}}}},"/v1/osm-export":{"get":{"summary":"OpenStreetMap derived places","responses":{"200":{"description":"Places"}}}}},"x-oligrail":{"disclaimer":"Oligrail scores are opinions generated by Oliktric LLC from publicly available sources using a published method. They are not statements of fact, guarantees, or endorsements. Restaurants do not pay to change scores. Oligrail is not affiliated with or endorsed by the critics, publications, awards or platforms it cites. Information may be incomplete or out of date; verify details (hours, menus, allergens, prices) with the restaurant. Terms: https://oligrail.ai/terms · Method: https://oligrail.ai/methodology · Corrections: https://oligrail.ai/corrections","terms_url":"https://oligrail.ai/terms","methodology_url":"https://oligrail.ai/methodology","terms_notice":"By using Oligrail you agree to our Terms of Use (https://oligrail.ai/terms), including binding individual arbitration and a class-action waiver in Section 10.","attribution":"© OpenStreetMap contributors, ODbL — https://www.openstreetmap.org/copyright"}}