Method: geocode.destinations.searchDestinations

تُجري هذه الطريقة عملية بحث عن وجهة وتعرض قائمة بالوجهات.

طلب HTTP

POST https://geocode.googleapis.com/v4alpha/geocode/destinations

يستخدِم عنوان URL بنية تحويل الترميز gRPC.

نص الطلب

يحتوي نص الطلب على بيانات بالبنية التالية:

تمثيل JSON
{
  "travelModes": [
    enum (NavigationPoint.TravelMode)
  ],
  "languageCode": string,
  "regionCode": string,

  // Union field primary_query can be only one of the following:
  "place": string,
  "addressQuery": {
    object (SearchDestinationsRequest.AddressQuery)
  },
  "locationQuery": {
    object (SearchDestinationsRequest.LocationQuery)
  }
  // End of list of possible types for union field primary_query.
}
الحقول
travelModes[]

enum (NavigationPoint.TravelMode)

اختيارية: تمثّل هذه السمة وسائل النقل التي سيتم فلترة نقاط التنقّل وفقًا لها. يؤثّر ذلك في الحقل navigationPoints الذي يتم عرضه في الردّ. إذا كان الحقل فارغًا، يمكن عرض نقاط التنقّل لجميع وسائل النقل.

languageCode

string

اختيارية: اللغة التي يجب عرض النتائج بها

regionCode

string

اختيارية: رمز المنطقة رمز المنطقة، ويتم تحديده كقيمة من حرفين لنطاق المستوى الأعلى لرمز البلد (ccTLD). تؤثّر المَعلمة في النتائج استنادًا إلى القانون الساري. تؤثّر هذه المَعلمة أيضًا في النتائج من الخدمة، ولكنّها لا تحظرها بالكامل.

حقل الدمج primary_query استعلام عن الوجهة الأساسية يمكن أن يكون هذا المكان أو العنوان المحدّد بالكامل أو الموقع الجغرافي LatLng. لن يكون من الممكن تحويل بعض الأماكن والعناوين التي تتضمّن الحد الأدنى من المعلومات إلى وجهة.

يتم إنشاء الوجهات استنادًا إلى طلب البحث الأساسي المحدّد.

ملاحظة: لا تتوفّر هذه الميزة إلا للأماكن والعناوين التي يمكن أن تكون وجهة للملاحة. على سبيل المثال، يمكن استخدام مكان يمثّل منزلاً أو مجمعًا سكنيًا كطلب البحث الأساسي، ولكن لا يمكن استخدام أماكن تمثّل منطقة أو منطقة إدارية كطلب البحث الأساسي. يمكن أن تكون primary_query إحدى القيم التالية فقط:

place

string

اسم المرجع الخاص بمكان، بتنسيق places/{placeId}

addressQuery

object (SearchDestinationsRequest.AddressQuery)

تمثّل هذه السمة عنوان الشارع.

locationQuery

object (SearchDestinationsRequest.LocationQuery)

موقع جغرافي دقيق

نص الاستجابة

رسالة الردّ على DestinationService.SearchDestinations

إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:

تمثيل JSON
{
  "destinations": [
    {
      object (Destination)
    }
  ]
}
الحقول
destinations[]

object (Destination)

قائمة بالوجهات

تعرض الخدمة نتيجة واحدة إذا كان من الممكن تحديد وجهة أساسية بشكل لا لبس فيه من طلب البحث الأساسي. بخلاف ذلك، قد تعرض الخدمة نتائج متعددة لإزالة الغموض أو لا تعرض أي نتائج.

نطاقات التفويض

يجب توفير أحد نطاقات OAuth التالية:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/maps-platform.geocode

SearchDestinationsRequest.AddressQuery

تمثّل هذه السمة عنوان الشارع الذي تريد البحث عنه. حدِّد العناوين وفقًا للتنسيق الذي تستخدمه خدمة البريد الوطنية في البلد المعنيّ.

تمثيل JSON
{

  // Union field kind can be only one of the following:
  "address": {
    object (PostalAddress)
  },
  "addressQuery": string
  // End of list of possible types for union field kind.
}
الحقول
حقل الدمج kind طلب البحث عن العنوان يمكن أن تكون kind إحدى القيم التالية فقط:
address

object (PostalAddress)

تمثّل هذه السمة عنوان الشارع بتنسيق العنوان البريدي.

addressQuery

string

تمثّل هذه السمة عنوان الشارع المنسَّق كسطر واحد.

SearchDestinationsRequest.LocationQuery

استعلام عن موقع جغرافي لتحديد وجهة أساسية قريبة

ملاحظة: إذا كان طلب البحث عن الموقع الجغرافي ضمن مبنى يحتوي على أماكن فرعية، من المحتمل أن يكون المكان الأساسي الذي تم عرضه مكانًا فرعيًا. في هذه الحالات، سيتضمّن الحقل containingPlaces المبنى.

تمثيل JSON
{

  // Union field kind can be only one of the following:
  "location": {
    object (LatLng)
  }
  // End of list of possible types for union field kind.
}
الحقول
حقل الدمج kind تمثّل هذه السمة طلب البحث عن الموقع الجغرافي. يمكن أن تكون kind إحدى القيم التالية فقط:
location

object (LatLng)

موقع جغرافي دقيق بتنسيق LatLng

الوجهة

وجهة ويشمل ذلك المكان الأساسي والأماكن ذات الصلة والمداخل ونقاط التنقّل.

تمثيل JSON
{
  "primary": {
    object (PlaceView)
  },
  "containingPlaces": [
    {
      object (PlaceView)
    }
  ],
  "subDestinations": [
    {
      object (PlaceView)
    }
  ],
  "landmarks": [
    {
      object (Landmark)
    }
  ],
  "entrances": [
    {
      object (Entrance)
    }
  ],
  "navigationPoints": [
    {
      object (NavigationPoint)
    }
  ]
}
الحقول
primary

object (PlaceView)

المكان الأساسي الذي يحدّده primary_query في الطلب.

containingPlaces[]

object (PlaceView)

الأماكن الأقل دقة التي يقع فيها المكان الأساسي على سبيل المثال، المجمّع السكني الذي يضمّ هذا المبنى

subDestinations[]

object (PlaceView)

أماكن فرعية أكثر دقة ضمن المكان الأساسي على سبيل المثال، الوحدات المتوفرة في مبنى

ملاحظة: بالمقارنة مع SubDestination التي تعرضها Places API، تكون قائمة الوجهات الفرعية هذه أكثر شمولاً، وتحتوي كل وجهة فرعية على المزيد من المعلومات.

landmarks[]

object (Landmark)

المعالم التي يمكن استخدامها لتحديد مكان الوجهة أو المساعدة في الوصول إليها

entrances[]

object (Entrance)

مداخل هذه الوجهة

navigationPoints[]

object (NavigationPoint)

نقاط التنقّل لهذه الوجهة

PlaceView

تمثّل هذه السمة طريقة عرض مكان في Places API. وتوفّر أيضًا معلومات إضافية خاصة بالمقاصد، مثل نوع البنية والمضلّع المعروض.

في بعض الحالات، قد يختلف PlaceView الذي يتضمّن رقم تعريف المكان نفسه عن البيانات التي تعرضها Places API للحقلَين types وdisplayName.

تمثيل JSON
{
  "place": string,
  "displayName": {
    object (LocalizedText)
  },
  "primaryType": string,
  "types": [
    string
  ],
  "formattedAddress": string,
  "postalAddress": {
    object (PostalAddress)
  },
  "structureType": enum (PlaceView.StructureType),
  "location": {
    object (LatLng)
  },
  "displayPolygon": {
    object
  }
}
الحقول
place

string

اسم المرجع الخاص بهذا المكان، بالتنسيق places/{placeId}

displayName

object (LocalizedText)

وصف المكان يمكن لشخص عادي قراءته على سبيل المثال، "البوابة B" أو "ماكدونالدز"

primaryType

string

تمثّل هذه السمة نوع المكان الأساسي. يمكنك الاطّلاع على https://developers.google.com/maps/documentation/places/web-service/place-types للحصول على قائمة بالقيم المحتملة.

ملاحظة: لا تتم تعبئة هذا الحقل دائمًا. يجب أن تكون مستعدًا لاستخدام الحقل types في مثل هذه الحالات.

types[]

string

جميع أنواع الأماكن المرتبطة بهذا المكان يمكنك الاطّلاع على https://developers.google.com/maps/documentation/places/web-service/place-types للحصول على قائمة بالقيم المحتملة.

formattedAddress

string

عنوان من سطر واحد

postalAddress

object (PostalAddress)

عنوان منظَّم

structureType

enum (PlaceView.StructureType)

تمثّل هذه السمة نوع البنية المتعلّقة بهذا المكان.

location

object (LatLng)

تمثّل هذه السمة الموقع الجغرافي لهذا المكان. بالنسبة إلى الأماكن التي تتضمّن مضلّعات عرض، يمكن أن يمثّل ذلك موضعًا جيدًا لوضع علامة على الخريطة.

displayPolygon

object (Struct format)

تمثّل هذه السمة المخطط التفصيلي المضلّع للمكان بتنسيق GeoJSON، باستخدام تنسيق RFC 7946: https://datatracker.ietf.org/doc/html/rfc7946#section-3.1.6.

ملاحظة: يتيح تنسيق RFC 7946 استخدام MultiPolygons، لذا يمكن أن يمثّل عنصر displayPolygon واحد مضلّعات متعددة.

PlaceView.StructureType

تمثّل هذه السمة نوع البنية التي يمثّلها هذا المكان.

عمليات التعداد
STRUCTURE_TYPE_UNSPECIFIED لم يتم استخدامه.
POINT موقع جغرافي على شكل نقطة
SECTION قسم فرعي من مبنى
BUILDING مبنى
GROUNDS مساحة كبيرة تحتوي عادةً على مبانٍ متعددة، مثل حرم جامعي أو مجمّع سكني أو مركز تسوّق

مَعلم

تُستخدَم المعالم لتحديد مكان الوجهة أو المساعدة في الوصول إليها.

تمثيل JSON
{
  "tags": [
    enum (Landmark.Tag)
  ],

  // Union field landmark can be only one of the following:
  "place": {
    object (PlaceView)
  }
  // End of list of possible types for union field landmark.
}
الحقول
tags[]

enum (Landmark.Tag)

علامات تصف كيفية استخدام المعلم البارز في سياق الوجهة

حقل الدمج landmark المَعلم يمكن أن تكون landmark إحدى القيم التالية فقط:
place

object (PlaceView)

تمثّل هذه السمة المكان الذي يمثّل هذا المعلم.

Landmark.Tag

قائمة بجميع العلامات المحتملة التي تصف كيفية استخدام معلم بارز في سياق وجهة

إذا كان العنوان يتضمّن العلامتَين ADDRESS وARRIVAL، يعني ذلك أنّ المعلم بارز محليًا وقريب من الوجهة.

عمليات التعداد
TAG_UNSPECIFIED لم يتم استخدامه.
ADDRESS مكان بارز محليًا يمكن استخدامه لتحديد الموقع الجغرافي العام للوجهة عادةً ما تكون على بُعد بضع مئات من الأمتار من الوجهة. وهي تشبه المعالم التي تعرضها ميزة "أوصاف العناوين" في Geocoding API: https://developers.google.com/maps/documentation/geocoding/address-descriptors/requests-address-descriptors.
ARRIVAL مكان يمكن استخدامه للمساعدة في الوصول إلى الوجهة تكون مفيدة للتنقّل عندما تكون بالقرب من الوجهة. على سبيل المثال، قد يكون هذا المعلم مكانًا يقع على الجانب الآخر من الشارع مقابل الوجهة. عادةً ما يكون المعلم الذي يحمل هذه العلامة أقرب إلى الوجهة من المعالم التي تحمل العلامة ADDRESS.

المدخل

المدخل هو زوج واحد من إحداثيات خطوط الطول والعرض يحدّد موقع نقطة الدخول والخروج من مكان معيّن.

تمثيل JSON
{
  "location": {
    object (LatLng)
  },
  "tags": [
    enum (Entrance.Tag)
  ],
  "place": string
}
الحقول
location

object (LatLng)

تمثّل هذه السمة موقع المدخل.

tags[]

enum (Entrance.Tag)

قائمة بالعلامات التي تصف المدخل

place

string

تمثّل هذه السمة البنية التي يقع عليها المدخل فعليًا، وذلك بتنسيق places/{placeId}.

Entrance.Tag

الخصائص التي تصف مدخلاً

عمليات التعداد
TAG_UNSPECIFIED لم يتم استخدامه.
PREFERRED

من المحتمل أن يتيح المدخل الوصول الفعلي إلى المكان الأساسي في الوجهة التي تم عرضها. يمكن أن يكون للمكان عدة مداخل مفضّلة. إذا لم يكن لأحد المداخل هذه العلامة، يعني ذلك أنّ المدخل يقع فعليًا في المبنى نفسه الذي يضم المكان الأساسي، ولكنّه لا يتيح بالضرورة الوصول إلى المكان.

على سبيل المثال، إذا كان المكان الأساسي هو مطعم في قطاع مركز تجاري، ستكون المداخل "المفضّلة" هي تلك التي من المحتمل أن تؤدي إلى المطعم نفسه، بينما ستكون المداخل الأخرى التي تم عرضها هي مداخل أخرى للمبنى، مثل المداخل المؤدية إلى مطاعم أخرى في قطاع المركز التجاري.

إذا كان المكان الأساسي هو مبنى، ستكون PREFERRED المداخل هي تلك التي تؤدي إلى الجزء "الرئيسي" من المبنى. على سبيل المثال، في مركز تسوّق، ستكون المداخل PREFERRED هي تلك التي تتيح الوصول إلى منطقة البهو الرئيسية، ولكن إذا كان المدخل يتيح الوصول إلى متجر على جانب المبنى فقط، فلن يكون مدخلاً PREFERRED.

ملاحظة: قد لا يتيح المدخل PREFERRED الوصول إلى المكان الأساسي، وقد يتيح المدخل غير PREFERRED الوصول إلى المكان الأساسي.