POST /unbanip/{ip}
Endpoint: POST /v1/pdapi/unbanip/<ip>
Auth: Bearer token
Permission: REST.Punishments.UnbanIP
Purpose
Unbans an IP address in Banlist.json.
Path parameters
ip: IP address to unban.
Query parameters
None.
Request body
Optional JSON field: Reason string.
Response schema
200 response schema
| Field | Type | Description |
|---|---|---|
Success |
boolean | true when the active IP ban was removed. |
IP |
string | IP address that was unbanned. |
Error responses
Error bodies use this shape:
| HTTP | Error code | When it happens |
|---|---|---|
401 |
INVALID_TOKEN |
The Authorization header is missing, malformed, or does not match a configured bearer token. |
403 |
MISSING_PERMISSION |
The token is valid, but it does not include this endpoint permission. |
400 |
INVALID_JSON |
A request body was supplied, but it could not be parsed as JSON. |
400 |
REQUEST_FAILED |
The game-thread callback threw an exception, or a shared player/resource resolver failed. |
500 |
REQUEST_TIMEOUT |
The internal game-thread callback did not complete within 5 seconds. |
400 |
VALIDATION_FAILED |
An optional request field has the wrong JSON type. |
404 |
BAN_NOT_FOUND |
The supplied ip is not actively banned. |
Examples
Unban an IP with reason
Unban an IP with default reason
Scenarios
- Remove an IP ban after investigation.
- Use when a player is still blocked after user-level unban because the IP record remains active.
- Use GET /banlist with
ipto verify the result.