> For the complete documentation index, see [llms.txt](https://docs.hub88.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hub88.io/operator-backoffice/tournaments/managing-tournaments.md).

# Managing Tournaments

Once a tournament exists, even as a draft, there are a set of actions you'll use to take it from first draft through to paid-out prizes.&#x20;

This guide walks through each one. For the overview of the tournament table and detail view themselves, see [Tournaments guide](/operator-backoffice/tournaments.md).

### Actions at a glance

<table><thead><tr><th width="260.896728515625">Actions</th><th>Where</th></tr></thead><tbody><tr><td>Resume and edit a draft</td><td>Tournament table → <strong>Edit</strong></td></tr><tr><td>Publish and schedule a tournament</td><td>Tournament creation flow, Stage 2. Moves the tournament from Draft to Scheduled</td></tr><tr><td>Add or remove eligible players</td><td>Detail view → Full list of eligible players</td></tr><tr><td>Opt players in bulk or 1-by-1</td><td>Detail view → Full list of eligible players</td></tr><tr><td>End a tournament</td><td>Detail view<br>⚠️ Permanent action</td></tr><tr><td>Cancel a tournament</td><td>Tournament table → <strong>Cancel</strong><br>⚠️ Permanent action</td></tr><tr><td>Duplicate a tournament</td><td>Tournament table or detail view → <strong>Duplicate</strong><br>Opens a new, pre-filled draft</td></tr><tr><td>Approve or reject prizes</td><td>Detail view → Prize approval<br>Required before a tournament can complete</td></tr></tbody></table>

***

### Resume and edit a draft

If you saved a tournament as a draft partway through set-up, or just need to change its configuration, you don't need to start again.

{% stepper %}
{% step %}
Find the tournament in the tournament table. Filter by **Status: Draft** if you're looking for unfinished tournaments.
{% endstep %}

{% step %}
Click **Edit** in the Actions column.
{% endstep %}

{% step %}
Pick up wherever you left off - Tournament details, Eligibility, Prize pool, Terms and conditions, or Player Eligibility. See [Creating a Tournament](/operator-backoffice/tournaments/creating-a-tournament.md) for what each section covers.
{% endstep %}

{% step %}
Save as a draft again, or continue on to publishing.
{% endstep %}
{% endstepper %}

***

### Publish and schedule a tournament

A tournament doesn't need a separate scheduling step, publishing it **is** what schedules it.

{% stepper %}
{% step %}
Complete Stage 1 (tournament details, eligibility, prize pool, terms and conditions) and Stage 2 (player eligibility), as covered in [Creating a Tournament](/operator-backoffice/tournaments/creating-a-tournament.md).
{% endstep %}

{% step %}
Make sure your player list is built and opted in, see Add or remove eligible players and Opt players in below.
{% endstep %}

{% step %}
Click **Publish**.
{% endstep %}
{% endstepper %}

Publishing moves the tournament from **Draft** to **Scheduled**. It then starts automatically — moving to **Active** — at the start date and time you set in Stage 1 of creating a Tournament. There's nothing further to trigger manually.

***

### Add or remove eligible players

You manage who's eligible for a tournament from its detail view, under the **Full list of eligible players** tab.

**To add players:**

* **Import a CSV file** of player IDs — download Hub88's CSV template first, so your file is formatted correctly, then upload it.
* **Add players manually**, one at a time.

Both options are available whether you're still setting the tournament up or it's already published, so you can keep growing the eligible list later if you need to.

**To remove players:**

* Remove a player individually from the eligible list if they should no longer take part.

**To find specific players:**

* **Search** by operator player ID.
* **Filter by status** to see who's eligible, invited, or opted in.

<div data-with-frame="true"><figure><img src="https://3012741343-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMTWFNZ1g2QuImiZFIO1o%2Fuploads%2F9L0x1xCww3vxbRHLFLxf%2FPlayer%20eligibility%20-%20filled%201.png?alt=media&amp;token=cd5c8df3-57b9-4dce-9664-16a4eb0fb7e2" alt=""><figcaption></figcaption></figure></div>

***

### Opt players in

Being on the eligible list isn't the same as taking part, a player only plays in the tournament once they're opted in.

* **Opt players in automatically, in bulk**, rather than one by one.
* **Invite all** eligible players at once.
* **Download the list** of all players you've added, for your own records.

Only players who are opted in when the tournament's start time arrives will actually take part.

***

### End a tournament

Ending a tournament closes it ahead of its scheduled end time.

{% stepper %}
{% step %}
Open the tournament's detail view.
{% endstep %}

{% step %}
Choose **End**.
{% endstep %}
{% endstepper %}

{% hint style="warning" %}
**Ending is a Permanent Action**\
Ending a tournament can't be undone. Once ended, no further scores are accepted and the tournament moves to **Ended**, then on to prize evaluation — the same as if it had reached its natural end time.
{% endhint %}

***

### Cancel a tournament

Cancelling stops a tournament altogether, rather than closing it out normally.

{% stepper %}
{% step %}
Find the tournament in the tournament table.
{% endstep %}

{% step %}
Choose **Cancel** from the Actions column.
{% endstep %}

{% step %}
Confirm your choice.
{% endstep %}
{% endstepper %}

{% hint style="warning" %}
**Cancelling a tournament can't be undone**. \
It moves permanently to **Cancelled** status.&#x20;
{% endhint %}

***

### Duplicate a tournament

Duplicating gives you a head start on a new tournament by reusing an existing one's configuration.

{% stepper %}
{% step %}
Choose **Duplicate**, from either the tournament table or a tournament's detail view.
{% endstep %}

{% step %}
A new tournament creation flow opens, with the applicable fields from the original already filled in.
{% endstep %}
{% endstepper %}

{% hint style="info" %}
**The duplicated tournament's name is pre-filled as "Copy of \[original name]".**&#x20;

Rename it before you publish — players will see this name, and leaving it as "Copy of…" makes for a poor player experience.
{% endhint %}

***

### Approve or reject prizes

Once a tournament reaches **Ended**, its prizes need to be actioned before it can move to **Completed**.\
If the tournament is still ongoing, you'll see an empty screen.&#x20;

<div data-with-frame="true"><figure><img src="https://3012741343-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMTWFNZ1g2QuImiZFIO1o%2Fuploads%2Fooega9bLQWJ68wj6L2NQ%2FPrize%20approval%20-%20tournament%20details%201.png?alt=media&amp;token=2a5f3e05-aa8e-4bdf-b86b-071fa91b239f" alt=""><figcaption></figcaption></figure></div>

{% stepper %}
{% step %}
Open the tournament's detail view and go to the **Prize approval** tab. You'll see the full leaderboard and prize status: ranking, player, score, prize allocated, type, status, and payout status.

<div data-with-frame="true"><figure><img src="https://3012741343-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMTWFNZ1g2QuImiZFIO1o%2Fuploads%2FBwQAoCkk07T6qdUGRZyY%2FPrize%20approval%20-%20tournament%20details%202.png?alt=media&amp;token=0683c662-25d5-4321-986d-9162d2e4b0dc" alt=""><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
Either choose one-by-one or **Bulk-select** the prizes you want to action.

<div data-with-frame="true"><figure><img src="https://3012741343-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMTWFNZ1g2QuImiZFIO1o%2Fuploads%2FFJYZ0NHBJDWXEgDvQydP%2FPrize%20approval%20-%20tournament%20details%203.png?alt=media&amp;token=1400f00b-c259-4d2a-a874-3a29f3c6ae48" alt=""><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
Choose one of:

* **Approve** - the prize is approved, but you'll need to fulfil it manually.
* **Approve and credit automatically** - the prize is approved and queued to be credited to the player's wallet automatically.
* **Reject** - the prize is not paid out.

<div data-with-frame="true"><figure><img src="https://3012741343-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMTWFNZ1g2QuImiZFIO1o%2Fuploads%2FKq3lOwMB3krCaJ5nHItd%2FPrize%20approval%20modal%20-%20tournament%20details.png?alt=media&amp;token=f3f523bf-0b1b-463f-979e-1cc4a3448e47" alt=""><figcaption></figcaption></figure></div>
{% endstep %}
{% endstepper %}

<div data-with-frame="true"><figure><img src="https://3012741343-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMTWFNZ1g2QuImiZFIO1o%2Fuploads%2Fr5pEwMhB6pJnM89g0sId%2FPrize%20approval%20-%20tournament%20details%204.png?alt=media&amp;token=753df7d4-4199-4bf2-ac48-ca1487958cbe" alt=""><figcaption></figcaption></figure></div>

Once every prize has been actioned, the tournament moves to **Completed**.


---

# 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.hub88.io/operator-backoffice/tournaments/managing-tournaments.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.
