I need the list of users who have more than 10K reputation and then among those users I need to see which user has how many up-votes for each tag. I don't think there is a direct query that will give me this data. Any ideas as to how to fetch this data?
1 Answer
It's not easy to get this via the API, a SEDE query is the better tool for the job here.
If you need to do it via the API:
Start with the excerpt search; it has parameters
user
andtagged
which you can use to get the relevant posts. (The parameteruser
states the user must own the question, but that's wrong, they must own the post.)- You'd have to paginate, certainly if you're interested in users with 10k or more reputation.
- You can filter out answers if you only want questions (or vice versa); perhaps passing
is:q
oris:a
as theq
(query) parameter works as well. - Community wiki posts can be filtered out as well.
The resulting search excerpts have a score (upvotes minus downvotes) but don't have a vote breakdown.
- If you're really interested in the number of upvotes (as opposed to the score, which is readily available, and the figure which is used to determine tag scores), you need to feed the post IDs through the posts by ids method, where you can change the default filter to one which includes the
up_vote_count
field.