Nearby खोज (नया)

प्लैटफ़ॉर्म चुनें: Android iOS JavaScript वेब सेवा

आस-पास खोजने की सुविधा (नया) अनुरोध एक या उससे ज़्यादा तरह के स्थान लेता है और चुना गया क्षेत्र. एक या उससे ज़्यादा डेटा टाइप बताने वाला फ़ील्ड मास्क आवश्यक है. आस-पास की खोज (नया) सिर्फ़ पोस्ट अनुरोधों के साथ काम करती है.

एपीआई एक्सप्लोरर की मदद से लाइव अनुरोध किए जा सकते हैं, ताकि आप एपीआई और एपीआई विकल्प:

इसे आज़माएं!

इंटरैक्टिव आज़माएं डेमो का इस्तेमाल करके, मैप पर आस-पास की खोज (नया) के नतीजे देख सकते हैं.

आस-पास की खोज (नए) अनुरोध

आस-पास खोजने की सुविधा (नया) से जुड़ा अनुरोध, यूआरएल के लिए एचटीटीपी पोस्ट करने का अनुरोध होता है फ़ॉर्म:

https://places.googleapis.com/v1/places:searchNearby

JSON अनुरोध के मुख्य हिस्से या हेडर में सभी पैरामीटर को पोस्ट अनुरोध. उदाहरण के लिए:

curl -X POST -d '{
  "includedTypes": ["restaurant"],
  "maxResultCount": 10,
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.7937,
        "longitude": -122.3965},
      "radius": 500.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName" \
https://places.googleapis.com/v1/places:searchNearby

आस-पास की खोज (नए) से मिले जवाब

Nearby Search (नया) रिस्पॉन्स के तौर पर JSON ऑब्जेक्ट. जवाब में:

  • places कलेक्शन में, मिलती-जुलती सभी जगहें शामिल हैं.
  • कलेक्शन में मौजूद हर जगह को Place ऑब्जेक्ट है. Place ऑब्जेक्ट में किसी एक के बारे में पूरी जानकारी है जगह.
  • अनुरोध में पास किया गया FieldMask फ़ील्ड की सूची बताता है Place ऑब्जेक्ट में दिखाया गया.

JSON ऑब्जेक्ट इस फ़ॉर्मैट में है:

{
  "places": [
    {
      object (Place)
    }
  ]
}

ज़रूरी पैरामीटर

  • FieldMask

    जवाब में लौटाए जाने वाले फ़ील्ड की सूची बनाने के लिए, रिस्पॉन्स फ़ील्ड मास्क का इस्तेमाल करना होगा. यूआरएल पैरामीटर का इस्तेमाल करके, तरीके के लिए रिस्पॉन्स फ़ील्ड मास्क पास करें $fields या fields या एचटीटीपी हेडर का इस्तेमाल करके X-Goog-FieldMask. जवाब में दिखाए गए फ़ील्ड की कोई डिफ़ॉल्ट सूची नहीं है. अगर फ़ील्ड मास्क को छोड़ दिया जाता है, तो यह तरीका गड़बड़ी दिखाता है.

    फ़ील्ड मास्किंग, डिज़ाइन का एक अच्छा तरीका है. इससे यह पक्का किया जाता है कि आप अनुरोध न करें डेटा की ज़रूरत नहीं होती, जिससे प्रोसेसिंग में लगने वाले ज़्यादा समय को कम करने और शुल्क नहीं लिया जाएगा.

    दिखाए जाने वाले स्थान डेटा प्रकारों की 'कॉमा-सेपरेटेड लिस्ट' तय करें. उदाहरण के लिए, का इस्तेमाल करें.

    X-Goog-FieldMask: places.displayName,places.formattedAddress

    सभी फ़ील्ड फिर से पाने के लिए * का इस्तेमाल करें.

    X-Goog-FieldMask: *

    इनमें से एक या ज़्यादा फ़ील्ड चुनें:

    • नीचे दिए गए फ़ील्ड आस-पास खोज (बेसिक) SKU को ट्रिगर करते हैं:

      places.accessibilityOptions, places.addressComponents, places.adrFormatAddress, places.attributions, places.businessStatus, places.displayName, places.formattedAddress, places.googleMapsUri, places.iconBackgroundColor, places.iconMaskBaseUri, places.id, places.location, places.name*, places.photos, places.plusCode, places.primaryType, places.primaryTypeDisplayName, places.shortFormattedAddress, places.subDestinations, places.types, places.utcOffsetMinutes, places.viewport

      * places.name फ़ील्ड में जगह की जानकारी के संसाधन का नाम होता है फ़ॉर्म में: places/PLACE_ID. places.displayName का इस्तेमाल करें किसी जगह के टेक्स्ट के नाम तक पहुंचने के लिए.

    • नीचे दिए गए फ़ील्ड आस-पास की खोज (बेहतर) SKU को ट्रिगर करते हैं:

      places.currentOpeningHours, places.currentSecondaryOpeningHours, places.internationalPhoneNumber, places.nationalPhoneNumber, places.priceLevel, places.rating, places.regularOpeningHours, places.regularSecondaryOpeningHours, places.userRatingCount, places.websiteUri

    • नीचे दिए गए फ़ील्ड आस-पास की खोज (पसंदीदा) SKU को ट्रिगर करते हैं:

      places.allowsDogs, places.curbsidePickup, places.delivery, places.dineIn, places.editorialSummary, places.evChargeOptions, places.fuelOptions, places.goodForChildren, places.goodForGroups, places.goodForWatchingSports, places.liveMusic, places.menuForChildren, places.parkingOptions, places.paymentOptions, places.outdoorSeating, places.reservable, places.restroom, places.reviews, places.servesBeer, places.servesBreakfast, places.servesBrunch, places.servesCocktails, places.servesCoffee, places.servesDessert, places.servesDinner, places.servesLunch, places.servesVegetarianFood, places.servesWine, places.takeout

  • locationRestriction

    खोजा जाने वाला क्षेत्र, सर्कल के रूप में दर्ज किया जाता है, जिसे केंद्र बिंदु और मीटर में त्रिज्या से परिभाषित किया जाता है. दायरा 0.0 से 50, 000.0 के बीच होना चाहिए. डिफ़ॉल्ट दायरा 0.0 है. आपको ऐसा ज़रूर करना चाहिए इसे अपने अनुरोध में 0.0 से ज़्यादा पर सेट करें.

    उदाहरण के लिए:

    "locationRestriction": {
      "circle": {
        "center": {
          "latitude": 37.7937,
          "longitude": -122.3965
        },
        "radius": 500.0
      }
    }

ज़रूरी नहीं पैरामीटर

  • शामिल किए गए टाइप/excludedTypes, includePrimaryTypes/excludedPrimaryTypes

    टाइप से टाइप की सूची तय करने की सुविधा मिलती है फ़िल्टर करने के लिए, टेबल A का इस्तेमाल किया जाता है खोज के नतीजे. टाइप पर लगी पाबंदी की हर कैटगरी में, ज़्यादा से ज़्यादा 50 तरह के कीवर्ड डाले जा सकते हैं.

    किसी जगह के टाइप में से, सिर्फ़ एक मुख्य टाइप हो सकता है इससे जुड़ी टेबल A इसे. उदाहरण के लिए, प्राथमिक प्रकार "mexican_restaurant" या "steak_house". इस्तेमाल की जाने वाली चीज़ें नतीजों को फ़िल्टर करने के लिए includedPrimaryTypes और excludedPrimaryTypes स्थान का प्राथमिक प्रकार.

    किसी जगह के टाइप में, एक से ज़्यादा टाइप की वैल्यू भी शामिल हो सकती हैं टेबल A से जुड़ी हुई हैं. उदाहरण के लिए, कोई रेस्टोरेंट इस तरह का हो सकता है: "seafood_restaurant", "restaurant", "food", "point_of_interest", "establishment". includedTypes का इस्तेमाल करें और इससे जुड़े टाइप की सूची के नतीजों को फ़िल्टर करने के लिए excludedTypes कोई जगह.

    जब सामान्य मुख्य टाइप के बारे में बताया जाता है, जैसे कि "restaurant" या "hotel" के लिए, जवाब में ऐसी जगहें शामिल हो सकती हैं जिनका मुख्य टाइप, इससे ज़्यादा हो सकता है निर्दिष्ट किया गया है. उदाहरण के लिए, आप "restaurant". जवाब में ऐसी जगहें शामिल हो सकती हैं जिनमें मुख्य तरह की "restaurant", लेकिन जवाब में ऐसी जगहें भी शामिल हो सकती हैं जो ज़्यादा सटीक हों प्राथमिक प्रकार, जैसे "chinese_restaurant" या "seafood_restaurant".

    अगर किसी खोज के लिए कई तरह की पाबंदियां लगाई गई हैं, तो खोज में सिर्फ़ जगहों के लिए जो सभी पाबंदियां पूरी करते हैं, उन्हें लौटाया जाता है. उदाहरण के लिए, अगर आपने {"includedTypes": ["restaurant"], "excludedPrimaryTypes": ["steak_house"]}, दिखाई गई जगहें "restaurant" से जुड़ी सेवाएं देती हैं, लेकिन मुख्य तौर पर काम नहीं करतीं "steak_house" के तौर पर.

    includedTypes

    खोजने के लिए, टेबल A से जगहों के टाइप की कॉमा लगाकर अलग की गई सूची. अगर इस पैरामीटर को शामिल नहीं किया जाता है, तो सभी तरह की जगहों की जानकारी दिखाई जाती है.

    excludedTypes

    टेबल A से जगहों के टाइप की कॉमा लगाकर अलग की गई सूची, ताकि खोजें.

    अगर आप includedTypes ( जैसे कि "school") और अनुरोध में excludedTypes (जैसे कि "primary_school"), इसके बाद जवाब में ऐसी जगहें शामिल हैं जिन्हें "school" की कैटगरी में रखा गया है, लेकिन "primary_school". जवाब में ऐसी जगहें शामिल हैं जो इनमें से कम से कम एक से मेल खाती हैं includedTypes और excludedTypes में से कोई नहीं.

    अगर दस्तावेज़ के टाइप आपस में अलग हों, जैसे कि includedTypes दोनों में कोई टाइप और excludedTypes के बाद, INVALID_REQUEST गड़बड़ी मिलती है.

    includedPrimaryTypes

    टेबल A से अलग-अलग तरह की जगहों की कॉमा-सेपरेटेड लिस्ट क्लिक करें.

    excludedPrimaryTypes

    टेबल A से मुख्य जगहों के टाइप की कॉमा लगाकर अलग की गई सूची, जिसे बाहर रखा जाना है खोजें.

    अगर कोई मुख्य टाइप एक-दूसरे से अलग है, जैसे कि दोनों में कोई टाइप includedPrimaryTypes और excludedPrimaryTypes INVALID_ARGUMENT गड़बड़ी मिली.

  • languageCode

    वह भाषा जिसमें नतीजे देने हैं.

    • इस्तेमाल की जा सकने वाली भाषाओं की सूची देखें. अक्सर Google इसमें काम करने वाली भाषाओं को अपडेट किया जाता है. इसलिए, हो सकता है कि यह पूरी सूची न हो.
    • अगर languageCode नहीं दिया जाता है, तो एपीआई डिफ़ॉल्ट रूप से en पर सेट होता है. अगर आपने आप अमान्य भाषा कोड डालते हैं, तो एपीआई INVALID_ARGUMENT दिखाता है गड़बड़ी.
    • एपीआई, मोहल्ले का ऐसा पता देने की पूरी कोशिश करता है जिसे उपयोगकर्ता और उपयोगकर्ता, दोनों को आसानी से पढ़ा जा सके स्थानीय लोगों के लिए. उस लक्ष्य को पाने के लिए, यह स्थानीय भाषा में मोहल्ले के पते दिखाता है, ज़रूरत पड़ने पर उपयोगकर्ता के पास पढ़ी जा सकने वाली स्क्रिप्ट में ट्रांसलिट्रेट किया गया. साथ ही, पसंदीदा स्क्रिप्ट को देखते हुए भाषा. अन्य सभी पते पसंदीदा भाषा में दिखाए जाते हैं. पते के कॉम्पोनेंट ये हैं सभी उसी भाषा में लौटाए जाते हैं, जिसे पहले कॉम्पोनेंट से चुना जाता है.
    • अगर कोई नाम पसंदीदा भाषा में उपलब्ध नहीं है, तो एपीआई सबसे नज़दीकी मिलान का इस्तेमाल करता है.
    • पसंदीदा भाषा, एपीआई की तरफ़ से चुने गए नतीजों के सेट पर थोड़ा असर डालती है वापस करने के लिए और उसका क्रम तय करता है. जियोकोडर, शॉर्ट फ़ॉर्म के बारे में बताता है अलग-अलग भाषा के आधार पर अलग-अलग हो सकते हैं, जैसे कि सड़क के नाम का संक्षिप्त नाम या समानार्थी शब्द जो एक भाषा में मान्य हो, लेकिन दूसरी भाषा में नहीं.
  • maxResultCount

    इससे पता चलता है कि जगह के बारे में ज़्यादा से ज़्यादा कितने नतीजे दिए जा सकते हैं. बीच में होना चाहिए 1 और 20 (डिफ़ॉल्ट) सहित.

  • rankPreference

    इस्तेमाल करने के लिए रैंकिंग का टाइप. अगर यह पैरामीटर शामिल नहीं किया जाता है, तो नतीजों की रैंकिंग लोकप्रियता के हिसाब से की जाती है. इनमें से कोई एक स्थिति हो सकती है:

    • POPULARITY (डिफ़ॉल्ट) नतीजों को उनकी लोकप्रियता के हिसाब से क्रम में लगाता है.
    • DISTANCE परिणामों को बढ़ते क्रम में, बताई गई जगह.
  • regionCode

    जवाब को फ़ॉर्मैट करने के लिए इस्तेमाल किया जाने वाला क्षेत्रीय कोड, जिसे दो वर्ण वाले CLDR कोड की वैल्यू. कोई डिफ़ॉल्ट मान नहीं है.

    अगर जवाब में formattedAddress फ़ील्ड का देश का नाम regionCode, formattedAddress में देश का कोड शामिल नहीं किया गया है. इस पैरामीटर का adrFormatAddress पर कोई असर नहीं होता है. इसमें देश हमेशा शामिल होता है नाम या shortFormattedAddress पर डालें, जिसमें यह कभी शामिल नहीं होता.

    ज़्यादातर CLDR कोड इसके समान हैं ISO 3166-1 कोड, इसमें कुछ अहम अपवाद शामिल हैं. उदाहरण के लिए, यूनाइटेड किंगडम का ccTLD "यूके" (.co.uk) है, जबकि इसका ISO 3166-1 कोड "gb" है (तकनीकी तौर पर, इकाई "यूनाइटेड किंगडम ऑफ़ ग्रेट ब्रिटेन ऐंड नॉर्दर्न आयरलैंड" है. पैरामीटर, लागू कानून के आधार पर नतीजों पर असर डाल सकता है.

आस-पास की खोज (नए) के उदाहरण

एक तरह की जगहें ढूंढें

नीचे दिए गए उदाहरण में, डिसप्ले के लिए आस-पास खोजने की सुविधा (नया) का अनुरोध दिखाया गया है circle के बताए गए 500 मीटर के दायरे में मौजूद सभी रेस्टोरेंट के नाम:

curl -X POST -d '{
  "includedTypes": ["restaurant"],
  "maxResultCount": 10,
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.7937,
        "longitude": -122.3965},
      "radius": 500.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName" \
https://places.googleapis.com/v1/places:searchNearby

ध्यान दें कि X-Goog-FieldMask हेडर से पता चलता है कि रिस्पॉन्स ये डेटा फ़ील्ड शामिल हैं: places.displayName. जवाब तो यह फ़ॉर्म में होगी:

{
  "places": [
    {
      "displayName": {
        "text": "La Mar Cocina Peruana",
        "languageCode": "en"
      }
    },
    {
      "displayName": {
        "text": "Kokkari Estiatorio",
        "languageCode": "en"
      }
    },
    {
      "displayName": {
        "text": "Harborview Restaurant & Bar",
        "languageCode": "en"
      }
    },
...
}

ज़्यादा जानकारी दिखाने के लिए, फ़ील्ड मास्क में ज़्यादा डेटा टाइप जोड़ें. उदाहरण के लिए, निम्न को शामिल करने के लिए places.formattedAddress,places.types,places.websiteUri जोड़ें जवाब में रेस्टोरेंट का पता, टाइप, और वेब पता:

curl -X POST -d '{
  "includedTypes": ["restaurant"],
  "maxResultCount": 10,
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.7937,
        "longitude": -122.3965},
      "radius": 500.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName,places.formattedAddress,places.types,places.websiteUri" \
https://places.googleapis.com/v1/places:searchNearby

जवाब अब फ़ॉर्म में है:

{
  "places": [
    {
      "types": [
        "seafood_restaurant",
        "restaurant",
        "food",
        "point_of_interest",
        "establishment"
      ],
      "formattedAddress": "PIER 1 1/2 The Embarcadero N, San Francisco, CA 94105, USA",
      "websiteUri": "http://lamarsf.com/",
      "displayName": {
        "text": "La Mar Cocina Peruana",
        "languageCode": "en"
      }
    },
    {
      "types": [
        "greek_restaurant",
        "meal_takeaway",
        "restaurant",
        "food",
        "point_of_interest",
        "establishment"
      ],
      "formattedAddress": "200 Jackson St, San Francisco, CA 94111, USA",
      "websiteUri": "https://kokkari.com/",
      "displayName": {
        "text": "Kokkari Estiatorio",
        "languageCode": "en"
      }
    },
...
}

अलग-अलग तरह की जगहों को ढूंढना

नीचे दिए गए उदाहरण में, के 1000 मीटर के दायरे में सभी सुविधा स्टोर और शराब की दुकानों के नाम circle बताया गया:

curl -X POST -d '{
  "includedTypes": ["liquor_store", "convenience_store"],
  "maxResultCount": 10,
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.7937,
        "longitude": -122.3965
      },
      "radius": 1000.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName,places.primaryType,places.types" \
https://places.googleapis.com/v1/places:searchNearby
इस उदाहरण में, फ़ील्ड मास्क में places.primaryType और places.types को जोड़ा जा रहा है ताकि जवाब में हर जगह के बारे में टाइप की जानकारी शामिल हो भी नहीं दी गई है.

नीचे दिए गए उदाहरण में, सभी जगहों के लिए आस-पास की खोज (नया) का अनुरोध दिखाया गया है "school" टाइप का है, जिसमें "primary_school" टाइप की सभी जगहें शामिल नहीं हैं. इससे नतीजों की रैंकिंग तय होगी दूरी के अनुसार:

curl -X POST -d '{
  "includedTypes": ["school"],
  "excludedTypes": ["primary_school"],
  "maxResultCount": 10,
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.7937,
        "longitude": -122.3965
      },
      "radius": 1000.0
    }
  },
  "rankPreference": "DISTANCE"
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName" \
https://places.googleapis.com/v1/places:searchNearby

किसी इलाके के आस-पास की सभी जगहें खोजें. इसके लिए, दूरी के हिसाब से उनकी रैंकिंग करें

नीचे दिए गए उदाहरण में, जगहों के लिए आस-पास की खोज (नया) का अनुरोध दिखाया गया है दिल्ली के किसी इलाके में स्थित है. इस उदाहरण में, आपने rankPreference को शामिल किया है दूरी के आधार पर परिणामों को रैंक करने के लिए पैरामीटर:

curl -X POST -d '{
  "maxResultCount": 10,
  "rankPreference": "DISTANCE",
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.7937,
        "longitude": -122.3965
      },
      "radius": 1000.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName" \
https://places.googleapis.com/v1/places:searchNearby

इसे आज़माएं!

एपीआई एक्सप्लोरर की मदद से, सैंपल के तौर पर अनुरोध किए जा सकते हैं. को एपीआई और एपीआई विकल्पों के बारे में अच्छे से जान सकते हैं.

  1. एपीआई का आइकॉन एपीआई एक्सप्लोरर को बड़ा करें. चुनें. पर क्लिक करें.
  2. विकल्प के तौर पर, स्टैंडर्ड पैरामीटर दिखाएं को बड़ा करें और सेट करें fields पैरामीटर को फ़ील्ड मास्क तक लाएँ.
  3. विकल्प के तौर पर, अनुरोध के मुख्य हिस्से में बदलाव करें.
  4. लागू करें बटन चुनें. पॉप-अप में, वह खाता चुनें जिसका इस्तेमाल करके आपको अनुरोध करना है.
  5. एपीआई एक्सप्लोरर पैनल में, 'बड़ा करें' आइकॉन को चुनें. एपीआई एक्सप्लोरर विंडो को बड़ा करने के लिए, एपीआई एक्सप्लोरर को बड़ा करें..