Links

Clipboard

Use the Clipboard APIs to work with text from your clipboard and current selection. You can write contents to the clipboard through Clipboard.copy and clear it through Clipboard.clear. The Clipboard.paste function inserts text at the current cursor position in your frontmost app.
The action Action.CopyToClipboard can be used to copy content of a selected list item to the clipboard and the action Action.Paste can be used to insert text at in your frontmost app.

API Reference

Clipboard.copy

Copies text or a file to the clipboard.

Signature

async function copy(content: string | Content): Promise<void>;

Example

import { Clipboard } from "@raycast/api";
export default async function Command() {
// copy some text
await Clipboard.copy("https://raycast.com");
const textContent: Clipboard.Content = {
text: "https://raycast.com",
};
await Clipboard.copy(textContent);
// copy a file
const file = "/path/to/file.pdf";
try {
const fileContent: Clipboard.Content = { file };
await Clipboard.copy(fileContent);
} catch (error) {
console.log(`Could not copy file '${file}'. Reason: ${error}`);
}
}

Parameters

Name
Description
Type
content*
The content to copy to the clipboard.
string or number or Clipboard.Content

Return

A Promise that resolves when the content is copied to the clipboard.

Clipboard.paste

Pastes text or a file to the current selection of the frontmost application.

Signature

async function paste(content: string | Content): Promise<void>;

Example

import { Clipboard } from "@raycast/api";
export default async function Command() {
await Clipboard.paste("I really like Raycast's API");
}

Parameters

Name
Description
Type
content*
The content to insert at the cursor.
string or number or Clipboard.Content

Return

A Promise that resolves when the content is pasted.

Clipboard.clear

Clears the current clipboard contents.

Signature

async function clear(): Promise<void>;

Example

import { Clipboard } from "@raycast/api";
export default async function Command() {
await Clipboard.clear();
}

Return

A Promise that resolves when the clipboard is cleared.

Clipboard.readText

Reads the clipboard as plain text.

Signature

async function readText(): Promise<string | undefined>;

Example

import { Clipboard } from "@raycast/api";
export default async function Command() {
const text = await Clipboard.readText();
console.log(text);
}

Return

A promise that resolves when the clipboard content was read as plain text.

Types

Clipboard.Content

Type of Content that is copied and pasted to and from the Clipboard
type Content =
| {
text: string;
}
| {
file: PathLike;
};