Skip to main content

Overview

Haystack uses a hierarchical content model that helps you organize and categorize your media library. Understanding these relationships is key to effectively managing your content.

Core Entities

Items

Items are the fundamental unit of content in Haystack. An item typically represents a single piece of content like a sermon, talk, podcast episode, or video.
Key Properties:
  • title - The main title of the content
  • date - Publication or recording date
  • status - Current state: draft, queued, processing, ready, published, unpublished, or error
  • collectionId - Required: which collection this belongs to
  • seriesId - Optional: which series this belongs to
Item Lifecycle:
1

draft

Item is created but not yet published
2

queued

Item is queued for processing
3

processing

Media is being transcribed and indexed for search
4

ready

Processing complete, ready to be published
5

published

Item is live and searchable by users
6

unpublished

Item was published but is now hidden from search
7

error

Processing failed - check error details

Collections

Collections are top-level organizational containers. They represent major categories of content and every item must belong to exactly one collection.
Use Cases:
  • Organizing by content type (Sermons, Podcasts, Conferences)
  • Separating by venue (Main Campus, Satellite Location)
  • Dividing by audience (Youth, Adults, Spanish)
Collections are required for all items. Plan your collection structure before importing content.

Series

Series group related items together in a sequence. Series are optional but highly recommended for organizing multi-part content.
Key Features:
  • Ordering: Control whether items display in ascending or descending order
  • Numbering: Optionally show “Part 1”, “Part 2” labels
  • Branding: Each series can have custom artwork and colors
  • Discovery: Users can find related content by browsing series

Speakers

Speakers represent the people who deliver your content. Items can have multiple speakers.
Relationships:
  • Items must have at least one speaker
  • Items can have multiple speakers
  • Speakers can be associated with many items
  • Speaker filtering enables users to find all content by a specific person

Content Hierarchy

Here’s how these entities relate to each other:

Relationships Explained

Required Relationships

Every item must belong to exactly one collection. This cannot be null.
Every series must belong to exactly one collection.
Every item must have at least one speaker. Items can have multiple speakers.

Optional Relationships

Items can optionally belong to a series, but it’s not required.

Working with the Content Model

Creating a Complete Item

Here’s a comprehensive example of creating an item with all relationships:
Use the _expand query parameter to include related data:
Response includes nested objects:

Content Organization Best Practices

Plan Your Collections

Design your collection structure before importing content. Collections are the foundation of your organization.

Use Series Strategically

Group related content into series for better discovery and user engagement.

Consistent Speaker Names

Maintain consistent speaker naming to avoid duplicates (e.g., don’t create both “John Smith” and “Pastor John”).

Add Descriptive Metadata

Use descriptions and subtitles to provide context and improve searchability.

URL Slugs

Items and series can have custom URL slugs for user-friendly URLs:
Slug Rules:
  • Lowercase letters, numbers, and hyphens only
  • Must be unique within your customer account
  • Auto-generated from title if not provided

Next Steps

Media Management

Learn how to attach media assets to your items

Managing Content Guide

Step-by-step guide to creating and organizing content