API 參考
Feeds (RSS)
訂閱 RSS/Atom feed,擷取項目,並將文章儲存到筆記。支援 OPML 匯入/匯出。
型別定義
bash
type Feed {
id: ID!
url: String! # RSS/Atom URL
name: String! # display name (defaults to feed title)
fetchContent: Boolean! # when true, the server fetches the full article body
updatedAt: String!
}
type FeedCount {
feedId: ID!
count: Int! # total entries
unreadCount: Int!
}
type FeedEntry {
id: ID!
feedId: ID!
title: String!
description: String! # short summary
content: String! # full article body (may be empty until fetched)
url: String! # canonical article URL
publishedAt: String! # ISO 8601
read: Boolean!
favorite: Boolean!
tags: [Tag!]!
}操作
query
feeds
列出所有已訂閱的 feed。
bash
query GetFeeds {
feeds { id url name fetchContent updatedAt }
}query
feedsCount
每個 feed 的總項目數和未讀項目數。
bash
query GetFeedsCount {
feedsCount { feedId count unreadCount }
}query
feedEntries
搜尋 feed 項目(標題 + 描述)。查詢留空可列出全部。
bash
query GetFeedEntries($offset: Int!, $limit: Int!, $query: String!) {
feedEntries(offset: $offset, limit: $limit, query: $query) {
id feedId title description content url publishedAt read favorite
tags { id name }
}
}query
feedEntryCount
計算符合查詢的 feed 項目數量。
bash
query GetFeedEntryCount($query: String!) {
feedEntryCount(query: $query)
}query
feedEntry
依 ID 取得單一 feed 項目。
bash
query GetFeedEntry($id: ID!) {
feedEntry(id: $id) { id feedId title description content url publishedAt read favorite }
}mutation
createFeed
訂閱新的 feed。伺服器擷取 RSS 頻道以填入名稱,然後啟動一次同步。
bash
mutation CreateFeed($url: String!, $fetchContent: Boolean!) {
createFeed(url: $url, fetchContent: $fetchContent) { id url name fetchContent updatedAt }
}mutation
updateFeed
更新 feed 的顯示名稱或 fetchContent 旗標。
bash
mutation UpdateFeed($id: ID!, $name: String!, $fetchContent: Boolean!) {
updateFeed(id: $id, name: $name, fetchContent: $fetchContent) { id url name fetchContent updatedAt }
}mutation
deleteFeed
取消訂閱 feed 並刪除其所有項目(及其標籤關係)。
bash
mutation DeleteFeed($id: ID!) {
deleteFeed(id: $id)
}mutation
syncFeeds
觸發一次 feed 同步 worker。傳入 id 可同步單一 feed;傳入 null 或空可同步全部。
bash
mutation SyncFeeds($id: ID) {
syncFeeds(id: $id)
}mutation
fetchFeedContent
擷取單一 feed 項目的完整文章內文。傳回更新後的項目。
bash
mutation FetchFeedContent($id: ID!) {
fetchFeedContent(id: $id) { id content }
}mutation
syncFeedContent
fetchFeedContent 的別名。保留以向後相容。
bash
mutation SyncFeedContent($id: ID!) {
syncFeedContent(id: $id) { id content }
}mutation
deleteFeedEntries
刪除符合查詢的 feed 項目(及其標籤關係)。
bash
mutation DeleteFeedEntries($query: String!) {
deleteFeedEntries(query: $query)
}mutation
importFeeds
將 OPML 文件(作為字串)匯入 feed 資料庫。
bash
mutation ImportFeeds($content: String!) {
importFeeds(content: $content)
}mutation
exportFeeds
將所有已訂閱的 feed 匯出為 OPML 字串。
bash
mutation ExportFeeds {
exportFeeds
}