<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="../../../../../css/rss/feedRss2.xsl" media="screen" type="text/xsl"?>

<rss version="2.0"> 
  <channel> 
    <title>アメばた会議API</title>  
    <link>http://ameblo.jp/amebabbs-api/</link>  
    <description>アメばた会議のAPIについて説明をします。</description>  
    <language>ja</language>  
    <atom:link xmlns:atom="http://www.w3.org/2005/Atom" rel="self" href="http://feedblog.ameba.jp/rss/ameblo/amebabbs-api/rss20.xml" type="application/rss+xml"/>  
    <item> 
      <title>１．はじめに</title>  
      <description><![CDATA[<p>
  本ドキュメントは、アメばた会議 掲示板サービス（以下 アメばた と呼称）において提供するAPI機能の仕様について記載するものとなります。
 
</p>]]></description>  
      <link>http://ameblo.jp/amebabbs-api/entry-10097315989.html</link>  
      <pubDate>Mon, 10 Mar 2008 18:00:00 +0900</pubDate> 
    </item>  
    <item> 
      <title>2.1.APIの種類</title>  
      <description> <![CDATA[ アメばたでは、以下のAPIを提供しています。<br />



<br />






<ul><li><a href="http://ameblo.jp/amebabbs-api/entry-10098478621.html">スレッド</a>
</li>



<li><a href="http://ameblo.jp/amebabbs-api/entry-10098478688.html">レス</a>
</li>



<li><a href="http://ameblo.jp/amebabbs-api/entry-10098478755.html">作成したスレッド</a>
</li>



<li><a href="http://ameblo.jp/amebabbs-api/entry-10098478814.html">レスしたスレッド</a>
</li>



<li><a href="http://ameblo.jp/amebabbs-api/entry-10098480104.html">フリーワード検索</a>
</li>



<li><a href="http://ameblo.jp/amebabbs-api/entry-10098478886.html">盛り上がっているスレッド</a>
</li>



<li><a href="http://ameblo.jp/amebabbs-api/entry-10098478987.html">キーワード</a>
</li>



</ul>
]]> </description>  
      <link>http://ameblo.jp/amebabbs-api/entry-10097316368.html</link>  
      <pubDate>Mon, 10 Mar 2008 17:50:00 +0900</pubDate> 
    </item>  
    <item> 
      <title>2.2.APIのプロトコル</title>  
      <description> <![CDATA[ アメばたの提供するAPIはRESTfulなAPIとなっており、情報へのアクセスは各APIのURLに対しHTTPの各種メソッド（GET、POST、PUT、DELETE）を送信することで行います。<br />


<br />


RESTについては以下のサイトなどをご参照ください。<br />


<a href="http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm" target="_blank">http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm</a>

<br />

<br />

以下、接続例として、<br />

スレッドAPIに対してGETメソッドにてリクエストを送ったケースを例示します。<br />




<blockquote>GET /xml/thread/thread HTTP/1.1<br />


Host: api.amebabbs.ameba.jp<br />


<br />


<br />


HTTP/1.1 200 OK<br />


Server: Apache-Coyote/1.1<br />


Cache-Control: max-age=60<br />


Content-Type: text/xml;charset=UTF-8<br />


Content-Language: ja-JP<br />


Transfer-Encoding: chunked<br />


Date: Fri, 16 May 2008 07:10:54 GMT<br />


<br />


<br />


&lt;data&gt;<br />


&lt;totalcount&gt;1954&lt;/totalcount&gt;<br />


&lt;offset&gt;0&lt;/offset&gt;<br />


&lt;length&gt;10&lt;/length&gt;<br />


&lt;thread&gt;<br />


<br />


&lt;/thread&gt;</blockquote>
]]> </description>  
      <link>http://ameblo.jp/amebabbs-api/entry-10097317130.html</link>  
      <pubDate>Mon, 10 Mar 2008 17:40:00 +0900</pubDate> 
    </item>  
    <item> 
      <title>2.3.API使用時の文字コード</title>  
      <description> <![CDATA[ アメばた API で採用している文字コードはUTF-8 になります。<br />


API へのリクエストの際に使用する文字コード、ならびにAPI から返却されるデータの文字コード、ともにUTF-8 での送受信を行います。<br />


API リクエストの際に、URI にクエリーストリングとして日本語などダブルバイト文字列を付加したい場合は、UTF-8 の文字列をURL エンコーディングした値を渡すようにしてください。<br />


<br />


例：アメばた会議<br />


⇒<strong>%E3%82%A2%E3%83%A1%E3%81%B0%E3%81%9F%E4%BC%9A%E8%AD%B0</strong><br />
]]> </description>  
      <link>http://ameblo.jp/amebabbs-api/entry-10097317477.html</link>  
      <pubDate>Mon, 10 Mar 2008 17:30:00 +0900</pubDate> 
    </item>  
    <item> 
      <title>2.4.APIから返却されるデータのフォーマット</title>  
      <description> <![CDATA[ アメばたAPI から返却されるデータのフォーマットは<span style="font-weight: bold;">RSS形式</span>、<span style="font-weight: bold;">XML形式</span>、もしくは<span style="font-weight: bold;">JSONP形式</span>になります。<br />

RSSはRSS2.0に準拠しています。<br />

XMLならびにJSONPのデータ項目はアメばた独自のものとなります。<br />
]]> </description>  
      <link>http://ameblo.jp/amebabbs-api/entry-10097321972.html</link>  
      <pubDate>Mon, 10 Mar 2008 17:20:00 +0900</pubDate> 
    </item>  
    <item> 
      <title>2.5.個人認証について</title>  
      <description> <![CDATA[ 本人性の確認が必要なAPIの操作を行う場合は、アメばたシステムの個人認証を通過する必要があります。<br />


アメばたでは、WSSE認証により、本人性の確認を行います。<br />


<br />


WSSE認証では、URIへのリクエストの際に<br />


HTTPのリクエストヘッダ中に「X-WSSE」ヘッダを付与することで<br />


リクエスト元のアイデンティティ情報を送信します。<br />


<br />


X-WSSEのフォーマットは以下のようになります。（※改行は含まれません。すべて一行で記載）<br />




<blockquote>X-WSSE: UsernameToken Username=&quot;xxxxxxxxxx&quot;, PasswordDigest=&quot;xxxxxxxxxxxxxxxxxxxxx&quot;, Nonce=&quot;xxxxxxxxxx&quot;, Created=&quot;xxxxxxxxxx&quot;</blockquote>




<dl><dt>Username：</dt>


<dd>アメーバID</dd>


</dl>




<dl><dt>Nonce：</dt>


<dd>セキュリティトークン</dd>


</dl>




<dl><dt>Created：</dt>


<dd>セキュリティトークンが作成された日時。フォーマットはW3CDTFに準拠。<br />


例：2008-05-16T07:36:15Z</dd>


</dl>




<dl><dt>PasswordDigest：</dt>


<dd>アメーバIDに対応したパスワードを、MD5によりハッシュ化した値と<br />


nonceの値と<br />


作成日の文字列を連結し</dd>


<dd>それらの文字列をSHA1によりハッシュ化した値をBase64エンコードした値になります。<br />


</dd>


</dl>


 以下に、アメばた会議におけるX-WSSEヘッダの生成方法について<br />


擬似コードにて例示します。<br />




<blockquote>String username = amebaId; //アメーバID<br />


String password = md5(plainPassword); //平文のパスワードをMD5アルゴリズムでハッシュ化<br />


String created = created();//セキュリティトークン作成日。フォーマットはW3CDTFに準拠<br />


String noce = nonce();//セキュリティトークン。Base64エンコードされている<br />


String passwordDigest = Base64.encode(sha1(Base64.decode(nonce) . created . password)) ;<br />


<br />


String xwsseHeader = &quot;UsernameToken Username=\&quot;&quot; + username + &quot;\&quot; , PasswordDigest=\&quot;&quot; + passwordDigest + &quot;\&quot; ,Nonce=\&quot;&quot; + nonce + &quot;\&quot; ,Created=\&quot;&quot; + created + &quot;\&quot;;<br />


<br />


request.addHeader(&quot;X-WSSE&quot;, xwsseHeader);<br />


</blockquote>


<br />


<br />
]]> </description>  
      <link>http://ameblo.jp/amebabbs-api/entry-10097322688.html</link>  
      <pubDate>Mon, 10 Mar 2008 17:10:00 +0900</pubDate> 
    </item>  
    <item> 
      <title>3.1.返却データフォーマットの確認</title>  
      <description> <![CDATA[ <dl><dt style="font-weight: bold;"><span style="font-weight: normal;">以下のように、</span></dt>



<dt style="font-weight: bold;"><span style="font-weight: normal;">各APIのアドレスをブラウザで表示することで、データフォーマットの確認をすることができます。</span><br />



</dt>



</dl>



（下記は<a href="http://ameblo.jp/amebabbs-api/entry-10098478621.html">スレッドAPI</a>
のアドレスになります）<br />



<br />






<dl><dt style="font-weight: bold;">RSS2.0</dt>



<dd><a href="http://api.amebabbs.ameba.jp/rss/thread/thread">http://api.amebabbs.ameba.jp/rss/thread/thread</a>



<br />



</dd>



</dl>






<dl><dt style="font-weight: bold;">XML</dt>



<dd><a href="http://api.amebabbs.ameba.jp/xml/thread/thread">http://api.amebabbs.ameba.jp/xml/thread/thread</a>



</dd>



</dl>






<dl><dt style="font-weight: bold;">JSONP</dt>



<dd><a href="http://api.amebabbs.ameba.jp/jsonp/thread/thread">http://api.amebabbs.ameba.jp/jsonp/thread/thread</a>



</dd>



</dl>
]]> </description>  
      <link>http://ameblo.jp/amebabbs-api/entry-10098478128.html</link>  
      <pubDate>Mon, 10 Mar 2008 16:30:00 +0900</pubDate> 
    </item>  
    <item> 
      <title>3.2.POST/PUT/DELETEの際のデータ送信方法</title>  
      <description> <![CDATA[ POST/PUT/DELETEメソッドにて<br />



リソースのデータ更新を行う際は<br />



リクエストボディにXMLのデータを含めて送信をしてください。<br />



<br />



例：スレッド作成時<br />






<blockquote>POST /xml/thread/thread HTTP/1.1<br />



X-WSSE: UsernameToken Username=&quot;test&quot;, PasswordDigest=&quot;test&quot;, Nonce=&quot;test&quot;, Created=&quot;2008-05-20T07:10:30Z&quot;<br />



Host: api.amebabbs.ameba.jp<br />



Content-Length: 190<br />



Cache-Control: no-cache<br />



<br />



<br />



&lt;?xml version=&quot;1.0&quot;?&gt;<br />



&lt;thread&gt;<br />



&lt;category&gt;1&lt;/category&gt;<br />



&lt;showName&gt;test&lt;/showName&gt;<br />



&lt;title&gt;test&lt;/title&gt;<br />



&lt;showProfileFlg&gt;1&lt;/showProfileFlg&gt;<br />



&lt;description&gt;test&lt;/description&gt;<br />



&lt;/thread&gt;</blockquote>



<br />



例：レス投稿時<br />






<blockquote>POST /xml/thread/res/OTo060dn7FEjW-pz583SAv/ HTTP/1.1<br />



Host: dev.amebabbs.ameba.jp<br />



Content-Length: 86<br />



Cache-Control: no-cache<br />



<br />



<br />



&lt;?xml version=&quot;1.0&quot;?&gt;<br />



&lt;comment&gt;<br />



&lt;text&gt;test&lt;/text&gt;<br />



&lt;user&gt;test&lt;/user&gt;<br />



&lt;/comment&gt;</blockquote>
]]> </description>  
      <link>http://ameblo.jp/amebabbs-api/entry-10098499221.html</link>  
      <pubDate>Mon, 10 Mar 2008 16:05:00 +0900</pubDate> 
    </item>  
    <item> 
      <title>3.3.リクエストに対するHTTPステータスの振る舞い</title>  
      <description> <![CDATA[ アメばたで提供するAPIから返却されるHTTPレスポンスは<br />
以下の内容に基づいて返却されます。<br />
<br />
<br />
APIを使用したアプリケーションでのエラーハンドリングの際にご参考ください。<br />
<table><tbody><tr><th>ステータスコード</th>
<th>意味</th>
<th>振る舞い</th>
</tr>
<tr><td>200</td>
<td>OK</td>
<td>正常</td>
</tr>
<tr><td>201</td>
<td>Created</td>
<td>新規リソースが追加された。アメばたではスレッドのPOSTの際のみ返却。</td>
</tr>
<tr><td>401</td>
<td>Unauthorized</td>
<td>本人性の確認が必要なリソースへのアクセス時にユーザ認証に失敗した場合返却。</td>
</tr>
<tr><td>403</td>
<td>Forbidden</td>
<td>渡されたリクエスト内容に起因して処理続行不可能なエラーが発生した場合に返却。主に、パラメータのValidationエラーなど。</td>
</tr>
<tr><td>404</td>
<td>Not Found</td>
<td>指定したリソースが存在しない場合に返却。</td>
</tr>
<tr><td>405</td>
<td>Method Not Allowed</td>
<td>許可されていないメソッドにてリソースにアクセスした場合に返却。</td>
</tr>
<tr><td>500</td>
<td>Internal Server Error</td>
<td>システム上でエラーが発生した場合に返却。</td>
</tr>
<tr><td>503</td>
<td>Service Unavailable</td>
<td>メンテナンスなどでサービスが一時的に停止している場合に返却。</td>
</tr>
</tbody>
</table>
<br />
<br />
]]> </description>  
      <link>http://ameblo.jp/amebabbs-api/entry-10098900268.html</link>  
      <pubDate>Mon, 10 Mar 2008 16:00:00 +0900</pubDate> 
    </item>  
    <item> 
      <title>4.1.スレッドAPI</title>  
      <description> <![CDATA[ <dl><dt>概要</dt>

<dd>スレッドの一覧情報の取得、ならびにスレッド作成・変更・削除を行うAPIです</dd>

</dl>

<br />


<dl><dt>URL</dt>

<dd>http://api.amebabbs.ameba.jp/rss/thread/thread<br />

http://api.amebabbs.ameba.jp/xml/thread/thread<br />

http://api.amebabbs.ameba.jp/jsonp/thread/thread<br />

</dd>

</dl>

<br />


<dl><dt>JSONPコールバック関数名</dt>

<dd>thread_thread<br />

</dd>

</dl>

<br />


<dl><dt>許可メソッド</dt>

<dd><table><tbody><tr><th>フォーマット</th>

<th>GET</th>

<th>POST</th>

<th>PUT</th>

<th>DELETE</th>

</tr>


<tr><td>RSS</td>

<td>○</td>

<td>－</td>

<td>－</td>

<td>－</td>

</tr>


<tr><td>XML</td>

<td>○</td>

<td>◎</td>

<td>◎</td>

<td>◎</td>

</tr>


<tr><td>JSONP</td>

<td>○</td>

<td>◎</td>

<td>◎</td>

<td>◎</td>

</tr>

</tbody>

</table>

<br />

※◎はWSSE認証による本人性の確認が必要な処理です<br />

</dd>

</dl>

<br />


<dl><dt>リクエストパラメータ</dt>

<dd><table><tbody><tr><th>項目</th>

<th>GET</th>

<th>POST</th>

<th>PUT</th>

<th>DELETE</th>

<th>必須</th>

<th>備考</th>

</tr>


<tr><td>offset</td>

<td>○</td>

<td>－</td>

<td>－</td>

<td>－</td>

<td>－</td>

<td>データの取得開始位置。0もしくは未指定の場合は最初から。10の場合は10件目からデータを取得</td>

</tr>


<tr><td>length</td>

<td>○</td>

<td>－</td>

<td>－</td>

<td>－</td>

<td>－</td>

<td>データの取得サイズ。デフォルトは10件</td>

</tr>


<tr><td>range</td>

<td>○</td>

<td>－</td>

<td>－</td>

<td>－</td>

<td>－</td>

<td>データの取得範囲。単位は時間。144を指定すると24時間×７＝直近一週間以内に作成されたスレッドを取得する</td>

</tr>


<tr><td style="vertical-align: top;">order<br />

</td>

<td>○</td>

<td>－</td>

<td>－</td>

<td>－</td>

<td>－</td>

<td>データの並び順番。asc-昇順/desc-降順。デフォルトは降順</td>

</tr>


<tr><td style="vertical-align: top;">target<br />

</td>

<td>○</td>

<td>－</td>

<td>－</td>

<td>－</td>

<td>－</td>

<td>データをソートする対象のID。0-作成日順/1-レス更新順/2-レス数順/3-アクセス数順。デフォルトは１（レス更新順）</td>

</tr>


<tr><td style="vertical-align: top;">key<br />

</td>

<td>（○）</td>

<td>－</td>

<td>○</td>

<td>○</td>

<td>○</td>

<td>スレッド画面のURLに含まれている、スレッドを一意に判断するためのキー文字列。スレッドの更新（PUT）、削除（DELETE）の場合は必須</td>

</tr>


<tr><td style="vertical-align: top;">category<br />

</td>

<td>○</td>

<td>○<br />
</td>

<td>○</td>

<td>－</td>

<td>－</td>

<td>カテゴリーID。<a href="http://ameblo.jp/amebabbs-api/entry-10098562860.html">カテゴリーID一覧についてはこちらのページ</a>

を参照ください<br />

</td>

</tr>


<tr><td style="vertical-align: top;">title<br />

</td>

<td>－<br />

</td>

<td>○<br />

</td>

<td>○</td>

<td>－</td>

<td>○</td>

<td>スレッドタイトル</td>

</tr>


<tr><td style="vertical-align: top;">description<br />

</td>

<td>－</td>

<td>○<br />

</td>

<td>○</td>

<td>－</td>

<td>○</td>

<td>スレッド説明文</td>

</tr>


<tr><td style="vertical-align: top;">showName<br />

</td>

<td>－</td>

<td>○</td>

<td>○</td>

<td>－</td>

<td>○</td>

<td>スレッド投稿者（スレ主名）として表示する名前</td>

</tr>


<tr><td style="vertical-align: top;">showProfileFlg<br />

</td>

<td>－</td>

<td>○</td>

<td>○</td>

<td>－</td>

<td>○</td>

<td>アメーバIDを公開する/しないのフラグ。0-非公開/1-公開</td>

</tr>

</tbody>

</table>

</dd>

</dl>

<br />


<dl><dt>レスポンスパラメータ</dt>

<dd><table><tbody><tr><th>項目</th>

<th>備考</th>

</tr>


<tr><td>totalCount</td>

<td>対象となるデータ総件数</td>

</tr>


<tr><td>offset</td>

<td>データ取得開始位置</td>

</tr>


<tr><td>length</td>

<td>データ件数</td>

</tr>


<tr><td>url</td>

<td>スレッドURL</td>

</tr>


<tr><td style="vertical-align: top;">categoryId<br />

</td>

<td style="vertical-align: top;">カテゴリーID<br />

</td>

</tr>


<tr><td style="vertical-align: top;">amebaId<br />

</td>

<td style="vertical-align: top;">投稿者アメーバID。ID非公開にしているユーザの場合、空になる。<br />

</td>

</tr>


<tr><td style="vertical-align: top;">threadKey<br />

</td>

<td style="vertical-align: top;">スレッドを一意で特定するキー文字列<br />

</td>

</tr>


<tr><td style="vertical-align: top;">title<br />

</td>

<td style="vertical-align: top;">スレッドタイトル<br />

</td>

</tr>


<tr><td style="vertical-align: top;">description<br />

</td>

<td style="vertical-align: top;">スレッド説明文<br />

</td>

</tr>


<tr><td style="vertical-align: top;">viewCount<br />

</td>

<td style="vertical-align: top;">表示回数<br />

</td>

</tr>


<tr><td style="vertical-align: top;">resCount<br />

</td>

<td style="vertical-align: top;">レス件数<br />

</td>

</tr>


<tr><td style="vertical-align: top;">lockFlg<br />

</td>

<td style="vertical-align: top;">ロック済みかどうかのフラグ。ロックされているスレッドは閲覧ができない。1-ロック済み<br />

</td>

</tr>


<tr><td style="vertical-align: top;">archiveStatus<br />

</td>

<td style="vertical-align: top;">未使用<br />

</td>

</tr>


<tr><td style="vertical-align: top;">archiveDomain<br />

</td>

<td style="vertical-align: top;">未使用<br />

</td>

</tr>


<tr><td style="vertical-align: top;">registDatetime<br />

</td>

<td style="vertical-align: top;">スレッド作成日時。RFC822形式<br />

</td>

</tr>


<tr><td style="vertical-align: top;">editDatetime<br />

</td>

<td style="vertical-align: top;">スレッド情報最終更新日時。RFC822形式<br />

</td>

</tr>


<tr><td style="vertical-align: top;">lastResDatetime<br />

</td>

<td style="vertical-align: top;">レス最終更新日時。RFC822形式。<br />

</td>

</tr>


<tr><td style="vertical-align: top;">deleteFlg<br />

</td>

<td style="vertical-align: top;">削除フラグ。1-削除済み<br />

</td>

</tr>

</tbody>

</table>

</dd>

</dl>

<br />
]]> </description>  
      <link>http://ameblo.jp/amebabbs-api/entry-10098478621.html</link>  
      <pubDate>Mon, 10 Mar 2008 15:55:00 +0900</pubDate> 
    </item> 
  </channel> 
</rss>
