مقدمة
يأخذ طلب بحث في الجوار (الجديد) نوعًا واحدًا أو أكثر من أنواع الأماكن، ويعرض قائمة بالأماكن المطابِقة ضمن المنطقة المحدّدة. يجب تحديد قناع حقل يحدّد نوعًا واحدًا أو أكثر من أنواع البيانات. لا يتيح "بحث في الجوار (الجديد)" سوى طلبات POST.
يتيح لك مستكشف واجهات برمجة التطبيقات إرسال طلبات مباشرة لتتعرّف على واجهة برمجة التطبيقات وخياراتها:
جرِّب العرض التوضيحي التفاعلي للاطّلاع على نتائج "بحث في الجوار (الجديد)" المعروضة على خريطة.
طلبات "بحث في الجوار (الجديد)"
طلب "بحث في الجوار (الجديد)" هو طلب HTTP POST إلى عنوان URL بالتنسيق التالي:
https://places.googleapis.com/v1/places:searchNearby
يجب تمرير جميع المَعلمات في نص طلب JSON أو في العناوين كجزء من طلب POST. على سبيل المثال:
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
ردود "بحث في الجوار (الجديد)"
يعرض "بحث في الجوار (الجديد)" كائن JSON كاستجابة. في الردّ:
- تحتوي مصفوفة
placesعلى جميع الأماكن المطابِقة. - يتم تمثيل كل مكان في المصفوفة بكائن
Place. يحتوي كائنPlaceعلى معلومات تفصيلية عن مكان واحد. - يحدّد FieldMask الذي تم تمريره في الطلب قائمة الحقول
التي يتم عرضها في الكائن
Place.
يكون كائن JSON الكامل بالتنسيق التالي:
{
"places": [
{
object (Place)
}
]
}المعلمات المطلوبة
-
FieldMask
حدِّد قائمة الحقول التي تريد عرضها في الردّ من خلال إنشاء قناع حقل الردّ. مرِّر قناع حقل الردّ إلى الطريقة باستخدام مَعلمة عنوان URL
$fieldsأوfields، أو باستخدام عنوان HTTPX-Goog-FieldMask. لا توجد قائمة تلقائية بالحقول التي يتم عرضها في الردّ. إذا لم تحدّد قناع الحقل، ستعرض الطريقة خطأً.يُعدّ إخفاء الحقول من أفضل ممارسات التصميم لضمان عدم طلب بيانات غير ضرورية، ما يساعد في تجنُّب وقت المعالجة و رسوم الفوترة غير الضرورية.
حدِّد قائمة بأنواع بيانات الأماكن المطلوب عرضها مفصولة بفواصل. على سبيل المثال، لاسترداد الاسم المعروض وعنوان المكان:
X-Goog-FieldMask: places.displayName,places.formattedAddress
استخدِم
*لاسترداد جميع الحقول.X-Goog-FieldMask: *
حدِّد حقلًا واحدًا أو أكثر من الحقول التالية:
تؤدي الحقول التالية إلى تفعيل رمز التخزين التعريفي "بحث في الجوار Pro":
places.accessibilityOptions
places.addressComponents
places.addressDescriptor*
places.adrFormatAddress
places.attributions
places.businessStatus
places.consumerAlert
places.containingPlaces
places.displayName
places.formattedAddress
places.googleMapsLinks
places.googleMapsTypeLabel
places.googleMapsUri
places.iconBackgroundColor
places.iconMaskBaseUri
places.id
places.location
places.name**
places.movedPlace
places.movedPlaceId
places.openingDate
places.photos
places.plusCode
places.postalAddress
places.primaryType
places.primaryTypeDisplayName
places.pureServiceAreaBusiness
places.shortFormattedAddress
places.subDestinations
places.timeZone
places.types
places.utcOffsetMinutes
places.viewport
* تتوفّر واصفات العناوين بشكل عام للعملاء في الهند، وهي تجريبية في أماكن أخرى.
** يحتوي الحقلplaces.nameعلى اسم مورد المكان بالتنسيق:places/PLACE_ID. استخدِمplaces.displayNameللوصول إلى الاسم النصي للمكان.للاطّلاع على قائمة كاملة بالحقول ورموز التخزين التعريفية المرتبطة بها، يُرجى الرجوع إلى حقول بيانات الأماكن (الجديدة).
تؤدي الحقول التالية إلى تفعيل رمز التخزين التعريفي "بحث في الجوار Enterprise":
places.currentOpeningHours
places.currentSecondaryOpeningHours
places.internationalPhoneNumber
places.nationalPhoneNumber
places.priceLevel
places.priceRange
places.rating
places.regularOpeningHours
places.regularSecondaryOpeningHours
places.transitStation
places.userRatingCount
places.websiteUriللاطّلاع على قائمة كاملة بالحقول ورموز التخزين التعريفية المرتبطة بها، يُرجى الرجوع إلى حقول بيانات الأماكن (الجديدة).
تؤدي الحقول التالية إلى تفعيل رمز التخزين التعريفي "بحث في الجوار Enterprise + Atmosphere":
places.allowsDogs
places.curbsidePickup
places.delivery
places.dineIn
places.editorialSummary
places.evChargeAmenitySummary
places.evChargeOptions
places.fuelOptions
places.generativeSummary
places.goodForChildren
places.goodForGroups
places.goodForWatchingSports
places.liveMusic
places.menuForChildren
places.neighborhoodSummary
places.parkingOptions
places.paymentOptions
places.outdoorSeating
places.reservable
places.restroom
places.reviews
places.reviewSummary
routingSummaries*
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 و50000.0، بما في ذلك هذان الرقمان. نصف القطر التلقائي هو 0.0. يجب ضبطه في طلبك على قيمة أكبر من 0.0.
على سبيل المثال:
"locationRestriction": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 500.0 } }
المعلمات الاختيارية
-
includeFutureOpeningBusinesses
إذا كانت القيمة
true، يتم عرض المؤسسات التي يُتوقّع افتتاحها في المستقبل. القيمة التلقائية هيfalse.
لاسترداد حالة المؤسسة، أدرِجplaces.businessStatusفي قناع حقل الطلب. لاسترداد تاريخ الافتتاح المتوقّع للمؤسسة، أدرِجplaces.openingDateفي قناع حقل الطلب. -
includedTypes/excludedTypes وincludedPrimaryTypes/excludedPrimaryTypes
تتيح لك تحديد قائمة بأنواع من الجدول "الأنواع - الجدول أ" تُستخدَم لفلترة نتائج البحث. يمكن تحديد ما يصل إلى 50 نوعًا في كل فئة من فئات قيود الأنواع.
لا يمكن أن يكون للمكان نوع أساسي واحد فقط من الجدول "الأنواع - الجدول أ" مرتبط به. على سبيل المثال، قد يكون النوع الأساسي
"mexican_restaurant"أو"steak_house". استخدِمincludedPrimaryTypesوexcludedPrimaryTypesلفلترة النتائج حسب النوع الأساسي للمكان.يمكن أن يكون للمكان أيضًا قيم أنواع متعدّدة من الأنواع الجدول أ مرتبطة به. على سبيل المثال، قد يكون للمطعم الأنواع التالية:
"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
قائمة بأنواع الأماكن من الجدول أ المطلوب البحث عنها، قائمة قيم مفصولة بفاصلة. إذا لم يتم تحديد هذه المَعلمة، يتم عرض أماكن من جميع الأنواع.
excludedTypes
قائمة بأنواع الأماكن من الجدول أ المطلوب استبعادها من البحث، قائمة قيم مفصولة بفاصلة.
إذا حدّدت كلاً من
includedTypes( مثل"school") وexcludedTypes(مثل"primary_school") في الطلب، سيتضمّن الردّ أماكن مصنّفة على أنّها"school"ولكن ليس"primary_school". يتضمّن الردّ أماكن تطابِق نوعًا واحدًا على الأقل منincludedTypesولا تطابِق أيًا منexcludedTypes.إذا كانت هناك أي أنواع متعارضة، مثل ظهور نوع في كل من
includedTypesوexcludedTypes، يتم عرض الخطاءINVALID_REQUEST.includedPrimaryTypes
قائمة قيم مفصولة بفاصلة لأنواع الأماكن الأساسية من الجدول أ المطلوب تضمينها في البحث.
excludedPrimaryTypes
قائمة بأنواع الأماكن الأساسية من الجدول أ المطلوب استبعادها من البحث، قائمة قيم مفصولة بفاصلة.
إذا كانت هناك أي أنواع أساسية متعارضة، مثل ظهور نوع في كل من
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) في المملكة المتحدة هو "uk" (.co.uk)، بينما رمز المنظمة الدولية للمعايير (ISO) 3166-1 هو "gb" (من الناحية الفنية، يشير إلى كيان "المملكة المتحدة لبريطانيا العظمى وأيرلندا الشمالية"). يمكن أن تؤثّر المَعلمة في النتائج استنادًا إلى القانون الساري.
أمثلة على "بحث في الجوار (الجديد)"
العثور على أماكن من نوع واحد
يعرض المثال التالي طلب "بحث في الجوار (الجديد)" للأسماء المعروضة لجميع المطاعم ضمن نصف قطر يبلغ 500 متر، ويتم تحديده من خلال circle:
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
الحصول على واصفات العناوين
تقدّم واصفات العناوين معلومات ذات صلة بموقع المكان، بما في ذلك المعالم القريبة والمناطق التي يحتوي عليها.
يعرض المثال التالي طلب "بحث في الجوار (الجديد)" عن أماكن بالقرب من
مركز تجاري في "سان خوسيه". في هذا المثال، يمكنك تضمين addressDescriptors
في قناع الحقل:
curl -X POST -d '{
"maxResultCount": 5,
"locationRestriction": {
"circle": {
"center": {
"latitude": 37.321328,
"longitude": -121.946275
},"radius": 1000
}
},
"includedTypes": ["restaurant", "cafe"],
"excludedTypes": [],
"rankPreference":"POPULARITY"
}' \
-H 'Content-Type: application/json' \
-H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName,places.addressDescriptor" \
https://places.googleapis.com/v1/places:searchNearby
يتضمّن الردّ المكان المحدّد في الطلب، وقائمة بالمعالم القريبة ومسافتها من المكان، وقائمة بالمناطق وعلاقة الاحتواء الخاصة بها بالمكان:
{ "places": [ { "displayName": { "text": "Westfield Valley Fair", "languageCode": "en" }, "addressDescriptor": { "landmarks": [ { "name": "places/ChIJ62_oCR7Lj4AR_MGWkSPotD4", "placeId": "ChIJ62_oCR7Lj4AR_MGWkSPotD4", "displayName": { "text": "Nordstrom", "languageCode": "en" }, "types": [ "clothing_store", "department_store", "establishment", "point_of_interest", "shoe_store", "store" ], "straightLineDistanceMeters": 114.76984, "travelDistanceMeters": 114.261856 }, { "name": "places/ChIJgexMlR_Lj4ARiKCKuhNnjn0", "placeId": "ChIJgexMlR_Lj4ARiKCKuhNnjn0", "displayName": { "text": "Valley Fair Mall Eyexam of CA", "languageCode": "en" }, "types": [ "establishment", "health", "point_of_interest" ], "straightLineDistanceMeters": 131.62566, "travelDistanceMeters": 237.33253 }, { "name": "places/ChIJWWIlNx7Lj4ARpe1E0ob-_GI", "placeId": "ChIJWWIlNx7Lj4ARpe1E0ob-_GI", "displayName": { "text": "Din Tai Fung", "languageCode": "en" }, "types": [ "establishment", "food", "point_of_interest", "restaurant" ], "straightLineDistanceMeters": 110.0775, "travelDistanceMeters": 171.41951 }, { "name": "places/ChIJwyfPQx7Lj4AR7bYI2A2Yc54", "placeId": "ChIJwyfPQx7Lj4AR7bYI2A2Yc54", "displayName": { "text": "Abercrombie & Fitch", "languageCode": "en" }, "types": [ "clothing_store", "establishment", "point_of_interest", "shoe_store", "store" ], "spatialRelationship": "DOWN_THE_ROAD", "straightLineDistanceMeters": 53.620117, "travelDistanceMeters": 2.4578214 }, { "name": "places/ChIJpycNQx7Lj4ARjhXw3PrM_kU", "placeId": "ChIJpycNQx7Lj4ARjhXw3PrM_kU", "displayName": { "text": "Hollister Co.", "languageCode": "en" }, "types": [ "clothing_store", "establishment", "point_of_interest", "shoe_store", "store" ], "spatialRelationship": "DOWN_THE_ROAD", "straightLineDistanceMeters": 56.53726, "travelDistanceMeters": 15.418246 } ], "areas": [ { "name": "places/ChIJb3F-EB7Lj4ARnHApQ_Hu1gI", "placeId": "ChIJb3F-EB7Lj4ARnHApQ_Hu1gI", "displayName": { "text": "Westfield Valley Fair", "languageCode": "en" }, "containment": "WITHIN" }, { "name": "places/ChIJXYuykB_Lj4AR1Ot8nU5q26Q", "placeId": "ChIJXYuykB_Lj4AR1Ot8nU5q26Q", "displayName": { "text": "Valley Fair", "languageCode": "en" }, "containment": "WITHIN" }, { "name": "places/ChIJtYoUX2DLj4ARKoKOb1G0CpM", "placeId": "ChIJtYoUX2DLj4ARKoKOb1G0CpM", "displayName": { "text": "Central San Jose", "languageCode": "en" }, "containment": "OUTSKIRTS" } ] } }, /.../ }
العثور على المؤسسات التي سيتم افتتاحها في المستقبل
يعرض المثال التالي طلب "بحث في الجوار (الجديد)" عن المؤسسات التي سيتم افتتاحها في ال مستقبل في "نيو ميدوز"، أيداهو:
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.id,places.displayName,places.businessStatus,places.openingDate" \
-d '{
"includeFutureOpeningBusinesses": true,
"maxResultCount": 20,
"locationRestriction": {
"circle": {
"center": {"latitude": 44.9755100, "longitude": -116.2842180},
"radius": 20
}
},
"rankPreference": "DISTANCE"
}' \
"https://places.googleapis.com/v1/places:searchNearby"
يتضمّن الردّ المؤسسات التي سيتم افتتاحها في المستقبل، بالإضافة إلى حالة المؤسسة وتاريخ الافتتاح المتوقّع:
{ "places": [ { "id": "ChIJp1-VoKWJplQRMz8g-7Wa3Do", "businessStatus": "FUTURE_OPENING", "displayName": { "text": "Roberts Greenhouse and Tree Farm", "languageCode": "en" }, "openingDate": { "year": 2026, "month": 4, "day": 15 } } ] }
الحصول على معلومات عن محطة النقل العام
يمكنك استخدام "بحث في الجوار (الجديد)" للحصول على معلومات عن محطات النقل العام ضمن نصف قطر محدّد من موقع جغرافي معيّن. يتضمّن نص الردّ معلومات عن المحطة، بما في ذلك اسم المحطة ومؤسسات النقل العام التابعة لها وخطوط النقل العام التي تخدم المحطة. بالإضافة إلى ذلك، يتضمّن الردّ رمز مركبة وألوانًا يمكنك استخدامها لعرض معلومات محطة النقل العام.
يعرض المثال التالي طلبًا لمحطات النقل العام ضمن 50 مترًا من وسط مدينة "مانهاتن":
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.id,places.displayName,places.transitStation" \
-d '{
"includedTypes": ["transit_station"],
"locationRestriction": {
"circle": {
"center": {"latitude": 40.754851, "longitude": -73.984164},
"radius": 50.0
}
}
}' \
"https://places.googleapis.com/v1/places:searchNearby"
يتضمّن نص الردّ معلومات عن كل محطة ضمن نصف القطر، والخطوط التي تخدمها الـ محطة، والتنبيهات الصادرة عن مؤسسات النقل العام في تلك المحطة، ومعلومات المغادرة:
{ "places": [ { "id": "ChIJH2EstKpZwokRCwZtYyMd5Fg", "displayName": { "text": "6 Av/W 41 St", "languageCode": "en" }, "transitStation": { "displayName": { "text": "6 Av/W 41 St", "languageCode": "en" }, "agencies": [ { "displayName": { "text": "ShortLine Hudson", "languageCode": "en" }, "url": "https://www.coachusa.com/", "lines": [ { "id": "ChIJSQlbzvPwwokRolrIA-Kuh6o", "vehicleType": "BUS", "displayName": { "text": "200 - Northern District – Nanuet", "languageCode": "en" }, "shortDisplayName": { "text": "ShortLine Hudson", "languageCode": "en" }, "textColor": "#000000", "backgroundColor": "#ED60A3", "vehicleIcon": { "url": "https://maps.gstatic.com/mapfiles/transit/iw2/svg/bus2.svg" } } ] }, { "displayName": { "text": "MTA New York City Transit", "languageCode": "en" }, "url": "http://www.mta.info/", "lines": [ { "id": "ChIJjUrj7PBewokR3O3S2JVpBrI", "vehicleType": "SUBWAY", "displayName": { "text": "E Train (8 Av Local)", "languageCode": "en" }, "shortDisplayName": { "text": "E Line", "languageCode": "en" }, "textColor": "#FFFFFF", "backgroundColor": "#0039A6", "url": "https://www.mta.info/schedules/subway/e-train", "icon": { "url": "https://maps.gstatic.com/mapfiles/transit/iw2/svg/us-ny-mta/E.svg", "nameIncluded": true }, "vehicleIcon": { "url": "https://maps.gstatic.com/mapfiles/transit/iw2/svg/subway2.svg" } }, ... ] }, "stops": [ { "id": "ChIJvRnquapZwokRdUOyVwNGbe8", "displayName": { "text": "6 Av/W 41 St", "languageCode": "en" }, "location": { "latitude": 40.754509, "longitude": -73.984216500000016 }, "wheelchairAccessibleEntrance": true } ], "departureBoards": [ { "displayType": "DIRECTION_CENTRIC", "rows": [ { "departures": [ { "timedDeparture": { "scheduledTime": "2026-05-15T22:29:51Z", "timingType": "SCHEDULED" }, "originallyScheduledStopId": "ChIJvRnquapZwokRdUOyVwNGbe8", "lineId": "ChIJA1aFyaZfwokRkO5869M6UXk" } ] }, { "departures": [ { "timedDeparture": { "scheduledTime": "2026-05-15T22:33:55Z", "timingType": "SCHEDULED" }, "originallyScheduledStopId": "ChIJvRnquapZwokRdUOyVwNGbe8", "lineId": "ChIJj3iCEwJfwokRZE2Qtnm4pPI" } ] }, ... ] } ] } }, ... { { "id": "ChIJPyq6TZBZwokRdGoiJ5Iq_hE", "vehicleType": "BUS", "displayName": { "text": "W 44 St - South Ferry", "languageCode": "en" }, "shortDisplayName": { "text": "M55", "languageCode": "en" }, "textColor": "#FFFFFF", "backgroundColor": "#1D59B3", "vehicleIcon": { "url": "https://maps.gstatic.com/mapfiles/transit/iw2/svg/bus2.svg" }, "alerts": [ { "effect": "OTHER", "texts": [ { "headline": { "text": "Information", "languageCode": "en" }, "summary": { "text": "Northbound M20 and M55 stop on State St at Bridge St is closed; use the temporary stop on State St before the intersection instead", "languageCode": "en" }, "fullDescription": { "text": "See a map of the new stop location. What's happening? Construction", "languageCode": "en" } } ], "detailsUrls": [ { "url": "https://www.mta.info/" } ], "cause": "OTHER_CAUSE", "startTime": "2025-04-02T04:00:00Z", "endTime": "2026-06-15T00:00:00Z", "attribution": { "link": { "text": "www.mta.info", "url": "https://www.mta.info/" } }, "createTime": "2026-05-15T22:32:00Z", "severityLevel": "INFO" } ] }, ... } ... }
الحصول على المداخل ونقاط التنقّل
يمكنك طلب المداخل ونقاط التنقّل لوجهة معيّنة. تحدّد المداخل نقاط الدخول والخروج لمكان معيّن (على سبيل المثال، بوابات مختلفة في مطار أو مركز تجاري). تحدّد نقاط التنقّل المواقع على جانب الطريق التي يجب أن ينتهي فيها التنقّل، وهو أمر مفيد لتوجيه المستخدمين إلى الجانب الصحيح من الطريق أو إلى نقطة إنزال محدّدة.
تعرض نقاط التنقّل navigationPointToken. يمكنك تمرير هذا الرمز المميّز إلى Navigation SDK (متاح لنظامَي التشغيل Android أو iOS) أو Routes API لتوجيه السائقين إلى هذا الموقع الجغرافي المحدّد. لمزيد من المعلومات، يُرجى الاطّلاع على الرموز المميّزة لنقاط التنقّل.
يعرض المثال التالي طلب "بحث في الجوار (الجديد)" يتضمّن entrances وnavigationPoints في قناع الحقل:
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.id,places.displayName,places.entrances,places.navigationPoints" \
-d '{
"includedTypes": ["airport"],
"maxResultCount": 1,
"locationRestriction": {
"circle": {
"center": {"latitude": 37.6193, "longitude": -122.3816},
"radius": 1000.0
}
}
}' \
"https://places.googleapis.com/v1/places:searchNearby"
يتضمّن الردّ المداخل ونقاط التنقّل للمكان:
{ "places": [ { "id": "ChIJVVVVVYx3j4ARP-3NGldc8qQ", "displayName": { "text": "San Francisco International Airport", "languageCode": "en" }, "entrances": [ { "location": { "latitude": 37.6172154, "longitude": -122.3839724 } }, { "location": { "latitude": 37.6174073, "longitude": -122.384196 } }, ... ], "navigationPoints": [ { "navigationPointToken": "ChIJoioBjMLOQkAR0A3yH_eYXsA...", "displayName": { "text": "International Terminal Departures Level", "languageCode": "en" }, "location": { "latitude": 37.6153121, "longitude": -122.3900833 }, "travelModes": ["WALK"] }, { "navigationPointToken": "ChIJy5JKws_OQkAROx0jNN2YXsA...", "displayName": { "text": "Domestic Garage - SFO Short Term Parking", "languageCode": "en" }, "location": { "latitude": 37.6157153, "longitude": -122.3885012 }, "travelModes": ["DRIVE", "WALK"], "usages": ["PARKING"] }, ... ] } ] }
جرِّبه الآن
يتيح لك مستكشف واجهات برمجة التطبيقات إرسال طلبات نموذجية لتتعرّف على واجهة برمجة التطبيقات وخياراتها.
انقر على رمز واجهة برمجة التطبيقات api على الجانب الأيسر من الصفحة.
يمكنك تعديل مَعلمات الطلب اختياريًا.
انقر على الزر تنفيذ. في مربّع الحوار، اختَر الحساب الذي تريد استخدامه لإرسال الطلب.
في لوحة مستكشف واجهات برمجة التطبيقات، انقر على رمز ملء الشاشة fullscreen لتوسيع نافذة مستكشف واجهات برمجة التطبيقات.