---
title: "Create or update a custom UI extension"
method: PUT
path: "/{id}"
tags: ["UI Extensions Config Operations"]
---

# Create or update a custom UI extension

`PUT /{id}`

Create or update a UI extension to be managed through the Integrations Library. When creating an extension, its ID must be unique across all existing extensions, whether or not managed through the Integrations Library.<br/>The following will cause an HTTP 409 Conflict response:<ul><li>No version is provided, and the provided ID exists;</li><li>A version is provided, and the provided ID does not exist;</li><li>A version is provided, but its value is not the latest.</li></ul>

## Path parameters

- `id` string, required

## Headers

- `X-Resource-Version` string

## Request body

- UiExtension — Represents configurations for a UI extension. See [official documentation](https://xmdocumentation.bloomreach.com/library/concepts/open-ui/configure-a-document-field-extension.html)
  - `id` string — ID of a UI extension
  - `displayName` string, required — Display name of the extension
  - `url` string, required — The URL on which the extension is served
  - `config` string, required — JSON string to configure the Open UI extension
  - `extensionPoint` 'document.field' | 'channel.page.tools' | 'unknown', required — The type of extension point. For extensions on content-type fields, this is always 'document.field'
  - `height` integer — The initial height of the iframe in pixels (default is 60)
  - `description` string — Description of the extension
  - `logo` string — Logo (Icon) of the extension. Should be a base64 string representation of the image
  - `package` string — The relative path of the UI Extensions Package where this extension is installed from, e.g. bynder/v1
  - `connect-src` string[] — URLs for external systems that need to be called by an extension
  - `frame-ancestors` string[] — URLs for external systems that need to be loaded in child iframes by an extension
  - `frame-src` string[] — URLs for external servers that host extensions
  - `img-src` string[] — URLs for external systems that host images used or exposed by extensions
  - `script-src` string[] — URLs for external systems that host scripts used by extensions
  - `style-src` string[] — URLs for external systems that host styles used by extensions
  - `font-src` string[] — URLs for external systems that host fonts used by extensions
  - `media-src` string[] — URLs for external systems that host media used by extensions

## Response `200`

OK

- UiExtension — Represents configurations for a UI extension. See [official documentation](https://xmdocumentation.bloomreach.com/library/concepts/open-ui/configure-a-document-field-extension.html)
  - `id` string — ID of a UI extension
  - `displayName` string, required — Display name of the extension
  - `url` string, required — The URL on which the extension is served
  - `config` string, required — JSON string to configure the Open UI extension
  - `extensionPoint` 'document.field' | 'channel.page.tools' | 'unknown', required — The type of extension point. For extensions on content-type fields, this is always 'document.field'
  - `height` integer — The initial height of the iframe in pixels (default is 60)
  - `description` string — Description of the extension
  - `logo` string — Logo (Icon) of the extension. Should be a base64 string representation of the image
  - `package` string — The relative path of the UI Extensions Package where this extension is installed from, e.g. bynder/v1
  - `connect-src` string[] — URLs for external systems that need to be called by an extension
  - `frame-ancestors` string[] — URLs for external systems that need to be loaded in child iframes by an extension
  - `frame-src` string[] — URLs for external servers that host extensions
  - `img-src` string[] — URLs for external systems that host images used or exposed by extensions
  - `script-src` string[] — URLs for external systems that host scripts used by extensions
  - `style-src` string[] — URLs for external systems that host styles used by extensions
  - `font-src` string[] — URLs for external systems that host fonts used by extensions
  - `media-src` string[] — URLs for external systems that host media used by extensions

## Other responses

- `201` — Created
- `403` — Forbidden
- `409` — Conflict

---

[API](https://skmtc.net/bloomreach/apis/documents-delivery-api-2-0.md) · [All operations](https://skmtc.net/bloomreach/apis/documents-delivery-api-2-0/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bloomreach/documents-delivery-api-2-0/revisions/87bfc06578c2/schema)
