インサイト

InstagramグラフAPIを使用すると、IGユーザーとそのIGメディアオブジェクトのソーシャルインタラクション指標を取得できます。各指標の数値は、APIリクエストの時点で計算されます。

プライバシー規則により、一部の地域でユーザーが実行するメッセージ関連のストーリーズIGメディアのインタラクションは、一部の指標計算に含まれなくなります。該当する地域は、ヨーロッパ(2020年12月1日以降)と日本(2021年4月14日以降)です。

  • 該当する地域のユーザーが作成したストーリーズについては、replies指標は値0を返すようになります。
  • 該当する地域以外のユーザーが作成したストーリーズについては、replies指標は返信の数を返しますが、該当する地域のユーザーが行った返信はその計算に含まれなくなります。

制限

  • 一部の指標は、フォロワー数が100未満のIGユーザーについては利用可能ではありません
  • APIは、オーガニックインタラクション指標のみを報告します。メディアオブジェクトを含んでいる広告で行われたインタラクションはカウントされません。
  • メディア指標データは最大2年間保存されます。ユーザー指標データは最大90日間保存されます。
  • 一度に取得できるのは1人のユーザーのインサイトのみです。
  • Facebookページのインサイトは取得できません。
  • ストーリーズがアーカイブまたはハイライトされていても、ストーリーズのインサイトを取得できるのは24時間のみです。有効期限が切れる前にストーリーズの最新のインサイトを取得するには、Instagramトピック用のWebhookを設定し、story_insightsフィールドをサブスクリプション登録します。
  • アルバムの子IGメディアのインサイトはサポートされていません。
  • リクエストしたインサイトデータが存在しない場合、または現在利用できない場合、APIは個々の指標に対して0ではなく空のデータセットを返します。

UTC

API応答のタイムスタンプにはオフセットがゼロのUTCが使用され、ISO-8601形式で表現されます。例: 2019-04-05T07:56:32+0000

エンドポイント

このAPIは次のエンドポイントで構成されています。

使用可能な指標、パラメーター、およびアクセス許可の要件については、各エンドポイントのリファレンスドキュメントを参照してください。

アカウントの指標を取得する

InstagramビジネスアカウントまたはInstagramクリエイターアカウントの指標を取得するには、GET /{ig-user-id}/insightsエッジをクエリし、結果として返す指標を指定します。

リクエストの例

GET graph.facebook.com/17841405822304914/insights
    ?metric=impressions,reach,profile_views
    &period=day

応答の例

{
  "data": [
    {
      "name": "impressions",
      "period": "day",
      "values": [
        {
          "value": 32,
          "end_time": "2018-01-11T08:00:00+0000"
        },
        {
          "value": 32,
          "end_time": "2018-01-12T08:00:00+0000"
        }
      ],
      "title": "Impressions",
      "description": "Total number of times the Business Account's media objects have been viewed",
      "id": "instagram_business_account_id/insights/impressions/day"
    },
    {
      "name": "reach",
      "period": "day",
      "values": [
        {
          "value": 12,
          "end_time": "2018-01-11T08:00:00+0000"
        },
        {
          "value": 12,
          "end_time": "2018-01-12T08:00:00+0000"
        }
      ],
      "title": "Reach",
      "description": "Total number of times the Business Account's media objects have been uniquely viewed",
      "id": "instagram_business_account_id/insights/reach/day"
    },
    {
      "name": "profile_views",
      "period": "day",
      "values": [
        {
          "value": 15,
          "end_time": "2018-01-11T08:00:00+0000"
        },
        {
          "value": 15,
          "end_time": "2018-01-12T08:00:00+0000"
        }
      ],
      "title": "Profile Views",
      "description": "Total number of users who have viewed the Business Account's profile within the specified period",
      "id": "instagram_business_account_id/insights/profile_views/day"
    }
  ]
}

メディアの指標を取得する

メディアオブジェクトの指標を取得するには、GET /{ig-media-id}/insightsエッジをクエリし、結果として返す指標を指定します。

リクエストの例

GET graph.facebook.com/{media-id}/insights
    ?metric=engagement,impressions,reach

応答の例

{
  "data": [
    {
      "name": "engagement",
      "period": "lifetime",
      "values": [
        {
          "value": 8
        }
      ],
      "title": "Engagement",
      "description": "Total number of likes and comments on the media object",
      "id": "media_id/insights/engagement/lifetime"
    },
    {
      "name": "impressions",
      "period": "lifetime",
      "values": [
        {
          "value": 13
        }
      ],
      "title": "Impressions",
      "description": "Total number of times the media object has been seen",
      "id": "media_id/insights/impressions/lifetime"
    },
    {
      "name": "reach",
      "period": "lifetime",
      "values": [
        {
          "value": 13
        }
      ],
      "title": "Reach",
      "description": "Total number of unique accounts that have seen the media object",
      "id": "media_id/insights/reach/lifetime"
    }
  ]
}