Implement app.bsky.video upload and processing endpoints #22

Closed
opened 2026-04-12 17:29:04 +00:00 by Grandiras · 0 comments
Owner

Summary

ATProto.NET has no support for app.bsky.video endpoints. Video is an important part of the Bluesky experience and clients need to be able to upload and manage video content.

Endpoints to implement

  • app.bsky.video.uploadVideo - Upload a video file
  • app.bsky.video.getJobStatus - Check video processing status
  • app.bsky.video.getUploadLimits - Get upload limits for the authenticated user

Models needed

  • JobStatus - Video processing job status (state, progress, blob reference, error)
  • Video embed types already exist in the codebase (VideoEmbed) but the upload/processing workflow is missing

Implementation notes

  • Video upload is a multi-step process: upload → processing → get blob ref → embed in post
  • Processing is asynchronous, requiring polling via getJobStatus
  • Upload limits should be checked before attempting upload
  • Videos have size and duration limits that vary by service
## Summary ATProto.NET has no support for `app.bsky.video` endpoints. Video is an important part of the Bluesky experience and clients need to be able to upload and manage video content. ## Endpoints to implement - `app.bsky.video.uploadVideo` - Upload a video file - `app.bsky.video.getJobStatus` - Check video processing status - `app.bsky.video.getUploadLimits` - Get upload limits for the authenticated user ## Models needed - `JobStatus` - Video processing job status (state, progress, blob reference, error) - Video embed types already exist in the codebase (`VideoEmbed`) but the upload/processing workflow is missing ## Implementation notes - Video upload is a multi-step process: upload → processing → get blob ref → embed in post - Processing is asynchronous, requiring polling via `getJobStatus` - Upload limits should be checked before attempting upload - Videos have size and duration limits that vary by service
Sign in to join this conversation.
No description provided.