# Publishing and visibility

> Draft and published states, the three visibility values, and what the pre-flight checks block.

**Status** and **Visibility** are independent properties. Status is whether the
blueprint has ever been published. Visibility is who may read it once it has
been.

![blueprint:josh/publishing-states](https://blueprintr.io/embed/josh/publishing-states#h=500)

## Status

A new blueprint is a **draft**: only you and anyone you share it with can see
it, whatever its visibility says. Publishing makes the current content the
live version. Editing afterwards creates a new draft against that version, so
readers keep seeing the last published state until you publish again.

## Visibility

| Value | Who can read it | Indexed |
| --- | --- | --- |
| Public | Anyone | Yes |
| Unlisted | Anyone with the link | No |
| Private | You, and anyone it is shared with | No |

> [!IMPORTANT]
> An unlisted URL is unguessable, not protected. Anything that would matter if
> it leaked should be private.

## Pre-flight checks

Publishing is blocked until these pass:

- an empty diagram canvas
- a tab with no content
- a missing title
- a rich tab containing only whitespace

Each finding links to the thing to fix.

## Ownership and classification

**Publish to** sets the owner: you, a team, or an organisation, as described in
[where content lives](/foliums/blueprintr-user-guide/start/where-content-lives).

Organisations can apply a
[**classification**](/foliums/blueprintr-user-guide/teams/policies) that
constrains what visibility a blueprint is allowed to have. Where a
classification is set, you cannot publish above the ceiling it defines.
