重要: これはこのページの古いバージョンです。最新バージョンについては、左側のナビゲーション バーのリンクを使用してください。
このドキュメントでは、Blogger Data API の未加工プロトコル(XML と HTTP)に関する詳細なリファレンス ドキュメントを提供します。
このドキュメントには、プログラミング言語のクライアント ライブラリに関する情報は含まれていません。クライアント ライブラリのリファレンス情報については、デベロッパー ガイドのプログラミング言語固有のセクションにあるリンクをご覧ください。
目次
オーディエンス
このドキュメントは、Blogger とやり取りできるクライアント アプリケーションを作成するプログラマを対象としています。
これはリファレンス ドキュメントであり、デベロッパー ガイドで説明されているコンセプトと、Google Data APIs プロトコルの基本的な考え方を理解していることを前提としています。
Blogger のフィードタイプ
Blogger では、完全なフィードと概要フィードという 2 つの方法でブログ コンテンツをフィードに表示できます。完全なフィードにはブログ投稿全体が含まれますが、要約フィードには各投稿の短いスニペットのみが含まれます。
ブログのオーナーは、GUI 設定を使用して、ブログがシンジケーターとアグリゲータに完全なフィードと概要フィードのどちらを提供するかを指定できます。
クライアント アプリが認証されていないフィードのリクエストを送信すると、ブログ所有者が指定したタイプのフィードが受信されます。
ただし、クライアント アプリが認証済みリクエストを送信すると、ブログ所有者が指定したものに関係なく、常に完全なフィードが受信されます。
Blogger のクエリ パラメータ リファレンス
Blogger Data API は、標準の Google Data API クエリ パラメータのほとんどをサポートしています。
Blogger では、q
(テキスト検索)パラメータと author
パラメータはサポートされていません。
orderby
パラメータが updated
に設定されていない限り、updated-min
クエリ パラメータと updated-max
クエリ パラメータは無視されます。たとえば、次の URL は、2008 年 3 月 16 日から 2008 年 3 月 24 日までに更新されたすべてのブログ投稿を取得します。
http://www.blogger.com/feeds/blogID/posts/default?updated-min=2008-03-16T00:00:00&updated-max=2008-03-24T23:59:59&orderby=updated
Blogger 要素のリファレンス
Blogger Data API は標準の Atom 要素のみを使用します。詳しくは、Atom 1.0 シンジケーション形式の仕様と Atom パブリッシング プロトコルをご覧ください。
このセクションの残りの部分では、Blogger での標準要素の使用に関するいくつかの注意事項について説明します。
下書きのエントリ
下書きの投稿エントリは、Atom パブリッシング プロトコル ドキュメントで定義されている <app:draft>
拡張要素を使用してマークされます。下記は下書きエントリの例です。
<entry xmlns:app='http://purl.org/atom/app#'> ... <app:control> <app:draft>yes</app:draft> </app:control> </entry>
<draft>
要素が指定されていない場合、エントリは下書きではありません。
公開日と更新日
標準の Atom <published>
要素で指定されたタイムスタンプは、ユーザーが Blogger GUI で設定できる「投稿日」に対応しています。
クライアントが新しいエントリを作成するときに、クライアントが <published>
の値を指定しなかった場合、Blogger はエントリの投稿日を現在のサーバー時間に設定します。クライアントがエントリを編集しても <published>
値を指定しないと、Blogger はエントリの投稿日を変更しません。
ただし、クライアントがエントリの作成または編集時に <published>
要素の値を指定すると、Blogger はエントリの投稿日を指定された値に設定します。これは、別のブログ システムから古いエントリをインポートする(元の作成日を保持したまま)などのタスクに役立ちます。
Blogger では、標準の Atom <updated>
要素を使用して、エントリが最後に変更された日時を指定します。クライアントは <updated>
値を制御できません。クライアントがエントリを投稿または編集するたびに、Blogger はエントリの最終更新日を常に現在のサーバー時間に設定します。
標準の Google Data API published-min
、published-max
、updated-min
、updated-max
クエリ パラメータを使用して、<published>
値または <updated>
値に基づいてエントリをリクエストできます。ただし、更新日のクエリについては、Blogger クエリ パラメータのリファレンスをご覧ください。
コメントを投稿にリンクする
Blogger のエクスポート形式では、1 つの Atom フィード ドキュメントに投稿エントリとコメント エントリの両方が含まれます。2 種類のエントリを区別するために、Blogger は <atom:category>
要素を使用します。この要素には、エントリが投稿とコメントのどちらに該当するかを示す term
パラメータがあります。
さらに、コメント エントリを、それが属する投稿エントリにリンクするには、Atom スレッド処理拡張機能を使用します。次の例では、コメント エントリの <thr:in-reply-to>
要素は、ref
パラメータの投稿エントリ ID を使用して投稿を参照します。また、href
パラメータを使用して投稿の HTML URL にもリンクします。
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:thr="http://purl.org/syndication/thread/1.0"> ... <-- A blog post entry --> <entry> <id>tag:blogger.com,1999:blog-blogID.post-postID</id> <content type="html">This is my first post</content> <link rel="alternate" type="text/html" href="http://blogName.blogspot.com/2007/04/first-post.html"> </link> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/blogger/2008/kind#post"/> ... </entry> <-- A comment to the blog post entry --> <entry> <id>tag:blogger.com,1999:blog-blogID.post-postID.comment-commentID</id> <content type="html">This is my first commment</content> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/blogger/2008/kind#comment"/> <thr:in-reply-to href="http://blogName.blogspot.com/2007/04/first-post.html" ref="tag:blogger.com,1999:blog-blogID.post-postID" type="text/html"/> ... </entry> </feed>