Claude defaults to thumbnails for large videos instead of using multi-part uploads
What happened
When uploading videos to Notion via the file upload API, Claude sees files over 20MB and immediately falls back to extracting first-frame thumbnails with ffmpeg. It doesn't attempt multi-part uploads, even though the Notion API supports them and they work fine.
Expected behaviour
Claude should use Notion's multi-part upload API ("mode": "multi_part") for files over 20MB, splitting into ~10MB chunks. The workflow:
POST /v1/file_uploadswith"mode": "multi_part", "number_of_parts": NPOST /v1/file_uploads/{id}/sendwith-F "part_number=N"for each chunkPOST /v1/file_uploads/{id}/complete- Reference as
{"type": "video", "video": {"type": "file_upload", "file_upload": {"id": "..."}}}
This works for 25-64MB MP4s. The thumbnail fallback should only be used if multi-part upload genuinely fails, not as the default path.
Why it matters
The user gets static thumbnails instead of playable videos in their Notion pages. They then have to ask "why can't you upload the videos?" before Claude discovers it can.
Root cause
Claude's memory/training includes "Notion's single-part upload cap is 20MB" as a hard constraint and doesn't know about the multi-part alternative. Once told, it implements the multi-part flow correctly on the first attempt.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗