Home > Net >  Getting inconsistent YouTube API v3 results when using pagination
Getting inconsistent YouTube API v3 results when using pagination

Time:04-21

I'm using the youtube data api v3 in node.js and I am getting inconsistent result set lengths when getting comment threads from a video.

https://developers.google.com/youtube/v3/docs/commentThreads/list

When I query a video with id "dtfW6EP91fY" using code

        var service = google.youtube('v3');
        service.commentThreads.list({
            auth: auth,
            part: "id,snippet,replies",
            videoId: "dtfW6EP91fY",
            order: "relevance",
            maxResults: 100,
            pageToken
        }, (err, response) => {

        });

(on each response, I save the next token and set it back for the next call)

But I get strange result sets. I first see 100 comments, and then I see 1 comment, and then I see 100 comments, and then 1, and it keeps alternating.

Not only that but for the responses that get 1 result, the next page token comes out undefined as well.

How can I get consistent 100 comments?

CodePudding user response:

According to YouTube your video dtfW6EP91fY has 308 comments. However you are only able to retrieve 101 comments through CommentThreads: list and that's normal.

The replies when using CommentThreads: list are given up to 5 replies. If the message have more than 5 replies you have to use Comments: list to list them all. That's why you are missing a lot of comments.

  • Related