Pastalablog in はてな

時代はブログ! 日記もあるよ→http://pastak-diary.hatenadiary.com

TwitterのOAuth認証をInactiveされたことに関する諸々のまとめ

先日、BlowsingNowをGoogleChromeに移植した*1のですが、そのときにTwitter OAuth認証のアプリケーション登録がInactive*2になったりしたので、そのときの経緯をまとめておきます。
アプリケーションの仕様によって原因は様々だと思いますが、参考になればと思います。

公開〜Inactiveされるまで

  • 4月4日に開発に着手を始める。このタイミングでOAuthを登録しておいた。
  • 5日に実用出来るレベルになったので、公開し、日付変更線を超えた頃にブログに記事を書く*3

翌日朝Twitterからメールが来る

メール内からリンクされているページ達

http://help.twitter.com/forums/26257/entries/18311
http://twitter.com/apirules
http://help.twitter.com/forums/10711/entries/76915

・・・英語分からないし難しいなり。

Twitterの運営にメールしよう

英語嫌だし、日本法人にメールしてみようと思った*4けど、@showyouに

@pastak 日本法人は無理だろ

http://twitter.com/showyou/status/11667629394

と言われたので、渋々英語でメールをすることにした。
さっき届いたメール内にapi[at]twitter.comなるアドレスが書いてあったので、そこが話を聞いてくれるのだろうと思い、そこにメールしてみる。

メールを書いた

自分の英語があってるとは思えないし、恥ずかしいので晒しませんけど、自分が伝えるつもりだったことを日本語で書くと

なんでsuspectedされて、こんなメールが来た*5のかが理解出来ないから、良かったら教えて欲しいな

英語力を存分に使って表現してみたつもりの文章を送信した。

翌日、返信来た

俺の英語が通じたんだね。やったよ!やったよ、俺。ありがとう英語の先生。
とまぁ感動していたんだけど、何故か2通来ている。

1通目

中身はざっと要約すると

アプリケーションの申請をしたアカウントのメールアドレスから送って欲しいな。
ユーザー名も書いてもう一度送ってくれたら助けられるかもしれない。

みたいな感じだった。

何がダメだったのか

Twitterの登録メアドをpasta0915+[任意の文字列]@gmail.comの形で登録していたのだけど、メールを送ったのはpasta0915@gmail.comだったのがダメだったっぽいです。
気をつけよう!!

2通目

頭の部分を要約すると

ゴメンなさい。さっきのメールは誤りでした。

とのこと。
なんで解決されたが続いて書いてあったんだけど、こういうことらしい

  • アプリケーションの詳細ページのURL*6が書いてあった
  • メールの署名欄にユーザー名が書いてあった

以上のことから本人のアカウントだと認識したとのことだった。
特に1つ目のアプリケーションの概要ページのURLを貼っておいたのが良かったみたいです。*7
ややこしい感じに登録している人はこうしてみると良いかも知れないです。

で、メールの続き。

Please see what you can do with only one API access point per application. If you are using the webpage provided in your registration as a landing page while you build a separate application, I recommend changing your APP URL to one that describes your application

と書いてあった。多分、アプリケーションで認証に使うURLは一つにしてくれということにした。
要はOAuthのリクエストページとtwitterのOAuthのページからリダイレクトしてくるページは同一のURLにしたら良いのだと思うことにした。
これでここのサンプル*8がセッション使ったりしてる理由が分かった。
なるなる。

修正した

今まではOAuthのページに飛ばすためのURLと認証後に返ってくるURLが違っていたのを同じのを使うようにした。
これで勝てる。うん

さっきのtwitterからのメールに返信した

要は直したから、OAuthのsuspecte外してねってお願いした。
次の日の朝*9にsuspectedを外した旨のメールが来た。

まとめ

suspectedされたという事例はhttp://d.hatena.ne.jp/furyu-tei/20100106/1262782765などでも報告されていた。だが、解決方法が始めのメールを見ても、APIとかのルールを守れとだけでどれに違反してるのか分からない上に3種類ものルールが示されていたので、今囘思い切って運営にメールをした。
自分の英語が通じるかが最大の課題だったが、最初のメールに

(I am a high school student in Japan. My English may be wrong. Sorry... )

と書いたのが功を奏したのか、どうにか連絡をとりあう事が出来た。
twitterのサポートチームはもちろんアメリカなので時差の関係もあったが、比較的スムーズに回答をしてくれていたのでとても好印象だった。
最初に高校生だと言ったからかもしれないが、TwitterAPIで困ったことがあったらメールしてみても良いのではないでしょうか。

最終のメールの最後の文がこれだった。

we look forward to seeing what you can do with the Twitter API.

まぁ定形の挨拶文なんだろうけど、頑張ろうと思いました。

*1:https://chrome.google.com/extensions/detail/kmdejhmfbnihbpmiikcjnlmidofngpke

*2:認証不許可状態

*3:http://d.hatena.ne.jp/Pasta-K/20100406/1270483998

*4:http://twitter.com/pastak/status/11667590423

*5:上の画像のスクリーンショットのURLを記述

*6:http://twitter.com/oauth_clients/details/******みたいな形式のやつ。http://twitter.com/appsから一覧が取得出来る

*7:そのページへは本人しかアクセス出来ないので、本人以外はURLも知り得ないからだろう

*8:http://www.sdn-project.net/labo/oauth.html

*9:8日早朝