Image Upload for GitHub
Upload an image to img402.dev's free tier and embed the returned URL in GitHub markdown.
Quick reference
bash
# Upload (multipart)
curl -s -X POST https://img402.dev/api/free -F image=@/tmp/screenshot.png
# Response
# {"url":"https://i.img402.dev/aBcDeFgHiJ.png","id":"aBcDeFgHiJ","contentType":"image/png","sizeBytes":182400,"expiresAt":"2026-02-17T..."}
Workflow
- •Get image: Use an existing file, or capture a screenshot:
bash
screencapture -x /tmp/screenshot.png # macOS — full screen screencapture -xw /tmp/screenshot.png # macOS — frontmost window
- •Verify size: Must be under 1MB. If larger, resize:
bash
sips -Z 1600 /tmp/screenshot.png # macOS — scale longest edge to 1600px
- •Upload:
bash
curl -s -X POST https://img402.dev/api/free -F image=@/tmp/screenshot.png
- •Embed the returned
urlin GitHub markdown:markdown
GitHub integration
Use gh CLI to embed images in PRs and issues:
bash
# Add to PR description gh pr edit --body "$(gh pr view --json body -q .body) " # Add as PR comment gh pr comment --body "" # Add to issue gh issue comment 123 --body ""
Constraints
- •Max size: 1MB
- •Retention: 7 days — suitable for PR reviews, not permanent docs
- •Formats: PNG, JPEG, GIF, WebP
- •Rate limit: 1,000 free uploads/day (global)
- •No auth required
Tips
- •Prefer PNG for UI screenshots (sharp text). Use JPEG for photos.
- •If a screenshot is too large, reduce dimensions with
sips -Z 1600before uploading. - •When adding to a PR body or comment, use
gh pr commentorgh pr editwith the image markdown.
Paid tier
For permanent images (1 year, 5MB max), use the paid endpoint at $0.01 USDC via x402. See https://img402.dev/blog/paying-x402-apis for details.