Feeds (RSS)
RSS-/Atom-Feeds abonnieren, Einträge abrufen und Artikel als Notizen speichern. Unterstützt OPML-Import/-Export.
Typdefinitionen
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!]!
}Operationen
feeds
Alle abonnierten Feeds auflisten.
query GetFeeds {
feeds { id url name fetchContent updatedAt }
}feedsCount
Gesamt- und ungelesene Eintrags-Zähler pro Feed.
query GetFeedsCount {
feedsCount { feedId count unreadCount }
}feedEntries
Feed-Einträge durchsuchen (Titel + Beschreibung). Abfrage leer lassen, um alle aufzulisten.
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 }
}
}feedEntryCount
Anzahl der auf eine Abfrage passenden Feed-Einträge zählen.
query GetFeedEntryCount($query: String!) {
feedEntryCount(query: $query)
}feedEntry
Einen einzelnen Feed-Eintrag anhand der ID abrufen.
query GetFeedEntry($id: ID!) {
feedEntry(id: $id) { id feedId title description content url publishedAt read favorite }
}createFeed
Einen neuen Feed abonnieren. Der Server ruft den RSS-Kanal ab, um den Namen zu füllen, und startet dann eine einmalige Synchronisierung.
mutation CreateFeed($url: String!, $fetchContent: Boolean!) {
createFeed(url: $url, fetchContent: $fetchContent) { id url name fetchContent updatedAt }
}updateFeed
Anzeigenamen oder fetchContent-Flag eines Feeds aktualisieren.
mutation UpdateFeed($id: ID!, $name: String!, $fetchContent: Boolean!) {
updateFeed(id: $id, name: $name, fetchContent: $fetchContent) { id url name fetchContent updatedAt }
}deleteFeed
Von einem Feed abmelden und alle seine Einträge (und deren Tag-Beziehungen) löschen.
mutation DeleteFeed($id: ID!) {
deleteFeed(id: $id)
}syncFeeds
Einen einmaligen Feed-Sync-Worker auslösen. id übergeben, um einen einzelnen Feed zu synchronisieren; null oder leer übergeben, um alle zu synchronisieren.
mutation SyncFeeds($id: ID) {
syncFeeds(id: $id)
}syncFeedEntryContent
Fetch the full article body for a single feed entry. Returns the updated entry.
mutation SyncFeedEntryContent($id: ID!) {
syncFeedEntryContent(id: $id) { id content }
}deleteFeedEntries
Feed-Einträge, die auf eine Abfrage passen, löschen (und deren Tag-Beziehungen).
mutation DeleteFeedEntries($query: String!) {
deleteFeedEntries(query: $query)
}importFeeds
Ein OPML-Dokument (als String) in die Feeds-Datenbank importieren.
mutation ImportFeeds($content: String!) {
importFeeds(content: $content)
}exportFeeds
Alle abonnierten Feeds als OPML-String exportieren.
mutation ExportFeeds {
exportFeeds
}