I will get back a list of 17 clips, when I see 18 on my clips page.
This is a list of the clips from my last steam ( passed 24 hours ), and in terms of which missing clips it was, it seems it was the 4th clip made of the night, which rules out my though, of me missing the first or last clip.
I confirm. When I try to get clips, not all clips are returns.
For example: curl -H "Authorization: Bearer xxxxxxxxxx" "https://api.twitch.tv/helix/clips?broadcaster_id=22484632&first=100&started_at=2020-01-23T00:00:00Z&ended_at=2020-01-24T00:00:00Z&after=eyJiIjpudWxsLCJhIjp7IkN1cnNvciI6Ik1UQXcifX0"
100 clips are specified, but returns about 40. 60% is missing!
The problem with clips API lasts for many months.
That’s just how Twitch does filtering on some endpoints, where 100 clips were retrieved and then filtered for your request, and displayed those 40 results.
Your request also returns a pagination cursor, so to get the rest of the results you keep paging through until you have all the results or no cursor is returned. Just because you may have less results than what you specified as the first param doesn’t mean results are missing, or it’s broken.
Those clips are all from the same channel in the same time range but many do not get returned.
Edit: Another thing, I had the first request’s result saved for like two weeks now and tried it multiple times since then. At first always giving the same results however one day recently it switched out one of the 16 clips with one of the missing ones and a new one started missing from ranged request. All the other 15 ones stayed the same.
It definitely looks like time ranged requests will just miss about half the clips in the range sometimes.