How to get issue read state via API?

When I browse GitHub using the website, issues seem to have a “read/unread state” for my account, visualized by a blue bar to the left of the issue.

How can I get this read state using the API? If I query a list of issues as described here: https://developer.github.com/v3/issues/#list-issues-for-a-repository there is no field in the response that shows me the read state (not even if I authenticate to this API), and notifications are a completely distinct mechanism from this.

What is the right way?

Hi @rix0rrr,

Thank you for being here! As far as I know you could list the events for an issue via the API:  https://developer.github.com/enterprise/2.18/v3/issues/events/#list-events-for-an-issue

Hi Andrea,

Thanks for getting back to me.

Looks like that list of events contains “big” events like closing, labeling etc. I can’t seem to find any mention of read state.

Can you point me to the property I should be looking at?

Hi @rix0rrr,

Got you, let’s see if this breakdown can help: We have an Issues API and a Notifications API.

The Issues API gives us metadata for issues as a resource. The Notifications API gives us metadata for notifications whenever a resource is updated (commit comment, issue comment, pull request comment, vulnerability alert, etc.)

To see a list of their notifications, you can use: https://developer.github.com/v3/activity/notifications/#list-your-notifications That returns an array of objects, where each object represents a notification.

A single notification has a last_read_at value that describes the last point that notifications were checked. You could then access a single thread (https://developer.github.com/v3/activity/notifications/#view-a-single-thread) and that should give you what you are looking for.

Hi Andrea,

Seems that would tell me when I last looked at a particular notification, rather than when I last looked at a particular issue.

Is there a way for me to find out when my user account last looked at an issue?

(Again, the web interface has access to this information because it can render a blue bar to the left of issues with unread changes)