Photos
Step 1 of upload: get presigned upload URLs
Reserves one upload slot per file (up to 50 per call) and returns a presigned S3 URL for each. The full upload flow:
- This call. Send filename, content_type and size_bytes for each file. Accepted types: JPEG, PNG, WebP photos (up to 50 MB each) and MP4, QuickTime, WebM videos (up to 1 GB each); any other type or size rejects the whole batch with 400 invalid_request and details.rejected. The plan's storage limit (and video storage limit, on plans that have one) is checked against the declared sizes; going over returns 429 quota_exceeded with the byte counts in details.
- PUT the bytes. For each slot, PUT the raw file bytes to presigned_url with the same Content-Type you declared, before expires_at (15 minutes). This request goes straight to S3: do not send your FindMe Authorization header. Resize photos to the album quality first: the long edge must not exceed 800, 3000 or 4000 px for those qualities, or 8000 px for 15mb (the response repeats the album's album_quality).
- Confirm the uploaded slots with confirmPhotoUploads. Until then the slot stays pending and the photo is not in the album.
- Release any slot you will not fill (cancelled export, failed PUT) with releasePhotoUploads.
batch_id is informational; no other endpoint takes it. Not idempotent: every call reserves new slots.
post/events/{id}/photos
Request
- Base URL: https://findme.photo/api/v1
- URL: https://findme.photo/api/v1/events/{id}/photos
- Auth: HTTP bearer
Request body
Response
Upload slots with presigned URLs.
Changes
No recorded changes to this operation across all 1 revision of this API.