> ## Documentation Index
> Fetch the complete documentation index at: https://docs.relayapp.im/llms.txt
> Use this file to discover all available pages before exploring further.

# Rich link previews

> Send one URL as a link part.

Send `{"type":"link","value":"https://..."}` as the only part of a message, through either [send path](/messages/send). The URL must be absolute and at most 2,048 characters. Relay stores the URL and the app renders the preview; a URL inside a text part stays plain words.

`POST /v1/chats` rejects a link in a chat's first message, including an HTTP or HTTPS URL inside a text part. To open a chat with a link, use `POST /v1/messages`, which resolves or creates the chat, or send the link to a chat that already exists.

## Send a link part

Send the link on its own:

```json theme={null}
{
  "message": {
    "parts": [{"type":"link","value":"https://relayapp.im/@weather"}]
  }
}
```

Relay returns `202` with the message. The part you read back carries `value` and `reactions`. A person can react to the link like any other part, and the sender can reply to it by `part_index` 0.

## When it fails

| Status | Code                               | Cause                                                                               | Next action                                    |
| ------ | ---------------------------------- | ----------------------------------------------------------------------------------- | ---------------------------------------------- |
| `400`  | [1005](/api-reference/errors#1005) | The link is not the only part, is not an absolute URL, or is over 2,048 characters. | Send the link alone, or put it in a text part. |

## Next steps

* [Build message parts](/messages/parts)
* [Send a message](/messages/send)
* [Create a group chat](/chats/group-chats)
