Skip to content

Ingestion & Review

Content ingestion is the process by which external sources (partner feeds, festival websites, business listings) automatically submit content for the admin team to review before it appears on the platform.

How it works

  1. An external agent (typically an n8n workflow) submits a content payload to the admin API.
  2. The item is staged as pending and appears in the Ingested Items list in the admin console.
  3. A curator reviews the item and takes one of four primary actions.
  4. Approved items can be promoted to the canonical content record (event, place, story).

Review queue

Navigate to Ingested Items in the admin console sidebar. Items are listed by type (event, place, business, cultural) and submission date.

For each item you can:

ActionWhen to use
ApproveItem looks correct and ready to be published once promoted
RejectItem is spam, duplicate, or clearly incorrect
Request changesItem needs edits from the submitting source before it can be approved — add notes explaining what needs to change
PromoteMove an approved item into the canonical record (creates or updates the live event / place / story)

Auto-approval sources

Sources configured with approval_mode = auto bypass the pending queue. Items from these sources are approved immediately on submission. Curators still promote approved items manually.

Auto-approval is appropriate for trusted, validated data feeds. Configure this per source under Ingestion Sources (admin role required).

What happens when you promote

Payload typePromotes to
eventEvent record
placePlace record
businessPlace record with place_kind = business
culturalStory record

After promotion, the item is marked merged and no longer appears in the active review queue.

Re-import actions for merged items

Merged items expose two different recovery paths. Use the one that matches the problem you are fixing.

ActionWhen to use
Re-Import CanonicalRe-run the full canonical sync for one merged item when the linked event, place, or story fields need to be updated from that source payload again.
Re-Import MediaQueue media-only recovery for one or more merged items when the linked canonical is missing hero, gallery, or thumbnail media.

The bulk Re-Import Media action runs asynchronously. By default it only backfills missing ingestion-managed media or heals retryable remote-reference placeholders. Enable Force media rebuild when you need to replace the ingestion-managed hero, gallery, or thumbnail media from the source payload.

Ingestion sources (admin only)

The Ingestion Sources view lists all registered external sources. Each source has:

  • A name and source URL
  • An ingestion type (api, scrape, manual, or csv)
  • An approval mode (manual or auto)
  • A count of items ingested and a last-scraped timestamp

For n8n-managed sources, each source has a dedicated service token automatically issued and injected into the n8n workflow. Deleting the source revokes the token.

→ Full API contract for ingestion agents: Admin Ingestion

Tips

  • Check the rejection reason field before rejecting — leaving a clear reason helps improve future submissions from that source.
  • Cultural payloads should include a culture_topic_id or culture_topic_slug so you can assign the story to the right topic when promoting.
  • If a promoted event matches an existing canonical record, the promote endpoint updates that record rather than creating a duplicate.

Built with VitePress