---
title: "Upload or remove the background photo"
description: "Sets the photo that fills a booking page behind its card, or deletes it. The body is the image itself, not JSON."
url: "https://openemail.uk/docs/api/bookings/background"
area: "API"
category: "Mailbox"
---

# Upload or remove the background photo

Sets the photo that fills a booking page behind its card, or deletes it. The body is the image itself, not JSON.

`PUT /booking-pages/{id}/background`

**Also documents:** `DELETE /booking-pages/{id}/background`

## PUT /booking-pages/{id}/background

Sets the photo that fills a booking page behind its card, or deletes it. The body is the image itself, not JSON.

## Example

Needs `calendar:write` and `emails:send`. Send the bytes with their type in `Content-Type`: PNG, JPEG, WebP or GIF, up to 5 MB. The photo is fitted into 2560 by 1600 pixels and stored as WebP.

**curl**

```
curl -X PUT "$OE/booking-pages/bkp_5c1e9a7b3d2f48e6a0b4c7d1/background" -H "$AUTH" \
  -H "Content-Type: image/jpeg" --data-binary @office.jpg
curl -X DELETE "$OE/booking-pages/bkp_5c1e9a7b3d2f48e6a0b4c7d1/background" -H "$AUTH"
```

**Response**

```
{
  "object": "booking_page",
  "id": "bkp_5c1e9a7b3d2f48e6a0b4c7d1",
  "slug": "intro-call",
  "name": "Intro call",
  "status": "active",
  "url": "https://openemail.uk/book/intro-call",
  "problem": null,
  "config": {
    "description": "A first chat about your project.",
    "hostName": "Hana Sato",
    "durations": [30],
    "location": { "kind": "video", "value": "https://meet.example.com/hana" },
    "availability": {
      "timezone": "Europe/Berlin",
      "weekly": [
        [],
        [{ "start": 540, "end": 1020 }],
        [{ "start": 540, "end": 1020 }],
        [{ "start": 540, "end": 1020 }],
        [{ "start": 540, "end": 1020 }],
        [{ "start": 540, "end": 1020 }],
        []
      ],
      "overrides": [{ "date": "2026-12-24", "ranges": [] }]
    },
    "rules": {
      "noticeMinutes": 240,
      "horizonDays": 60,
      "intervalMinutes": null,
      "bufferBeforeMinutes": 0,
      "bufferAfterMinutes": 15,
      "dailyLimit": null
    },
    "approval": false,
    "fromEmail": "hana@acme.com",
    "notifyHost": true,
    "questions": [
      { "id": "notes", "kind": "long-text", "label": "Anything we should know?", "required": false, "options": [] }
    ],
    "confirmation": "",
    "redirectUrl": "",
    "appearance": {
      "accent": "#2563eb",
      "theme": "auto",
      "showAvatar": true,
      "background": "image",
      "fonts": { "primary": null, "secondary": null },
      "backgroundImage": "https://cdn-prod.openemail.uk/booking/backgrounds/0199a1c3-0f2e-7c61-8d4a-5b1e9f7a2c36.webp"
    },
    "guestChanges": { "cancel": true, "reschedule": true, "cutoffMinutes": 120 },
    "busy": { "addresses": null, "subscriptions": true, "outOfOffice": true },
    "seo": { "title": "", "description": "", "indexable": false },
    "extraGuests": 0
  },
  "counts": { "upcoming": 3, "pending": 0 },
  "away": [
    { "address": "hana@acme.com", "startsAt": "2026-12-22T00:00:00.000Z", "endsAt": "2027-01-02T00:00:00.000Z" }
  ],
  "createdAt": "2026-10-13T07:00:05.870Z",
  "updatedAt": "2026-10-13T07:00:05.870Z"
}
```

> Uploading replaces the photo there was, sets `config.appearance.background` to `image` and puts the address of the photo in `config.appearance.backgroundImage`.

> To show a preset or a colour again and keep the photo for later, change `config.appearance.background` with a PATCH. A PATCH to `image` while no photo is uploaded answers 422 `invalid_booking_page`.

> Removing deletes the stored photo. A page that showed it goes back to `default`, and removing a photo that is not set changes nothing.

> An SVG, an image over 5 MB or one that cannot be read answers 422 `invalid_image`. A busy image service answers 503 `image_busy`, and a failed save 502 `image_not_stored`, so try again.

## Reference

- [`PUT /booking-pages/{id}/background`](https://openemail.uk/docs/api/reference/booking-pages#put-booking-pages-id-background): full reference
- [`DELETE /booking-pages/{id}/background`](https://openemail.uk/docs/api/reference/booking-pages#delete-booking-pages-id-background): full reference
