Skip to content

POST/photos

Create photo

Create a new photo. Fields `id`, `createdAt`, `updatedAt` are auto-generated. Triggers `photos.created` webhook.

ReturnsPhoto

AcceptsPhotoInput

Bearer token required

Response examples

201Photo created

application/json example derived from schema

{
  "id": 1,
  "albumId": 1,
  "title": "Photo 1",
  "url": "https://picsum.photos/seed/1/800/960",
  "thumbnailUrl": "https://picsum.photos/seed/1/150/150",
  "width": 800,
  "height": 960,
  "size": 4803273,
  "format": "jpeg",
  "createdAt": "2026-07-24T20:47:13.121Z"
}
400400 — invalid input or malformed JSON

application/json

{
  "error": {
    "status": 400,
    "message": "Request body required"
  }
}
413413 — body exceeds 64 KB

application/json

{
  "error": {
    "status": 413,
    "message": "Request body too large",
    "details": {
      "maxSize": "64 KB"
    }
  }
}
429429 — rate limit exceeded (120/60s)

application/json

{
  "error": {
    "status": 429,
    "message": "Too many requests",
    "details": {
      "retryAfter": 45
    }
  }
}

Released under the MIT License.