> For the complete documentation index, see [llms.txt](https://docs.slatecx.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.slatecx.com/guides/entry-points.md).

# Entry points

An entry point is a published way into a campaign. Every prospect arrives through one, and it decides what the first moments of the Slate look like.

## Create one

```
POST /tenants/:tenantId/campaigns/:campaignId/entry-points
```

## Core settings

| Field                        | Notes                                                      |
| ---------------------------- | ---------------------------------------------------------- |
| `name`                       | Up to 255 characters                                       |
| `greetingMessage`            | Persisted as the first assistant message on each new Slate |
| `emailButtonLabel`           | Up to 80 characters, default `View Slate`                  |
| `personalizedWelcomeEnabled` | Default `false`                                            |
| `saveSlatePromptMode`        | `never` or `unknown_prospect`, default `never`             |
| `assetPanelLayoutVariant`    | Copied onto a Slate only when the entry point creates it   |
| `initialCampaignCardId`      | Desktop-only initial auto-open card                        |

## Attach cards

Entry points link zero or more active campaign cards. The same campaign card can be reused by several entry points.

## Select starter prompts

Up to five active campaign prompt suggestions can be selected. Admin sees them as ordered `starterPromptSuggestions`.

Public Wallet bootstrap omits starter prompt text entirely. A participant reads `starterPrompts` from `GET /slates/:slateId` instead, derived from that Slate's entry attribution.

## Card link behavior in embeds

`embeddedCardLinkBehavior` controls what happens when a prospect follows a card link inside an embed:

| Value                             | Behavior                                                                                     |
| --------------------------------- | -------------------------------------------------------------------------------------------- |
| `open_card`                       | Open card detail inside the Slate. This is the default                                       |
| `navigate_host_for_card_link_url` | Replace the host page with the card's host-navigation URL, preserving participant continuity |
| `open_card_link_url_in_new_tab`   | Open the URL in a new tab, leaving the page and conversation in place                        |

Only `navigate_host_for_card_link_url` uses the slate-scoped handoff endpoint. Eligible domains are derived from the entry point's linked active campaign cards; empty derived domains still allow same-origin links.

## Desktop filmstrip

`embeddedDesktopFilmstripEnabled` defaults to `false`. When false, desktop embeds stay chat-first by hiding the browse filmstrip while still collecting cards.

## Share the entry point

| Channel       | How                                                                                       |
| ------------- | ----------------------------------------------------------------------------------------- |
| Link          | The public shortlink `/e/:token`                                                          |
| Email         | Copy a rich HTML CTA using `emailButtonLabel`                                             |
| SMS           | `POST /tenants/:tenantId/campaigns/:campaignId/entry-points/:entryPointId/push-to-mobile` |
| Website       | The embed snippet, see [Embed widget](broken://pages/cjAFA8i7EzjwWLpzmaaX)                |
| Per-recipient | Dynamic links, below                                                                      |

## Dynamic links

A dynamic link is a tokenized launch URL carrying one customized PDF initial card. Create them from Admin or from your own systems with the public API:

```
POST /tenants/:tenantId/campaigns/:campaignId/entry-points/:entryPointId/dynamic-links
POST /v1/entry-points/:entryPointId/dynamic-links
```

See [Public API](https://github.com/Slate-Technologies-Group/slatecx/tree/docs/docs/reference/public-api.md).

## Preview

```
POST /tenants/:tenantId/campaigns/:campaignId/entry-points/:entryPointId/preview-session
```

Preview sessions are authenticated and short-lived, and cover desktop, mobile, and embedded previews.

## Disabled entry points

An entry point can be disabled automatically with `disabledReason: default_card_unavailable` when its selected initial card is no longer available.

## See also

* [Entry points](/concepts/entry-points.md)
* [Embed configuration](https://github.com/Slate-Technologies-Group/slatecx/tree/docs/docs/reference/embed-config.md)
