> For the complete documentation index, see [llms.txt](https://docs.cstplus.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cstplus.org/documentation/getting-started/quickstart.md).

# Quickstart

When you open the admin panel for the first time, CST+ walks you through a short setup wizard. This only happens once.

***

### Step 1: Create your admin account

On the first screen, set your admin username and password.

{% hint style="danger" %}
Use a strong password. This account has full control over all channels, lines, and settings. There is no email-based account recovery.
{% endhint %}

If you ever forget your password, reset it from the server via SSH:

```bash
cstplus admin reset USERNAME NEWPASSWORD
```

***

### Step 2: Activate your license

Paste the key from your account dashboard and click **Activate**. The key is verified and bound to this specific server.

{% hint style="warning" %}
Once activated, the same key cannot be used on a different machine without resetting the hardware binding first. Contact support if you need to move your license to a new server.
{% endhint %}

License status is shown on the Dashboard at all times. If the license expires or is deactivated, all channels stop automatically and the panel locks until you reactivate.

***

### Step 3: Configure basic settings

After activation you land on the Dashboard. Before creating your first channel, go to **Settings** and fill in the following.

{% tabs %}
{% tab title="General" %}

| Setting         | What it does                                                                                                |
| --------------- | ----------------------------------------------------------------------------------------------------------- |
| Server timezone | Anchors EPG times. Set to your audience's timezone.                                                         |
| Public base URL | The URL viewers use to reach streams, e.g. `http://YOUR_IP:8080`. Used to build all playlist and feed URLs. |

{% hint style="warning" %}
If you skip the Public base URL, playlist links in the panel will have no host and will not work for viewers. Set this before creating your first line.
{% endhint %}
{% endtab %}

{% tab title="API (optional)" %}

| Setting              | What it does                               |
| -------------------- | ------------------------------------------ |
| MaxMind GeoLite2 key | Accurate country-based geo-blocking        |
| TMDB API key         | Auto-populates EPG with titles and posters |

These can be added later. Nothing breaks without them.
{% endtab %}
{% endtabs %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.cstplus.org/documentation/getting-started/quickstart.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
