> ## Documentation Index
> Fetch the complete documentation index at: https://www.canva.dev/docs/apps/llms.txt
> Use this file to discover all available pages before exploring further.
# requestFontSelection
API reference for the requestFontSelection method.
Opens a font picker.
## Usage
### Open a font picker
```typescript
import { requestFontSelection } from "@canva/asset";
const response = await requestFontSelection();
```
### Open a font picker with a preselected font
```typescript
import { type FontRef, requestFontSelection } from "@canva/asset";
const placeholderFontRef = "PLACEHOLDER_FONT_REF" as FontRef;
const response = await requestFontSelection({
selectedFontRef: placeholderFontRef
});
```
### Handle font selection response
```typescript
import { requestFontSelection } from "@canva/asset";
const response = await requestFontSelection();
if (response.type === "completed") {
const { ref, name, weights } = response.font;
} else {
// Handle selection cancelled if needed
}
```
## Parameters
Options for configuring a font picker.
Properties of request>}>
The ref of a font to display as selected when the font picker is opened.
## Returns
The result of selecting a font from a font picker. This is a `Promise` that resolves with the following object:
The type of result.
The only valid value is `"completed"`.
The selected font.
Properties of font>}>
A unique identifier that points to a font asset in Canva's backend.
The name of the font.
The available font weights for the font.
Properties of weights>}>
The name of the font weight.
**Available values**:
* `"normal"`
* `"thin"`
* `"extralight"`
* `"light"`
* `"medium"`
* `"semibold"`
* `"bold"`
* `"ultrabold"`
* `"heavy"`
The font styles available for this specific font weight.
**Available values**:
* `"normal"`
* `"italic"`
The URL of an image that renders a preview of the font.
The type of result.
The only valid value is `"aborted"`.