पता ऑटोकम्प्लीट
आंशिक इनपुट के लिए सुझाव, कम लेटेंसी और टाइपो सहनशीलता के लिए ट्यून किए गए। हर सुझाव के साथ निर्देशांक आते हैं, इसलिए अधिकांश इंटीग्रेशन को कभी दूसरी कॉल की ज़रूरत नहीं पड़ती।
GEThttps://api.mygeocode.com/v1/autocomplete
पैरामीटर
| पैरामीटर | प्रकार | विवरण |
|---|---|---|
qज़रूरी | string | उपयोगकर्ता ने अब तक जो टाइप किया है। कम से कम 2 अक्षर, अधिकतम 128। |
limitवैकल्पिक | integer | 1 से 10। डिफ़ॉल्ट 5। |
countriesवैकल्पिक | string | कॉमा से अलग किए गए ISO 3166-1 alpha-2 कोड, जिन तक सुझाव सीमित करने हैं। |
proximityवैकल्पिक | string | lat,lon। पास के सुझाव पहले आते हैं। मैप सर्च बॉक्स के लिए इसकी पुरज़ोर सलाह दी जाती है। |
typesवैकल्पिक | string | address, street, postcode, city, region, country, poi में से कॉमा से अलग किया गया उपसमूह। डिफ़ॉल्ट सभी। |
langवैकल्पिक | string | ISO 639-1 कोड। डिफ़ॉल्ट en। |
keyवैकल्पिक | string | API कुंजी, अगर हेडर के रूप में नहीं भेजी गई। |
उदाहरण
$ curl -H "X-API-Key: YOUR_KEY" "https://api.mygeocode.com/v1/autocomplete?q=oxford+st&proximity=51.515,-0.141&limit=3"const url = new URL("https://api.mygeocode.com/v1/autocomplete");
url.searchParams.set("q", "oxford st");
url.searchParams.set("proximity", "51.515,-0.141");
url.searchParams.set("limit", "3");
const { suggestions } = await (await fetch(url, { headers: { "X-API-Key": "YOUR_KEY" } })).json();
suggestions.forEach((s) => console.log(s.text, s.lat, s.lon));import requests
r = requests.get("https://api.mygeocode.com/v1/autocomplete",
params={"q": "oxford st", "proximity": "51.515,-0.141", "limit": 3}, headers={"X-API-Key": "YOUR_KEY"}, timeout=5)
for s in r.json()["suggestions"]:
print(s["text"], s["lat"], s["lon"])रिस्पॉन्स
{
"status": "ok",
"query": "oxford st",
"suggestions": [
{ "text": "Oxford Street, London W1, United Kingdom", "lat": 51.515419, "lon": -0.141588, "type": "street", "precision": "street", "place_id": "gb.street.0a91e2c4" },
{ "text": "Oxford Street, Southampton SO14, United Kingdom", "lat": 50.899021, "lon": -1.399537, "type": "street", "precision": "street", "place_id": "gb.street.77b4d1f0" },
{ "text": "Oxford Street Station, London W1, United Kingdom", "lat": 51.515167, "lon": -0.141251, "type": "poi", "precision": "house", "place_id": "gb.poi.3c5a8e19" }
]
}रिस्पॉन्स फ़ील्ड
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
suggestions[].text | string | दिखाने वाला टेक्स्ट, एक पंक्ति, lang में। |
suggestions[].lat, lon | number | निर्देशांक। हमेशा मौजूद। |
suggestions[].type, precision | string | फ़ॉरवर्ड जियोकोडिंग की तरह। |
suggestions[].place_id | string | पूरे कंपोनेंट और सीमाओं के लिए /v1/forward?place_id=... को भेजें। वह कॉल एक अनुरोध के रूप में गिनी जाती है। |
टिप्पणियाँ
- इनपुट को लगभग 150 ms तक डिबाउंस करें और जब उपयोगकर्ता टाइप करता रहे तो चल रहे अनुरोध रद्द करें। रिस्पॉन्स में वह
queryहोती है जिसका वे जवाब देते हैं, ताकि आप पुराने रिस्पॉन्स हटा सकें। - कोई सेशन टोकन नहीं है। हर कॉल एक अनुरोध है। एक सामान्य पता चुनने में 4 से 6 कॉल लगती हैं।
- सार्वजनिक साइटों के लिए मुफ़्त टियर पर ब्राउज़र से कॉल करना ही अपेक्षित उपयोग है। विज़िटर का IP गिना जाता है, आपका नहीं।
- Google
places.Autocompleteविजेट, Mapbox Search Box, HERE Autosuggest और Bing Autosuggest फ़ॉर्मैट ड्रॉप-इन होस्ट पर उपलब्ध हैं।
यही लुकअप दूसरे प्रदाताओं के फ़ॉर्मैट में
अगर आपके पास इनमें से किसी प्रदाता के लिए पहले से लिखा कोड है, तो उसे रखें: ड्रॉप-इन होस्ट वही पाथ और पैरामीटर स्वीकार करता है और उस प्रदाता के रिस्पॉन्स ढाँचे में जवाब देता है, जिसके पीछे यही एंडपॉइंट होता है। ड्रॉप-इन कैसे काम करते हैं देखें।
| प्रदाता | होस्ट | पाथ |
|---|---|---|
| Google Maps प्लैटफ़ॉर्म | gapi.mygeocode.com | /maps/api/place/autocomplete/json?input=... |
| Bing Maps REST सेवाएँ | bing.mygeocode.com | /REST/v1/Autosuggest?query=... |
| HERE Geocoding और Search | here.mygeocode.com | /v1/autosuggest?q=...&at=lat,lng/v1/autocomplete?q=... |
| Mapbox Geocoding | mapbox.mygeocode.com | /search/searchbox/v1/suggest?q=... |
| LocationIQ | locationiq.mygeocode.com | /v1/autocomplete?q=... |
| Geoapify | geoapify.mygeocode.com | /v1/geocode/autocomplete?text=... |
| TomTom Search | tomtom.mygeocode.com | /search/2/search/{query}.json?typeahead=true |
एरर
400 invalid_request जब q 2 अक्षरों से छोटा हो, या types में कोई अज्ञात मान हो।