Create RSS/Podcast Feed

User Intent

"I want to sync RSS feeds or podcast episodes into Graphlit for search and AI interactions"

Operation

  • SDK Method: graphlit.createFeed() with RSS configuration

  • GraphQL: createFeed mutation

  • Entity Type: Feed

  • Common Use Cases: RSS feed monitoring, podcast ingestion, news aggregation, blog sync

TypeScript (Canonical)

import { Graphlit } from 'graphlit-client';
import { ContentTypes, FeedTypes } from 'graphlit-client/dist/generated/graphql-types';

const graphlit = new Graphlit();

const response = await graphlit.createFeed({
  name: 'Tech News RSS',
  type: FeedTypes.Rss,
  rss: {
    uri: 'https://news.example.com/rss.xml',
    readLimit: 100,
  },
});

const feedId = response.createFeed.id;
console.log(`RSS feed created: ${feedId}`);

while (true) {
  const status = await graphlit.isFeedDone(feedId);
  if (status.isFeedDone.result) {
    break;
  }

  console.log('Still syncing RSS items...');
  await new Promise((resolve) => setTimeout(resolve, 10_000));
}

console.log('RSS feed sync complete!');

const items = await graphlit.queryContents({
  feeds: [{ id: feedId }],
  types: [ContentTypes.Page],
});

console.log(`Synced ${items.contents.results.length} RSS items`);

Parameters

FeedInput (Required)

  • name (string): Feed name

  • type (FeedTypes): Must be RSS

  • rss (RSSFeedPropertiesInput): RSS configuration

RSSFeedPropertiesInput (Required)

  • uri (string): RSS feed URL

    • Must be valid RSS/Atom XML feed

    • Works with podcast feeds (audio files auto-downloaded)

  • readLimit (int): Max items to sync

    • Limits initial sync

    • Continuous monitoring after initial sync

Optional

  • correlationId (string): For tracking

  • collections (EntityReferenceInput[]): Auto-add items to collections

  • workflow (EntityReferenceInput): Apply workflow to items

Response

Developer Hints

RSS vs Podcast Feeds

Both use same API:

Important: Podcast audio files are automatically downloaded and transcribed if you have a preparation workflow.

Read Limit Strategy

Important: After initial sync, feed continuously monitors for new items regardless of readLimit.

Content Type for RSS Items

Podcast Transcription

Variations

1. Basic RSS Feed

Simplest RSS sync:

2. Podcast Feed with Transcription

Podcast with audio transcription:

3. RSS with Auto-Collection

Add items to collection:

4. Multiple RSS Feeds

Aggregate multiple sources:

5. RSS with Entity Extraction

Extract people, companies from articles:

6. Limited Backfill Feed

Only recent items:

Common Issues

Issue: Invalid RSS feed error Solution: Verify RSS URL returns valid XML. Test URL in browser. Some sites require User-Agent header.

Issue: No items syncing Solution: Check readLimit is set. Verify RSS feed has items. Some feeds may be empty.

Issue: Podcast audio not transcribed Solution: Ensure preparation workflow is attached to feed. Check workflow has audio transcription configured.

Issue: Feed syncs old items only Solution: This is initial backfill. After initial sync, feed monitors for new items automatically.

Issue: Duplicate items appearing Solution: Graphlit deduplicates by item GUID. If feed doesn't have unique GUIDs, duplicates may occur.

Production Example

News aggregation pipeline:

Podcast monitoring system:

Last updated

Was this helpful?