إعداد التقارير

فيديو: حضور حديث عن إعداد تقارير إعلانات الفنادق من ورشة العمل لعام 2019

باستخدام Google Ads API، يمكنك تصميم طلبات البحث للحصول على تقارير إعلانات الفنادق التي تحتاج إليها. يمكنك بعد ذلك دمج هذه الاستعلامات في تطبيقات العميل الخاصة بك.

المتطلّبات الأساسية

طلبات البحث الأساسية لإعلانات الفنادق

اطّلِع على أمثلة طلبات البحث هذه للتعرّف أكثر على استخدام Google Ads API لإعداد تقارير إعلانات الفنادق.

الحصول على مقاييس النقرات

يعرض المثال التالي عدد النقرات من طريقة عرض أداء الفندق.

SELECT metrics.clicks
FROM hotel_performance_view

ستبدو نتائج الاستعلام على النحو التالي:

{
  "results": [
    {
      "metrics": {
        "clicks": "78090"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      }
    }
  ],
  "totalResultsCount": "1",
  "fieldMask": "metrics.clicks"
}

الحصول على مقاييس النقرات المقسّمة

يؤدي المثال التالي لطلب البحث عن مرّات مشاهدة أداء الفنادق إلى الحصول على نقرات وتقسيم النتائج حسب رقم تعريف الفندق.

SELECT
  segments.partner_hotel_id,
  metrics.clicks
FROM hotel_performance_view

ستظهر نتائج طلب البحث على شكل سلسلة JSON التالية. يتم تقسيم النقرات حسب partnerHotelID، وبالتالي يمكن عرض عنصرَين أو أكثر لنفس الفندق PerformanceView.

{
  "results": [
    {
      "metrics": {
        "clicks": "7055"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      },
      "segments": {
        "partnerHotelId": "1111"
      }
    },
    {
      "metrics": {
        "clicks": "3047"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      },
      "segments": {
        "partnerHotelId": "1112"
      }
    },
    ...
  ]
}

الحصول على مقاييس المجموعة الإعلانية

يحصل طلب البحث كمثال التالي على مجموعات إعلانية على مرات ظهور ونقرات خلال آخر 30 يومًا، مقسّمةً حسب التاريخ.

SELECT
  campaign.name,
  campaign.status,
  ad_group.name,
  segments.date,
  metrics.impressions,
  metrics.clicks
FROM ad_group
WHERE ad_group.type = HOTEL_ADS
  AND segments.date DURING LAST_30_DAYS

ستظهر نتائج طلب البحث على شكل سلسلة JSON التالية. وتتم فلترة الردّ لعرض المقاييس التي تستوفي شروط عبارة WHERE فقط. تتم تعبئة حقل التاريخ بآخر تاريخ تم تضمينه في فترة الثلاثين يومًا.

{
  "results": [
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789",
        "name": "test campaign",
        "status": "ENABLED"
      },
      "adGroup": {
        "resourceName": "customers/123456789/adGroups/11111111",
        "name": "test adgroup"
      },
      "metrics": {
        "clicks": "91",
        "impressions": "5145"
      },
      "segments": {
        "date": "2020-05-10"
      }
    }
  ]
}

تفعيل إعلانات المجموعة الإعلانية

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

SELECT
  ad_group.id,
  ad_group.name,
  ad_group.status,
  campaign.name,
  campaign.status,
  ad_group_ad.status
FROM ad_group_ad
WHERE ad_group_ad.status = ENABLED
  AND campaign.status = ENABLED
  AND ad_group.status = ENABLED

ستظهر نتائج طلب البحث على شكل سلسلة JSON التالية.

{
  "results": [
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789",
        "name": "test campaign",
        "status": "ENABLED"
      },
      "adGroup": {
        "resourceName": "customers/123456789/adGroups/111111111111",
        "id": "106121857411",
        "name": "test adgroup",
        "status": "ENABLED"
      },
      "adGroupAd": {
        "resourceName": "customers/123456789/adGroupAds/111111111111~33333333333",
        "status": "ENABLED",
        "ad": {
          "resourceName": "customers/123456789/ads/77777777777"
        }
      }
    }
  ]
}

طرق عرض مفيدة لإعداد تقارير إعلانات الفنادق

في واجهات برمجة التطبيقات السابقة لإعداد تقارير إعلانات الفنادق، يمكنك استرداد تقرير محدّد، مثل تقرير الأداء. وفي Google Ads API، يتم تمثيل هذا النوع من البيانات في موارد *_view منفصلة، مثل hotel_performance_view وhotel_group_view. يوضِّح هذا القسم موارد *_view المفيدة لإعداد تقارير إعلانات الفنادق. تتوفر أيضًا أمثلة على طلبات البحث.

يُرجى العلم أنّ كل مورد *_view يحتوي على حقول ومقاييس وحقول موارد معيّنة. راجِع مستندات مورد *_view المحدَّد قبل إنشاء طلب البحث.

عرض مجموعة الفنادق

إنّ طريقة عرض مجموعة الفنادق هي طريقة عرض للمعايير، لذا فهي مفيدة لاسترداد المقاييس لنوع معايير محدّد لمجموعة فنادق.

إنّ طلب البحث في المثال التالي المتعلّق بمشاهدات مجموعة الفنادق يحصل على نقرات لكلّ فندق في مجموعة بيانات لشجرة مجموعة بيانات الفنادق بالكامل، بما في ذلك العقدة الجذر ("جميع الفنادق").

SELECT
  metrics.clicks,
  ad_group_criterion.listing_group.case_value.hotel_id.value
FROM hotel_group_view

ستظهر نتائج طلب البحث على شكل سلسلة JSON التالية. بما أنّ السمة case_value غير معرَّفة للعقدة الجذر ("جميع الفنادق")، من الواضح أنّ الصفّ الأول يمثّل مقاييس مجموعة البيانات "كل الفنادق"، بينما يمثّل الصف الثاني مقاييس مجموعة البيانات الفرعية التي تمثّل "غير ذلك".

{
  "results": [
    {
      "metrics": {
        "clicks": "5"
      },
      "adGroupCriterion": {
        "resourceName": "customers/1234567890/adGroupCriteria/22222222222~111111111111"
      },
      "hotelGroupView": {
        "resourceName": "customers/1234567890/hotelGroupViews/22222222222~111111111111"
      }
    },
    {
      "metrics": {
        "clicks": "0"
      },
      "adGroupCriterion": {
        "resourceName": "customers/1234567890/adGroupCriteria/22222222222~111111111112"
        "listingGroup": {
          "caseValue": {
            "hotelId": {
            }
          }
        }
      },
      "hotelGroupView": {
        "resourceName": "customers/1234567890/hotelGroupViews/22222222222~111111111112"
      }
    },
    {
      "metrics": {
        "clicks": "3"
      },
      "adGroupCriterion": {
        "resourceName": "customers/1234567890/adGroupCriteria/22222222222~111111111113"
        "listingGroup": {
          "caseValue": {
            "hotelId": {
              "value": "11111111111111111"
              }
            }
          }
        }
      },
      "hotelGroupView": {
        "resourceName": "customers/1234567890/hotelGroupViews/22222222222~111111111113"
      }
    },
    {
      "metrics": {
        "clicks": "2"
      },
      "adGroupCriterion": {
        "resourceName": "customers/1234567890/adGroupCriteria/22222222222~111111111114"
        "listingGroup": {
          "caseValue": {
            "hotelId": {
              "value": "11111111111111112"
              }
            }
          }
        }
      },
      "hotelGroupView": {
        "resourceName": "customers/1234567890/hotelGroupViews/22222222222~111111111114"
      }
    },
  ]
}

عرض أداء الفنادق

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

يؤدي المثال التالي لطلب البحث عن مرّات مشاهدة أداء الفنادق إلى الحصول على نقرات وتقسيم النتائج حسب رقم تعريف الفندق.

SELECT
  segments.partner_hotel_id,
  metrics.clicks
FROM hotel_performance_view

ستظهر نتائج طلب البحث على شكل سلسلة JSON التالية. يتم تقسيم النقرات حسب partner_hotel_id، وبالتالي يمكن عرض عنصرَين أو أكثر لعرض أداء الفندق نفسه.

{
  "results": [
    {
      "metrics": {
        "clicks": "7055"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      },
      "segments": {
        "partnerHotelId": "1111"
      }
    },
    {
      "metrics": {
        "clicks": "3047"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      },
      "segments": {
        "partnerHotelId": "1112"
      }
    },
    ...
  ]
}

مشاهدة الجمهور للمجموعة الإعلانية

تُعد مشاهدة الجمهور على مستوى المجموعة الإعلانية مفيدة إذا كنت تريد استرداد مقاييس الأداء لشرائح الجمهور المرفقة على مستوى المجموعة الإعلانية.

تجدر الإشارة إلى أنّ هذه النظرة العامة لمختلف أنواع الحملات، وليس فقط حملات الفنادق. توفّر طريقة العرض هذه أيضًا إمكانية تقسيم النتائج حسب hotel_date_selection_type، والذي يمكن استخدامه لتحديد ما إذا كان تاريخ الفندق قد اختاره المستخدم أو أنّه تاريخ تلقائي للبحث الذي حدّده محرّك بحث Google. وفي حال التقسيم حسب hotel_date_selection_type، سيتم عرض نتائج "حملات الفنادق" فقط.

يعرض الاستعلام التالي صفًا واحدًا لكل ad_group_criterion.user_list.user_list.

SELECT
  ad_group.id,
  campaign.id,
  ad_group_criterion.user_list.user_list,
  segments.device,
  segments.hotel_date_selection_type,
  metrics.impressions,
  metrics.clicks,
  metrics.cost_micros,
  metrics.conversions,
  metrics.all_conversions_value
FROM ad_group_audience_view

ستظهر نتائج طلب البحث على شكل سلسلة JSON التالية.

{
  "results": [
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789",
        "id": "23456789"
      },
      "metrics": {
        "clicks": "0",
        "conversions": "0",
        "costMicros": "0",
        "impressions": "3",
        "allConversionsValue": "0"
      },
      "adGroupCriterion": {
        "resourceName": "customers/123456789/adGroupCriteria/23456789~789456",
        "userList": {
          "userList": "customers/123456789/userLists/456789"
        }
      },
      "adGroupAudienceView": {
        "resourceName": "customers/8005193609/adGroupAudienceViews/23456789~789456"
      },
      "segments": {
        "device": "TABLET",
        "hotelDateSelectionType": "USER_SELECTED"
      }
    }
  ]
}

عرض الجمهور للحملة

تُعد مشاهدة جمهور الحملة مفيدة إذا كنت تريد استرداد مقاييس الأداء لشرائح الجمهور المرفقة على مستوى الحملة.

تجدر الإشارة إلى أنّ هذه النظرة العامة لمختلف أنواع الحملات، وليس فقط حملات الفنادق. توفّر طريقة العرض هذه أيضًا إمكانية تقسيم النتائج حسب hotel_date_selection_type، والذي يمكن استخدامه لتحديد ما إذا كان تاريخ الفندق قد اختاره المستخدم أو أنّه تاريخ تلقائي للبحث الذي حدّده محرّك بحث Google. وفي حال التقسيم حسب hotel_date_selection_type، سيتم عرض نتائج "حملات الفنادق" فقط.

يعرض الاستعلام التالي صفًا واحدًا لكل campaign_criterion.user_list.user_list.

SELECT
  campaign.id,
  campaign_criterion.user_list.user_list,
  segments.device,
  segments.hotel_date_selection_type,
  metrics.impressions,
  metrics.clicks,
  metrics.cost_micros,
  metrics.conversions,
  metrics.all_conversions_value
FROM campaign_audience_view

ستظهر نتائج طلب البحث على شكل سلسلة JSON التالية.

{
  "results": [
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789",
        "id": "23456789"
      },
      "metrics": {
        "clicks": "0",
        "conversions": "0",
        "costMicros": "0",
        "impressions": "3",
        "allConversionsValue": "0"
      },
      "campaignCriterion": {
        "resourceName": "customers/123456789/campaignCriteria/23456789~789456",
        "userList": {
          "userList": "customers/123456789/userLists/456789"
        }
      },
      "campaignAudienceView": {
        "resourceName": "customers/8005193609/campaignAudienceViews/23456789~789456"
      },
      "segments": {
        "device": "TABLET",
        "hotelDateSelectionType": "USER_SELECTED"
      }
    }
  ]
}

تقارير مفيدة لإعلانات الفنادق

يقدّم هذا القسم عدّة تقارير مفيدة مصمّمة خصيصًا لإعلانات الفنادق.

تقارير الأداء

تستفيد طلبات البحث هذه من طريقة عرض "أداء الفنادق" للحصول على بيانات الأداء.

تتيح لك السمة hotel_performance_view استخدام المورد campaign لتقسيم المقاييس. على سبيل المثال، يمكنك استخدام الحقل campaign.id للحصول على مقاييس الأداء حسب الحملة.

عروض أداء

مثال على طلب البحث:

SELECT
  segments.hotel_center_id,
  segments.device,
  segments.partner_hotel_id,
  segments.hotel_check_in_day_of_week,
  segments.hotel_date_selection_type,
  segments.hotel_length_of_stay,
  segments.hotel_booking_window_days,
  metrics.search_top_impression_share,
  metrics.search_absolute_top_impression_share,
  metrics.impressions,
  metrics.clicks,
  metrics.cost_micros,
  metrics.conversions,
  metrics.all_conversions_value,
  metrics.search_impression_share
FROM hotel_performance_view

مثال على استجابة JSON:

{
  "results": [
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789"
      },
      "metrics": {
        "clicks": "0",
        "conversions": "0.0",
        "costMicros": "0",
        "impressions": "0",
        "searchImpressionShare": "0.0999",
        "searchAbsoluteTopImpressionShare": "0.0999",
        "searchTopImpressionShare": "0.0999",
        "allConversionsValue": "1"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "device": "DESKTOP",
        "hotelBookingWindowDays": "3",
        "hotelCenterId": "1234",
        "hotelCheckInDayOfWeek": "MONDAY",
        "hotelDateSelectionType": "USER_SELECTED",
        "hotelLengthOfStay": "4",
        "partnerHotelId": "123"
      }
    },
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789"
      },
      "metrics": {
        "clicks": "0",
        "conversions": "0.0",
        "costMicros": "0",
        "impressions": "1",
        "searchImpressionShare": "1.0",
        "searchAbsoluteTopImpressionShare": "0.0999",
        "searchTopImpressionShare": "1.0",
        "allConversionsValue": "1"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "device": "DESKTOP",
        "hotelBookingWindowDays": "3",
        "hotelCenterId": "1234",
        "hotelCheckInDayOfWeek": "MONDAY",
        "hotelDateSelectionType": "USER_SELECTED",
        "hotelLengthOfStay": "4",
        "partnerHotelId": "123"
      }
    }
  ]
}

الأداء مع نوع النقر

مثال على طلب البحث:

SELECT
  segments.click_type,
  segments.hotel_center_id,
  segments.device,
  segments.partner_hotel_id,
  segments.hotel_check_in_day_of_week,
  segments.hotel_date_selection_type,
  segments.hotel_length_of_stay,
  segments.hotel_booking_window_days,
  metrics.impressions,
  metrics.clicks,
  metrics.cost_micros,
  metrics.conversions,
  metrics.all_conversions_value
FROM hotel_performance_view

مثال على استجابة JSON:

{
  "results": [
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789"
    },
      "metrics": {
        "clicks": "0",
        "conversions": "0.0",
        "costMicros": "0",
        "impressions": "1",
        "allConversionsValue": "0.0"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "device": "DESKTOP",
        "hotelBookingWindowDays": "0",
        "hotelCenterId": "1234",
        "hotelCheckInDayOfWeek": "TUESDAY",
        "hotelDateSelectionType": "USER_SELECTED",
        "hotelLengthOfStay": "4",
        "partnerHotelId": "123",
        "clickType": "HOTEL_PRICE"
      }
    },
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789"
      },
      "metrics": {
        "clicks": "1",
        "conversions": "0.0",
        "costMicros": "0",
        "impressions": "1",
        "allConversionsValue": "0.0"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "device": "DESKTOP",
        "hotelBookingWindowDays": "0",
        "hotelCenterId": "1234",
        "hotelCheckInDayOfWeek": "TUESDAY",
        "hotelDateSelectionType": "USER_SELECTED",
        "hotelLengthOfStay": "4",
        "partnerHotelId": "12345",
        "clickType": "HOTEL_PRICE"
      }
    }
  ]
}

تقرير أداء الأسعار المشروطة

يحصل الاستعلام التالي على مقاييس الأداء مقسّمة حسب:

  • campaign
  • hotel_center_id
  • hotel_country
  • hotel_rate_rule_id
  • hotel_rate_type
  • device
  • partner_hotel_id

انتقِل إلى HotelRateType للاطّلاع على وصف للأنواع.

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

SELECT
  campaign.id,
  segments.hotel_center_id,
  segments.hotel_country,
  segments.hotel_rate_rule_id,
  segments.hotel_rate_type,
  segments.device,
  segments.partner_hotel_id,
  metrics.search_top_impression_share,
  metrics.search_absolute_top_impression_share,
  metrics.impressions,
  metrics.clicks,
  metrics.cost_micros,
  metrics.conversions
FROM hotel_performance_view

ستظهر نتائج طلب البحث على شكل سلسلة JSON التالية.

{
  "results": [
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789",
        "id": "23456789"
      },
      "metrics": {
        "clicks": "1",
        "conversions": "0.0",
        "costMicros": "0",
        "impressions": "24",
        "searchAbsoluteTopImpressionShare": "0.0999",
        "searchTopImpressionShare": "0.17073170731707318"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "device": "TABLET",
        "hotelCenterId": "1234",
        "partnerHotelId": "123",
        "hotelRateRuleId": "desktop",
        "hotelRateType": "PUBLIC_RATE"
      }
    },
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789",
        "id": "23456789"
      },
      "metrics": {
        "clicks": "107",
        "conversions": "0.0",
        "costMicros": "0",
        "impressions": "1668",
        "searchAbsoluteTopImpressionShare": "0.0999",
        "searchTopImpressionShare": "0.3581201665675193"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "device": "TABLET",
        "hotelCenterId": "1234",
        "partnerHotelId": "1235",
        "hotelRateRuleId": "desktop",
        "hotelRateType": "PUBLIC_RATE"
      }
    }
  ]
}

تقرير "مكانة السعر في المنافسة"

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

مثال على طلب البحث:

SELECT
  segments.hotel_center_id,
  segments.partner_hotel_id,
  segments.hotel_price_bucket,
  metrics.hotel_average_lead_value_micros,
  metrics.hotel_price_difference_percentage
FROM hotel_performance_view

مثال على استجابة JSON:

{
  "results": [
    {
      "metrics": {
        "hotelAverageLeadValueMicros": "96416341.829268292",
        "hotelPriceDifferencePercentage": "-0.014627310872986811"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "hotelCenterId": "1234",
        "partnerHotelId": "123",
        "hotelPriceBucket": "LOWEST_TIED"
      }
    }
  ]
}

تقرير متوسط الأسعار المحجوزة

يمكنك الحصول على البيانات اللازمة لحساب متوسط السعر المحجوز (all_conversions_value مقسومًا على conversions) للفنادق.

مثال على طلب البحث:

SELECT
  segments.hotel_center_id,
  segments.partner_hotel_id,
  segments.hotel_price_bucket,
  metrics.all_conversions_value,
  metrics.conversions
FROM hotel_performance_view

مثال على استجابة JSON:

{
  "results": [
    {
      "metrics": {
        "allConversionsValue": "123.5",
        "conversions": "1"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "hotelCenterId": "1234",
        "partnerHotelId": "123",
        "hotelPriceBucket": "LOWEST_TIED"
      }
    }
  ]
}

تقارير الجمهور

تعرض تقارير الجمهور أداء مضاعِفات عروض الأسعار في قوائم المستخدمين على "إعلانات Google". للحصول على أمثلة عن تقارير الجمهور، اطّلِع على أمثلة طلبات البحث في عرض جمهور المجموعة الإعلانية وطريقة عرض جمهور الحملة.

تقرير تسوية الفندق

يحتوي تقرير تسوية الفندق على معلومات الإحالات الناجحة من حجوزات الفنادق لمطابقتها مع سجلات المعلنين. يمكنك تحميل البيانات من خلال عمليات التحميل المجمَّعة لإعلام Google بالحجوزات التي تم إلغاؤها أو إكمالها. في ما يلي الأعمدة الرئيسية في هذا التقرير:

عمود واجهة المستخدم عمود واجهة برمجة التطبيقات الشرح
قيمة الحجز metrics.value_per_conversions_by_conversion_date قيمة الإحالة الناجحة كما أبلغت عنها العلامة
تاريخ الإحالة الناجحة segments.date تاريخ الحجز
معدّل العمولة metrics.hotel_commission_rate_micros النسبة المئوية لقيمة الحجز التي تقدِّم عرض سعر لمرة ظهور إعلان
تكلفة العمولة

إذا كانت status == RECONCILED أو CANCELED، يمكن احتساب هذه القيمة على النحو التالي metrics.hotel_commission_rate_micros * hotel_reconciliation.reconciled_value_micros. في جميع الحالات الأخرى، يمكن الحصول على هذه القيمة من عمود metrics.hotel_expected_commission_cost، أو حسابها على metrics.hotel_commission_rate_micros * metrics.value_per_conversions_by_conversion_date.

المبلغ الذي من المتوقّع دفعه أو الذي دفعته مقابل إقامة النزيل