In my opinion:
Sure, but with
After 5 days, if no Hype Train has been active, the endpoint will return an empty response.
The ID parameter doesn’t make sense since if you missed the train data in real time it doesn’t make sense to look it up by ID since you won’t have the ID. So you would just get all the recent trains.
ID just helps hype train data consumers deduplicate and correlate data of a train together which is why it exists in the data.
I also imagine Twitch has looked at the API call logs and fine that basically no one uses the optional parameter anyway. And if an EventSub consumer wants to look up the recent train you can just call the endpoint anyway and get the most recent trains wihtout needing to know the ID to look up a specific ID.
TLDR: due to the time constraint for “history” on the Endpoint the ID parameter doesn’t make any session and CPU cycles/stability can be moved elsewhere