API Documentation
picrd.com is free, account-free image hosting with a simple REST API.
Base URL: https://picrd.com — Images: https://i.picrd.com
POST /api/upload
Upload an image. Returns page and direct image URLs.
Request — multipart/form-data
file (required) Image file — PNG, JPEG, WebP, GIF — max 10 MB visibility "unlisted" | "public" default: unlisted ttl_seconds integer, optional omit for permanent album_id string, optional add to an existing album
Response 200
{
"image_id": "Ab3xK9xQ2Lm",
"page_url": "https://picrd.com/Ab3xK9xQ2Lm",
"image_url": "https://i.picrd.com/images/Ab3xK9xQ2Lm.png",
"delete_url":"https://picrd.com/delete/<token>",
"expires_at": null
}
Errors
400 Invalid file type, too large, or bad params 429 Rate limited (60 uploads/hour per IP)
POST /api/album
Create an album. Use the returned album_id in upload requests.
Response 200
{
"album_id": "J82Lm9Qp2X1",
"album_url": "https://picrd.com/a/J82Lm9Qp2X1"
}
GET /api/album/{album_id}
List images in an album, ordered by position.
Response 200
{
"album_id": "J82Lm9Qp2X1",
"images": [
{
"image_id": "Ab3xK9xQ2Lm",
"page_url": "https://picrd.com/Ab3xK9xQ2Lm",
"image_url": "https://i.picrd.com/images/Ab3xK9xQ2Lm.png"
}
]
}
Image URLs
Raw images are served from https://i.picrd.com/images/{id}.{ext} with long cache headers. These URLs never change once assigned and are safe to embed anywhere.
Delete
The delete_url returned on upload is a secret single-use URL. Visit it in a browser to confirm deletion. Store it somewhere safe — it cannot be retrieved later.
Rate limits
60 uploads per hour per IP. Read endpoints are not rate limited.
curl example
curl -F "[email protected]" -F "visibility=unlisted" https://picrd.com/api/upload