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

# Bluesky notifications

> Announce new Bluesky posts from any account in your Discord server.

<Info>
  Requires **Basic**. Up to **10 accounts** per server. See [how notifications work](/en/notifications/overview) for the shared rules.
</Info>

## Adding an account

Enter the handle, for example `someone.bsky.social`. Vetox verifies it; an unresolvable handle is rejected with **Bluesky account not found**.

Handles are up to 100 characters.

## Settings

| Setting                       | Default         | Notes    |
| ----------------------------- | --------------- | -------- |
| **Discord Channel**           | —               | Required |
| **Notify on New Posts**       | **On**          |          |
| **Mention Role**              | None            |          |
| **Custom Notification Embed** | Bluesky default | Blue     |

## Variables

| Variable          | Resolves to                     |
| ----------------- | ------------------------------- |
| `{post.text}`     | The post body                   |
| `{post.url}`      | Link to the post                |
| `{post.image}`    | An attached image               |
| `{post.likes}`    | Like count at announcement time |
| `{author.name}`   | Display name                    |
| `{author.handle}` | Handle                          |
| `{author.avatar}` | Avatar                          |

## What is announced

Checked every **60 seconds** — the fastest of the six content platforms — with a **2-minute cooldown** per account.

| Post type      | Announced |
| -------------- | --------- |
| Original post  | **Yes**   |
| Reply          | No        |
| Repost         | No        |
| **Quote post** | **Yes**   |

<Note>
  Quote posts are treated as original posts, because they carry the author's own commentary. If an account quote-posts frequently, expect those to appear.
</Note>

There is no toggle for any of this — the filtering is fixed.

<Note>
  `{post.likes}` is a snapshot from the moment the announcement was built, seconds after posting. It will almost always read 0 and never updates afterwards. It is rarely worth including.
</Note>

## Troubleshooting

<AccordionGroup>
  <Accordion title="Replies are not being announced">
    Correct, and not configurable. Only original posts and quote posts fire.
  </Accordion>

  <Accordion title="The like count is always zero">
    It is captured within a minute of posting. Leave it out of your embed.
  </Accordion>

  <Accordion title="The handle is not found">
    Use the full handle including the domain — `name.bsky.social`, not `@name`.
  </Accordion>

  <Accordion title="Nothing arrives">
    Server Setup's Bluesky toggle, premium, and Embed Links in the channel.
  </Accordion>
</AccordionGroup>

<Card title="Reddit" icon="reddit" horizontal href="/en/notifications/reddit">
  The other social feed platform.
</Card>
