Introduction
Welcome to the Pterodactyl API documentation. This documentation is unofficial.
The documentation is made for Pterodactyl panel v0.7.
If you find any errors throughout this API reference, please report them.
A special thanks to everyone who has helped contribute!
Other Pterodactyl API wrappers:
- Ptero4J (Java)
- Pterodactyl4J (Java)
- crocgodyl (Golang)
- Fossil (Golang)
- Nodeactyl (Node.js)
- Pterodactyl.js (Node.js)
- pterodactyl-sdk (PHP)
- Sharpdactyl (C#)
- Pydactyl (Python)
- aiodactyl (Python)
If you are a developer another Pterodactyl API wrapper, feel free to contact us and we can add your API wrapper/SDK to the list.
Dashflo - High-Performance Hosting: Try hosting your next project on our powerful, ultrafast and easy-to-use AMD Ryzen 3900X VPS hosting services. Designed specfically for game servers, enhanced with excellent routing and DDoS protection, while just at only €3/GB!
https://dashflo.net/store/virtual-servers
Authentication
To authorize, use this code:
# With shell, you can just pass the correct header with each request
curl "api_endpoint_here"
-H "Authorization: Bearer meowmeowmeow"
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
Make sure to replace
meowmeowmeow
with your API key.
You can obtain an API key from the Account API page within Pterodactyl.
We expect the API key to be included in all API requests to the server in a header that looks like the following:
Authorization: Bearer meowmeowmeow
Ratelimits
To prevent abuse, the Pterodactyl API has a ratelimit in place.
Up to 60 requests are allowed per minute.
The amount of requests left can be found within the reply header.
Header | Description |
---|---|
x-ratelimit-limit | The amount of API requests allowed per minute. |
x-ratelimit-remaining | The amount of API requests left. |
Request Data Information
curl "https://pterodactyl.app/api/application/users/<user-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X PATCH \
-d '
{
"external_id": "codeco",
"username": "codeco",
"email": "codeco@file.properties",
"first_name": "Updated",
"last_name": "User",
"password": "betterPassword",
"root_admin": true,
"language": "en"
}'
All POST & PATCH requests have a table describing the data fields and an example command.
Example:
HTTP Request
PATCH https://pterodactyl.app/api/application/users/<user-id>
Parameter | Information | Rules |
---|---|---|
external_id | The external id for the account | sometimes|nullable|string|max:255|unique:users,external_id |
username | The username for the account | sometimes|between:1,255|unique:users,username |
The email address for the account | sometimes|email|unique:users,email |
|
first_name | The user's first name | sometimes|string|between:1,255 |
last_name | The user's last name | sometimes|string|between:1,255 |
password | A plain text input of the desired password | sometimes|nullable|string |
root_admin | Whether the account is an admin | sometimes|boolean |
language | The language for the account | sometimes|string (+ in available languages) |
Parameter: Name of the parameter.
Information: Description of the parameter.
Rules: Parameter's rules, formated as Laravel's Validation Rules.
API - Client
List all servers
curl "https://pterodactyl.app/api/client" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object":"list",
"data":[
{
"object":"server",
"attributes":{
"server_owner":true,
"identifier":"d3aac109",
"uuid":"d3aac109-e5a0-4331-b03e-3454f7e136dc",
"name":"Survival",
"description":"",
"limits":{
"memory":1024,
"swap":0,
"disk":5000,
"io":500,
"cpu":200
},
"feature_limits":{
"databases":5,
"allocations":5
}
}
}
],
"meta":{
"pagination":{
"total":1,
"count":1,
"per_page":25,
"current_page":1,
"total_pages":1,
"links":[
]
}
}
}
This endpoint retrieves all servers that the user owns, along with information about them.
HTTP Request
GET https://pterodactyl.app/api/client
Get server specific information
curl "https://pterodactyl.app/api/client/servers/<id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object":"server",
"attributes":{
"server_owner":true,
"identifier":"d3aac109",
"uuid":"d3aac109-e5a0-4331-b03e-3454f7e136dc",
"name":"Survival",
"description":"",
"limits":{
"memory":1024,
"swap":0,
"disk":5000,
"io":500,
"cpu":200
},
"feature_limits":{
"databases":5,
"allocations":5
}
}
}
This endpoint retrieves information for the specified server.
HTTP Request
GET https://pterodactyl.app/api/client/servers/<ID>
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the server that you are requesting. |
Get server resource utilization
curl "https://pterodactyl.app/api/client/servers/<id>/utilization" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object":"stats",
"attributes":{
"state":"on",
"memory":{
"current":375,
"limit":1024
},
"cpu":{
"current":1.522,
"cores":[
0.033,
0.048,
0.04,
0,
0.031,
0,
0.021,
0.024,
0.249,
0.042,
0.007,
0,
0.293,
0.003,
0.6,
0.131
],
"limit":200
},
"disk":{
"current":119,
"limit":5000
}
}
}
This endpoint displays resource utilization of the specified server.
HTTP Request
GET https://pterodactyl.app/api/client/servers/<ID>/utilization
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the server that you are requesting. |
Send console command
curl "https://pterodactyl.app/api/client/servers/<id>/command" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X POST \
-d '{ "command": "say CodeCo says Hi!" }'
This endpoint sends a command to the server.
You are required to add the Accept: Application/vnd.pterodactyl.v1+json
and Content-Type: application/json
headers for this endpoint.
If successful, there will be an empty response body.
HTTP Request
POST https://pterodactyl.app/api/client/servers/<ID>/command
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the server that you are requesting. |
command | The command that you would like sent to the server. |
Send power action
curl "https://pterodactyl.app/api/client/servers/<id>/power" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X POST \
-d '{ "signal": "start" }'
This endpoint sends a power signal to the server.
You are required to add the Accept: Application/vnd.pterodactyl.v1+json
and Content-Type: application/json
headers for this endpoint.
If successful, there will be an empty response body.
HTTP Request
POST https://pterodactyl.app/api/client/servers/<ID>/power
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the server that you are requesting. |
signal | The power signal you want to send to the server. |
Power Signals
Signal | Description |
---|---|
start | Sends the startup command to the server. |
stop | Sends the stop command to the server. |
restart | Stops the server then immediately starts it straight after. |
kill | Instantly ends all processes and marks the server as stopped. |
API - Application - User
List users
curl "https://pterodactyl.app/api/application/users" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "list",
"data": [
{
"object": "user",
"attributes": {
"id": 1,
"external_id": null,
"uuid": "c4022c6c-9bf1-4a23-bff9-519cceb38335",
"username": "codeco",
"email": "codeco@file.properties",
"first_name": "Rihan",
"last_name": "Arfan",
"language": "en",
"root_admin": true,
"2fa": false,
"created_at": "2018-03-18T15:15:17+00:00",
"updated_at": "2018-10-16T21:51:21+00:00"
}
},
{
"object": "user",
"attributes": {
"id": 4,
"external_id": null,
"uuid": "f253663c-5a45-43a8-b280-3ea3c752b931",
"username": "wardledeboss",
"email": "wardle315@gmail.com",
"first_name": "Harvey",
"last_name": "Wardle",
"language": "en",
"root_admin": false,
"2fa": false,
"created_at": "2018-09-29T17:59:45+00:00",
"updated_at": "2018-10-02T18:59:03+00:00"
}
},
{
"object": "user",
"attributes": {
"id": 5,
"external_id": null,
"uuid": "0d8da9a5-6ccd-4b57-9786-70a97a1a55e7",
"username": "matthewp",
"email": "me@matthewp.io",
"first_name": "Matthew",
"last_name": "Penner",
"language": "en",
"root_admin": true,
"2fa": false,
"created_at": "2018-09-29T22:39:05+00:00",
"updated_at": "2018-09-29T22:39:27+00:00"
}
},
{
"object": "user",
"attributes": {
"id": 6,
"external_id": null,
"uuid": "d006fe91-3c64-4b0c-81d1-718af2cc384e",
"username": "rihan554rnk",
"email": "rihan554@gmail.com",
"first_name": "Server",
"last_name": "Subuser",
"language": "en",
"root_admin": false,
"2fa": false,
"created_at": "2018-10-02T21:26:18+00:00",
"updated_at": "2018-10-02T21:26:18+00:00"
}
}
],
"meta": {
"pagination": {
"total": 4,
"count": 4,
"per_page": 50,
"current_page": 1,
"total_pages": 1,
"links": []
}
}
}
This endpoint retrieves all users along with information about them.
HTTP Request
GET https://pterodactyl.app/api/application/users
Get user information
curl "https://pterodactyl.app/api/application/users/<user-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "user",
"attributes": {
"id": 1,
"external_id": null,
"uuid": "c4022c6c-9bf1-4a23-bff9-519cceb38335",
"username": "codeco",
"email": "codeco@file.properties",
"first_name": "Rihan",
"last_name": "Arfan",
"language": "en",
"root_admin": true,
"2fa": false,
"created_at": "2018-03-18T15:15:17+00:00",
"updated_at": "2018-10-16T21:51:21+00:00"
}
}
This endpoint retrieves information for the specified user.
HTTP Request
GET https://pterodactyl.app/api/application/users/<user-id>
Get user by external ID
curl "https://pterodactyl.app/api/application/users/external/<external-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "user",
"attributes": {
"id": 1,
"external_id": "1",
"uuid": "c4022c6c-9bf1-4a23-bff9-519cceb38335",
"username": "codeco",
"email": "codeco@file.properties",
"first_name": "Rihan",
"last_name": "Arfan",
"language": "en",
"root_admin": true,
"2fa": false,
"created_at": "2018-03-18T15:15:17+00:00",
"updated_at": "2018-10-16T21:51:21+00:00"
}
}
This endpoint retrieves information for the specified user with the external id.
HTTP Request
GET https://pterodactyl.app/api/application/users/external/<external-id>
Create user
curl "https://pterodactyl.app/api/application/users" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X POST \
-d '
{
"external_id": "example_ext_id",
"username": "example",
"email": "example@example.com",
"first_name": "John",
"last_name": "Doe",
"password": "cat",
"root_admin": false,
"language": "en"
}'
The above command returns JSON structured like this:
{
"object": "user",
"attributes": {
"id": 7,
"external_id": "example_ext_id",
"uuid": "68b23b39-f172-4cd3-ba4a-ef5761c01374",
"username": "example",
"email": "example@example.com",
"first_name": "John",
"last_name": "Doe",
"language": "en",
"root_admin": false,
"2fa": false,
"created_at": "2018-11-20T03:05:23+00:00",
"updated_at": "2018-11-20T03:05:23+00:00"
},
"meta": {
"resource": "https://pterodactyl.app/api/application/users/7"
}
}
This endpoint creates a new user with the provided information.
HTTP Request
POST https://pterodactyl.app/api/application/users
Parameter | Information | Rules |
---|---|---|
external_id | The external id for the account | sometimes|nullable|string|max:255|unique:users,external_id |
username | The username for the account | required|between:1,255|unique:users,username |
The email address for the account | required|email|unique:users,email |
|
first_name | The user's first name | required|string|between:1,255 |
last_name | The user's last name | required|string|between:1,255 |
password | A plain text input of the desired password | sometimes|nullable|string |
root_admin | Whether the account is an admin | sometimes|boolean |
language | The language for the account | sometimes|string (+ in available languages) |
Edit user
curl "https://pterodactyl.app/api/application/users/<user-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X PATCH \
-d '
{
"external_id": "codeco",
"username": "codeco",
"email": "codeco@file.properties",
"first_name": "Updated",
"last_name": "User",
"password": "betterPassword",
"root_admin": true,
"language": "en"
}'
The above command returns JSON structured like this:
{
"object": "user",
"attributes": {
"id": 1,
"external_id": "codeco",
"uuid": "c4022c6c-9bf1-4a23-bff9-519cceb38335",
"username": "codeco",
"email": "codeco@file.properties",
"first_name": "Updated",
"last_name": "User",
"language": "en",
"root_admin": true,
"2fa": false,
"created_at": "2018-03-18T15:15:17+00:00",
"updated_at": "2018-12-17T19:34:37+00:00"
}
}
This endpoint edits the specified user with the provided information.
HTTP Request
PATCH https://pterodactyl.app/api/application/users/<user-id>
Parameter | Information | Rules |
---|---|---|
external_id | The external id for the account | sometimes|nullable|string|max:255|unique:users,external_id |
username | The username for the account | required|between:1,255|unique:users,username |
The email address for the account | required|email|unique:users,email |
|
first_name | The user's first name | required|string|between:1,255 |
last_name | The user's last name | required|string|between:1,255 |
password | A plain text input of the desired password | sometimes|nullable|string |
root_admin | Whether the account is an admin | sometimes|boolean |
language | The language for the account | sometimes|string (+ in available languages) |
Delete user
curl "https://pterodactyl.app/api/application/users/<user-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X DELETE
This endpoint deletes the specified user.
HTTP Request
DELETE https://pterodactyl.app/api/application/users/<user-id>
API - Application - Nodes
List nodes
curl "https://pterodactyl.app/api/application/nodes" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "list",
"data": [
{
"object": "node",
"attributes": {
"id": 2,
"public": true,
"name": "Test",
"description": "Test",
"location_id": 1,
"fqdn": "fsn1.matthewp.io",
"scheme": "https",
"behind_proxy": false,
"maintenance_mode": false,
"memory": 4096,
"memory_overallocate": 0,
"disk": 10000,
"disk_overallocate": 0,
"upload_size": 100,
"daemon_listen": 2096,
"daemon_sftp": 2022,
"daemon_base": "/tmp/daemon-data",
"created_at": "2018-04-06T02:19:33+00:00",
"updated_at": "2018-10-28T01:13:03+00:00"
}
}
],
"meta": {
"pagination": {
"total": 1,
"count": 1,
"per_page": 50,
"current_page": 1,
"total_pages": 1,
"links": []
}
}
}
This endpoint retrieves all nodes on the panel along with information about them.
HTTP Request
GET https://pterodactyl.app/api/application/nodes
Get node information
curl "https://pterodactyl.app/api/application/nodes/<node-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "node",
"attributes": {
"id": 2,
"public": true,
"name": "Test",
"description": "Test",
"location_id": 1,
"fqdn": "fsn1.matthewp.io",
"scheme": "https",
"behind_proxy": false,
"maintenance_mode": false,
"memory": 4096,
"memory_overallocate": 0,
"disk": 10000,
"disk_overallocate": 0,
"upload_size": 100,
"daemon_listen": 2096,
"daemon_sftp": 2022,
"daemon_base": "/tmp/daemon-data",
"created_at": "2018-04-06T02:19:33+00:00",
"updated_at": "2018-10-28T01:13:03+00:00"
}
}
This endpoint retrieves information for the specified node.
HTTP Request
GET https://pterodactyl.app/api/application/nodes/<node-id>
Create node
curl "https://pterodactyl.app/api/application/nodes" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X POST \
-d '
{
"name": "Test Node",
"description": "",
"location_id": 1,
"public": true,
"fqdn": "node-01.pterodactyl.app",
"scheme": "https",
"behind_proxy": false,
"memory": 1024,
"memory_overallocate": 0,
"disk": 1024,
"disk_overallocate": 0,
"daemon_base": "/srv/daemon-data",
"daemon_listen": "8080",
"daemon_sftp": "2022",
"maintenance_mode": false,
"upload_size": 100,
}'
The above command returns JSON structured like this:
{
"object": "node",
"attributes": {
"id": 4,
"public": true,
"name": "Test Node",
"description": "",
"location_id": 1,
"fqdn": "node-01.pterodactyl.app",
"scheme": "https",
"behind_proxy": false,
"maintenance_mode": false,
"memory": 1024,
"memory_overallocate": 0,
"disk": 1024,
"disk_overallocate": 0,
"upload_size": 100,
"daemon_listen": 8080,
"daemon_sftp": 2022,
"daemon_base": "/srv/daemon-data",
"created_at": "2018-11-20T03:45:26+00:00",
"updated_at": "2018-11-20T03:45:26+00:00"
},
"meta": {
"resource": "https://pterodactyl.app/api/application/nodes/4"
}
}
This endpoint creates a new node with the provided information.
HTTP Request
POST https://pterodactyl.app/api/application/nodes
Parameter | Information | Rules |
---|---|---|
name | The node's name | required|regex:/^([\w .-]{1,100})$/ |
description | The node's description | sometimes|string |
location_id | The node's location id | required|exists:locations,id |
public | Whether auto-deployment is enabled for this node | sometimes|boolean |
fqdn | The node's fully qualified domain name | required|string |
scheme | The node's connection scheme | required|in:http,https |
behind_proxy | Whether the node is behind a proxy | sometimes|boolean |
memory | The node's memory in mb | required|numeric|min:1 |
memory_overallocate | The node's memory over-allocation in % | required|numeric|min:-1 |
disk | The node's disk space in mb | required|numeric|min:1 |
disk_overallocate | The node's disk space over-allocation in % | required|numeric|min:-1 |
daemon_base | The node's base daemon path | sometimes|regex:/^([\/][\d\w.-\/]+)$/ |
daemon_sftp | The node's daemon sftp port | required|numeric|between:1,65535 |
daemon_listen | The node's daemon port | required|numeric|between:1,65535 |
maintenance_mode | Whether the node is in maintenance mode | sometimes|boolean |
upload_size | The node's upload size limit | sometimes|int|between:1,1024 |
Edit node
curl "https://pterodactyl.app/api/application/nodes/<node-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X PATCH \
-d '
{
"name": "Test Node",
"description": "Test",
"location_id": 5,
"public": true,
"fqdn": "pdev1.pterodactyl.app",
"scheme": "https",
"behind_proxy": false,
"memory": 2048,
"memory_overallocate": 0,
"disk": 1024,
"disk_overallocate": -1,
"daemon_base": "/srv/daemon-data",
"daemon_listen": "8080",
"daemon_sftp": "2022",
"maintenance_mode": false,
"upload_size": 100,
}'
The above command returns JSON structured like this:
{
"object": "node",
"attributes": {
"id": 2,
"public": true,
"name": "Test Node 2",
"description": "Test",
"location_id": 5,
"fqdn": "pdev1.pterodactyl.app",
"scheme": "https",
"behind_proxy": false,
"maintenance_mode": false,
"memory": 2048,
"memory_overallocate": 0,
"disk": 1024,
"disk_overallocate": -1,
"upload_size": 100,
"daemon_listen": 8080,
"daemon_sftp": 2022,
"daemon_base": "/srv/daemon-data",
"created_at": "2018-04-06T02:19:33+00:00",
"updated_at": "2018-12-17T19:37:26+00:00"
}
}
This endpoint edits the specified node with the provided information.
HTTP Request
PATCH https://pterodactyl.app/api/application/nodes/<node-id>
Parameter | Information | Rules |
---|---|---|
name | The node's name | required|regex:/^([\w .-]{1,100})$/ |
description | The node's description | sometimes|string |
location_id | The node's location id | required|exists:locations,id |
public | Whether auto-deployment is enabled for this node | sometimes|boolean |
fqdn | The node's fully qualified domain name | required|string |
scheme | The node's connection scheme | required|in:http,https |
behind_proxy | Whether the node is behind a proxy | sometimes|boolean |
memory | The node's memory in mb | required|numeric|min:1 |
memory_overallocate | The node's memory over-allocation in % | required|numeric|min:-1 |
disk | The node's disk space in mb | required|numeric|min:1 |
disk_overallocate | The node's disk space over-allocation in % | required|numeric|min:-1 |
daemon_base | The node's base daemon path | sometimes|regex:/^([\/][\d\w.-\/]+)$/ |
daemon_sftp | The node's daemon sftp port | required|numeric|between:1,65535 |
daemon_listen | The node's daemon port | required|numeric|between:1,65535 |
maintenance_mode | Whether the node is in maintenance mode | sometimes|boolean |
upload_size | The node's upload size limit | sometimes|int|between:1,1024 |
Delete node
curl "https://pterodactyl.app/api/application/nodes/<node-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X DELETE
This endpoint deletes the specified node.
HTTP Request
DELETE https://pterodactyl.app/api/application/nodes/<node-id>
List specific node allocations
curl "https://pterodactyl.app/api/application/nodes/<node-id>/allocations" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "list",
"data": [
{
"object": "allocation",
"attributes": {
"id": 3,
"ip": "195.201.194.74",
"alias": null,
"port": 25499,
"assigned": true
}
},
{
"object": "allocation",
"attributes": {
"id": 4,
"ip": "195.201.194.74",
"alias": null,
"port": 25566,
"assigned": true
}
}
],
"meta": {
"pagination": {
"total": 2,
"count": 2,
"per_page": 50,
"current_page": 1,
"total_pages": 1,
"links": []
}
}
}
This endpoint retrieves all allocations for the specified node, along with information about them.
HTTP Request
GET https://pterodactyl.app/api/application/nodes/<node-id>/allocations
Create allocation
curl "https://pterodactyl.app/api/application/nodes/<node-id>/allocations" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X POST \
-d '
{
"ip": "1.1.1.1",
"alias": "one.one.one.one",
"ports": [
"4000"
]
}'
This endpoint creates a new allocation using the provided information.
HTTP Request
POST https://pterodactyl.app/api/application/nodes/<node-id>/allocations
Parameter | Information | Rules |
---|---|---|
ip | The allocation's ip | required|string |
alias | The allocation's alias name | sometimes|nullable|string|max:255 |
ports | The allocation ports (array) | required|array |
ports.* | The allocation port | string |
Delete allocation
curl "https://pterodactyl.app/api/application/nodes/<node-id>/allocations/<allocation-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X DELETE
This endpoint deletes the specified allocation for the specified node.
HTTP Request
DELETE https://pterodactyl.app/api/application/nodes/<node-id>/allocations/<allocation-id>
API - Application - Locations
List locations
curl "https://pterodactyl.app/api/application/locations" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "list",
"data": [
{
"object": "location",
"attributes": {
"id": 1,
"short": "test",
"long": "test",
"updated_at": "2018-04-06T02:12:21+00:00",
"created_at": "2018-04-06T02:12:21+00:00"
}
},
{
"object": "location",
"attributes": {
"id": 2,
"short": "yes",
"long": "yes test",
"updated_at": "2018-04-06T02:12:23+00:00",
"created_at": "2018-04-06T02:12:23+00:00"
}
}
],
"meta": {
"pagination": {
"total": 2,
"count": 2,
"per_page": 50,
"current_page": 1,
"total_pages": 1,
"links": []
}
}
}
This endpoint retrieves all locations on the panel along with information about them.
HTTP Request
GET https://pterodactyl.app/api/application/locations
Get location information
curl "https://pterodactyl.app/api/application/locations/<location-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "location",
"attributes": {
"id": 1,
"short": "test",
"long": "test",
"updated_at": "2018-04-06T02:12:21+00:00",
"created_at": "2018-04-06T02:12:21+00:00"
}
}
This endpoint retrieves information for the specified location.
HTTP Request
GET https://pterodactyl.app/api/application/locations/<location-id>
Create location
curl "https://pterodactyl.app/api/application/locations" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X POST \
-d '{
"short": "us.datacenter",
"long": "US Datacenter"
}'
The above command returns JSON structured like this:
{
"object": "location",
"attributes": {
"id": 3,
"short": "us.datacenter",
"long": "US Datacenter",
"updated_at": "2019-10-06T16:55:48+00:00",
"created_at": "2019-10-06T16:55:48+00:00"
},
"meta": {
"resource": "https://pterodactyl.app/api/application/locations/3"
}
}
This endpoint creates a location using the specified information.
HTTP Request
POST https://pterodactyl.app/api/application/locations
Parameter | Information | Rules |
---|---|---|
short | The location's short name | required|string|between:1,60|unique:locations,short |
long | The location's long name | required|string|between:1,255 |
Edit location
curl "https://pterodactyl.app/api/application/locations/<location-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X PATCH \
-d '{
"short": "us.ny.datacenter",
"long": "US NY Datacenter"
}'
The above command returns JSON structured like this:
{
"object": "location",
"attributes": {
"id": 3,
"short": "us.ny.datacenter",
"long": "US NY Datacenter",
"updated_at": "2019-10-06T16:57:25+00:00",
"created_at": "2019-10-06T16:55:48+00:00"
}
}
This endpoint edits the specified location using the provided information.
HTTP Request
PATCH https://pterodactyl.app/api/application/locations/<location-id>
Parameter | Information | Rules |
---|---|---|
short | The location's short name | required|string|between:1,60|unique:locations,short |
long | The location's long name | required|string|between:1,255 |
Delete location
curl "https://pterodactyl.app/api/application/locations/<location-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X DELETE
This endpoint deletes the specified location.
HTTP Request
DELETE https://pterodactyl.app/api/application/locations/<location-id>
API - Application - Servers
Get all servers
curl "https://pterodactyl.app/api/application/servers" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "list",
"data": [
{
"object": "server",
"attributes": {
"id": 2,
"external_id": null,
"uuid": "47a7052b-f07e-4845-989d-e876e30960f4",
"identifier": "47a7052b",
"name": "Eat Cows",
"description": "",
"suspended": false,
"limits": {
"memory": 2048,
"swap": -1,
"disk": 10000,
"io": 500,
"cpu": 300
},
"feature_limits": {
"databases": 10,
"allocations": 0
},
"user": 1,
"node": 2,
"allocation": 3,
"nest": 1,
"egg": 4,
"pack": null,
"container": {
"startup_command": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"image": "quay.io/pterodactyl/core:java",
"installed": true,
"environment": {
"SERVER_JARFILE": "server.jar",
"VANILLA_VERSION": "latest",
"STARTUP": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"P_SERVER_LOCATION": "test",
"P_SERVER_UUID": "47a7052b-f07e-4845-989d-e876e30960f4"
}
},
"updated_at": "2018-11-20T14:35:00+00:00",
"created_at": "2018-09-29T22:50:16+00:00"
}
},
{
"object": "server",
"attributes": {
"id": 6,
"external_id": null,
"uuid": "6d1567c5-08d4-4ecb-8d5d-0ce1ba6b0b99",
"identifier": "6d1567c5",
"name": "Wow",
"description": "t",
"suspended": false,
"limits": {
"memory": 0,
"swap": -1,
"disk": 5000,
"io": 500,
"cpu": 200
},
"feature_limits": {
"databases": 0,
"allocations": 0
},
"user": 5,
"node": 2,
"allocation": 4,
"nest": 1,
"egg": 15,
"pack": null,
"container": {
"startup_command": "./parkertron",
"image": "quay.io/parkervcp/pterodactyl-images:parkertron",
"installed": true,
"environment": {
"STARTUP": "./parkertron",
"P_SERVER_LOCATION": "test",
"P_SERVER_UUID": "6d1567c5-08d4-4ecb-8d5d-0ce1ba6b0b99"
}
},
"updated_at": "2018-11-10T19:52:13+00:00",
"created_at": "2018-11-10T19:51:23+00:00"
}
}
],
"meta": {
"pagination": {
"total": 2,
"count": 2,
"per_page": 50,
"current_page": 1,
"total_pages": 1,
"links": []
}
}
}
This endpoint retrieves all servers along with information about them.
HTTP Request
GET https://pterodactyl.app/api/application/servers
Get server information
curl "https://pterodactyl.app/api/application/servers/<internal-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "server",
"attributes": {
"id": 2,
"external_id": null,
"uuid": "47a7052b-f07e-4845-989d-e876e30960f4",
"identifier": "47a7052b",
"name": "Survival",
"description": "gsk;ljgkj;hgdakl;gha",
"suspended": false,
"limits": {
"memory": 2048,
"swap": -1,
"disk": 10000,
"io": 500,
"cpu": 300
},
"feature_limits": {
"databases": 10,
"allocations": 0
},
"user": 1,
"node": 2,
"allocation": 3,
"nest": 1,
"egg": 4,
"pack": null,
"container": {
"startup_command": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"image": "quay.io/pterodactyl/core:java",
"installed": true,
"environment": {
"SERVER_JARFILE": "server.jar",
"VANILLA_VERSION": "latest",
"STARTUP": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"P_SERVER_LOCATION": "test",
"P_SERVER_UUID": "47a7052b-f07e-4845-989d-e876e30960f4"
}
},
"updated_at": "2018-11-20T02:52:37+00:00",
"created_at": "2018-09-29T22:50:16+00:00"
}
}
This endpoint retrieves information for the specified server.
HTTP Request
GET https://pterodactyl.app/api/application/servers/<internal-id>
Get server by external ID
curl "https://pterodactyl.app/api/application/servers/external/<external-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "server",
"attributes": {
"id": 7,
"external_id": "cow_eater",
"uuid": "78165af0-4835-405f-b281-07e961bfd0ad",
"identifier": "78165af0",
"name": "Eat Cows",
"description": "ok....",
"suspended": false,
"limits": {
"memory": 1024,
"swap": 0,
"disk": 1000,
"io": 500,
"cpu": 0
},
"feature_limits": {
"databases": 0,
"allocations": 0
},
"user": 1,
"node": 2,
"allocation": 9,
"nest": 1,
"egg": 4,
"pack": null,
"container": {
"startup_command": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"image": "quay.io/pterodactyl/core:java",
"installed": true,
"environment": {
"SERVER_JARFILE": "server.jar",
"VANILLA_VERSION": "latest",
"STARTUP": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"P_SERVER_LOCATION": "test",
"P_SERVER_UUID": "78165af0-4835-405f-b281-07e961bfd0ad"
}
},
"updated_at": "2018-12-17T20:00:16+00:00",
"created_at": "2018-12-11T21:56:00+00:00"
}
}
This endpoint retrieves information for the specified server using the external id.
HTTP Request
GET https://pterodactyl.app/api/application/servers/external/<external-id>
Create server
curl "https://pterodactyl.app/api/application/servers" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X POST \
-d '{
"name": "Lobby",
"user": 1,
"egg": 3,
"docker_image": "quay.io/pterodactyl/core:java-glibc",
"startup": "java -Xms128M -Xmx128M -jar server.jar",
"environment": {
"SERVER_JARFILE": "server.jar",
"BUILD_NUMBER": "latest"
},
"limits": {
"memory": 1024,
"swap": -1,
"disk": 10240,
"io": 500,
"cpu": 100
},
"feature_limits": {
"databases": 10,
"allocations": 10
},
"allocation": {
"default": 2,
"additional": [
5
]
}
}'
The above command returns JSON structured like this:
{
"object": "server",
"attributes": {
"id": 53,
"external_id": "test_server",
"uuid": "d7bcc254-e218-4522-a7fe-9d2d562ad790",
"identifier": "d7bcc254",
"name": "Test",
"description": "Test server",
"suspended": false,
"limits": {
"memory": 512,
"swap": 0,
"disk": 1024,
"io": 500,
"cpu": 100
},
"feature_limits": {
"databases": 1,
"allocations": 2
},
"user": 1,
"node": 1,
"allocation": 28,
"nest": 5,
"egg": 15,
"pack": 1,
"container": {
"startup_command": "java -Xms128M -Xmx 1024M -jar server.jar",
"image": "quay.io/pterodactyl/core:java-glibc",
"installed": false,
"environment": {
"DL_VERSION": "1.12.2",
"STARTUP": "java -Xms128M -Xmx 1024M -jar server.jar",
"P_SERVER_LOCATION": "fr.sys",
"P_SERVER_UUID": "d7bcc254-e218-4522-a7fe-9d2d562ad790"
}
},
"updated_at": "2019-02-23T11:25:35+00:00",
"created_at": "2019-02-23T11:25:35+00:00"
}
}
This endpoint will create a server based on the given json object.
HTTP Request
POST https://pterodactyl.app/api/application/servers
Parameter | Information | Rules |
---|---|---|
external_id | The server's external id | sometimes|nullable|string|between:1,191|unique:servers |
name | The server's name | required|string|min:1|max:255 |
user | The user id of the server owner | required|integer|exists:users,id |
description | The server's description | sometimes|string |
egg | The server's egg id | required|exists:eggs,id |
pack | The server's pack id | sometimes|nullable|numeric|min:0 |
docker_image | The server's docker image | sometimes|string|max:255 |
startup | The server's startup command | required|string |
limits | The server's limits (array) | required|array |
limits.memory | The server's memory limit | required|numeric|min:0 |
limits.swap | The server's swap limit | required|numeric|min:-1 |
limits.disk | The server's disk limit | required|numeric|min:0 |
limits.io | The server's io limit | required|numeric|between:10,1000 |
limits.cpu | The server's cpu limit | required|numeric|min:0 |
feature_limits | The server's feature limits (array) | required|array |
feature_limits.databases | The server's database limit | present|nullable|integer|min:0 |
feature_limits.allocations | The server's allocation limit | present|nullable|integer|min:0 |
environment | The server's environment variables (related to the egg) | present|array |
allocation | The server's allocation ids (array) | sometimes|array |
allocation.default | The server's default allocation id | sometimes|bail|unique:servers|exists:allocations,id |
allocation.additional | The server's additional allocation ids (array) | sometimes|array |
allocation.additional.* | The server's additional allocation id | exists:allocations,id |
deploy | The server's deploy information (array) | sometimes|required|array |
deploy.locations | The server's deploy locations (array) | array |
deploy.locations.* | The server's deploy location | integer|min:1 |
deploy.dedicated_ip | The server's dedicated ip | required_with:deploy,boolean |
deploy.port_range | The server's port ranges (array) | array |
deploy.port_range.* | The server's port range | string |
start_on_completion | Whether the server should start once created | sometimes|boolean |
skip_scripts | Whether the server should skip egg scripts | sometimes|boolean |
oom_disabled | Whether the server should have oom killer disabled | sometimes|boolean |
Update server details
curl "https://pterodactyl.app/api/application/servers/<internal-id>/details" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X PATCH \
-d '{
"external_id": "cow_eater",
"name": "Eat Cows",
"user": "1",
"description": "ok...."
}'
The above command returns JSON structured like this:
{
"object": "server",
"attributes": {
"id": 7,
"external_id": "cow_eater",
"uuid": "78165af0-4835-405f-b281-07e961bfd0ad",
"identifier": "78165af0",
"name": "Eat Cows",
"description": "ok....",
"suspended": false,
"limits": {
"memory": 1024,
"swap": 0,
"disk": 1000,
"io": 500,
"cpu": 0
},
"feature_limits": {
"databases": 0,
"allocations": 0
},
"user": 1,
"node": 2,
"allocation": 9,
"nest": 1,
"egg": 4,
"pack": null,
"container": {
"startup_command": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"image": "quay.io/pterodactyl/core:java",
"installed": true,
"environment": {
"SERVER_JARFILE": "server.jar",
"VANILLA_VERSION": "latest",
"STARTUP": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"P_SERVER_LOCATION": "test",
"P_SERVER_UUID": "78165af0-4835-405f-b281-07e961bfd0ad"
}
},
"updated_at": "2018-12-17T20:02:12+00:00",
"created_at": "2018-12-11T21:56:00+00:00"
}
}
This endpoint retrieves the details for the specified server.
HTTP Request
PATCH https://pterodactyl.app/api/application/servers/<internal-id>/details
Parameter | Information | Rules |
---|---|---|
external_id | The server's external id | sometimes|nullable|string|between:1,191|unique:servers |
name | The server's name | required|string|min:1|max:255 |
user | The user id of the server owner | required|integer|exists:users,id |
description | The server's description | sometimes|nullable|string |
Update server build configuration
curl "https://pterodactyl.app/api/application/servers/<internal-id>/build" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X PATCH \
-d '{
"allocation": 9,
"oom_disabled": true,
"limits": {
"memory": 2048,
"swap": -1,
"disk": 10000,
"io": 500,
"cpu": 300
},
"add_allocations": [
15
],
"remove_allocations": [
3
],
"feature_limits": {
"databases": 10,
"allocations": 10
}
}
The above command returns JSON structured like this:
{
"object": "server",
"attributes": {
"id": 7,
"external_id": "1510",
"uuid": "78165af0-4835-405f-b281-07e961bfd0ad",
"identifier": "78165af0",
"name": "Eat Cows",
"description": "",
"suspended": false,
"limits": {
"memory": 2048,
"swap": -1,
"disk": 10000,
"io": 500,
"cpu": 300
},
"feature_limits": {
"databases": 10,
"allocations": 10
},
"user": 1,
"node": 2,
"allocation": 9,
"nest": 1,
"egg": 4,
"pack": null,
"container": {
"startup_command": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"image": "quay.io/pterodactyl/core:java",
"installed": true,
"environment": {
"SERVER_JARFILE": "server.jar",
"VANILLA_VERSION": "latest",
"STARTUP": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"P_SERVER_LOCATION": "test",
"P_SERVER_UUID": "78165af0-4835-405f-b281-07e961bfd0ad"
}
},
"updated_at": "2018-12-26T16:33:27+00:00",
"created_at": "2018-12-11T21:56:00+00:00"
}
}
This endpoint retrieves the build information for the specified server.
HTTP Request
PATCH https://pterodactyl.app/api/application/servers/<internal-id>/build
Parameter | Information | Rules |
---|---|---|
allocation | The server's default allocation id | required|bail|unique:servers|exists:allocations,id |
oom_disabled | Whether the server should have oom killer disabled | sometimes|boolean |
limits | The server's limits (array) | sometimes|array |
limits.memory | The server's memory limit | sometimes|numeric|min:0 |
limits.swap | The server's swap limit | sometimes|numeric|min:-1 |
limits.disk | The server's disk limit | sometimes|numeric|min:0 |
limits.io | The server's io limit | sometimes|numeric|between:10,1000 |
limits.cpu | The server's cpu limit | sometimes|numeric|min:0 |
add_allocations | The allocation ids to be added to the server (array) | sometimes|bail|array |
add_allocations.* | The allocation id to be added to the server | integer |
remove_allocations | The allocation ids to be removed from the server (array) | sometimes|bail|array |
remove_allocations.* | The allocation id to be removed from the server | integer |
feature_limits | The server's feature limits (array) | required|array |
feature_limits.databases | The server's database limit | present|nullable|integer|min:0 |
feature_limits.allocations | The server's allocation limit | sometimes|nullable|integer|min:0 |
Parameter | Information | Rules |
---|---|---|
memory | The server's memory limit | required_without:limits|numeric|min:0 |
swap | The server's swap limit | required_without:limits|numeric|min:-1 |
disk | The server's disk limit | required_without:limits|numeric|min:0 |
io | The server's io limit | required_without:limits|numeric|between:10,1000 |
cpu | The server's cpu limit | required_without:limits|numeric|min:0 |
Update server startup parameters
curl "https://pterodactyl.app/api/application/servers/<internal-id>/startup" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X PATCH \
-d '{
"startup": "java -Xms128M -Xmx1024M -jar paper.jar",
"environment": [
"SERVER_JARFILE",
"DL_VERSION"
],
"egg": 1,
"pack": 4,
"image": "quay.io/pterodactyl/core:java",
"skip_scripts": false
}
The above command returns JSON structured like this:
{
"object": "server",
"attributes": {
"id": 7,
"external_id": "1510",
"uuid": "78165af0-4835-405f-b281-07e961bfd0ad",
"identifier": "78165af0",
"name": "Eat Cows",
"description": "",
"suspended": false,
"limits": {
"memory": 2048,
"swap": -1,
"disk": 10000,
"io": 500,
"cpu": 300
},
"feature_limits": {
"databases": 10,
"allocations": 10
},
"user": 1,
"node": 2,
"allocation": 9,
"nest": 1,
"egg": 4,
"pack": null,
"container": {
"startup_command": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"image": "quay.io/pterodactyl/core:java",
"installed": true,
"environment": {
"SERVER_JARFILE": "server.jar",
"VANILLA_VERSION": "latest",
"STARTUP": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"P_SERVER_LOCATION": "test",
"P_SERVER_UUID": "78165af0-4835-405f-b281-07e961bfd0ad"
}
},
"updated_at": "2018-12-26T16:33:27+00:00",
"created_at": "2018-12-11T21:56:00+00:00"
}
}
This endpoint retrieves the startup information for the specified server.
HTTP Request
PATCH https://pterodactyl.app/api/application/servers/<internal-id>/startup
Parameter | Information | Rules |
---|---|---|
startup | The server's startup command | required|string |
environment | The server's environment variables (related to the egg) | present|array |
egg | The server's egg id | required|exists:eggs,id |
pack | The server's pack id | sometimes|nullable|numeric|min:0 |
image | The server's docker image | required|string|max:255 |
skip_scripts | Whether the server should skip egg scripts | present|boolean |
Suspend specific server
curl "https://pterodactyl.app/api/application/servers/<internal-id>/suspend" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X POST
This endpoint suspends the specified server.
HTTP Request
POST https://pterodactyl.app/api/application/servers/<internal-id>/suspend
Unsuspend specific server
curl "https://pterodactyl.app/api/application/servers/<internal-id>/unsuspend" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X POST
This endpoint unsuspends the specified server.
HTTP Request
POST https://pterodactyl.app/api/application/servers/<internal-id>/unsuspend
Reinstall specific server
curl "https://pterodactyl.app/api/application/servers/<internal-id>/reinstall" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X POST
This endpoint reinstalls the specified server.
HTTP Request
POST https://pterodactyl.app/api/application/servers/<internal-id>/reinstall
Rebuild specific server
curl "https://pterodactyl.app/api/application/servers/<internal-id>/rebuild" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X POST
This endpoint rebuilds the specified server.
HTTP Request
POST https://pterodactyl.app/api/application/servers/<internal-id>/rebuild
Delete server
curl "https://pterodactyl.app/api/application/servers/<internal-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X DELETE
This endpoint deletes the specified server.
HTTP Request
DELETE https://pterodactyl.app/api/application/servers/<internal-id>
Forcefully delete server
curl "https://pterodactyl.app/api/application/servers/<internal-id>/force" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X DELETE
This endpoint forcefully deletes the specified server.
HTTP Request
DELETE https://pterodactyl.app/api/application/servers/<internal-id>/force
Get all a databases from a server
curl "https://pterodactyl.app/api/application/servers/<internal-id>/databases" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "list",
"data": [
{
"object": "server_database",
"attributes": {
"id": 6,
"server": 1,
"host": 2,
"database": "s1_test",
"username": "u1_iff9TGoHFt",
"remote": "%",
"created_at": "2019-10-06T15:16:26+02:00",
"updated_at": "2019-10-06T15:28:26+02:00"
}
},
{
"object": "server_database",
"attributes": {
"id": 7,
"server": 1,
"host": 2,
"database": "s1_db2",
"username": "u1_tZ14uEvXan",
"remote": "%",
"created_at": "2019-10-06T15:28:57+02:00",
"updated_at": "2019-10-06T15:28:57+02:00"
}
}
]
}
This endpoint retrieves all the databases for the specified server, along with information about them.
HTTP Request
GET https://pterodactyl.app/api/application/servers/<internal-id>/databases
List specific database from a server
curl "https://pterodactyl.app/api/application/servers/<internal-id>/databases/<database-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "server_database",
"attributes": {
"id": 6,
"server": 1,
"host": 2,
"database": "s1_test",
"username": "u1_iff9TGoHFt",
"remote": "%",
"created_at": "2019-10-06T15:16:26+02:00",
"updated_at": "2019-10-06T15:28:26+02:00"
}
}
This endpoint retrieves information about the specified database for the specified server.
HTTP Request
GET https://pterodactyl.app/api/application/servers/<internal-id>/databases/<database-id>
Create database for a server
curl "https://pterodactyl.app/api/application/servers/<internal-id>/databases" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X POST \
-d '{
"database": "mydb",
"remote": "%",
"host": 2
}
The above command returns JSON structured like this:
{
"object": "server_database",
"attributes": {
"id": 8,
"server": 1,
"host": 2,
"database": "s1_mydb",
"username": "u1_9qUoCWnpfS",
"remote": "%",
"created_at": "2019-10-06T15:53:31+02:00",
"updated_at": "2019-10-06T15:53:31+02:00"
},
"meta": {
"resource": "https://pterodactyl.app/api/application/servers/1/databases/8"
}
}
This endpoint creates a new database on the specified server with the provided information.
HTTP Request
POST https://pterodactyl.app/api/application/servers/<internal-id>/databases
Parameter | Information | Rules |
---|---|---|
database | The database's name | required|string|min:1|max:24 + unique in databases where database_host_id = host |
remote | The database's remote connection rule | required|string|regex:/^[0-9%.]{1,15}$/ |
host | The database's host server id | required|integer|exists:database_hosts,id |
Reset specific database password
curl "https://pterodactyl.app/api/application/servers/<internal-id>/databases/<database-id>/reset-password" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X POST
This endpoint edits the specified database on the specified server with the provided information.
HTTP Request
POST https://pterodactyl.app/api/application/servers/<internal-id>/databases/<database-id>/reset-password
Delete database
curl "https://pterodactyl.app/api/application/servers/<internal-id>/databases/<database-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X DELETE
This endpoint deletes the specified database on the specified server.
HTTP Request
DELETE https://pterodactyl.app/api/application/servers/<internal-id>/databases/<database-id>
API - Application - Nests
List nests
curl "https://pterodactyl.app/api/application/nests" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "list",
"data": [
{
"object": "nest",
"attributes": {
"id": 1,
"uuid": "179a06c9-b5bf-4798-8c0e-9f78e8f1f67f",
"author": "support@pterodactyl.io",
"name": "Minecraft",
"description": "Minecraft - the classic game from Mojang. With support for Vanilla MC, Spigot, and many others!",
"created_at": "2018-03-18T15:14:37+00:00",
"updated_at": "2018-03-18T15:14:37+00:00"
}
},
{
"object": "nest",
"attributes": {
"id": 2,
"uuid": "c389ab01-8b30-4c0f-b2a2-01e79b3611d2",
"author": "support@pterodactyl.io",
"name": "Source Engine",
"description": "Includes support for most Source Dedicated Server games.",
"created_at": "2018-03-18T15:14:37+00:00",
"updated_at": "2018-03-18T15:14:37+00:00"
}
},
{
"object": "nest",
"attributes": {
"id": 3,
"uuid": "8b47c310-ff04-4c10-84c8-133e63f1bf61",
"author": "support@pterodactyl.io",
"name": "Voice Servers",
"description": "Voice servers such as Mumble and Teamspeak 3.",
"created_at": "2018-03-18T15:14:37+00:00",
"updated_at": "2018-03-18T15:14:37+00:00"
}
},
{
"object": "nest",
"attributes": {
"id": 4,
"uuid": "f92cd279-a916-4ede-84ee-900f51048e31",
"author": "support@pterodactyl.io",
"name": "Rust",
"description": "Rust - A game where you must fight to survive.",
"created_at": "2018-03-18T15:14:37+00:00",
"updated_at": "2018-03-18T15:14:37+00:00"
}
}
],
"meta": {
"pagination": {
"total": 4,
"count": 4,
"per_page": 50,
"current_page": 1,
"total_pages": 1,
"links": []
}
}
}
This endpoint retrieves all nests along with information about them.
HTTP Request
GET https://pterodactyl.app/api/application/nests
Get nest information
curl "https://pterodactyl.app/api/application/nests/<nest-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "nest",
"attributes": {
"id": 1,
"uuid": "179a06c9-b5bf-4798-8c0e-9f78e8f1f67f",
"author": "support@pterodactyl.io",
"name": "Minecraft",
"description": "Minecraft - the classic game from Mojang. With support for Vanilla MC, Spigot, and many others!",
"created_at": "2018-03-18T15:14:37+00:00",
"updated_at": "2018-03-18T15:14:37+00:00"
}
}
This endpoint retrieves information for the specified nest.
HTTP Request
GET https://pterodactyl.app/api/application/nests/<nest-id>
Get eggs in nest
curl "https://pterodactyl.app/api/application/nests/<nest-id>/eggs" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "list",
"data": [
{
"object": "egg",
"attributes": {
"id": 1,
"uuid": "db6323d7-d62f-4278-bb66-db06484b1089",
"nest": 1,
"author": "support@pterodactyl.io",
"description": "Spigot is the most widely-used modded Minecraft server software in the world. It powers many of the top Minecraft server networks around to ensure they can cope with their huge player base and ensure the satisfaction of their players. Spigot works by reducing and eliminating many causes of lag, as well as adding in handy features and settings that help make your job of server administration easier.",
"docker_image": "quay.io/pterodactyl/core:java-glibc",
"config": {
"files": {
"server.properties": {
"parser": "properties",
"find": {
"server-ip": "0.0.0.0",
"enable-query": "true",
"server-port": "{{server.build.default.port}}",
"query.port": "{{server.build.default.port}}"
}
}
},
"startup": {
"done": ")! For help, type ",
"userInteraction": [
"Go to eula.txt for more info."
]
},
"stop": "stop",
"logs": {
"custom": false,
"location": "logs/latest.log"
},
"extends": null
},
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"script": {
"privileged": true,
"install": "#!/bin/ash\r\n# Spigot Installation Script\r\n#\r\n# Server Files: /mnt/server\r\n\r\n## Only download if a path is provided, otherwise continue.\r\nif [ ! -z \"${DL_PATH}\" ]; then\r\n apk update\r\n apk add curl\r\n\r\n cd /mnt/server\r\n\r\n MODIFIED_DOWNLOAD=`eval echo $(echo ${DL_PATH} | sed -e 's/{{/${/g' -e 's/}}/}/g')`\r\n curl -sSL -o ${SERVER_JARFILE} ${MODIFIED_DOWNLOAD}\r\nelse\r\n apk add --no-cache curl git openjdk8 openssl\r\n \r\n cd /srv/\r\n \r\n wget https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar\r\n \r\n mv BuildTools.jar /srv/\r\n\r\n java -jar BuildTools.jar --rev ${DL_VERSION}\r\n\r\n mv spigot-*.jar /mnt/server/${SERVER_JARFILE}\r\nfi",
"entry": "ash",
"container": "alpine:3.7",
"extends": null
},
"created_at": "2018-03-18T15:14:37+00:00",
"updated_at": "2018-07-08T00:56:48+00:00"
}
},
{
"object": "egg",
"attributes": {
"id": 2,
"uuid": "2f9bfca1-4a41-4302-83e9-0aa868719eb6",
"nest": 1,
"author": "support@pterodactyl.io",
"description": "Minecraft Forge Server. Minecraft Forge is a modding API (Application Programming Interface), which makes it easier to create mods, and also make sure mods are compatible with each other.",
"docker_image": "quay.io/pterodactyl/core:java",
"config": {
"files": {
"server.properties": {
"parser": "properties",
"find": {
"server-ip": "0.0.0.0",
"enable-query": "true",
"server-port": "{{server.build.default.port}}",
"query.port": "{{server.build.default.port}}"
}
}
},
"startup": {
"done": ")! For help, type ",
"userInteraction": [
"Go to eula.txt for more info."
]
},
"stop": "stop",
"logs": {
"custom": false,
"location": "logs/latest.log"
},
"extends": null
},
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"script": {
"privileged": true,
"install": "#!/bin/ash\r\n# Forge Installation Script\r\n#\r\n# Server Files: /mnt/server\r\napk update\r\napk add curl\r\n\r\nif [ -z \"$MC_VERSION\" ] || [ \"$MC_VERSION\" == \"latest\" ]; then\r\n FORGE_VERSION=$(curl -sl http://files.minecraftforge.net/maven/net/minecraftforge/forge/ | grep -A1 Latest | grep -o -e '[1]\\.[0-9][0-9]]\\?\\.\\?[0-9]\\?[0-9] - [0-9][0-9]\\.[0-9][0-9]\\.[0-9]\\?[0-9]\\.[0-9][0-9][0-9][0-9]' | sed 's/ //g')\r\nelse\r\n FORGE_VERSION=$(curl -sl http://files.minecraftforge.net/maven/net/minecraftforge/forge/index_$MC_VERSION.html | grep -A1 Latest | grep -o -e '[1]\\.[0-9][0-9]]\\?\\.\\?[0-9]\\?[0-9] - [0-9][0-9]\\.[0-9][0-9]\\.[0-9]\\?[0-9]\\.[0-9][0-9][0-9][0-9]' | sed 's/ //g')\r\nfi\r\n\r\ncd /mnt/server\r\n\r\necho -e \"\\nDownloading Forge Version $FORGE_VERSION\\n\"\r\ncurl -sS http://files.minecraftforge.net/maven/net/minecraftforge/forge/$FORGE_VERSION/forge-$FORGE_VERSION-installer.jar -o installer.jar\r\ncurl -sS http://files.minecraftforge.net/maven/net/minecraftforge/forge/$FORGE_VERSION/forge-$FORGE_VERSION-universal.jar -o $SERVER_JARFILE\r\n\r\necho -e \"\\nInstalling forge server usint the installer jar file.\\n\"\r\njava -jar installer.jar --installServer\r\n\r\necho -e \"\\nDeleting installer jar file and cleaning up.\\n\"\r\nrm -rf installer.jar",
"entry": "ash",
"container": "frolvlad/alpine-oraclejdk8:cleaned",
"extends": null
},
"created_at": "2018-03-18T15:14:37+00:00",
"updated_at": "2018-07-08T00:56:48+00:00"
}
},
{
"object": "egg",
"attributes": {
"id": 3,
"uuid": "dd105df0-124e-4c1a-8738-caa9e457569f",
"nest": 1,
"author": "support@pterodactyl.io",
"description": "For a long time, Minecraft server owners have had a dream that encompasses a free, easy, and reliable way to connect multiple Minecraft servers together. BungeeCord is the answer to said dream. Whether you are a small server wishing to string multiple game-modes together, or the owner of the ShotBow Network, BungeeCord is the ideal solution for you. With the help of BungeeCord, you will be able to unlock your community's full potential.",
"docker_image": "quay.io/pterodactyl/core:java",
"config": {
"files": {
"config.yml": {
"parser": "yaml",
"find": {
"listeners[0].query_enabled": true,
"listeners[0].query_port": "{{server.build.default.port}}",
"listeners[0].host": "0.0.0.0:{{server.build.default.port}}",
"servers.*.address": {
"127.0.0.1": "{{config.docker.interface}}",
"localhost": "{{config.docker.interface}}"
}
}
}
},
"startup": {
"done": "Listening on ",
"userInteraction": [
"Listening on /0.0.0.0:25577"
]
},
"stop": "end",
"logs": {
"custom": false,
"location": "proxy.log.0"
},
"extends": null
},
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"script": {
"privileged": true,
"install": "#!/bin/ash\n# Bungeecord Installation Script\n#\n# Server Files: /mnt/server\napk update\napk add curl\n\ncd /mnt/server\n\nif [ -z \"${BUNGEE_VERSION}\" ] || [ \"${BUNGEE_VERSION}\" == \"latest\" ]; then\n BUNGEE_VERSION=\"lastStableBuild\"\nfi\n\ncurl -o ${SERVER_JARFILE} https://ci.md-5.net/job/BungeeCord/${BUNGEE_VERSION}/artifact/bootstrap/target/BungeeCord.jar",
"entry": "ash",
"container": "alpine:3.4",
"extends": null
},
"created_at": "2018-03-18T15:14:37+00:00",
"updated_at": "2018-03-18T15:14:37+00:00"
}
},
{
"object": "egg",
"attributes": {
"id": 4,
"uuid": "56af5379-7255-46af-b693-eb71b1ba4e90",
"nest": 1,
"author": "support@pterodactyl.io",
"description": "Minecraft is a game about placing blocks and going on adventures. Explore randomly generated worlds and build amazing things from the simplest of homes to the grandest of castles. Play in Creative Mode with unlimited resources or mine deep in Survival Mode, crafting weapons and armor to fend off dangerous mobs. Do all this alone or with friends.",
"docker_image": "quay.io/pterodactyl/core:java",
"config": {
"files": {
"server.properties": {
"parser": "properties",
"find": {
"server-ip": "0.0.0.0",
"enable-query": "true",
"server-port": "{{server.build.default.port}}",
"query.port": "{{server.build.default.port}}"
}
}
},
"startup": {
"done": ")! For help, type ",
"userInteraction": [
"Go to eula.txt for more info."
]
},
"stop": "stop",
"logs": {
"custom": false,
"location": "logs/latest.log"
},
"extends": null
},
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"script": {
"privileged": true,
"install": "#!/bin/ash\r\n# Vanilla MC Installation Script\r\n#\r\n# Server Files: /mnt/server\r\napk update\r\napk add curl jq\r\n\r\ncd /mnt/server\r\n\r\nLATEST_VERSION=`curl https://launchermeta.mojang.com/mc/game/version_manifest.json | jq -r '.latest.release'`\r\n\r\nif [ -z \"$VANILLA_VERSION\" ] || [ \"$VANILLA_VERSION\" == \"latest\" ]; then\r\n MANIFEST_URL=$(curl https://launchermeta.mojang.com/mc/game/version_manifest.json | jq .versions | jq -r '.[] | select(.id == \"'$LATEST_VERSION'\") | .url')\r\nelse\r\n MANIFEST_URL=$(curl https://launchermeta.mojang.com/mc/game/version_manifest.json | jq .versions | jq -r '.[] | select(.id == \"'$VANILLA_VERSION'\") | .url')\r\nfi\r\n\r\nDOWNLOAD_URL=`curl $MANIFEST_URL | jq .downloads.server | jq -r '. | .url'`\r\n\r\ncurl -o ${SERVER_JARFILE} $DOWNLOAD_URL",
"entry": "ash",
"container": "alpine:3.7",
"extends": null
},
"created_at": "2018-03-18T15:14:37+00:00",
"updated_at": "2018-07-08T00:56:48+00:00"
}
},
{
"object": "egg",
"attributes": {
"id": 5,
"uuid": "30bf5d10-9f37-4b58-9674-78b73a482e2a",
"nest": 1,
"author": "support@pterodactyl.io",
"description": "SpongeVanilla is the SpongeAPI implementation for Vanilla Minecraft.",
"docker_image": "quay.io/pterodactyl/core:java-glibc",
"config": {
"files": {
"server.properties": {
"parser": "properties",
"find": {
"server-ip": "0.0.0.0",
"enable-query": "true",
"server-port": "{{server.build.default.port}}",
"query.port": "{{server.build.default.port}}"
}
}
},
"startup": {
"done": ")! For help, type ",
"userInteraction": [
"Go to eula.txt for more info."
]
},
"stop": "stop",
"logs": {
"custom": false,
"location": "logs/latest.log"
},
"extends": null
},
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"script": {
"privileged": true,
"install": "#!/bin/ash\n# Sponge Installation Script\n#\n# Server Files: /mnt/server\n\napk update\napk add curl\n\ncd /mnt/server\n\ncurl -sSL \"https://repo.spongepowered.org/maven/org/spongepowered/spongevanilla/${SPONGE_VERSION}/spongevanilla-${SPONGE_VERSION}.jar\" -o ${SERVER_JARFILE}",
"entry": "ash",
"container": "alpine:3.4",
"extends": null
},
"created_at": "2018-03-18T15:14:37+00:00",
"updated_at": "2018-03-18T15:14:37+00:00"
}
},
{
"object": "egg",
"attributes": {
"id": 15,
"uuid": "21a8b345-0d42-4c26-adc2-b2584a3bac83",
"nest": 1,
"author": "parker@parkervcp.com",
"description": "The stupid chatbot parkertron by Parkervcp.\r\n\r\nhttps://github.com/parkervcp/parkertron",
"docker_image": "quay.io/parkervcp/pterodactyl-images:parkertron",
"config": {
"files": [],
"startup": {
"done": "Bot is now running"
},
"stop": "^C",
"logs": {
"custom": false,
"location": "logs/latest.log"
},
"extends": null
},
"startup": "./parkertron",
"script": {
"privileged": true,
"install": "#!/bin/ash\r\n# parkertron Installation Script\r\n#\r\n# Server Files: /mnt/server\r\nexport GOPATH=$HOME/go\r\nexport PATH=$GOROOT/bin:$GOPATH/bin:$PATH\r\n\r\ncd\r\n\r\nmkdir -p go/bin go/src\r\n\r\napk add --no-cache --update go git curl lua-stdlib lua musl-dev g++ libc-dev tesseract-ocr tesseract-ocr-dev\r\n\r\necho \"installing dep for golang dependancies\"\r\n\r\ncurl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh\r\n\r\ncd go/src/\r\n\r\necho \"pulling the parkertron pterodactyl branch\"\r\n\r\ngit clone https://github.com/parkervcp/parkertron.git\r\n\r\ncd parkertron/\r\n\r\ndep ensure\r\n\r\necho \"building parkertron\"\r\n\r\ngo build \r\n\r\necho \"build complete copying parkertron and example configs over\"\r\n\r\ncp parkertron /mnt/server/\r\n\r\nif [ -d \"$DIRECTORY\" ]; then\r\n echo \"Files exist already\"\r\nelse\r\n cp -r configs/ /mnt/server/\r\nfi\r\n\r\necho \"Install complete. If you watched this. Congrats.\"",
"entry": "ash",
"container": "alpine:3.7",
"extends": null
},
"created_at": "2018-11-10T19:49:41+00:00",
"updated_at": "2018-11-10T19:49:41+00:00"
}
}
]
}
This endpoint retrieves all eggs for the specified nest along with information about them.
HTTP Request
GET https://pterodactyl.app/api/application/nests/<nest-id>/eggs
Get specific egg
curl "https://pterodactyl.app/api/application/nests/<nest-id>/eggs/<egg-id>" \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
-H "Accept: Application/vnd.pterodactyl.v1+json" \
-X GET
The above command returns JSON structured like this:
{
"object": "egg",
"attributes": {
"id": 1,
"uuid": "db6323d7-d62f-4278-bb66-db06484b1089",
"nest": 1,
"author": "support@pterodactyl.io",
"description": "Spigot is the most widely-used modded Minecraft server software in the world. It powers many of the top Minecraft server networks around to ensure they can cope with their huge player base and ensure the satisfaction of their players. Spigot works by reducing and eliminating many causes of lag, as well as adding in handy features and settings that help make your job of server administration easier.",
"docker_image": "quay.io/pterodactyl/core:java-glibc",
"config": {
"files": {
"server.properties": {
"parser": "properties",
"find": {
"server-ip": "0.0.0.0",
"enable-query": "true",
"server-port": "{{server.build.default.port}}",
"query.port": "{{server.build.default.port}}"
}
}
},
"startup": {
"done": ")! For help, type ",
"userInteraction": [
"Go to eula.txt for more info."
]
},
"stop": "stop",
"logs": {
"custom": false,
"location": "logs/latest.log"
},
"extends": null
},
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"script": {
"privileged": true,
"install": "#!/bin/ash\r\n# Spigot Installation Script\r\n#\r\n# Server Files: /mnt/server\r\n\r\n## Only download if a path is provided, otherwise continue.\r\nif [ ! -z \"${DL_PATH}\" ]; then\r\n apk update\r\n apk add curl\r\n\r\n cd /mnt/server\r\n\r\n MODIFIED_DOWNLOAD=`eval echo $(echo ${DL_PATH} | sed -e 's/{{/${/g' -e 's/}}/}/g')`\r\n curl -sSL -o ${SERVER_JARFILE} ${MODIFIED_DOWNLOAD}\r\nelse\r\n apk add --no-cache curl git openjdk8 openssl\r\n \r\n cd /srv/\r\n \r\n wget https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar\r\n \r\n mv BuildTools.jar /srv/\r\n\r\n java -jar BuildTools.jar --rev ${DL_VERSION}\r\n\r\n mv spigot-*.jar /mnt/server/${SERVER_JARFILE}\r\nfi",
"entry": "ash",
"container": "alpine:3.7",
"extends": null
},
"created_at": "2018-03-18T15:14:37+00:00",
"updated_at": "2018-07-08T00:56:48+00:00"
}
}
This endpoint retrieves the specified egg for the specified nest along with information about them.
HTTP Request
GET https://pterodactyl.app/api/application/nests/<nest-id>/eggs/<egg-id>
Errors
The Kittn API uses the following error codes:
Error Code | Meaning |
---|---|
400 | Bad Request -- Your request is invalid. |
401 | Unauthorized -- Your API key is wrong. |
403 | Forbidden -- The kitten requested is hidden for administrators only. |
404 | Not Found -- The specified kitten could not be found. |
405 | Method Not Allowed -- You tried to access a kitten with an invalid method. |
406 | Not Acceptable -- You requested a format that isn't json. |
410 | Gone -- The kitten requested has been removed from our servers. |
418 | I'm a teapot. |
429 | Too Many Requests -- You're requesting too many kittens! Slow down! |
500 | Internal Server Error -- We had a problem with our server. Try again later. |
503 | Service Unavailable -- We're temporarily offline for maintenance. Please try again later. |