أمثلة

يتناول هذا القسم سلسلة من أمثلة الطلبات إلى Places Insights API.

عرض الأماكن ضمن دائرة

عرض جميع المطاعم ضمن نطاق 200 متر من ميدان ترافالغار في لندن

  • منطقة البحث هي دائرة تتمحور حول خطي عرض وطول معيّنين. يبلغ نصف قطر هذه الدائرة 200 متر، ما يحدّد حجم منطقة البحث.
  • نوع المكان المطلوب هو مطعم، ويتم تمريره باستخدام includedTypes ضمن typeFilters.
  • يتم طلب العدد باستخدام INSIGHTS_COUNT، ويتم طلب أرقام تعريف الأماكن باستخدام INSIGHTS_PLACES.
curl --location 'https://areainsights.googleapis.com/v1:computeInsights' \
--header 'X-Goog-Api-Key: API_KEY' \
--header 'Content-Type: application/json' \
--data '{
  "insights": ["INSIGHT_COUNT", "INSIGHT_PLACES"],
  "filter": {
    "locationFilter": {
      "circle": {
        "latLng": { "latitude": 51.508, "longitude": -0.128},
        "radius": 200
      }
    },
    "typeFilter": { "includedTypes": "restaurant" }
  }
}'

استبعاد أنواع الأماكن

يمكنك استبعاد أنواع الأماكن من العدد.

الطلب التالي هو نفسه المثال الأول، ولكنّه يضيف excludedTypes إلى typeFilters. يمكنك استخدام سلسلة أو صفيف من السلاسل للسمةَين includedTypes وexcludedTypes.

يستبعد هذا المثال نوعَي مكانَين: cafe وbakery، من عدد restaurant.

curl --location 'https://areainsights.googleapis.com/v1:computeInsights' \
--header 'X-Goog-Api-Key: API_KEY' \
--header 'Content-Type: application/json' \
--data '{
    "insights": ["INSIGHT_COUNT", "INSIGHT_PLACES"],
    "filter": {
        "locationFilter": {
            "circle": {
                "latLng": { "latitude": 51.508, "longitude": -0.128},
                "radius": 200
            }
        },
        "typeFilter": {
            "includedTypes": "restaurant",
            "excludedTypes": [
                "cafe",
                "bakery"
            ]
        }
    }
}'

استخدام النوع الأساسي

يعدّل هذا المثال الطلب من المثال الأول ليشمل فقط الأماكن التي تبلغ فيها قيمة primaryTyperestaurant في العدد.

curl --location 'https://areainsights.googleapis.com/v1:computeInsights' \
--header 'X-Goog-Api-Key: API_KEY' \
--header 'Content-Type: application/json' \
--data '{
  "insights": ["INSIGHT_COUNT", "INSIGHT_PLACES"],
  "filter": {
    "locationFilter": {
      "circle": {
        "latLng": { "latitude": 51.508, "longitude": -0.128},
        "radius": 200
      }
    },
    "typeFilter": { "includedPrimaryTypes": "restaurant" }
  }
}'

مضلّع مخصّص

يوضِّح هذا المثال كيفية استخدام مضلّع مخصّص لتحديد منطقة البحث. يُرجى العِلم أنّ تحديد INSIGHTS_PLACES يحصر البحث في مناطق صغيرة بما يكفي لعرض ما يصل إلى 100 معرّف مكان. بالنسبة إلى المناطق الأكبر حجمًا، استخدِم INSIGHTS_COUNT لتجاوز هذا الحدّ لكي لا تحتاج الخدمة إلى عرض معرّفات أماكن فردية.

كما في السابق، نوع المكان المستخدَم هو restaurant. يقدّم هذا المثال أيضًا ثلاثة فلاتر أخرى:

  • operatingStatus: لا يحسب هذا المثال سوى الأماكن التشغيلية.
  • priceLevel: لا يشمل هذا المثال سوى الفنادق الرخيصة والمتوسطة التكلفة.
  • ratingFilter: لا يشمل هذا المثال سوى الأماكن التي تتراوح فيها نتيجة المراجعة بين 4.0 و5.0.
curl --location 'https://areainsights.googleapis.com/v1:computeInsights' \
--header 'X-Goog-Api-Key: API_KEY' \
--header 'Content-Type: application/json' \
--data '{
    "insights": [ "INSIGHT_COUNT" ],
    "filter": {
        "locationFilter": {
            "customArea": {
                "polygon": {
                    "coordinates": [
                        { "latitude": 37.776, "longitude": -122.666 },
                        { "latitude": 37.130, "longitude": -121.898 },
                        { "latitude": 37.326, "longitude": -121.598 },
                        { "latitude": 37.912, "longitude": -122.247 },
                        { "latitude": 37.776, "longitude": -122.666 }
                    ]
                }
            }
        },
        "typeFilter": {
            "includedTypes": "restaurant"
        },
        "operatingStatus": [ "OPERATING_STATUS_OPERATIONAL" ],
        "priceLevels": [ "PRICE_LEVEL_INEXPENSIVE", "PRICE_LEVEL_MODERATE" ],
        "ratingFilter": { "minRating": 4.0, "maxRating": 5.0 }
    }
}'

المنطقة الجغرافية

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

يؤدي تمرير رقم تعريف المكان إلى Places Insights API إلى ضبط منطقة البحث على حدود المنطقة الجغرافية. يتمّ تمرير معرّف المكان باستخدام place بالتنسيق places/place_ID.

يمكنك الحصول على معرّف مكان منطقة جغرافية بأيّ من الطرق التالية:

curl --location 'https://areainsights.googleapis.com/v1:computeInsights' \
--header 'X-Goog-Api-Key: API_KEY' \
--header 'Content-Type: application/json' \
--data '{
    "insights": [
        "INSIGHT_COUNT"
    ],
    "filter": {
        "locationFilter": {
            "region": {
                "place": "places/ChIJiQHsW0m3j4ARm69rRkrUF3w"
            }
        },
        "typeFilter": {
            "includedTypes": [
                "restaurant"
            ]
        }
    }
}'