List my check-ins
curl --request GET \
--url https://api.staging.blackbird.xyz/flynet/v1/users/me/check_insconst options = {method: 'GET'};
fetch('https://api.staging.blackbird.xyz/flynet/v1/users/me/check_ins', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));const options = {method: 'GET'};
fetch('https://api.staging.blackbird.xyz/flynet/v1/users/me/check_ins', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));Users
List my check-ins
GET
/
users
/
me
/
check_ins
List my check-ins
curl --request GET \
--url https://api.staging.blackbird.xyz/flynet/v1/users/me/check_insconst options = {method: 'GET'};
fetch('https://api.staging.blackbird.xyz/flynet/v1/users/me/check_ins', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));const options = {method: 'GET'};
fetch('https://api.staging.blackbird.xyz/flynet/v1/users/me/check_ins', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));Returns the authenticated member’s own check-ins, newest first. The
subject is resolved from the access token, so there is no member ID in
the path. Same shape as
Auth: OAuth access token with the
Each
GET /check_ins,
scoped to the member.
Tasting note - This is the clean self-feed. To read check-ins for
a specific restaurant or location instead, use the filterable
GET /check_ins. Each row embeds the
full location (with its restaurant and neighborhood), so one call
renders a feed without follow-ups.read:user_checkins scope. A token
missing that scope returns 403 with error="insufficient_scope" in
the WWW-Authenticate header.
Example
curl "https://api.staging.blackbird.xyz/flynet/v1/users/me/check_ins?page=0&page_size=25" \
-H "Authorization: Bearer $ACCESS_TOKEN"
Response
{
"check_ins": [
{
"id": "10102587-b266-47e1-ad22-b3f23c1906e0",
"object": "check_in",
"location": {
"id": "62521fe6-ce1b-40b3-aceb-013245132ab0",
"object": "location",
"name": "FLYBAR — Williamsburg",
"restaurant": {
"id": "2cb56d03-4417-4b60-afe3-be819ecde8ac",
"object": "restaurant",
"name": "FLYBAR"
},
"neighborhood": {
"id": "9f4b1c20-7e3a-4d18-9c2f-1a5d6b8e0c44",
"object": "neighborhood",
"name": "Williamsburg"
}
},
"blackbird_pay_enabled": true,
"created_at": "2026-05-12T18:06:03.729568Z",
"ended_at": "2026-05-12T18:06:29.131657Z"
}
],
"pagination": {
"total_count": 1,
"total_pages": 1,
"current_page": 0,
"next_page": null,
"page_size": 25
}
}
location is returned in full, embedding its restaurant and
neighborhood.
Schema
| Field | Type | Notes |
|---|---|---|
check_ins | array | Each item is a check_in. See GET /check_ins for the full object. |
check_ins[].blackbird_pay_enabled | boolean | true if Blackbird Pay is enabled at this check-in’s venue. |
check_ins[].created_at | ISO 8601 timestamp | Visit start. |
check_ins[].ended_at | ISO 8601 timestamp | Visit end, or null if ongoing. |
pagination | object | Standard pagination wrapper. next_page is null on the last page. |
See also
- Check-in feed: render a member’s history.
- Pagination + errors: paging and scope errors.