どうもイトサル(@itosaru)です。
この記事ではinstagramグラフAPI(以下:グラフAPI)を使ってプロフィール情報を取得する方法についてお伝えします。
グラフAPIはHTTPリクエストを使って実行する
まずグラフAPIの概要について少し説明しておきますね。
グラフAPIはHTTPリクエストを使って実行します。
HTTPリクエストってなんだ?という疑問に対して簡単にいうと、ブラウザでURLを入力してデータをもらう方法です。
そのデータは項目名とその値でセットの状態で返ってきます。

ちなみにこのデータフォーマットを「JSON」といいます。
グラフAPIのリクエストはすべて「https://graph.facebook.com/」という共通URLを使い、このURLに欲しい情報の項目などを付与してリクエストを実行します。
またグラフAPIを実行するためには事前にMetaの開発者登録などが必要です。
詳しくはこちらの記事をご覧ください。

プロフィール情報の取得はビジネスディスカバリーを使う
プロフィール情報の取得にはビジネスディスカバリー(business_discovery)という項目(フィールド)を使います。
リクエストの型は下記のとおりです。
https://graph.facebook.com/{api-version}/{ig-user-id}
?fields={fields}
&access_token={access-token}
太字にした情報は下記のものに置き換えましょう。
- api-version:グラフAPIのバージョン。現時点の最新バージョンは「v15.0」
- ig-user-id:事前準備で取得した自分のビジネスアカウントID
- fields:business_discoveryに置き換え、欲しい情報のユーザー名と項目
- access–token:事前準備で取得したアクセストークン3
例としてスターバックス公式アカウントの情報を取得するリクエストURLは下記のような形になります。
https://graph.facebook.com/v15.0/ビジネスアカウントID
?fields=business_discovery.username(starbucks_j)←取得するユーザー名
{name,username,biography,follows_count,followers_count,media_count}←取得する項目
&access_token=アクセストークン3
それでは実際にリクエストを投げてみましょう。
ブラウザ画面のURLで実行した結果がこちらです。

きちんとスターバックス公式のアカウントからfieldsで指定した項目のデータが返ってきていますね!
instagramの画面の情報とも一致していそうです。

ちなみにこのビジネスディスカバリーの注意点としては、取得したいinstagramユーザーのアカウントがビジネスアカウントかクリエイターアカウントである必要があります。
一般のアカウントの情報は取得できないのでご注意ください。
まとめ
この記事ではグラフAPIを使ってプロフィール情報を取得する方法についてお伝えしました。
今回の内容の振り返りです。
- グラフAPIはHTTPリクエストで実行する
- データは項目名と値がセットの「JSON」フォーマットで返ってくる
- プロフィール情報はビジネスディスカバリーを使ってユーザー名、項目名を指定する
- プロフィール情報はビジネスアカウント、もしくはクリエイターアカウントのみ取得できる
また取得できる情報(フィールド)についてはグラフAPIの公式ページに記載があります。
どんな情報が取得できるかはこちらのページを見てみましょう。
コメント