{"openapi":"3.1.0","info":{"title":"Name API","version":"1.0.0","description":"Clean up and parse personal names. The case endpoint applies proper name-casing that ordinary title-casing gets wrong — McDonald, MacLeod, O'Brien, D'Angelo, hyphenated double-barrelled names, lower-case particles (van, von, de, la, der) and Roman-numeral suffixes (II, III, IV). The parse endpoint splits a full name into salutation, first, middle and last name and suffix, and also returns a properly-cased version of each part. Perfect for tidying user sign-ups, CRM and mailing lists, deduplicating contacts, formatting names on documents and normalising imported data. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. Parsing is tuned for Western (given-name-first) order. Distinct from baby-name popularity data and locale display-name lookups.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/name-api","description":"oanor gateway"}],"tags":[{"name":"Name"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/case":{"get":{"operationId":"get_v1_case","tags":["Name"],"summary":"Proper-case a name","description":"","parameters":[{"name":"name","in":"query","required":true,"description":"A name","schema":{"type":"string"},"example":"macleod iii"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"cased":"MacLeod III","input":"macleod iii"},"meta":{"timestamp":"2026-06-02T16:51:46.813Z","request_id":"d780529e-f5a7-4b0e-9860-7c756f3cde08"},"status":"ok","message":"Proper-case a name","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/parse":{"get":{"operationId":"get_v1_parse","tags":["Name"],"summary":"Parse a full name","description":"","parameters":[{"name":"name","in":"query","required":true,"description":"A full name","schema":{"type":"string"},"example":"mr. john q. public jr."}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"cased":{"full_name":"Mr. John Q. Public Jr.","last_name":"Public","first_name":"John","middle_name":"Q."},"input":"mr. john q. public jr.","suffix":"jr.","full_name":"mr. john q. public jr.","last_name":"public","first_name":"john","salutation":"mr.","middle_name":"q."},"meta":{"timestamp":"2026-06-02T16:51:46.925Z","request_id":"f78bc9df-293d-41c0-aa85-1fa53bc9b764"},"status":"ok","message":"Parse a full name","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"Spec","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"name":"Name API","notes":"Parsing is heuristic and tuned for Western name order (given name first). Nothing is stored.","version":"v1","endpoints":[{"path":"/v1/case","params":{"name":"a name (required)"},"returns":"the properly-cased name"},{"path":"/v1/parse","params":{"name":"a full name (required)"},"returns":"salutation, first/middle/last name, suffix + a cased version"},{"path":"/v1/meta","params":[],"returns":"this document"}],"description":"Proper-case and parse personal names — correctly handles McDonald, MacLeod, O'Brien, hyphenated names, particles (van, von, de, la) and suffixes (Jr., III). Powered by namecase + humanparser. Pure local, no key."},"meta":{"timestamp":"2026-06-02T16:51:47.065Z","request_id":"3808c22a-8f0d-4119-975d-b3ceb69b0b81"},"status":"ok","message":"Meta","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":940,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":200,"monthly_call_quota":7900,"rps_limit":8,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":2080,"monthly_call_quota":134000,"rps_limit":20,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":5680,"monthly_call_quota":690000,"rps_limit":50,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/name-api"}