4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ゼロからはじめるTwitter API v2 〜 開発者登録からはじめてのリクエストまで 〜

Last updated at Posted at 2022-10-26

背景

Twitter API v2は、本記事執筆時点のTwitter APIの最新バージョンです。Twitter開発者プラットフォームは、2020年6月にTwitter API v2のアーリーアクセス版を公開し、2021年11月にTwitter API v2の安定バージョンをリリースしました。

本稿では、Twitter開発者プラットフォームの登録から、Twitter API v2にはじめてのリクエストを送るまでの方法をご紹介します。

目標

このチュートリアルを最後まで進めると、Twitter開発者プラットフォームの登録方法から、Twitter API v2への基本的なリクエストの送信方法が学べます。

Twitter API v2へのリクエストの送信方法は、以下の4種類をご紹介します。

  • cURL
  • Twitter API v2サンプルコード
  • Postman
  • Twitter API v2 SDK・ライブラリ

必要項目

このチュートリアルを最後まで進めるには、以下の項目が必要です。

  • Twitterアカウント
  • APIの基礎知識

ステップ1:開発者登録する

Twitter API v2を使用するには、Twitter開発者プラットフォームで開発者登録をする必要があります。開発者登録は、基本情報の入力のみで、申請理由などを長文で記入する必要はありません。

Twitter開発者プラットフォームの登録ページの [Sign up] をクリックします。

まだTwitterにログインしていない場合は、ログインします。

開発者登録フォームに必要事項を入力します。

drawing

Twitterアカウントにメールアドレスが連携されていない場合は、[Add email] から追加します。

必要事項が入力できたら、[Let’s do this] をクリックします。

利用規約が表示されます。利用規約を確認し、同意ボックスにチェックを入れます。[Submit] をクリックします。

Twitterアカウントに連携したメールアドレスに、確認メールが送信されます。届いたメールを開き、[Confirm your email]をクリックしてメールアドレスを認証します。

drawing

これで、開発者登録が完了しました。次に、アプリケーションを作成します。

ステップ2:アプリケーションを作成する

アプリケーションの命名画面が表示されます。アプリケーション名を入力し、[Get keys] をクリックします。

drawing

Twitter APIの利用に必要なアプリケーションの認証情報が表示されます。

認証情報は、一度しか表示されませんので、安全な場所に保管してください。認証情報は他者に共有しないでください。

drawing

各認証情報の概要は以下のとおりです。

  • API Key(APIキー)
    アプリケーションのユーザー名にあたる情報。
  • API Key Secret(APIキーシークレット)
    アプリケーションのパスワードにあたる情報。APIキーと、シークレットをもとに、アプリケーションを判別し、APIを利用する権限を持っているかを確認します。
  • Bearer Token(ベアラートークン)
    Twitter APIを安全に利用するための、アプリケーション単独認証トークン。

これで、リクエストを送信する準備ができました。

ステップ3:HTTPリクエストを送信する

本稿では、ツイートを、ツイートIDをもとに取得できる、Tweets lookupエンドポイントにリクエストを送信します。

リクエストの送信方法を、4種類ご紹介します。

1. cURLを使用する

一つ目は、ターミナルでcURLを使用してリクエストを送信する方法です。以下のコード例は、@TwitterDevJPが発行したツイート(ツイートID:1577176033891332096)の情報を取得する方法を示しています。 {ベアラートークン}を、ステップ2で取得したベアラートークンに置き換えて、ターミナルで以下のコードを実行します。

curl -H "Authorization: Bearer {ベアラートークン}" \
"https://api.twitter.com/2/tweets/1577176033891332096"

以下のようなレスポンスが返ってきます。

{
   "data": {
       "edit_history_tweet_ids":[
           "1577176033891332096"
       ],
       "id":"1577176033891332096",
       "text":"お待たせしました!ツイート編集について、Twitter API v2からのメタデータの読取りが可能になりました。編集済みのツイートや編集履歴、関連するフィールドの値が取得できます。 https://t.co/PhBUSH1at0"
   }
}

ぜひ、Tweets lookupエンドポイントのAPIリファレンスページを参照して、ツイート作者に関する情報や、ツイートの言語、ツイートに含まれるメディアやURLなど、さらに詳しいデータを取得してみてください。

たとえば、ツイートの言語は、以下のようにエンドポイントにtweet.fields=langを追加して取得できます。

curl -H "Authorization: Bearer {ベアラートークン}" \
"https://api.twitter.com/2/tweets/1577176033891332096?tweet.fields=lang"

2. Twitter API v2サンプルコードを使用する

Twitter開発者プラットフォームがGitHubで公開している、言語ごとのサンプルコード集を使用してリクエストを送信することも可能です。本稿執筆時点では、JavaScript、Python、Ruby、Javaのサンプルを提供しています。

本稿では、一例として、JavaScript (Node.js)でTweet lookupエンドポイントにリクエストを送信する方法をご紹介します。

ターミナルで、任意のディレクトリで以下のコマンドを実行して、サンプルリポジトリをクローンし、リポジトリに移動します。

git clone https://github.com/twitterdev/Twitter-API-v2-sample-code.git
cd Twitter-API-v2-sample-code

以下のコマンドで、必要なライブラリをインストールします。

npm install needle

ベアラートークンを環境変数として設定します。ターミナルで以下のコマンドの{ベアラートークン}を、前のステップで取得したベアラートークンに置き換えて、実行します。

export BEARER_TOKEN='{ベアラートークン}'

リポジトリのTweet lookupフォルダに移動し、get_tweets_with_bearer_token.js ファイルを実行します。

cd Tweet-Lookup
node get_tweets_with_bearer_token.js

ファイルに指定されたツイートに関する以下のようなデータが、レスポンスとして返ってきます。

{
    data: [
      {
        id: '1278747501642657792',
        edit_history_tweet_ids: [ '1278747501642657792' ],
        lang: 'en',
        text: "It's been a year since Twitter's Developer Labs launched.\n" +
          '\n' +
          "As we build towards the next generation of the #TwitterAPI (coming VERY soon), see what we've learned and changed along the way. https://t.co/WvjuEWCa6G",
        author_id: '2244994945'
      },
      ...一部省略
    ]
}

3. Postmanを使用する

Twitter API v2にリクエストを送信する方法として、Postmanも有効です。Postmanは、GUIを使ってリクエストURL、パラメータ、ヘッダーなどを指定してHTTPリクエストを行うことができるツールです。

本稿では、Tweet lookupエンドポイントにPostmanを通してリクエストを送信する方法をご紹介します。

まだPostmanでアカウント登録していない場合は、登録します。

Twitter API v2公式コレクションのフォークを作成します。
Twitter API v2コレクションから、[Tweet Lookup] > [Single Tweet]を選択します。

image9.png

[Path variables]のidキーの値に、取得したいツイートのIDを指定します。

image8.png

[Authorization] タブを選択し、[Type]をBearer Tokenに変更します。[Token]に、前のステップで取得したベアラートークンを入力します。

image2.png

[Send]をクリックします。

image1.png

以下のようなレスポンスが返ってきます。

image7.png

4. Twitter API v2 SDKやライブラリを使用する

Twitter API v2には、多くのSDKやライブラリが存在します。Twitter API v2のSDKやライブラリは、Twitter開発者ドキュメントの「Tools and libraries」 から確認できます。

本稿執筆時点で、以下の2点のTwitter公式SDK(ベータ版)が存在します。

また、その他にも開発者コミュニティの皆さまが構築してくださったTwitter API v2 SDKが多数掲載されています。ぜひ、お使いのプログラミング言語のライブラリをお試しください。

最後に

本稿では、Twitter開発者プラットフォームの登録方法から、Twitter API v2へのはじめてのリクエスト送信方法までをご紹介しました。

Twitter API v2は、日々開発者の皆さまのフィードバックをもとに、進化を続けています。今後のプロダクトロードマップも公開しておりますので、ぜひご確認ください。

Twitter開発者プラットフォームロードマップ

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?