Feeds API
Feeds are the content sources in your Repurai workspace — blogs, newsletters, YouTube channels, and more. Use these endpoints to list, inspect, delete, and refresh your subscriptions.
The feed model
- Name
id- Type
- string
- Description
Unique identifier for the feed.
- Name
lastFetchedAt- Type
- timestamp
- Description
When the feed was last checked for new posts.
- Name
categoryId- Type
- string
- Description
The category this feed is assigned to.
- Name
title- Type
- string
- Description
The title of the feed subscription.
- Name
userlink- Type
- string
- Description
The user-facing homepage URL of the feed source.
- Name
description- Type
- string
- Description
A short summary or description of the feed content.
- Name
favicon- Type
- string
- Description
URL of the feed's favicon icon asset.
List all feeds
Returns all feeds in your workspace.
Request
curl https://repurai.com/api/v1/feeds \
-H "Authorization: Bearer [API_Key]"
Response
success
{
"data": [
{
"id": "2b3528dc-d64b...",
"lastFetchedAt": "2026-05-19T13:06:49.016Z",
"categoryId": "b3c8f77e-cd66...",
"title": "AI Engineer",
"userlink": "https://www.youtube.com/@aiDotEngineer",
"description": "Discover insights and updates from this source.",
"favicon": "https://t1.gstatic.com/faviconV2?client=SOCIAL&type=FAVICON&fallback_opts=TYPE,SIZE,URL&url=https://www.youtube.com/@aiDotEngineer&size=256"
}
]
}
Get a feed
Returns the details of a single feed.
Request
curl https://repurai.com/api/v1/feeds/[feedId] \
-H "Authorization: Bearer [API_Key]"
Response
success
{
"id": "2b3528dc-d64b...",
"lastFetchedAt": "2026-05-19T13:06:49.016Z",
"categoryId": "b3c8f77e-cd66...",
"title": "AI Engineer",
"userlink": "https://www.youtube.com/@aiDotEngineer",
"description": "Discover insights and updates from this source.",
"favicon": "https://t1.gstatic.com/faviconV2?client=SOCIAL&type=FAVICON&fallback_opts=TYPE,SIZE,URL&url=https://www.youtube.com/@aiDotEngineer&size=256"
}
Get feed posts
Returns the paginated list of posts for a single feed, along with feed metadata.
Query parameters
- Name
page- Type
- integer
- Description
The page number to retrieve. Defaults to
1.
- Name
pageSize- Type
- integer
- Description
The number of items to return per page. Defaults to
20.
Request
curl "https://repurai.com/api/v1/feeds/[feedId]/posts?page=1&pageSize=20" \
-H "Authorization: Bearer [API_Key]"
Response
success
{
"feedInfo": {
"id": "2b3528dc-d64b...",
"lastFetchedAt": "2026-05-19T13:06:49.016Z",
"categoryId": "b3c8f77e-cd66...",
"title": "AI Engineer",
"userlink": "https://www.youtube.com/@aiDotEngineer",
"description": "Discover insights and updates from this source.",
"favicon": "https://t1.gstatic.com/faviconV2?client=SOCIAL&type=FAVICON&fallback_opts=TYPE,SIZE,URL&url=https://www.youtube.com/@aiDotEngineer&size=256"
},
"data": [
{
"id": "f3c97a43-22c9...",
"title": "Rewiring the State — Eoin Mulgrew, 10 Downing Street",
"link": "https://www.youtube.com/watch?v=ObNKGf9YR0g",
"smallDescription": "The cabinet office was about to spend one and a half million pounds on an outside law firm...",
"largeDescription": "The cabinet office was about to spend one and a half million pounds on an outside law firm to analyze the UK statute book. One engineer embedded with the in-house legal team for two weeks instead...",
"publishedDate": "2026-05-18T17:00:06.000Z",
"thumbnailUrl": "https://i4.ytimg.com/vi/ObNKGf9YR0g/maxresdefault.jpg",
"authoruri": "https://www.youtube.com/channel/UCLKPca3kwwd-B59HNr-_lvA",
"authorname": "AI Engineer",
"enclouserurl": null,
"enclousertype": null,
"views": 246,
"isReadLater": false,
"transcript": "[music]\n>> Good to go? Can people hear me okay?...",
"summary": null,
"createdAt": "2026-05-18T19:02:49.424Z",
"updatedAt": "2026-05-19T16:04:18.376Z"
}
],
"page": 1,
"pageSize": 20,
"hasMore": false
}
Refresh a feed
Pulls in the latest posts for this feed. Any new posts published since the last refresh are added to your library automatically.
Each feed can only be refreshed once per hour.
Request
curl -X POST https://repurai.com/api/v1/feeds/[feedId]/refresh \
-H "Authorization: Bearer [API_Key]"
Response
success
{
"success": true,
"message": "Refreshed. 10 new item(s) found.",
"data": {
"newItems": 10
}
}
Refresh all feeds
Pulls in the latest posts for every feed in your workspace at once. New posts are added automatically for each feed that has updates.
Feeds can only be refreshed once per hour.
Request
curl -X POST https://repurai.com/api/v1/feeds/refresh \
-H "Authorization: Bearer [API_Key]"
Response
success
{
"success": true,
"message": "Sync completed: 241 new items found across 29 feeds.",
"data": {
"totalNewItems": 241,
"feedsRefreshed": 29
}
}