false, 'error' => 'Too many searches. Please wait a moment.'], 429, ['Retry-After' => (string)$rl['retryAfter']]); } $zip = isset($_GET['zip']) ? preg_replace('/\D/', '', (string)$_GET['zip']) : ''; $zip = substr((string)$zip, 0, 5); if (strlen($zip) !== 5) { Api::json(['ok' => false, 'error' => 'Enter a 5-digit ZIP code.'], 400); } $loc = Geocode::zip($zip); if (!$loc) { Api::json(['ok' => false, 'error' => "We couldn't find that ZIP. Try another or pick a campus below."], 200); } Api::json(['ok' => true, 'location' => $loc], 200, ['Cache-Control' => 'public, max-age=86400']);