以前の YouTube Data API v2 のコメントの変更

Jeremy Walker、YouTube API チーム
2013 年 9 月(2013 年 12 月 2 日更新)

はじめに

2013 年 11 月にリリースされた 新しい YouTube コメント システムは Google+ をベースとしており、YouTube ユーザーは動画ごとに以前よりも多くのコメントを取得できるようになりました。新しいシステムでは、コメントが個々のユーザーとの関連性に基づいて並べ替えられるため、有意な会話を見つけやすくなります。

現在、新しいコメントは YouTube Data API v3 でサポートされていませんが、古いバージョンの API(v2)は引き続き使用できます。注意点と、上述のメリットは以下のとおりです。

新しいコメント システムへの切り替えが完了したので、統合機能が引き続き機能することをご確認ください。バグ(youtube.com/devファイルに関する問題)が見つかった場合は、お知らせください。よろしくお願いいたします。

よくある質問

移行前に投稿されたコメントはどうなりますか?

移行前に投稿されたコメントは、Google+ をベースとした新しいシステムに移行されています。

コメント フィードは引き続き利用できますか?

はい。たとえば、API を使用して動画のコメントを取得すると、お知らせで説明されているように、関連性に基づいてコメントのフィードが返されます*。新しいコメント システムへの切り替え以降、コメントはデフォルトで時系列順に表示されなくなります。ただし、次の例に示すように、API リクエストで orderby パラメータの値を published に設定することで、コメントを時系列で並べ替えることができます。

https://gdata.youtube.com/feeds/api/videos/VIDEO_ID/comments?orderby=published

コメントのページ分けには、コメント フィード内の next リンクと previous リンクを使用する標準のベスト プラクティスに従うことをおすすめします。これにより、以前よりも多くのコメントを確認できるようになるというメリットも得られます。

コメント フィードをページングするように start-index の値を明示的に設定すると(推奨されません)、動作が不安定になり、返されるコメントが少数になる可能性があります。

更新(2013 年 11 月 10 日):

* デフォルトでは、コメント フィードは個人的な関連性ではなく、一般的な関連性に基づいて並べ替えられます。つまり、コメント フィード リクエストが認証されても未認証でも、同じ結果が返されます。 この API は、非公開の投稿を含むパーソナライズされたコメント フィードをサポートしています。このフィードを取得するには、認証済みリクエストを行い、次の例に示すように API リクエストで relevant-to-me パラメータの値を true に設定します。

https://gdata.youtube.com/feeds/api/videos/VIDEO_ID/comments?relevant-to-me=true

新しいフィードの形式を示すフィードはありますか?

すべてのコメント フィードで新しい形式がサポートされるようになりました。以下に例を示します。

  • 関連性ベースのフィード:
    http://gdata.youtube.com/feeds/api/videos/9bZkp7q19f0/comments?prettyprint=true
  • 時系列ベースのフィード:
    http://gdata.youtube.com/feeds/api/videos/9bZkp7q19f0/comments?prettyprint=true&orderby=published

API を使用してコメントを作成することはできますか?

はい。ただし、v2 API を使用して新しいコメントを書き込むには、いくつかの要件があります。

  1. 認証されたユーザーは、YouTube チャンネルが Google+ アカウントにリンクされている必要があります(API の詳細)。
  2. リクエストは HTTPS 経由で送信する必要があります(現在のバージョンの従来のクライアント ライブラリはデフォルトでこれをサポートしています)。

これらの要件のいずれかが満たされない場合、API はエラーを返します。

Google+ のコメント機能では、スレッド形式のコメントを使用できます。YouTube のコメントへの返信にはどのような影響がありますか?

移行前に投稿されたコメント返信は、通常のコメントとして表示されるようになります。また、YouTube API を使用したコメントへの直接返信はサポートされなくなりました。現時点では、YouTube API を使用して新しいスタイルのコメントに返信する方法はありません。

YouTube と Google+ のサイトやアプリから新しいスタイルの YouTube コメントに返信した場合、従来の API のコメントフィードでは返されません。ただし、実際の返信は Google+ API を介して取得できます。

YouTube コメント フィード エントリが新形式のコメントを表す場合、エントリには <yt:googlePlusUserId> タグが含まれます。このタグが存在し、コメントに返信がある場合(<yt:replyCount> 要素を確認するだけです)、エントリの <id> タグから Google+ アクティビティ ID を解析できます。この ID を使用して Google+ API の comments:list メソッドを呼び出すと、そのコメントに対する最近の返信のリストを取得できます。

以下の抜粋では、コメント フィードのエントリで Google+ のアクティビティ ID(太字で表示)がどのように表示されるのかを示します。

<entry>
  <id>tag:youtube,2008:video:xpI6VNvRTII:comment:z13rtnibotmidjggs04cdvzgvurngv3pwnw0k</id>
  <yt:googlePlusUserId>123456789</yt:googlePlusUserId>
  <yt:replyCount>4</yt:replyCount>
  <yt:channelId>UCxxxx_xxxxx</yt:channelId>
  ...
</entry>

YouTube API を使用してコメントを投稿すると、Google+ はどうなりますか?

YouTube API を使用してコメントを投稿しても、Google+ ストリームに投稿が生成されたり、Google+ 通知が作成されたりすることはありません。

新しいコメント システムに切り替えても、アクティビティ フィードにコメントは引き続き表示されますか?

いいえ、現時点では有効にしません。

レガシー API の SUP はコメントで引き続き機能しますか?

いいえ、コメントには対応していません。SUP はユーザー アクティビティ フィードを使用します。コメントはアクティビティ フィードに表示されなくなったため、SUP には表示されません。