Skip to main content
GET
/
items
List items
curl --request GET \
  --url https://api.thehaystack.ai/v2/haystack/items \
  --header 'Authorization: Bearer <token>'
{
  "items": [
    {
      "id": 123,
      "title": "The Power of Prayer",
      "subTitle": "<string>",
      "description": "<string>",
      "shortDescription": "<string>",
      "date": "2025-01-15",
      "collectionId": 123,
      "seriesId": 123,
      "orderInSeries": 123,
      "urlSlug": "<string>",
      "durationSecs": 123,
      "status": "draft",
      "wizardStep": "basicDetails",
      "publishedDate": "2023-11-07T05:31:56Z",
      "autoPublish": true,
      "squareImgUrl": "<string>",
      "wideImgUrl": "<string>",
      "ultraWideImgUrl": "<string>",
      "verticalImgUrl": "<string>",
      "entryDate": "2023-11-07T05:31:56Z",
      "collection": {
        "id": 1,
        "name": "Sunday Sermons",
        "itemDescriptor": "sermon"
      },
      "series": {
        "id": 123,
        "title": "The Gospel of John",
        "subTitle": "<string>",
        "collectionId": 123,
        "description": "<string>",
        "shortDescription": "<string>",
        "sortOrder": 123,
        "itemSortDirection": "DESC",
        "showItemOrderInSeries": true,
        "urlSlug": "<string>",
        "colorHex": "#FF5733",
        "squareImgUrl": "<string>",
        "wideImgUrl": "<string>",
        "ultraWideImgUrl": "<string>",
        "published": true
      },
      "speakers": [
        {
          "id": 123,
          "name": "Pastor John Smith",
          "bio": "<string>",
          "imageUrl": "<string>"
        }
      ],
      "scriptures": [
        {
          "id": 123,
          "itemId": 123,
          "book": "<string>",
          "bookName": "Matthew",
          "chapter": 123,
          "verseStart": 123,
          "verseEnd": 123,
          "keyVerse": true,
          "suggested": true,
          "accepted": true,
          "displayOrder": 123,
          "citation": "Matthew 5:1-12",
          "hidden": true
        }
      ],
      "mediaAssets": [
        {
          "id": 123,
          "itemId": 123,
          "contentType": "video",
          "status": "created",
          "duration": 123,
          "muxAssetId": "<string>",
          "muxPlaybackId": "<string>",
          "variantTypeId": 123,
          "variantType": {
            "id": 123,
            "name": "Sermon Video",
            "contentType": "video",
            "indexable": true,
            "displayOrder": 123,
            "collectionId": 123
          }
        }
      ],
      "resources": [
        {
          "id": 123,
          "itemId": 123,
          "title": "<string>",
          "subTitle": "<string>",
          "description": "<string>",
          "resourceTypeId": 123,
          "displayOrder": 123,
          "contentType": "file",
          "fileMimeType": "<string>",
          "fileSizeBytes": 123,
          "externalPlatform": "youtube",
          "externalPlatformId": "<string>",
          "thumbnailImgUrl": "<string>",
          "url": "<string>"
        }
      ]
    }
  ],
  "limit": 123,
  "offset": 123,
  "page": 123,
  "totalRecords": 123,
  "totalPages": 123,
  "hasMore": true
}

Authorizations

Authorization
string
header
required

Enter your API token from the Haystack dashboard

Query Parameters

collectionId
integer
seriesId
integer
status
enum<string>

Filter by item status

Available options:
draft,
queued,
processing,
ready,
published,
unpublished,
error
_limit
integer
default:50

Maximum number of records to return (max: 100, default: 50)

Required range: 1 <= x <= 100
_offset
integer
default:0

Number of records to skip for pagination (default: 0)

Required range: x >= 0
_orderBy[]
string[]

Sort order in format 'fieldName,direction' (e.g., 'title,ASC'). Use multiple _orderBy[] parameters for multi-field sorting.

_expand[]
enum<string>[]

Related entities to include in the response

Available options:
collection,
series,
speakers,
scriptures,
mediaAssets,
resources
_withDeleted
boolean
default:false

Include soft-deleted records in the results

Response

200 - application/json

List of items with pagination metadata (limit, offset, page, totalRecords, totalPages, hasMore)

items
object[]
limit
integer

Number of results per page

offset
integer

Number of results skipped

page
integer

Current page number (0-indexed)

totalRecords
integer

Total number of matching records

totalPages
integer

Total number of pages

hasMore
boolean

Whether more pages exist