# FastDL endpoints (Client API: game servers)

> 4 FeatherPanel Client API: game servers endpoints from user/server/fastdl.php: methods, paths, auth, permissions, rate limits, parameters and responses.

Source: https://featherpanel.com/docs/api/reference/user/server/fastdl/

Defined in [`backend/app/routes/user/server/fastdl.php`](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/routes/user/server/fastdl.php). Authentication used here: **Server access**. Read [Authentication](https://featherpanel.com/docs/api/authentication/) for how to send credentials and [Rate limits and errors](https://featherpanel.com/docs/api/rate-limits-and-errors/) for the response envelope.

Paths, methods, permissions and rate limits come from the route file. Summaries, parameters and response codes come from the OpenAPI annotations on the controllers; endpoints without annotations show only what the route file declares.

## Endpoints

### GET `/api/user/servers/{uuidShort}/fastdl`

- Auth: Server access
- Default rate limit: 30 / minute (`user-server-fastdl`)
- Route name: `user-server-fastdl-get`
- Controller: [`ServerFastDlController::getFastDl`](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/Controllers/User/Server/ServerFastDlController.php)
- [route source](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/routes/user/server/fastdl.php#L28)

**Get FastDL configuration** Get FastDL configuration for a server that the user owns or has subuser access to.

| Parameter | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `uuidShort` | path | string | yes | Server short UUID |

| Response `data` field | Type | Description |
| --- | --- | --- |
| `data` | FastDlConfig |  |

```bash
curl -X GET "$PANEL_URL/api/user/servers/$UUID_SHORT/fastdl" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"
```

Responses: `200` FastDL configuration retrieved successfully · `400` Bad request · `401` Unauthorized · `403` Forbidden · `404` Server or node not found · `500` Internal server error

### POST `/api/user/servers/{uuidShort}/fastdl/enable`

- Auth: Server access
- Default rate limit: 10 / minute (`user-server-fastdl`)
- Route name: `user-server-fastdl-enable`
- Controller: [`ServerFastDlController::enableFastDl`](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/Controllers/User/Server/ServerFastDlController.php)
- [route source](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/routes/user/server/fastdl.php#L52)

**Enable FastDL** Enable FastDL for a server that the user owns or has subuser access to.

| Parameter | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `uuidShort` | path | string | yes | Server short UUID |

Request body: [`FastDlEnableRequest`](https://featherpanel.com/docs/api/schemas/#schema-fastdlenablerequest) (application/json)

| Body field | Type | Required | Description |
| --- | --- | --- | --- |
| `directory` | string | no | Optional subdirectory within server data directory (e.g., "csgo") |

| Response `data` field | Type | Description |
| --- | --- | --- |
| `data` | FastDlConfig |  |

```bash
curl -X POST "$PANEL_URL/api/user/servers/$UUID_SHORT/fastdl/enable" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{"directory":""}'
```

Responses: `200` FastDL enabled successfully · `400` Bad request · `401` Unauthorized · `403` Forbidden · `404` Server or node not found · `500` Internal server error

### POST `/api/user/servers/{uuidShort}/fastdl/disable`

- Auth: Server access
- Default rate limit: 10 / minute (`user-server-fastdl`)
- Route name: `user-server-fastdl-disable`
- Controller: [`ServerFastDlController::disableFastDl`](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/Controllers/User/Server/ServerFastDlController.php)
- [route source](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/routes/user/server/fastdl.php#L76)

**Disable FastDL** Disable FastDL for a server that the user owns or has subuser access to.

| Parameter | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `uuidShort` | path | string | yes | Server short UUID |

| Response `data` field | Type | Description |
| --- | --- | --- |
| `data` | FastDlConfig |  |

```bash
curl -X POST "$PANEL_URL/api/user/servers/$UUID_SHORT/fastdl/disable" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"
```

Responses: `200` FastDL disabled successfully · `400` Bad request · `401` Unauthorized · `403` Forbidden · `404` Server or node not found · `500` Internal server error

### PUT `/api/user/servers/{uuidShort}/fastdl`

- Auth: Server access
- Default rate limit: 10 / minute (`user-server-fastdl`)
- Route name: `user-server-fastdl-update`
- Controller: [`ServerFastDlController::updateFastDl`](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/Controllers/User/Server/ServerFastDlController.php)
- [route source](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/routes/user/server/fastdl.php#L100)

**Update FastDL configuration** Update FastDL configuration for a server that the user owns or has subuser access to.

| Parameter | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `uuidShort` | path | string | yes | Server short UUID |

Request body: [`FastDlUpdateRequest`](https://featherpanel.com/docs/api/schemas/#schema-fastdlupdaterequest) (application/json)

| Body field | Type | Required | Description |
| --- | --- | --- | --- |
| `enabled` | boolean | no | Whether FastDL is enabled |
| `directory` | string | no | Optional subdirectory within server data directory |

| Response `data` field | Type | Description |
| --- | --- | --- |
| `data` | FastDlConfig |  |

```bash
curl -X PUT "$PANEL_URL/api/user/servers/$UUID_SHORT/fastdl" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{"enabled":false,"directory":""}'
```

Responses: `200` FastDL configuration updated successfully · `400` Bad request · `401` Unauthorized · `403` Forbidden · `404` Server or node not found · `500` Internal server error
