Twitchで特定の配信者 or 特定のゲームのクリップを取得する

twitch
スポンサーリンク

前提:クライアントID&OAth認証のキー取得&配信者idを取得

以前のページを参考に、クライアントID・OAth認証キー、必要であれば配信者idを取得します

「Get Clips API」からTwitchのクリップを取得

以下のページを参考にしてクリップを取得します

Reference
Twitch Developer tools and services to integrate Twitch into your development or create interactive experience on twitch.tv.

使用例

「2024-05-02T00:00:00Z~2024-05-03T00:00:00Z」の間に作成された「グラセフ」のクリップを「100個」取得

  • URLは「https://api.twitch.tv/helix/clips
  • Headerに
    「client_id」:「前提で取得したクライアントID」
    「Authorization」:「Bearer」+「前提で取得したOAuthの文字列」
  • Paramsに
    「game_id」:32982(グラセフのゲームid)
    「started_at」:2024-05-02T00:00:00Z
    「ended_at」:2024-05-03T00:00:00Z
    「first」:100

結果

以下のように100個クリップが取得できます

また、cursorキーが入っているので、101個以降の結果を取得する場合はこのキーを使って検索することが出来ます

{
    "data": [
        {
            "id": "IncredulousPiercingDugongPhilosoraptor-C_w0wnfLfwYaLZHR",
            "url": "https://clips.twitch.tv/IncredulousPiercingDugongPhilosoraptor-C_w0wnfLfwYaLZHR",
            "embed_url": "https://clips.twitch.tv/embed?clip=IncredulousPiercingDugongPhilosoraptor-C_w0wnfLfwYaLZHR",
            "broadcaster_id": "119506529",
            "broadcaster_name": "らっだぁ",
            "creator_id": "653466746",
            "creator_name": "chaccha85",
            "video_id": "2135235794",
            "game_id": "32982",
            "language": "ja",
            "title": "察しが良すぎるパレトさん👏",
            "view_count": 64313,
            "created_at": "2024-05-02T13:12:42Z",
            "thumbnail_url": "https://clips-media-assets2.twitch.tv/Y89sVwv8NMJ3y38GGi2R0Q/AT-cm%7CY89sVwv8NMJ3y38GGi2R0Q-preview-480x272.jpg",
            "duration": 7,
            "vod_offset": 11798,
            "is_featured": false
        },
        {
            "id": "SuaveSneakyJayMVGame-U0FqtAWx5YZ0b9HY",
            "url": "https://clips.twitch.tv/SuaveSneakyJayMVGame-U0FqtAWx5YZ0b9HY",
            "embed_url": "https://clips.twitch.tv/embed?clip=SuaveSneakyJayMVGame-U0FqtAWx5YZ0b9HY",
            "broadcaster_id": "119506529",
            "broadcaster_name": "らっだぁ",
            "creator_id": "415168766",
            "creator_name": "あらんえむかーびぃ",
            "video_id": "2135235794",
            "game_id": "32982",
            "language": "ja",
            "title": "本日の神ヘリアタック",
            "view_count": 29103,
            "created_at": "2024-05-02T14:40:06Z",
            "thumbnail_url": "https://clips-media-assets2.twitch.tv/XLGO8lNBarQFseWGdG_R2A/41266632023-offset-17074-preview-480x272.jpg",
            "duration": 26,
            "vod_offset": 17050,
            "is_featured": false
        },
        {
            "id": "AntediluvianNimbleMoonOSkomodo-T1f-DfJrmi2Xxxh5",
            "url": "https://clips.twitch.tv/AntediluvianNimbleMoonOSkomodo-T1f-DfJrmi2Xxxh5",
            "embed_url": "https://clips.twitch.tv/embed?clip=AntediluvianNimbleMoonOSkomodo-T1f-DfJrmi2Xxxh5",
            "broadcaster_id": "119506529",
            "broadcaster_name": "らっだぁ",

            ・・・・・・・・・・
            
        {
            "id": "LuckyNurturingBoarCmonBruh-0z-RP1eAtN3lxTpb",
            "url": "https://clips.twitch.tv/LuckyNurturingBoarCmonBruh-0z-RP1eAtN3lxTpb",
            "embed_url": "https://clips.twitch.tv/embed?clip=LuckyNurturingBoarCmonBruh-0z-RP1eAtN3lxTpb",
            "broadcaster_id": "212474095",
            "broadcaster_name": "ギルくん",
            "creator_id": "951238682",
            "creator_name": "リリィシア",
            "video_id": "2135203298",
            "game_id": "32982",
            "language": "ja",
            "title": "音鳴も拾ってボブキャから逃走!",
            "view_count": 5599,
            "created_at": "2024-05-02T14:43:34Z",
            "thumbnail_url": "https://clips-media-assets2.twitch.tv/UgZk09M_kT9XgLTd5cU6Ww/AT-cm%7CUgZk09M_kT9XgLTd5cU6Ww-preview-480x272.jpg",
            "duration": 56.6,
            "vod_offset": 24042,
            "is_featured": false
        }
    ],
    "pagination": {
        "cursor": "eyJiIjpudWxsLCJhIjp7IkN1cnNvciI6Ik1UQXcifX0"
    }
}

Paramsに
「after」:eyJiIjpudWxsLCJhIjp7IkN1cnNvciI6Ik1UQXcifX0

を追加して検索すると101~200個目のクリップが取得できます

注意点

Get Clips APIのパラメーター「broadcaster_id」、「game_id」、「id」は同時に使用することは出来ません

例えば、グラセフのファンタのクリップを取得しようとしたときに、クエリパラメータに

「broadcaster_id」=203654142

「game_id」=32982

を同時にAPIに投げることは出来ません

なのでファンタのクリップを取得した後に、自分でグラセフのクリップかどうかを調べる必要があります

まとめ

TwitchのGet Clip APIを使ってクリップを取得する方法をまとめました

また、APIを実際にPOST manを使って叩いてクリップの一覧を取得できることを確認しました

コメント

タイトルとURLをコピーしました