dentakurouの日記

2011-12-20 twitterのxAuthの申請方法まとめ:2011年12月時点

[]twitterのxAuthの申請方法まとめ:2011年12月時点

最近趣味で作っているデスクトップアプリtwitterへのつぶやき機能を追加してみようと思って、xAuth認証の申請をすることにしました。

何年か前にtwitterBASIC認証をやめてxAuth、OAuthに移行した時にも3本申請したことがあり、その時はメールのやりとりだけの人力で3日で認可されたのですが、現在はアウトソースし手順が変更になっているので、ここにまとめてみます。

 

尚、現在xAuthの申請でググってみたところ2010年頃にxAuthの申請方法をまとめているブログもあるのですが、それともまた変更になってます。ここに書いてあるポイントを押さえて4日で申請が取れました。

 

xAuth申請手順1)デベロッパの登録をする

https://dev.twitter.com/

twitterデベロッパサイトでデベロッパ登録をし、「Create an app」に進みます。

f:id:dentakurou:20111220134746j:image

  

xAuth申請手順2)アプリの登録をする

f:id:dentakurou:20111220134745j:image

ここでは、下記を英語でエントリします。

1)Name(アプリケーション名)

2)Description(アプリケーションの概要)

3)Web Site(アプリケーションの紹介サイト)

これらはすべて必須項目です。Descriptionでは、OAuthではなくxAuthでなければならない理由、たとえば“これはWindows Desktopアプリだ”とか“iPhoneネイティブアプリだ”とかを含めてください。中学生英語で十分です。Web Siteは昔はベクターの作者トップページで審査を通りましたが今はどうかな。今回はまだベクターにアップしていないのと今後の必要性からフリーのWebサイトアプリ公式サイトを作り、そのURLを登録しました。

登録したら画面左上のMy Applicationsでさきほど登録したアプリケーションの情報を開きます。

f:id:dentakurou:20111220134744j:image

(1)にアプリケーション名、(2)にアプリケーションの概要が表示されています。下にスクロールすると、OAuth Settings欄が現れ、(4)Consumer keyとConsumer secretが表示されています。

f:id:dentakurou:20111220134743j:image

さらにスクロールするとYour access token欄が現れ、(5)Access tokenとAccess token secretが表示されます。

f:id:dentakurou:20111220134742j:image

このAccess tokenとAccess token secretは自分のツイッターアカウント専用で、この時点では実質開発専用だと思ってください。

f:id:dentakurou:20111220134740j:image

もし開発するアプリが、ツイッターから読むだけではなくツイートする場合は(3)と(6)のAccess levelがRead and writeになっている必要がありますが、デフォルトはRead onlyになるようです。変更するにはスクロールで上に戻ってSettingsタブを押し、Application Type欄を(7)Read and Writeに変更します。

さらにさきほどのAccess tokenとAccess token secretの下にあるRecreate my access tokenボタンで再生成します。

 

xAuth申請手順3)アプリの開発をする

ツイッタークライアント開発で必要な(4)Consumer keyとConsumer secret、(5)Access tokenとAccess token secretが揃ったので、ツイッタークライアントとなるアプリを開発します。あくまで想像ですが、もしかしたらこのConsumer keyとConsumer secret、Access tokenとAccess token secretで通信した記録が無いとその後の審査で跳ねられるかもしれません。

審査では、アプリが完成していることが重視されますので、開発中はこれ以上の手順に進む必要はありません。(どのみち落とされます)

 

xAuth申請手順4)画像を用意する

アプリができあがったら下記のスクリーンショットを撮って、jpegにし、先ほどのWebサイトでもどこでもいいのでURLで見られるところにアップします。

1)アプリを動かしている画面

2)ツイッターの機能を使っている画面(たとえばツイートする画面)

 

xAuth申請手順5)メールで申請その1をする

下記のような簡単なメールを api@twitter.com に送ります。

-----------

Hello.

 

I'm a developer of '<<さっきのアプリ名>>'.

 

Please apply this app to use xAuth.

<<さっきのDescriptionの文>>

 

My account is @<<デベロッパ登録したアカウント>>.

Application:<<さっきのアプリ名>>

 

Best regards.

-----------

タイトルもPlease apply this app to use xAuth <<さっきのアプリ名>>ぐらいでいいでしょう。このメールはアウトソース先に機械的に処理されるので、ここでこれ以上何を書こうが、スクリーンショットを添付しようが無駄です!

 

xAuth申請手順6)メールで申請その2をする

当日か翌日には#1234567 Twitter Support: update on "<<さっきのメールのタイトル>>"という自動応答メールが返ってきます。そのメールに指定されている下記の項目を記載し、返信します。(この項目は変動しているようですので確認してください)

-----------------

  • Your App ID number (or consumer key)

Consumer key <<アプリの登録時に取得したヤツ>>

  • A link to your application’s website

<<アプリの登録時に登録したURL>>

  • Links to screenshots of your application's user-facing Twitter functionality

<<さっき用意したツイッターの機能を使っている画面へのURL>>

  • Links to screenshots of your application in use

<<さっき用意したアプリを動かしている画面へのURL>>

-----------------

無駄なあいさつとかいりません。要求された項目に沿って返せばいいです。ここでミスると却下されます。私は一度「まだツイート画面は開発中だ」とツイッター機能のリンク欄に書いたら開発中はだめだと却下されました。

また「##- Please type your reply above this line -## 」よりも上に書けとあるので、メーラーのリプライ機能の引用にインラインして書いてはいけません!!

コピペしてメールのド頭に書いてください。

※その他に返信メールへの画像添付はダメとか、もし申請その1で要求された項目を書いていても念を入れて返信しろとか書いてあります。

 

xAuth申請手順7)認可された

翌日か翌々日には自動応答メールが返ってきます。

---------------

Hello,

Thank you for writing in. Your application now has the ability to use xAuth, and our documentation is available here: <<略>>.

Thanks,

Twitter API Policy

----------------------

あっさりしたものです(笑)

 

ここに書いた手順どおりにやれば、何も難しくないことがおわかり頂けたかと思います。

dentakuroudentakurou 2011/12/21 21:20 今年の1月に書かれたどなたかの申請ブログを見つけたのですが、やはり人力でメールやりとりしているので、今みたいにアウトソースして「家政婦のミタ」みたい(笑)なアッサリしたやりとりになったのは最近なのかな?

dentakuroudentakurou 2011/12/22 11:05 2月の記述もまだメールでした。まぁそれは良いとして、大事なことをひとつ忘れていました。
 
申請が通っていない状態で開発しましょと書いたのですが、その時点ではOAuthしかできないので、ウインドウにユーザーIDとパスワードの入力欄とか作ったとしても、仮でAccess tokenとAccess token secretはハードコードしてXAuthではなくOAuthするようにします。
 
でも認可されたら忘れずにコードからAccess tokenとAccess token secretを削除してください!
私、やっちゃいました。ベクターアップ前に気づいてよかった(汗