डेवलपर की गाइड: प्रोटोकॉल

Blogger डेटा एपीआई, क्लाइंट ऐप्लिकेशन को Google डेटा एपीआई फ़ीड के रूप में Blogger कॉन्टेंट देखने और उसे अपडेट करने की सुविधा देता है.

आपका क्लाइंट ऐप्लिकेशन, Blogger की एपीआई का इस्तेमाल करके, नई ब्लॉग पोस्ट बना सकता है और मौजूदा ब्लॉग पोस्ट में बदलाव कर सकता है या उन्हें मिटा सकता है. इसके अलावा, वह उन ब्लॉग पोस्ट के लिए क्वेरी कर सकता है जो खास शर्तें पूरी करती हैं.

इस डेटा में, Blogger के डेटा एपीआई की सुविधाओं के बारे में भी जानकारी दी गई है. इसमें, बुनियादी एक्सएमएल और एचटीटीपीएस का इस्तेमाल करके, बुनियादी डेटा एपीआई इंटरैक्शन के उदाहरण भी दिए गए हैं. इस दस्तावेज़ को पढ़ने के बाद, हो सकता है कि आप हमारी क्लाइंट लाइब्रेरी का इस्तेमाल करके, एपीआई से इंटरैक्ट करने के बारे में ज़्यादा जानना चाहें. इसके लिए, इस डेवलपर की गाइड की प्रोग्रामिंग भाषा के हिसाब से सेक्शन पढ़ें.

कॉन्टेंट

दर्शक

यह दस्तावेज़ उन प्रोग्रामर के लिए है जो ऐसे क्लाइंट ऐप्लिकेशन लिखना चाहते हैं जो एक्सएमएल और एचटीटीपीएस का इस्तेमाल करके, Blogger से इंटरैक्ट कर सकते हैं.

इस दस्तावेज़ में यह माना जाता है कि आप Google के डेटा एपीआई प्रोटोकॉल को इस्तेमाल करने के सामान्य आइडिया समझते हैं.

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

Blogger डेटा एपीआई के रेफ़रंस की जानकारी के लिए, प्रोटोकॉल रेफ़रंस गाइड देखें.

रिपोर्ट का इस्तेमाल करना

Blogger खाता बनाना

टेस्टिंग के मकसद से, ब्लॉगर खाते के लिए साइन अप किया जा सकता है. Blogger, Google खातों का इस्तेमाल करता है, इसलिए अगर आपके पास पहले से कोई Google खाता है, तो आप पूरी तरह से तैयार हैं.

अनुरोधों को अनुमति देना

जब आपका ऐप्लिकेशन गैर-सार्वजनिक उपयोगकर्ता डेटा का अनुरोध करता है, तब उसमें ऑथराइज़ेशन टोकन शामिल होना चाहिए. इस टोकन से Google आपके ऐप्लिकेशन की पहचान भी करता है.

अनुमति देने के प्रोटोकॉल के बारे में जानकारी

हमारा सुझाव है कि अनुरोधों को अनुमति देने के लिए, आप OAuth 2.0 का इस्तेमाल करें.

Blogger GData एपीआई पुराने अनुमति विकल्पों का भी इस्तेमाल करता है, जैसे कि OAuth 1.0, AuthSub या ClientLogin; हालांकि, ज़्यादातर मामलों में हम उन अन्य विकल्पों का इस्तेमाल करने का सुझाव नहीं देते हैं. अगर आपका ऐप्लिकेशन पहले से उन विकल्पों का इस्तेमाल कर रहा है, तो हमारा सुझाव है कि अगर हो सके, तो आप OAuth 2.0 पर माइग्रेट करें.

अगर आपके ऐप्लिकेशन में अनुमति से जुड़ी कुछ असामान्य शर्तें हैं, जैसे कि डेटा ऐक्सेस का अनुरोध करने (हाइब्रिड) या पूरे डोमेन के लिए अनुमति (2LO) का अनुरोध करते समय लॉग इन करना, तो आप फ़िलहाल OAuth 2.0 टोकन का इस्तेमाल नहीं कर सकते. ऐसे मामलों में, इसके बजाय आपको OAuth 1.0 टोकन का इस्तेमाल करना चाहिए.

OAuth 2.0 से अनुरोधों को अनुमति देना

गैर-सार्वजनिक उपयोगकर्ता डेटा के लिए Blogger GData API को किए जाने वाले अनुरोधों को किसी प्रमाणीकृत उपयोगकर्ता की ओर से अनुमति दी जानी चाहिए.

OAuth 2.0 के लिए अनुमति देने की प्रक्रिया या "flow," के बारे में जानकारी अलग-अलग होती है. यह इस बात पर निर्भर करता है कि आप किस तरह का ऐप्लिकेशन लिख रहे हैं. सभी तरह के ऐप्लिकेशन के लिए नीचे दी गई सामान्य प्रक्रिया लागू होती है:

  1. ऐप्लिकेशन बनाने के बाद, उसे Google पर रजिस्टर किया जाता है. इसके बाद, Google आपको क्लाइंट आईडी और क्लाइंट सीक्रेट जैसी जानकारी देगा.
  2. जब आपके ऐप्लिकेशन को उपयोगकर्ता के डेटा को ऐक्सेस करने की ज़रूरत होती है, तब वह Google से, डेटा के खास लिंक का अनुरोध करता है.
  3. Google, उपयोगकर्ता को OAuth डायलॉग दिखाता है, जिसमें उनसे आपके ऐप्लिकेशन को उनके कुछ डेटा को ऐक्सेस करने की अनुमति मांगी जाती है.
  4. अगर उपयोगकर्ता इसकी अनुमति दे देता है, तो Google आपके ऐप्लिकेशन को कुछ समय के लिए इस्तेमाल किए जा सकने वाला ऐक्सेस टोकन देता है.
  5. आपका ऐप्लिकेशन, ऐक्सेस टोकन से उपयोगकर्ता के डेटा को ऐक्सेस करने का अनुरोध करता है.
  6. अगर Google को पता चलता है कि आपका अनुरोध और टोकन मान्य हैं, तो वह आपके ऐप्लिकेशन को अनुरोध किए गए डेटा का ऐक्सेस दे देता है.

कुछ तरीकों में दूसरे चरण भी शामिल हो सकते हैं, जैसे रिफ़्रेश टोकन इस्तेमाल करके, नया एक्सेस टोकन पाना. अलग-अलग तरह के ऐप्लिकेशन के लिए फ़्लो की जानकारी के लिए, Google का OAuth 2.0 दस्तावेज़ देखें.

यहां Blogger GData एपीआई के लिए OAuth 2.0 के दायरे की जानकारी दी गई है:

https://www.blogger.com/feeds/

OAuth 2.0 का इस्तेमाल करके, डेटा एक्सेस करने का अनुरोध करने के लिए, आपके ऐप्लिकेशन को अनुरोध के तरीके की जानकारी देनी होगी. साथ ही, वह जानकारी भी देनी होगी जो Google ने ऐप्लिकेशन रजिस्ट्रेशन के दौरान दी थी (जैसे, क्लाइंट आईडी और/या क्लाइंट सीक्रेट).

सलाह: Google API की क्लाइंट लाइब्रेरी आपके लिए अनुमति देने की कुछ प्रक्रियाएं खुद कर सकती है. ये लाइब्रेरी कई तरह की प्रोग्रामिंग भाषाओं में उपलब्ध होती हैं. ज़्यादा जानकारी के लिए लाइब्रेरी और सैंपल पेज देखें.

कोई वर्शन तय करना

Blogger के डेटा एपीआई का इस्तेमाल करके भेजा जाने वाला हर अनुरोध, एपीआई के वर्शन 2 के बारे में बताता है.

वर्शन नंबर बताने के लिए, GData-Version एचटीटीपी हेडर का इस्तेमाल करें:

GData-Version: 2

इसके अलावा, अगर आप एचटीटीपी हेडर सेट नहीं कर सकते, तो आप यूआरएल में v=2 को क्वेरी पैरामीटर के तौर पर तय कर सकते हैं. हालांकि, संभव होने पर एचटीटीपी हेडर को प्राथमिकता दी जाती है.

ध्यान दें: क्लाइंट लाइब्रेरी अपने-आप सही वर्शन हेडर उपलब्ध कराती हैं, इसलिए क्लाइंट लाइब्रेरी का इस्तेमाल करते समय, v=2क्वेरी पैरामीटर का इस्तेमाल न करें.

ब्लॉग की सूची फ़ेच की जा रही है

Blogger डेटा एपीआई में एक फ़ीड होता है, जो किसी खास उपयोगकर्ता के ब्लॉग की सूची बनाता है; उस फ़ीड को "metafeed.&quot कहा जाता है;

ब्लॉग की सूची को वापस पाने के लिए, इस यूआरएल पर एचटीटीपी GET भेजें:

https://www.blogger.com/feeds/profileID/blogs

जहां उपयोगकर्ता की प्रोफ़ाइल पेज के यूआरएल में दिखाई देने वाली प्रोफ़ाइल आईडी होती है.

ध्यान दें: आप User-ID के लिए default को भी बदल सकते हैं. इसमें, Blogger को उस उपयोगकर्ता के ब्लॉग की सूची वापस करने के लिए कहा जाता है जिनके क्रेडेंशियल अनुरोध के साथ आते हैं.

मेटाफ़ीड में डाली गई जानकारी इस तरह दिख सकती है:

<entry gd:etag='W/"D08FQn8-eip7ImA9WxZbFEw."'>
  <id>tag:blogger.com,1999:user-userNumber.blog-blogID</id>
  <published>2006-08-02T18:44:43.089-07:00</published>
  <updated>2008-04-17T00:03:33.152-07:00</updated>
  <title>Lizzy's Diary</title>
  <summary type='html'>Being the journal of Elizabeth Bennet</summary>
  <link rel='self' type='application/atom+xml'
    href='http://www.blogger.com/feeds/profileID/blogs/blogID' />
  <link rel='alternate' type='text/html'
    href='http://blogName.blogspot.com/' />
  <link rel='http://schemas.google.com/g/2005#feed'
    type='application/atom+xml'
    href='http://blogName.blogspot.com/feeds/posts/default' />
  <link rel='http://schemas.google.com/g/2005#post'
    type='application/atom+xml'
    href='http://www.blogger.com/feeds/blogID/posts/default' />
  ...
  <author>
    <name>Elizabeth Bennet</name>
    <uri>http://www.blogger.com/profile/profileID</uri>
    <email>noreply@blogger.com</email>
  </author>
</entry>

हर एलिमेंट का मतलब क्या है, यह जानने के लिए Google डेटा एपीआई प्रोटोकॉल रेफ़रंस दस्तावेज़ या ऐटम 1.0 की खास बातें देखें.

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

पोस्ट बनाना

Blogger के डेटा एपीआई का इस्तेमाल करके, आप नई ब्लॉग एंट्री बना सकते हैं और प्रकाशित कर सकते हैं. साथ ही, आप एंट्री के ड्राफ़्ट भी बना सकते हैं.

ब्लॉग पोस्ट पब्लिश करना

पुष्टि करने के बाद, आप नई ब्लॉग एंट्री प्रकाशित कर सकते हैं.

सबसे पहले, प्रकाशित करने के लिए पोस्ट का एक XML प्रतिनिधित्व बनाएं. यह एक्सएमएल ऐटम <entry> एलिमेंट के रूप में होना चाहिए, जो इस तरह दिख सकता है:

<entry xmlns='http://www.w3.org/2005/Atom'>
  <title type='text'>Marriage!</title>
  <content type='xhtml'>
    <div xmlns="http://www.w3.org/1999/xhtml">
      <p>Mr. Darcy has <em>proposed marriage</em> to me!</p>
      <p>He is the last man on earth I would ever desire to marry.</p>
      <p>Whatever shall I do?</p>
    </div>
  </content>
  <category scheme="http://www.blogger.com/atom/ns#" term="marriage" />
  <category scheme="http://www.blogger.com/atom/ns#" term="Mr. Darcy" />
</entry>

ध्यान दें: फ़िलहाल, पोस्ट के लिए पसंद के मुताबिक लेखक सेट करने की सुविधा मौजूद नहीं है. सभी नई पोस्ट इस तरह दिखाई देंगी जैसे कि उन्हें हाल ही में पुष्टि किए गए उपयोगकर्ता ने बनाया है.

इस एंट्री को प्रकाशित करने के लिए, इसे ब्लॉग के पोस्ट यूआरएल पर नीचे दिए गए तरीके से भेजें. पहले, application/atom+xml कॉन्टेंट टाइप का इस्तेमाल करके, अपने ऐटम <entry> एलिमेंट को नए POST अनुरोध के मुख्य हिस्से में रखें. इसके बाद, मेटाफ़ीड में ब्लॉग का पोस्ट यूआरएल ढूंढें. इसके लिए, <link> एलिमेंट का पता लगाएं. जहां rel एट्रिब्यूट #post के साथ खत्म होता है. ब्लॉग के पोस्ट का यूआरएल, इस एलिमेंट के href एट्रिब्यूट के तौर पर दिया जाता है, जो इस फ़ॉर्मैट में है:

https://www.blogger.com/feeds/blogID/posts/default

ध्यान दें: यह यूआरएल, <link rel="service.post"> टैग के यूआरएल जैसा ही है, जो ब्लॉग के <head> सेक्शन में दिखता है.

Blogger आपकी भेजी गई एंट्री का इस्तेमाल करके ब्लॉग पोस्ट बनाता है. इसके बाद, <entry> एलिमेंट के रूप में नई पोस्ट की एक कॉपी के साथ, एचटीटीपी 201 CREATED स्टेटस कोड दिखाता है. आपने जो एंट्री भेजी है, वही वही है जिसे आपने भेजा है. हालांकि, इसमें Blogger से जोड़े गए कई एलिमेंट भी शामिल होते हैं, जैसे कि <id> एलिमेंट.

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

ड्राफ़्ट ब्लॉग पोस्ट बनाना

ड्राफ़्ट पोस्ट सार्वजनिक पोस्ट की तरह ही बनाई जाती हैं, लेकिन एंट्री में <app:control> एलिमेंट जोड़कर यह बताया जाता है कि पोस्ट पब्लिश हो जानी चाहिए.

इस <app:control> एलिमेंट में एक चाइल्ड के रूप में एक <app:draft> एलिमेंट होना चाहिए:

<app:control xmlns:app='http://www.w3.org/2007/app'>
  <app:draft>yes</app:draft>
</app:control>

पोस्ट की पहचान ड्राफ़्ट के तौर पर करने के लिए, <app:draft> एलिमेंट में मौजूद डेटा स्ट्रिंग yes होना चाहिए.

ड्राफ़्ट पोस्ट को वापस पाने और <app:draft> एलिमेंट के डेटा को स्ट्रिंग no में सेट करने और इसके बाद पोस्ट को अपडेट करने पर आप किसी मौजूदा ड्राफ़्ट ब्लॉग पोस्ट को प्रकाशित पोस्ट में बदल सकते हैं. पोस्ट को वापस पाना और अपडेट करना अगले दो सेक्शन में शामिल है.

ध्यान दें: ऐटम पब्लिश करने वाले प्रोटोकॉल के बारे में ज़्यादा जानने के लिए, आरएफ़सी 5023 पढ़ें. इसमें, <app:control> और <app:draft> नेमस्पेस भी शामिल हैं.

पोस्ट फ़ेच की जा रही हैं

नीचे दिए गए सेक्शन में, क्वेरी पैरामीटर के साथ और उसके बिना भी ब्लॉग पोस्ट की सूची पाने का तरीका बताया गया है.

पुष्टि किए बिना, Blogger के सार्वजनिक फ़ीड के बारे में क्वेरी की जा सकती है. इसलिए, जब आप किसी सार्वजनिक ब्लॉग से ब्लॉग पोस्ट वापस लाते हैं, तो आपको अनुमति देने का पैरामीटर सेट नहीं करना पड़ता.

सभी ब्लॉग पोस्ट वापस पाई जा रही हैं

उपयोगकर्ता की पोस्ट फिर से पाने के लिए, ब्लॉग के फ़ीड यूआरएल पर एक एचटीटीपी GET अनुरोध भेजें. इसके बाद, Blogger सही ब्लॉग एंट्री वाला फ़ीड दिखाता है. उदाहरण के लिए, liz@gmail.com के लिए ब्लॉग पोस्ट की सूची पाने के लिए, ब्लॉगर को यह एचटीटीपी अनुरोध भेजें (blogID के बजाय सही वैल्यू के साथ):

GET https://www.blogger.com/feeds/blogID/posts/default

इसके बाद, Blogger एक एचटीटीपी 200 OK स्टेटस कोड और ब्लॉग पोस्ट वाला ऐटम 1.0 फ़ीड दिखाता है.

यहां सिर्फ़ एक पोस्ट वाले ब्लॉग के लिए फ़ीड का एक उदाहरण दिया गया है. ध्यान दें कि हमने इस उदाहरण में थोड़ा बदलाव किया है, ताकि इसे ह्यूमन और आसानी से पढ़ सके. खास तौर पर, किसी असली Blogger फ़ीड में असली आईडी और यूआरएल मौजूद होते हैं.

<?xml version='1.0' encoding='utf-8'?>
<?xml-stylesheet href="http://www.blogger.com/styles/atom.css"
  type="text/css"?>
<feed xmlns='http://www.w3.org/2005/Atom'
    xmlns:gd='http://schemas.google.com/g/2005'
    gd:etag='W/"D08FQn8-eip7ImA9WxZbFEw."'>
  <id>tag:blogger.com,1999:blog-blogID</id>
  <updated>2008-04-17T00:03:33.152-07:00</updated>
  <title>Lizzy's Diary</title>
  <subtitle type='html'></subtitle>
  <link rel='http://schemas.google.com/g/2005#feed'
    type='application/atom+xml'
    href='http://blogName.blogspot.com/feeds/posts/default' />
  <link rel='self' type='application/atom+xml'
    href='http://www.blogger.com/feeds/blogID/posts/default' />
  <link rel='alternate' type='text/html'
    href='http://blogName.blogspot.com/' />
  <author>
    <name>Elizabeth Bennet</name>
    <uri>http://www.blogger.com/profile/profileID</uri>
    <email>noreply@blogger.com</email>
  </author>
  <generator version='7.00'
    uri='http://www2.blogger.com'>Blogger</generator>
  <entry gd:etag='W/"D0YHRn84eip7ImA9WxZUFk8."'>
    <id>tag:blogger.com,1999:blog-blogID.post-postID</id>
    <published>2008-04-07T20:25:00.005-07:00</published>
    <updated>2008-04-07T20:25:37.132-07:00</updated>
    <title>Quite disagreeable</title>
    <content type='html'>&lt;p&gt;I met Mr. Bingley's friend Mr. Darcy
      this evening. I found him quite disagreeable.&lt;/p&gt;</content>
    <link rel='edit' type='application/atom+xml'
      href='http://www.blogger.com/feeds/blogID/posts/default/postID' />
    <link rel='self' type='application/atom+xml'
      href='http://www.blogger.com/feeds/blogID/posts/default/postID' />
    <link rel='alternate' type='text/html'
      href='http://blogName.blogspot.com/2008/04/quite-disagreeable.html' />
    <author>
      <name>Elizabeth Bennet</name>
      <uri>http://www.blogger.com/profile/profileID</uri>
      <email>noreply@blogger.com</email>
    </author>
  </entry>
</feed>

ब्लॉग पोस्ट को फिर से फ़ेच करना

अगर आप किसी ऐसी पोस्ट को फिर से पाना चाहते हैं जिसे आपने पहले वापस पाया है, तो आप Blogger को पोस्ट भेजने के लिए कह कर बेहतर बना सकते हैं. ऐसा तभी करें जब आपने पोस्ट को फिर से पाने के बाद से इसमें बदलाव किया हो.

इस तरह की शर्त वापस पाने के लिए, एचटीटीपी GET का अनुरोध भेजें जिसमें एचटीटीपी If-None-Match हेडर शामिल हो. हेडर में, एंट्री और # ETag के बारे में बताएं. इसे आप <entry> एलिमेंट और #39 के gd:etag एट्रिब्यूट में देख सकते हैं.

उदाहरण के लिए:

If-None-Match: W/"D08FQn8-eil7ImA9WxZbFEw."

जब Blogger यह अनुरोध करता है, तो यह इस बात की जांच करता है कि आपने जिस एंट्री के लिए अनुरोध किया है, वह वही ईटैग है जो आपने बताया है. अगर Eटैग मेल खाता है, तो एंट्री बदली नहीं गई है और Blogger कोई HTTP 304 Not Modified स्थिति कोड दिखाता है.

अगर ETags मेल नहीं खाता है, तो आपके आखिरी बार अनुरोध करने के बाद से एंट्री में बदलाव किया गया है और Blogger एंट्री दिखाता है.

ईटैग के बारे में ज़्यादा जानकारी के लिए, Google डेटा एपीआई रेफ़रंस गाइड देखें.

क्वेरी पैरामीटर का इस्तेमाल करके, पोस्ट को वापस लाया जा रहा है

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

उदाहरण के लिए, तारीख की सीमा की क्वेरी भेजने के लिए, अनुरोध वाले यूआरएल में published-min और published-max पैरामीटर जोड़ें. 16 मार्च, 2008 से 24 मार्च, 2008 के बीच बनाई गई सभी ब्लॉग एंट्री पाने के लिए, ब्लॉग के फ़ीड यूआरएल पर एक एचटीटीपी अनुरोध भेजें:

GET https://www.blogger.com/feeds/blogID/posts/default?published-min=2008-03-16T00:00:00&published-max=2008-03-24T23:59:59

जब आप वह GET अनुरोध भेजते हैं, तब Blogger एक एचटीटीपी 200 OK स्टेटस कोड और फ़ीड को दिखाता है. इस फ़ीड में ऐसी सभी ब्लॉग पोस्ट होती हैं जिन्हें आपकी बताई गई तारीख की सीमा के दौरान बनाया गया था.

किसी दी गई सीमा में, सभी ब्लॉग एंट्री को अपडेट करने के लिए updated-min और updated-max पैरामीटर का भी इस्तेमाल किया जा सकता है. हालांकि, ध्यान दें कि इन पैरामीटर को तब तक अनदेखा किया जाता है, जब तक orderby पैरामीटर भी updated पर सेट न हो.

Blogger डेटा एपीआई में इन क्वेरी पैरामीटर का इस्तेमाल किया जा सकता है:

ऑल्ट
आपको किस तरह का फ़ीड दिखाना है, जैसे कि atom (डिफ़ॉल्ट) या rss.
/category
फ़ीड के नतीजों को फ़िल्टर करने के लिए, कैटगरी (इसे लेबल भी कहा जाता है) के बारे में बताता है. उदाहरण के लिए, https://www.blogger.com/feeds/blogID/posts/default/-/Fritz/Laurie, Fritz और Laurie, दोनों लेबल के साथ एंट्री दिखाता है.
ज़्यादा से ज़्यादा नतीजे
लौटाए जाने वाले सामान की ज़्यादा से ज़्यादा संख्या.
ऑर्डर के हिसाब से
वह ऑर्डर जिसमें एंट्री करनी है, जैसे कि lastmodified (डिफ़ॉल्ट), starttime या updated.
पब्लिश-मिनट, published-max
एंट्री की तारीख, प्रकाशन की तारीख पर लागू होती है.
स्टार्ट-इंडेक्स
पहले नतीजे के लिए हासिल किया गया एक अंकों वाला इंडेक्स (पेजिंग के लिए).
अपडेट किया गया-मिनट, अपडेट किया गया-ज़्यादा से ज़्यादा
एंट्री अपडेट की तारीखों की सीमाएं. इन क्वेरी पैरामीटर को तब तक अनदेखा किया जाता है, जब तक orderby पैरामीटर updated पर सेट न हो.
पाथ
किसी पोस्ट का स्थायी लिंक पाथ. उदाहरण के लिए, http://Buzz.blogger.com/2011/08/bloggers-fresh-new-look.html यूआरएल वाली पोस्ट के लिए स्थायी लिंक /2011/08/bloggers-fresh-new-look.html है.
q
पूरी टेक्स्ट क्वेरी स्ट्रिंग. इससे, आपको ऐसी क्वेरी से मेल खाने वाली पोस्ट के लिए ब्लॉग खोजने में मदद मिलेगी.

क्वेरी पैरामीटर के बारे में ज़्यादा जानने के लिए, Blogger डेटा एपीआई के रेफ़रंस की गाइड और Google डेटा एपीआई के रेफ़रंस की गाइड देखें.

पोस्ट अपडेट की जा रही हैं

किसी मौजूदा ब्लॉग पोस्ट को अपडेट करने के लिए, पहले आपको वह एंट्री मिलती है जिसे आप अपडेट करना चाहते हैं, फिर आप उसमें बदलाव करते हैं. इसके बाद, आप मैसेज के मुख्य हिस्से में अपडेट की गई एंट्री के साथ, यूआरएल में बदलाव करने के लिए, PUT का अनुरोध भेजते हैं. पक्का करें कि आपने जो वैल्यू <id> डाली है वह मौजूदा एंट्री के <id> की वैल्यू से पूरी तरह मेल खाती हो.

बदलाव के यूआरएल को नीचे दी गई एंट्री में हाइलाइट किया गया है:

<entry gd:etag='W/"CUYDSXo8fSp7ImA9WB9UFkU."'>
  <id>tag:blogger.com,1999:blog-blogID.post-postID</id>
  <published>2006-11-08T18:10:00.000-08:00</published>
  <updated>2006-11-08T18:10:14.954-08:00</updated>
  <title type='text'>Quite disagreeable</title>
  <content type='html'>&lt;p&gt;I met Mr. Bingley's friend Mr. Darcy
    this evening. I found him quite disagreeable.&lt;/p&gt;</content>
  <link rel='alternate' type='text/html'
    href='http://blogName.blogspot.com/2006/11/quite-disagreeable.html'>
  </link>
  <link rel='self' type='application/atom+xml'
    href='http://blogName.blogspot.com/feeds/posts/default/postID'>
  </link>
  <link rel='edit' type='application/atom+xml'
    href='http://www.blogger.com/feeds/blogID/posts/default/postID'>
  </link>
  <category scheme="http://www.blogger.com/atom/ns#" term="Mr. Bingley" />
  <category scheme="http://www.blogger.com/atom/ns#" term="Mr. Darcy" />
  <author>
    <name>Elizabeth Bennet</name>
    <email>noreply@blogger.com</email>
    <uri>http://www.blogger.com/profile/profileID</uri>
  </author>
</entry>

अहम जानकारी: यह पक्का करने के लिए कि आने वाले समय में यह सुविधा काम करती है या नहीं, पक्का करें कि जब आप अपडेट की गई कोई एंट्री PUT करते हैं, तो आप उस सभी एक्सएमएल को सुरक्षित रखते हैं जो Blogger से वापस आते समय मौजूद था. इसके अलावा, जब हम नए प्रॉडक्ट लागू करते हैं और फ़ीड में <new-awesome-feature> एलिमेंट शामिल करते हैं, तो आपका क्लाइंट उन्हें वापस नहीं करेगा. साथ ही, आपके उपयोगकर्ता उन्हें देख नहीं पाएंगे. Google डेटा एपीआई क्लाइंट लाइब्रेरी, इन सभी को सही तरीके से हैंडल करती हैं. इसलिए, अगर किसी लाइब्रेरी का इस्तेमाल किया जा रहा है, तो आप पूरी तरह से तैयार हैं.

ध्यान दें: फ़िलहाल, पोस्ट से जुड़े लेखक के डेटा में बदलाव नहीं किया जा सकता.

समस्या का हल करने के लिए सलाह: कुछ फ़ायरवॉल, एचटीटीपी PUT मैसेज को ब्लॉक करते हैं. इस जानकारी के लिए, POST अनुरोध में X-HTTP-Method-Override: PUT हेडर को शामिल किया जा सकता है. ज़्यादा जानकारी के लिए, Google डेटा एपीआई प्रोटोकॉल की बुनियादी बातें वाला दस्तावेज़ देखें.

पोस्ट मिटाना

किसी पोस्ट को हटाने के लिए, उस पोस्ट के URL में एक DELETE अनुरोध भेजें. वही यूआरएल, जिसका इस्तेमाल पोस्ट अपडेट करने के लिए किया जाता है.

समस्या का हल करने के लिए सलाह: कुछ फ़ायरवॉल, एचटीटीपी DELETE मैसेज को ब्लॉक करते हैं. इस जानकारी को पाने के लिए, POST अनुरोध में X-HTTP-Method-Override: DELETE हेडर शामिल किया जा सकता है. ज़्यादा जानकारी के लिए, Google डेटा एपीआई प्रोटोकॉल की बुनियादी बातें वाला दस्तावेज़ देखें.

टिप्पणियां

Blogger के डेटा एपीआई से टिप्पणियां बनाने, वापस पाने, और मिटाने की सुविधा मिलती है. टिप्पणियां अपडेट करना काम नहीं करता है (न ही यह वेब इंटरफ़ेस में उपलब्ध है).

टिप्पणियां बनाना

टिप्पणी पोस्ट करने के लिए, ऐटम <entry> एलिमेंट में इस तरह की जानकारी जोड़ें:

  <entry xmlns='http://www.w3.org/2005/Atom'>
    <title type="text">This is my first comment</title>
    <content type="html">This is my first comment</content>
  </entry>

इस टिप्पणी को प्रकाशित करने के लिए, अपने ऐटम <entry> एलिमेंट को नए POST अनुरोध के मुख्य हिस्से में लिखें. इसके लिए, application/atom+xml कॉन्टेंट टाइप का इस्तेमाल करें. इसके बाद, POST को सही Blogger यूआरएल पर अनुरोध भेजें:

POST https://www.blogger.com/feeds/blogID/postID/comments/default

ध्यान दें: फ़िलहाल, आप सिर्फ़ उस ब्लॉग पर टिप्पणी पोस्ट कर सकते हैं जिसके मालिकाना हक की पुष्टि हो चुकी है.

ध्यान दें: फ़िलहाल, टिप्पणियों के लिए कस्टम लेखक सेट करने की सुविधा मौजूद नहीं है. सभी नई टिप्पणियां इस तरह दिखेंगी, जैसे उन्हें मौजूदा उपयोगकर्ता ने बनाया है.

टिप्पणियां वापस पाई जा रही हैं

किसी खास पोस्ट पर की गई टिप्पणियां पाने के लिए, GET को इस पोस्ट के टिप्पणी फ़ीड के यूआरएल पर भेजें:

GET https://www.blogger.com/feeds/blogID/postID/comments/default

आप ब्लॉग के टिप्पणी फ़ीड का इस्तेमाल करके, सभी पोस्ट की टिप्पणियां भी पा सकते हैं यूआरएल:

GET https://www.blogger.com/feeds/blogID/comments/default

इन अनुरोधों में टिप्पणी फ़ीड दिखता है, जो ऐसा दिखता है:

<?xml version='1.0' encoding='utf-8'?>
<?xml-stylesheet href="http://www.blogger.com/styles/atom.css"
  type="text/css"?>
<feed xmlns='http://www.w3.org/2005/Atom'
    xmlns:openSearch='http://a9.com/-/spec/opensearch/1.1/'
    xmlns:gd='http://schemas.google.com/g/2005'
    gd:etag='W/"CUYMQ348fyp7ImA9WB9UFkU."'>
  <id>tag:blogger.com,1999:blog-blogID.postpostID..comments</id>
  <updated>2007-12-14T17:46:22.077-08:00</updated>
  <title>Comments on Lizzy's Diary: Quite disagreeable</title>
  <link rel='http://schemas.google.com/g/2005#feed'
    type='application/atom+xml'
    href='http://blogName.blogspot.com/feeds/postID/comments/default' />
  <link rel='self' type='application/atom+xml'
    href='http://www.blogger.com/feeds/blogID/postID/comments/default' />
  <link rel='alternate' type='text/html'
    href='http://blogName.blogspot.com/2007/12/quite-disagreeable_5283.html' />
  <author>
    <name>Elizabeth Bennet</name>
    <uri>http://www.blogger.com/profile/profileID</uri>
    <email>noreply@blogger.com</email>
  </author>
  <generator version='7.00'
    uri='http://www.blogger.com'>Blogger</generator>
  <openSearch:totalResults>1</openSearch:totalResults>
  <openSearch:startIndex>1</openSearch:startIndex>
  <entry gd:etag='W/"CUYCQX47eSp7ImA9WB9UFkU."'>
    <id>tag:blogger.com,1999:blog-blogID.post-commentID</id>
    <published>2007-12-14T17:46:00.001-08:00</published>
    <updated>2007-12-14T17:46:00.001-08:00</updated>
    <title>Darcy FTW!</title>
    <content type='html'>Darcy FTW!</content>
    <link rel='edit' type='application/atom+xml'
      href='http://www.blogger.com/feeds/blogID/postID/comments/default/commentID' />
    <link rel='self' type='application/atom+xml'
      href='http://www.blogger.com/feeds/blogID/postID/comments/default/commentID' />
    <link rel='alternate' type='text/html'
      href='http://blogName.blogspot.com/2007/12/quite-disagreeable_5283.html?showComment=1197683160001#ccommentID'
      title='' />
    <author>
      <name>Elizabeth Bennet</name>
      <uri>http://www.blogger.com/profile/profileID</uri>
      <email>liz@gmail.com</email>
    </author>
    <thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0'
      href='http://blogName.blogspot.com/2007/12/quite-disagreeable_5283.html'
      ref='tag:blogger.com,1999:blog-blogID.post-postID'
      source='http://www.blogger.com/feeds/blogID/posts/default/postID'
      type='text/html' />
  </entry>
</feed>

टिप्पणियां मिटाना

किसी टिप्पणी को मिटाने के लिए, उस टिप्पणी का DELETE अनुरोध भेजें. यह यूआरएल, ऊपर दिए गए टिप्पणी फ़ीड में हाइलाइट है.

निर्यात प्रारूप

Blogger, उपयोगकर्ताओं को Blogger एक्सपोर्ट फ़ाइल का इस्तेमाल करके, अपने ब्लॉग को एक्सपोर्ट और इंपोर्ट करने देता है. इस एक्सपोर्ट फ़ाइल में एक ब्लॉग के लिए सभी पोस्ट और टिप्पणियां शामिल हैं. एक्सपोर्ट फ़ाइल का फ़ॉर्मैट ठीक वैसा ही ऐटम फ़ॉर्मैट होता है, जिसके बारे में पोस्ट और टिप्पणियों को पाने वाले सेक्शन में बताया गया है. इस एक्सपोर्ट फ़ाइल में, एक फ़ीड में पोस्ट फ़ीड का कॉन्टेंट और टिप्पणी फ़ीड का कॉन्टेंट होगा.

ब्लॉग के डेटा को एक्सपोर्ट फ़ॉर्मैट में एक्सपोर्ट या इंपोर्ट करने के लिए, आप सेटिंग पेज पर जा सकते हैं. डेटा एपीआई का इस्तेमाल करके, किसी ब्लॉग की एक्सपोर्ट फ़ाइल को फिर से पाने के लिए, इस यूआरएल का इस्तेमाल करें:

GET https://www.blogger.com/feeds/blogID/archive

एक्सपोर्ट फ़ाइल इंपोर्ट करने के लिए, एक्सपोर्ट डेटा के अनुरोध वाले डेटा के साथ इस यूआरएल और POST को कॉन्टेंट टाइप के तौर पर application/atom+xml बनाएं:

POST https://www.blogger.com/feeds/blogID/archive/full

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

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

इस बारे में ज़्यादा जानने के लिए कि Blogger एक्सपोर्ट फ़ाइल में ऐटम फ़ॉर्मैट का इस्तेमाल कैसे करता है, प्रोटोकॉल रेफ़रंस गाइड देखें.

पेज पर सबसे ऊपर जाएं