---
title: "Set social image"
method: POST
path: "/api/apps/{app_id}/metadata/social-image"
---

# Set social image

`POST /api/apps/{app_id}/metadata/social-image`

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Sets the image shown when someone shares a link to the app, or removes it.

Send an `https` URL, such as the public link from [Upload app file](/api-reference/upload-app-file), or `null` to remove the image. Leaving `social_image_url` out also removes it. The URL isn't fetched or checked. The published app picks up the change within moments, without a new deploy. A preview image set for a specific page takes precedence on that page, and without a social image, link previews fall back to the app's logo.

<Note>This endpoint accepts a personal API key belonging to a user with editor access to the app. A read-only key is refused, and workspace API keys are not accepted.</Note>

<Warning>The response includes fields beyond the ones documented here. Don't rely on undocumented response fields, as they can change at any time. Send only the fields documented here. Other request fields are not supported and their behavior can change.</Warning>

## Path parameters

- `app_id` string, required — ID of the app to set the social image on.

## Request body

- SocialImagePayload
  - `social_image_url` string, nullable — `https` URL of the image to show in link previews, up to 2048 characters, or `null` to remove the current one. Leaving it out also removes it.

## Response `200`

The app with its new social image.

- AppSocialImage — Doc-only: the handler returns the whole app document.
  - `id` string, required — ID of the app.
  - `social_image_url` string, nullable, required — URL of the image shown when someone shares the app's link, or `null` when you removed it.

## Other responses

- `401` — Missing or invalid credentials.
- `403` — You don't have editor access to this app, or your API key is read-only.
- `404` — App not found.
- `422` — `social_image_url` isn't an `https` URL, or it's longer than 2048 characters.

## Changes

> 18 revisions in range; 1 not diffed.

- **2026-09-28** `28fc82924122` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/adexad/apis/base44-app-management-api/changes/api/apps/:app_id/metadata/social-image/post.md)

---

[API](https://skmtc.dev/adexad/apis/base44-app-management-api.md) · [All operations](https://skmtc.dev/adexad/apis/base44-app-management-api/llms.txt) · [OpenAPI document](https://skmtc.dev/adexad/apis/base44-app-management-api/revisions/28fc82924122?raw)
