> Portal Navigation:
> 
> - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version.
> - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages).
> - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`).
> - Top-level index of all portals: https://dev.wix.com/docs/llms.txt
> - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt

## Resource: selectMedia()

## Article: selectMedia()

## Article Link: https://dev.wix.com/docs/sdk/host-modules/editor/react-elements/pickers/select-media.md

## Article Content:

<!-- Source: packages/public-editor-platform-sdk/src/element/index.ts in wix-private/editor-platform -->
# selectMedia()

Opens the Wix Media Manager for the selected component, letting a Wix user choose images, videos, or other media.

## Syntax

```ts
function selectMedia(params: SelectMediaParams): Promise<MediaItem[] | undefined>
```

## Parameters

`params` accepts one of the following shapes:

- [Manifest key](#manifest-key)
- [Explicit options](#explicit-options)

For more information on this choice, see [Picker arguments](https://dev.wix.com/docs/sdk/host-modules/editor/react-elements/introduction.md#picker-arguments).

### Manifest key

Connects the picker to a manifest `data` field, so the selected media saves to it automatically.

| Name | Type | Description |
| :---- | :---- | :---- |
| `dataItemKey` | string | Key of a `data` field with `dataType: 'image'` or `'video'` in the manifest. The editor reads the current value, opens the media manager, and saves the selection back to this field automatically. |

### Explicit options

Opens the media manager without connecting it to the manifest, so you decide what to do with the selected media.

| Name | Type | Description |
| :---- | :---- | :---- |
| `isMultiSelect` | boolean | Whether a Wix user can select more than one media item. |
| `category` | string | Restricts the media manager to a specific category, such as `'image'`, `'WELCOME_SCREEN'`, or `'SOCIAL_ICONS'`. |

## Returns

`Promise<MediaItem[] | undefined>`

An array of the selected media items, or `undefined` if the Wix user closes the media manager without selecting anything.

## Example

```js
import { reactElements } from '@wix/editor';

const selectedMedia = await reactElements.selectMedia({
  isMultiSelect: false,
  category: 'image',
});

if (selectedMedia?.[0]) {
  await reactElements.setData({ image: selectedMedia[0] });
}
```

## See also

- [setData()](https://dev.wix.com/docs/sdk/host-modules/editor/react-elements/data/set-data.md)
- [About the React Elements API](https://dev.wix.com/docs/sdk/host-modules/editor/react-elements/introduction.md)