Search Analytics: query

अनुमति की ज़रूरत है

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

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

नतीजों को क्लिक की संख्या के हिसाब से, घटते क्रम में क्रम से लगाया जाता है. अगर दो पंक्तियों में क्लिक की संख्या एक जैसी है, तो उन्हें किसी भी क्रम में क्रम से लगाया जाता है.

इस तरीके को कॉल करने के लिए, Python सैंपल देखें.

एपीआई, Search Console की अंदरूनी सीमाओं से बंधा होता है. साथ ही, यह डेटा की सभी लाइनों को दिखाने की गारंटी नहीं देता. हालांकि, यह सबसे ऊपर की लाइनों को दिखाता है.

उपलब्ध डेटा की सीमाएं देखें.

JSON POST का उदाहरण:
POST https://www.googleapis.com/webmasters/v3/sites/https%3A%2F%2Fwww.example.com%2F/searchAnalytics/query?key={MY_API_KEY}
{
  "startDate": "2015-04-01",
  "endDate": "2015-05-01",
  "dimensions": ["country","device"]
}
इसे अभी आज़माएं.

अनुरोध

एचटीटीपी अनुरोध

POST https://www.googleapis.com/webmasters/v3/sites/siteUrl/searchAnalytics/query

पैरामीटर

पैरामीटर का नाम मान ब्यौरा
पाथ पैरामीटर
siteUrl string Search Console में जोड़ी गई प्रॉपर्टी का यूआरएल. उदाहरण: http://www.example.com/ (यूआरएल-प्रीफ़िक्स प्रॉपर्टी के लिए) या sc-domain:example.com (डोमेन प्रॉपर्टी के लिए)

अनुमति देना

इस अनुरोध के लिए, इनमें से कम से कम एक स्कोप के साथ अनुमति की ज़रूरत है (पुष्टि और अनुमति के बारे में ज़्यादा पढ़ें).

दायरा
https://www.googleapis.com/auth/webmasters.readonly
https://www.googleapis.com/auth/webmasters

अनुरोध का मुख्य भाग

अनुरोध के मुख्य हिस्से में, इस स्ट्रक्चर में डेटा दें:

{
  "startDate": string,
  "endDate": string,
  "dimensions": [
    string
  ],
  "type": string,
  "dimensionFilterGroups": [
    {
      "groupType": string,
      "filters": [
        {
          "dimension": string,
          "operator": string,
          "expression": string
        }
      ]
    }
  ],
  "aggregationType": string,
  "rowLimit": integer,
  "startRow": integer
}
प्रॉपर्टी का नाम मान ब्यौरा नोट
startDate string [ज़रूरी है] अनुरोध की गई तारीख की सीमा की शुरुआत की तारीख, पश्चिमी समय (यूटीसी - 7:00/8:00) में, YYYY-MM-DD फ़ॉर्मैट में. यह तारीख, खत्म होने की तारीख से कम या उसके बराबर होनी चाहिए. यह वैल्यू, रेंज में शामिल होती है.
endDate string [ज़रूरी है] तारीख की मांग की गई सीमा की आखिरी तारीख, पीटी टाइम (यूटीसी - 7:00/8:00) में, YYYY-MM-DD फ़ॉर्मैट में. यह तारीख, शुरू होने की तारीख से ज़्यादा या उसके बराबर होनी चाहिए. यह वैल्यू, रेंज में शामिल होती है.
dimensions[] list [ज़रूरी नहीं] नतीजों को ग्रुप करने के लिए, शून्य या उससे ज़्यादा डाइमेंशन. नतीजों को इस क्रम में ग्रुप किया जाता है जिस क्रम में आपने ये डाइमेंशन दिए हैं. dimensionFilterGroups[].filters[].dimension में किसी भी डाइमेंशन के नाम के साथ-साथ, "तारीख" और "घंटा" का इस्तेमाल किया जा सकता है. ग्रुपिंग डाइमेंशन की वैल्यू को जोड़कर, हर नतीजे की लाइन के लिए एक यूनीक कुंजी बनाई जाती है. अगर कोई डाइमेंशन नहीं दिया गया है, तो सभी वैल्यू को एक ही लाइन में जोड़ दिया जाएगा. डाइमेंशन के हिसाब से ग्रुप बनाने की कोई सीमा नहीं है. हालांकि, एक ही डाइमेंशन के हिसाब से दो बार ग्रुप नहीं बनाया जा सकता. उदाहरण: [country, device]
searchType string इस्तेमाल नहीं किया जा सकता. इसके बजाय, type का इस्तेमाल करें
type string [ज़रूरी नहीं] नतीजों को इस तरह फ़िल्टर करें:
  • "discover": 'डिस्कवर' के नतीजे
  • "googleNews": Android और iOS पर news.google.com और Google News ऐप्लिकेशन से मिले नतीजे. इसमें Google Search के "News" टैब के नतीजे शामिल नहीं होते.
  • "news": Google Search में "खबरें" टैब के खोज नतीजे.
  • "image": Google Search में "इमेज" टैब से खोज के नतीजे.
  • "video": वीडियो के खोज नतीजे
  • "web": [डिफ़ॉल्ट] Google Search में, एक साथ दिखने वाले कई तरह के खोज नतीजों ("सभी") वाले टैब पर नतीजे फ़िल्टर करें. इसमें 'डिस्कवर' या Google News के नतीजे शामिल नहीं होते.
dimensionFilterGroups[] list [ज़रूरी नहीं] डाइमेंशन ग्रुपिंग वैल्यू पर लागू करने के लिए, फ़िल्टर के शून्य या एक से ज़्यादा ग्रुप. जवाब में कोई पंक्ति दिखाने के लिए, सभी फ़िल्टर ग्रुप मैच होने चाहिए. किसी एक फ़िल्टर ग्रुप में, यह तय किया जा सकता है कि सभी फ़िल्टर मैच होने चाहिए या कम से कम एक फ़िल्टर मैच होना चाहिए.
dimensionFilterGroups[].groupType string इस ग्रुप के सभी फ़िल्टर के लिए, सही ("और") या एक या उससे ज़्यादा फ़िल्टर के लिए, सही (अभी काम नहीं करता) दिखाना ज़रूरी है.

ये वैल्यू डाली जा सकती हैं:
  • "and": फ़िल्टर ग्रुप के सही होने के लिए, ग्रुप के सभी फ़िल्टर सही होने चाहिए.
dimensionFilterGroups[].filters[] list [ज़रूरी नहीं] पंक्ति की जांच करने के लिए, शून्य या उससे ज़्यादा फ़िल्टर. हर फ़िल्टर में डाइमेंशन का नाम, ऑपरेटर, और वैल्यू होती है. ज़्यादा से ज़्यादा 4,096 वर्ण. उदाहरण:
country equals FRA
query contains mobile use
device notContains tablet
dimensionFilterGroups[].filters[].dimension string वह डाइमेंशन जिस पर यह फ़िल्टर लागू होता है. यहां दिए गए किसी भी डाइमेंशन के हिसाब से डेटा को फ़िल्टर किया जा सकता है. भले ही, आपने उस डाइमेंशन के हिसाब से डेटा को ग्रुप में न बांटा हो.

ये वैल्यू डाली जा सकती हैं:
  • "country": किसी देश के हिसाब से फ़िल्टर करें. इसके लिए, देश के तीन अक्षरों वाले कोड (ISO 3166-1 alpha-3) का इस्तेमाल करें.
  • "device": डिवाइस के टाइप के हिसाब से नतीजे फ़िल्टर करें. इस्तेमाल की जा सकने वाली वैल्यू:
    • डेस्कटॉप
    • मोबाइल
    • टैबलेट
  • "page": तय की गई यूआरआई स्ट्रिंग के हिसाब से फ़िल्टर करें.
  • "query": तय की गई क्वेरी स्ट्रिंग के हिसाब से फ़िल्टर करें.
  • "searchAppearance": खोज के नतीजे पाने की किसी खास सुविधा के हिसाब से फ़िल्टर करें. उपलब्ध वैल्यू की सूची देखने के लिए, "searchAppearance" के हिसाब से ग्रुप की गई क्वेरी चलाएं. वैल्यू और ब्यौरे की पूरी सूची, सहायता दस्तावेज़ में भी उपलब्ध है.
dimensionFilterGroups[].filters[].operator string [ज़रूरी नहीं] आपकी तय की गई वैल्यू, लाइन के डाइमेंशन की वैल्यू से कैसे मेल खानी चाहिए या नहीं खानी चाहिए.

ये वैल्यू डाली जा सकती हैं:
  • "contains": पंक्ति की वैल्यू में आपका एक्सप्रेशन होना चाहिए या वह एक्सप्रेशन से मेल खाना चाहिए. इसमें केस-सेंसिटिविटी लागू नहीं होती.
  • "equals": [डिफ़ॉल्ट] आपका एक्सप्रेशन, लाइन की वैल्यू से पूरी तरह मेल खाना चाहिए. पेज और क्वेरी डाइमेंशन के लिए, केस-सेंसिटिव (बड़े और छोटे अक्षरों में अंतर) होना चाहिए.
  • "notContains": लाइन की वैल्यू में, आपका एक्सप्रेशन सबस्ट्रिंग या केस-सेंसिटिव न होने वाले पूरे मैच के तौर पर नहीं होना चाहिए.
  • "notEquals": आपका एक्सप्रेशन, लाइन की वैल्यू से पूरी तरह मेल नहीं खाना चाहिए. पेज और क्वेरी डाइमेंशन के लिए, केस-सेंसिटिव (बड़े और छोटे अक्षरों में अंतर) का इस्तेमाल किया जाना चाहिए.
  • "includingRegex": RE2 सिंटैक्स वाला रेगुलर एक्सप्रेशन, जिससे मैच करना ज़रूरी है.
  • "excludingRegex": RE2 सिंटैक्स वाला रेगुलर एक्सप्रेशन, जिससे मैच नहीं किया जाना चाहिए.
dimensionFilterGroups[].filters[].expression string ऑपरेटर के आधार पर, फ़िल्टर की वैल्यू को मैच या बाहर रखा जाता है.
aggregationType string

[ज़रूरी नहीं] डेटा को इकट्ठा करने का तरीका. अगर प्रॉपर्टी के हिसाब से एग्रीगेट किया जाता है, तो एक ही प्रॉपर्टी का सारा डेटा एग्रीगेट किया जाता है. अगर पेज के हिसाब से एग्रीगेट किया जाता है, तो सारा डेटा कैननिकल यूआरआई के हिसाब से एग्रीगेट किया जाता है. अगर आपको पेज के हिसाब से फ़िल्टर या ग्रुप करना है, तो अपने-आप डेटा इकट्ठा होने की सुविधा चुनें. इसके अलावा, डेटा को एग्रीगेट करने के लिए, प्रॉपर्टी या पेज में से किसी एक को चुनें. यह इस बात पर निर्भर करता है कि आपको डेटा का हिसाब कैसे लगाना है. साइट के हिसाब से डेटा का हिसाब लगाने के तरीके और पेज के हिसाब से डेटा का हिसाब लगाने के तरीके के बारे में जानने के लिए, सहायता दस्तावेज़ देखें.

ध्यान दें: अगर पेज के हिसाब से ग्रुप किया जाता है या फ़िल्टर किया जाता है, तो प्रॉपर्टी के हिसाब से एग्रीगेट नहीं किया जा सकता.

अगर आपने अपने-आप सेट होने की सुविधा के अलावा कोई दूसरी वैल्यू दी है, तो नतीजे में एग्रीगेशन टाइप, अनुरोध किए गए टाइप से मेल खाएगा. अगर आपने अमान्य टाइप का अनुरोध किया है, तो आपको गड़बड़ी का मैसेज दिखेगा. अगर अनुरोध किया गया टाइप अमान्य है, तो एपीआई आपके एग्रीगेशन टाइप को कभी नहीं बदलेगा.

ये वैल्यू डाली जा सकती हैं:
  • "auto": [डिफ़ॉल्ट] सेवा को एग्रीगेशन का सही टाइप तय करने दें.
  • "byNewsShowcasePanel": News शोकेस पैनल के हिसाब से वैल्यू इकट्ठा करें. इसका इस्तेमाल, NEWS_SHOWCASE searchAppearance फ़िल्टर और type=discover या type=googleNews के साथ किया जाना चाहिए. अगर पेज के हिसाब से ग्रुप किया जाता है, पेज के हिसाब से फ़िल्टर किया जाता है या किसी दूसरे searchAppearance के हिसाब से फ़िल्टर किया जाता है, तो डेटा को byNewsShowcasePanel के हिसाब से एग्रीगेट नहीं किया जा सकता.
  • "byPage": यूआरआई के हिसाब से वैल्यू इकट्ठा करें.
  • "byProperty": प्रॉपर्टी के हिसाब से वैल्यू इकट्ठा करें. type=discover या type=googleNews के लिए उपलब्ध नहीं है
rowLimit integer [ज़रूरी नहीं; मान्य रेंज 1 से 25,000 है; डिफ़ॉल्ट तौर पर 1,000] लौटाए जाने वाली पंक्तियों की ज़्यादा से ज़्यादा संख्या. नतीजों को पेज के हिसाब से देखने के लिए, startRow ऑफ़सेट का इस्तेमाल करें.
startRow integer [ज़रूरी नहीं; डिफ़ॉल्ट रूप से 0 है] रिस्पॉन्स में पहली लाइन का शून्य-आधारित इंडेक्स. यह संख्या, ज़ीरो से बड़ी होनी चाहिए. अगर startRow, क्वेरी के नतीजों की संख्या से ज़्यादा है, तो जवाब में शून्य पंक्तियां दिखेंगी.
dataState string [ज़रूरी नहीं] अगर "सभी" (बड़े और छोटे अक्षरों में अंतर नहीं किया जाता) चुना जाता है, तो डेटा में नया डेटा शामिल होगा. अगर "फ़ाइनल" (बड़े और छोटे अक्षरों में अंतर नहीं किया जाता) या इस पैरामीटर को शामिल नहीं किया जाता है, तो दिखाए गए डेटा में सिर्फ़ फ़ाइनल डेटा शामिल होगा. अगर "hourly_all" (बड़े और छोटे अक्षरों में कोई फ़र्क़ नहीं पड़ता) है, तो डेटा में हर घंटे का ब्रेकडाउन शामिल होगा. इससे पता चलेगा कि हर घंटे के डेटा में कुछ डेटा शामिल है. साथ ही, इसका इस्तेमाल HOUR एपीआई डाइमेंशन के हिसाब से ग्रुप करते समय किया जाना चाहिए.

जवाब

नतीजों को अनुरोध में बताए गए डाइमेंशन के हिसाब से ग्रुप में बांटा जाता है. डाइमेंशन वैल्यू के एक ही सेट वाली सभी वैल्यू को एक ही पंक्ति में ग्रुप किया जाएगा. उदाहरण के लिए, अगर देश के डाइमेंशन के हिसाब से ग्रुप किया जाता है, तो "usa" के सभी नतीजे एक साथ ग्रुप किए जाएंगे, "mdv" के सभी नतीजे एक साथ ग्रुप किए जाएंगे वगैरह. अगर आपने देश और डिवाइस के हिसाब से ग्रुप किया है, तो "usa, tablet" के सभी नतीजे एक ग्रुप में, "usa, mobile" के सभी नतीजे एक ग्रुप में, और इसी तरह के अन्य नतीजे एक ग्रुप में दिखेंगे. क्लिक, इंप्रेशन वगैरह की गिनती करने का तरीका और उनका मतलब जानने के लिए, Search Analytics रिपोर्ट का दस्तावेज़ देखें.

नतीजों को क्लिक की संख्या के हिसाब से, घटते क्रम में क्रम से लगाया जाता है. हालांकि, अगर आपने तारीख के हिसाब से ग्रुप किया है, तो नतीजों को तारीख के हिसाब से, बढ़ते क्रम में क्रम से लगाया जाता है. अगर दो पंक्तियों के बीच टाई होता है, तो क्रम से लगाने का क्रम मनमुताबिक होता है.

अनुरोध में rowLimit प्रॉपर्टी देखें, ताकि यह पता चल सके कि कितनी वैल्यू लौटाई जा सकती हैं.

{
  "rows": [
    {
      "keys": [
        string
      ],
      "clicks": double,
      "impressions": double,
      "ctr": double,
      "position": double
    }
  ],
  "responseAggregationType": string
}
प्रॉपर्टी का नाम मान ब्यौरा नोट
rows[] list क्वेरी में दिए गए क्रम में, मुख्य वैल्यू के हिसाब से व्यवस्थित की गई पंक्तियों की सूची.
rows[].keys[] list उस पंक्ति के डाइमेंशन की वैल्यू की सूची, जो अनुरोध में दिए गए डाइमेंशन के हिसाब से ग्रुप की गई है. यह सूची, अनुरोध में दिए गए क्रम में होती है.
rows[].clicks double लाइन के लिए गिनती पर क्लिक करें.
rows[].impressions double लाइन के लिए इंप्रेशन की संख्या.
rows[].ctr double लाइन के लिए क्लिक मिलने की दर (सीटीआर). वैल्यू 0 से 1.0 के बीच होनी चाहिए.
rows[].position double खोज के नतीजों में आपकी साइट की औसत रैंक.
responseAggregationType string नतीजों को कैसे इकट्ठा किया गया. साइट के हिसाब से और पेज के हिसाब से, डेटा का हिसाब अलग-अलग तरीके से कैसे लगाया जाता है, यह जानने के लिए सहायता दस्तावेज़ देखें.

ये वैल्यू डाली जा सकती हैं:
  • "auto"
  • "byPage": नतीजों को पेज के हिसाब से एग्रीगेट किया गया था.
  • "byProperty": नतीजों को प्रॉपर्टी के हिसाब से एग्रीगेट किया गया था.

इसे आज़माएं!

लाइव डेटा पर इस तरीके को कॉल करने और रिस्पॉन्स देखने के लिए, नीचे दिए गए एपीआई एक्सप्लोरर का इस्तेमाल करें.