はじめに
Twitter APIを使用すると、特定のツイートに関連付けられた一連のメトリックを表示して、ツイートの本質的なパフォーマンスを分析できます。これは、特定のツイートのパフォーマンスについて、データに基づいた意思決定を行う際に役立ちます。Tweet lookupは、ツイートまたはツイートのグループに関する情報を返すGETメソッドです。メトリックは、Tweet lookupエンドポイントの一部として利用できます。
このチュートリアルでは、以下の項目について説明します。
- 解決しようとする疑問を決定する
- Twitter APIに接続して認証する
- 必要なデータを決定してGETリクエストを行う
- 解決しようとする疑問に答えるために必要なロジックを追加する
前提条件
- 承認済み開発者アカウントを用意し、新しい開発者ポータルエクスペリエンスをアクティブにしておく必要があります。アクセスには、開発者ポータルで作成されたプロジェクトにアタッチされた開発者アプリのアクティブキーとトークンを使用します。
Twitter開発者ポータルのアプリのベアラートークン。
考慮すべき手順
手順1:解決しようとする疑問を決定する
ツイートパフォーマンスを測定するには、データを分析する一方、時間を取って、何を調べるかを決定する必要がある場合があります。これには、証明または反証しようとしている仮説、より深く調べようとしている問題、あるいは答えを知りたいと思っている疑問等が考えられます。
疑問には、たとえば以下のようなものがあります。
- センチメントスコアがポジティブなツイートのパフォーマンスは、センチメントスコアがネガティブなツイートのものよりも優れているか?
- どのような言葉が最もオーディエンスの心に響いているか?
- 自分の最近のツイートのパフォーマンスは、個人の平均を下回っているか、上回っているか?
- 組織の年間ツイートのトップ10はどれか?
手順2:Twitter APIに接続して認証する
Twitter APIに接続するには、データを取得する前に認証情報を渡して認証を受ける必要があります。そのためには、OAuthをサポートするライブラリを使用する必要があります。
認証情報は安全な方法で保存しておく必要があります。環境変数を使用したり、GitHub上の.gitignoreファイルに保存できる構成ファイルを設定したりするなどの選択肢があります。詳細については、認証とセキュリティのベストプラクティスを参照してください。
手順3:必要なデータを決定してGETリクエストを行う
GETリクエストで返されるデータは、リクエストに含めるフィールドと拡張によって決まります。詳細を知りたいツイートの数を検討して、それが1つのツイートなのか複数のツイートなのかを判断する必要があります。公開メトリックはすべてのツイートで利用可能なのに対し、非公開メトリックは自分のアカウントまたは認証済みアカウントでのみ利用可能です。公開フィールドと非公開フィールドは、Twitterで定期的に投稿および閲覧されているオーガニックメトリックと、広告キャンペーンの一部として投稿および閲覧されているプロモーションメトリックの合計を返します。また、メディアとエンゲージメントに関する公開または非公開のメトリックを探している場合は、探しているデータがどのフィールドにあるかを確認してください。利用可能なメトリックには、インプレッション、リツイート、引用ツイート、いいね、URLリンクのクリック数、ユーザープロフィールのクリック数、返信数、動画再生数、動画再生の四分位データなどがあります。利用可能なものの詳細については、Tweet lookupのAPIリファレンスガイドを参照してください。
1つのツイートに対するcURLリクエストの例は次のとおりです。
curl --request GET 'https://api.x.com/2/tweets/1263150595717730305?tweet.fields=public_metrics' --header 'Authorization: Bearer <Bearer Token>'
返されるペイロードは次のとおりです。
{"data":{"text":"Do you \uD83D\uDC40our new Tweet settings?\n\nWe want to know how and why you’d use a feature like this in the API. Get the details and let us know what you think\uD83D\uDC47\nhttps://t.co/RtMhhfAcIB https://t.co/8wxeZ9fJER","id":"1263150595717730305","public_metrics":{"retweet_count":12,"reply_count":13,"like_count":50,"quote_count":7}}}
<Bearer Token>を独自のベアラートークンに置き換える必要があります。複数のツイートに対するcURLリクエストの例は次のとおりです。
curl --request GET 'https://api.x.com/2/tweets?tweet.fields=public_metrics&ids=1263150595717730305,1262485275348885504' --header 'Authorization: Bearer <Bearer Token>'
返されるペイロードは次のとおりです。
{"data":[{"text":"Do you \uD83D\uDC40our new Tweet settings?\n\nWe want to know how and why you’d use a feature like this in the API. Get the details and let us know what you think\uD83D\uDC47\nhttps://t.co/RtMhhfAcIB https://t.co/8wxeZ9fJER","public_metrics":{"retweet_count":12,"reply_count":13,"like_count":50,"quote_count":7},"id":"1263150595717730305"},{"text":"Starting today, we’re rolling out a new look for embedded Tweets.\n\nCheck it out and share your feedback in the forum post ⬇️\nhttps://t.co/gkMD0w7mFs","public_metrics":{"retweet_count":42,"reply_count":6,"like_count":85,"quote_count":12},"id":"1262485275348885504"}]}
PostmanやInsomniaなどのRESTクライアントは、URLを繰り返し調整するためのコードの記述を開始する前に、返されるデータを確認して調整を行うのに役立ちます。また、出発点として最適なPostmanコレクションも提供しています。
ここで、Tweet lookupのサンプルコードを確認してみてください。
手順4:解決しようとする疑問に答えるために必要なロジックを追加する
適切なフィールドを含むペイロードが用意できたら、最初の手順で特定したタスクを実行するためのロジック、タイミング、またはAPI接続がコードに組み込まれていることを確認します。
センチメントスコアがポジティブなツイートが、センチメントスコアがネガティブなツイートよりもパフォーマンスが優れているかどうかを知るには、測定しようとしている期間の、すべてのツイートのツイートID、ツイートのテキスト、メトリックを取得する必要があります。また、各ツイートのセンチメントスコアを決定するために、ライブラリまたはAPIに接続する必要がある場合もあります。
どのような言葉が最もオーディエンスの心に響くかを判断するには、想定している期間のツイートをすべて取り出す必要があります。最近のツイートのパフォーマンスが個人の平均を下回っているか上回っているかを確認するため、
ツイートに自然言語処理を実行して、比較するメトリックの開始点を作成する必要がある場合があります個人の平均を判断するには、どのようなメトリックの平均を求めているのかを判断し、計算する必要があります。たとえば、いいねとリツイートの平均などが考えられます。同じ計算に基づいて最近のツイートの平均を決定する必要があり、そうすればその違いを比較できます。
組織の年間ツイートのトップ10を確認するには、その年のすべてのツイートを取り出し、組織にとって最も重要であると判断したメトリックで並べ替える必要があります。
次の手順
Tweet lookupエンドポイントの詳細を確認する
クイックスタートガイドを使って構築を開始する。
APIリファレンスを確認して、利用可能なものを調べる。
他のチュートリアルを読んでアイデアを得る。