Network allocations are IP address and port combinations assigned to your server. Each server has a primary allocation and can have multiple secondary allocations.
List Allocations
Get all network allocations for a server.
curl -X GET "https://panel.example.com/api/client/servers/{server}/network/allocations" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
Response
{
"object": "list",
"data": [
{
"object": "allocation",
"attributes": {
"id": 15,
"ip": "192.168.1.100",
"ip_alias": "node01.example.com",
"port": 25565,
"notes": "Primary game port",
"is_default": true
}
},
{
"object": "allocation",
"attributes": {
"id": 16,
"ip": "192.168.1.100",
"ip_alias": "node01.example.com",
"port": 25575,
"notes": "RCON port",
"is_default": false
}
}
]
}
IP address of the allocation
Human-readable alias for the IP (usually a hostname)
Optional notes describing the allocation’s purpose
Whether this is the primary allocation for the server
Create Allocation
Automatically assign a new allocation to the server from available ports.
curl -X POST "https://panel.example.com/api/client/servers/{server}/network/allocations" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
Response
Returns the newly created allocation object (same format as list response).
The system will automatically find and assign an available port from the node’s allocation pool. You cannot specify a specific IP or port when creating allocations through the client API.
Allocation creation will fail if:
- You’ve reached your server’s allocation limit
- No allocations are available on the node
- The allocation limit is set to 0 (unlimited allocations not allowed)
Update Allocation Notes
Update the notes for an allocation.
curl -X POST "https://panel.example.com/api/client/servers/{server}/network/allocations/{allocation}" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"notes": "RCON Admin Port"
}'
Description for the allocation (can be empty string to clear)
Response
Returns the updated allocation object.
Set Primary Allocation
Change the primary (default) allocation for the server.
curl -X POST "https://panel.example.com/api/client/servers/{server}/network/allocations/{allocation}/primary" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
The allocation ID to set as primary
Response
Returns the updated allocation object with is_default: true.
The primary allocation is used as the server’s main IP:port in the panel interface and is typically the port your game server listens on.
Delete Allocation
Remove an allocation from the server.
curl -X DELETE "https://panel.example.com/api/client/servers/{server}/network/allocations/{allocation}" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
The allocation ID to delete
Response
Returns 204 No Content on success.
Important Restrictions:
- You cannot delete the primary allocation
- You cannot delete allocations if the server has no allocation limit set
- Deletion will fail if the allocation is in use by a running process
Allocation Limits
The number of allocations you can create is controlled by your server’s allocation_limit:
{
"feature_limits": {
"databases": 5,
"allocations": 3,
"backups": 3
}
}
null or 0 = Only primary allocation (no additional allocations)
1 = Primary + 1 additional allocation (2 total)
5 = Primary + 5 additional allocations (6 total)
Common Use Cases
Minecraft Server with RCON
# Primary allocation: 25565 (game)
# Additional allocation: 25575 (RCON)
# Create second allocation
curl -X POST "https://panel.example.com/api/client/servers/{server}/network/allocations" \
-H "Authorization: Bearer YOUR_API_KEY"
# Update notes
curl -X POST "https://panel.example.com/api/client/servers/{server}/network/allocations/16" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"notes": "RCON Port"}'
Multiple Game Servers
Some game server applications can run multiple server instances on different ports:
# Primary: 27015 (Server 1)
# Additional: 27016 (Server 2)
# Additional: 27017 (Server 3)
# Add allocations
for i in {1..2}; do
curl -X POST "https://panel.example.com/api/client/servers/{server}/network/allocations" \
-H "Authorization: Bearer YOUR_API_KEY"
done
Proxy/Gateway Servers
For proxy servers (e.g., BungeeCord, Velocity) with multiple backend connections:
# Primary: 25565 (Public facing)
# Additional: 25566-25570 (Backend servers)
Connection Strings
Use allocations to connect to your server:
Using IP Address
Using IP Alias (Hostname)
Default Port
If your allocation uses the game’s default port, players can often omit it:
# Minecraft default port is 25565
node01.example.com # Same as node01.example.com:25565
# FiveM default port is 30120
node01.example.com:30120 # Must specify non-default ports
Troubleshooting
”Cannot assign additional allocations”
You’ve reached your allocation limit. Either:
- Delete an unused allocation
- Contact your administrator to increase the limit
”You cannot delete allocations for this server”
The server has no allocation limit set (unlimited = 0). This prevents deletion to avoid accidents.
”You cannot delete the primary allocation”
Switch to a different primary allocation first:
# Set allocation 16 as primary
curl -X POST "https://panel.example.com/api/client/servers/{server}/network/allocations/16/primary" \
-H "Authorization: Bearer YOUR_API_KEY"
# Now you can delete allocation 15
curl -X DELETE "https://panel.example.com/api/client/servers/{server}/network/allocations/15" \
-H "Authorization: Bearer YOUR_API_KEY"
Port Already in Use
If your server won’t start due to “address already in use” errors:
- Check that your game server is configured to use the correct ports
- Verify no other processes are using the ports
- Ensure your server configuration matches your allocations
# Check allocations
curl -X GET "https://panel.example.com/api/client/servers/{server}/network/allocations" \
-H "Authorization: Bearer YOUR_API_KEY"