Versions

In addition to the authorization header, all requests must also include a Public-Api-Version header:

Public-Api-Version: VERSION

Versions in the Grain API are used to introduce and/or deprecate both endpoints and fields.

Status

Each version has a status describing its state in the lifecycle.

Status
current Current Version. New features and endpoints are added to this version only.
deprecated Still live, but will move to sunsetting.
sunsetting Will be sunset on the specified date. Rate-limits to this version will be gradually reduced.
retired No longer supported, requests using this version will error.

Available Versions

Version Status
2026-10-01 current
2025-10-31 deprecated

Changelog

2026-10-01

  • Added:
    • List Uploads POST /_/public-api/v2/uploads
    • Get Upload POST /_/public-api/v2/uploads/:upload_id
    • Create Upload POST /_/public-api/v2/uploads/create
    • Update Upload PATCH /_/public-api/v2/uploads/:upload_id
    • Promote Upload POST /_/public-api/v2/uploads/:upload_id/promote
    • Token Info GET /_/public-api/v2/token-info
    • List Stories POST /_/public-api/v2/stories
    • List Playlists POST /_/public-api/v2/playlists
    • Create Playlist POST /_/public-api/v2/playlists/create
    • Get Playlist GET /_/public-api/v2/playlists/:playlist_id
    • List Playlist Recordings GET /_/public-api/v2/playlists/:playlist_id/recordings
    • Update Playlist PATCH /_/public-api/v2/playlists/:playlist_id
    • Delete Playlist DELETE /_/public-api/v2/playlists/:playlist_id
    • Add a Recording to a Playlist PUT /_/public-api/v2/playlists/:playlist_id/recordings/:recording_id
    • Remove a Recording from a Playlist DELETE /_/public-api/v2/playlists/:playlist_id/recordings/:recording_id
    • Share Playlist to a User PUT /_/public-api/v2/playlists/:playlist_id/users/:user_id
    • Unshare Playlist from a User DELETE /_/public-api/v2/playlists/:playlist_id/users/:user_id
    • Share Playlist to a Team PUT /_/public-api/v2/playlists/:playlist_id/teams/:team_id
    • Unshare Playlist from a Team DELETE /_/public-api/v2/playlists/:playlist_id/teams/:team_id
    • Create Clip POST /_/public-api/v2/clips/create
    • Update Clip PATCH /_/public-api/v2/clips/:clip_id
    • Delete Clip DELETE /_/public-api/v2/clips/:clip_id
  • Removed:
    • Upload Recording POST /_/public-api/v2/recordings/upload
    • upload_status hook type

2025-10-31

  • First Version