Skip to main content
POST /api/public/feed returns the authenticated Pro account’s feed, newest first. It uses a JSON request body and Bearer authentication.

Request body

FieldTypeRequiredDescription
cursorstring or nullNoThe 24-character nextCursor from the previous response.
limitintegerNoEvents per page, from 1 to 200. Defaults to 50.
typesstring[]NoUp to 100 event type values. Empty or omitted means all types.
channelIdsstring[]NoUp to 100 Monitor YT channel IDs. Empty or omitted means all tracked channels.
channelIds uses channel.id from a feed response, not YouTube’s channel.youtubeChannelId value.
curl -H "Authorization: Bearer $MONITOR_YT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "limit": 50,
    "types": ["video_published", "thumbnail_changed"],
    "channelIds": ["665f21c09b1d8a4f30aa5678"]
  }' \
  "https://monitoryt.com/api/public/feed"

Response

FieldTypeDescription
eventsobject[]Feed events in reverse chronological order.
nextCursorstring or nullCursor for the next older page, or null at the end.
Every event has id, type, createdAt, and channel. Video event fields vary by type. See API event objects for the complete discriminated union.

Filter behavior

Values within one filter array use OR semantics. When both types and channelIds are present, they use AND semantics with each other. For example, two types and three channels means “either selected type, from any of the three selected channels.”

Retention

The endpoint respects the account’s history window. Public API access requires Pro, so it currently returns up to the Pro plan’s 60 days of available feed history.