MineStrator API

Documentation

v0.1 - 26 juin 2026
API REST officielle de MineStrator.com

URL d'accès

Tous les appels de l'API doivent être envoyés à cette URL de base pour fonctionner :

https://mine.sttr.io

Authentification

Chaque requête doit inclure votre clé API encodée en base64 dans le header Authorization :

Authorization: Bearer base64(VOTRE_CLÉ)

Récupérez votre clé dans votre panel : Compte → Clés API.

Conditions d'utilisation

L'API est accessible à tous les clients MineStrator.com. L'utilisation depuis une application externe doit être contrôlée, raisonnable et dans le cadre d'un usage standard des services MineStrator.com. En cas d'abus, l'accès API peut être désactivé et le compte associé suspendu.

L'usage de l'API est soumis aux conditions générales d'utilisation de MineStrator.

Piloter l'API avec une IA (ChatGPT, Gemini, Claude, Copilot…)
Pas envie de coder ? Copiez un prompt prêt à l'emploi et laissez une IA tout gérer.
Exporter la doc (YAML)
Démarrage rapide
Exemple guidé : créez votre premier serveur, pas à pas (données fictives).
GET/user

Récupérer son profil

Récupère les informations de votre propre compte : profil, solde de crédits et comptes de jeu liés.

Accès : authentification requise. L'endpoint renvoie toujours le compte associé à votre clé API.

Réponses

GET/user
curl -X GET 'https://mine.sttr.io/user' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)"
{
  "api": {
    "description": "User - Informations - Get user datas",
    "endpoint": "/user",
    "code": 200,
    "data": {
      "user": {
        "datas": {
          "id": 12345,
          "pseudo": "Steve",
          "mail": "[email protected]",
          "mail_validated": 1,
          "money": 12.5,
          "lang": "fr",
          "register_date": "2024-01-15 18:42:10"
        },
        "linked_account": {
          "minecraft": {
            "uuid": "853c80ef3c3749fdaa49938b674adae6",
            "name": "Steve"
          },
          "discord": {
            "id": "123456789012345678",
            "name": "steve#0001"
          }
        }
      }
    }
  }
}
Données utilisateur récupérées avec succès
GET/user/{id_user}/servers

Lister ses MyBox et serveurs

Récupère vos propres serveurs : les MyBox auxquelles vous avez accès (servers_groups, indexées par ID) et la liste à plat de vos serveurs (servers), possédés ou accessibles en sous-utilisateur.

Accès : authentification requise. Vous ne pouvez lister que vos propres serveurs (id_user doit correspondre à votre compte).

Paramètres

id_userintegerrequis
Votre ID utilisateur.

Réponses

GET/user/{id_user}/servers
curl -X GET 'https://mine.sttr.io/user/{id_user}/servers' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)"
{
  "api": {
    "description": "User - Servers - Get user servers",
    "endpoint": "/user/12345/servers",
    "code": 200,
    "data": {
      "servers_groups": {
        "12345": {
          "id": 12345,
          "name": "Ma MyBox",
          "owner": 1,
          "offer": "MyBox 8",
          "resources": {
            "cpu": 4,
            "ram": 8,
            "disk": 50
          },
          "tend": "2026-09-01 00:00:00",
          "tend_days": 74,
          "is_free": 0,
          "is_trial": 0,
          "is_pro": 0,
          "is_expired": 0,
          "is_suspended": 0
        }
      },
      "servers": [
        {
          "id": 67890,
          "name": "Survie 1.21",
          "id_mybox": 12345,
          "id_egg": 1,
          "egg_name": "Minecraft Java",
          "egg_icon": "https://cdn.minestrator.com/eggs/minecraft.png",
          "egg_uuid": "a1b2c3d4-0000-0000-0000-000000000000",
          "hashsupport": "AB12CD",
          "ip": "94.231.1.10:25565",
          "port": 25565,
          "dns": "play.mondomaine.com",
          "tstart": "2024-06-01 12:00:00",
          "tend": "2026-09-01 00:00:00",
          "is_bedrock": 0,
          "is_free": 0,
          "is_expired": 0,
          "is_suspended": 0,
          "is_disabled": 0,
          "hibernation": 0,
          "owner": 1
        }
      ]
    }
  }
}
Serveurs de l'utilisateur récupérés avec succès
GET/mybox/{id_mybox}

Récupérer les informations d'une MyBox

Récupère les informations d'une MyBox : état, offre et ressources, et la liste de ses serveurs.

Accès : propriétaire de la MyBox, ou sous-utilisateur avec la permission view.

Paramètres

id_myboxintegerrequis
ID de la MyBox.

Réponses

GET/mybox/{id_mybox}
curl -X GET 'https://mine.sttr.io/mybox/{id_mybox}' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)"
{
  "api": {
    "description": "MyBox - Actions - Get datas",
    "endpoint": "/mybox/12345",
    "code": 200,
    "data": {
      "mybox": {
        "id": 12345,
        "name": "Ma MyBox",
        "hashsupport": "WQ6KX",
        "tstart": "2024-06-01 12:00:00",
        "tend": "2026-09-01 00:00:00",
        "tend_days": 74,
        "deletion_days": 14,
        "owner": 1,
        "subscription": 1,
        "is_free": 0,
        "is_trial": 0,
        "is_pro": 0,
        "is_expired": 0,
        "is_suspended": 0,
        "cpu_remaining": 2,
        "ram_remaining": 4
      },
      "offer": {
        "id": 5,
        "name": "MyBox 8",
        "price": 7.99,
        "cpu": 4,
        "ram": 8,
        "disk": 50,
        "disk_total": 70,
        "dbsize": 10,
        "dbnb": 2,
        "pods": 1
      },
      "servers": [
        {
          "id": 67890,
          "name": "Survie 1.21",
          "egg": 1,
          "egg_name": "Minecraft Java",
          "egg_icon": "https://cdn.minestrator.com/eggs/minecraft.png",
          "ip": "94.231.1.10:25565",
          "cpu": 2,
          "ram": 4,
          "disabled": 0,
          "is_expired": 0,
          "is_suspended": 0,
          "location": "France",
          "country": "France",
          "country_iso": "fr"
        }
      ]
    }
  }
}
Données de la MyBox récupérées avec succès
POST/mybox/{id_mybox}/server

Créer un serveur

Crée un nouveau serveur dans une MyBox et lance son installation. Le serveur partage les ressources (CPU / RAM / disque) de la MyBox.

Indiquez le type de serveur via id_egg ou id_egg_experimental (l'un des deux est requis). Sur une MyBox encore vide, si cpu et ram sont omis, toutes les ressources de l'offre sont allouées au serveur — sauf si force_settings est défini.

Les id valides se récupèrent via GET /server/catalog/locations (champ location) et GET /server/catalog/eggs (champ id_egg).

Accès : propriétaire de la MyBox, ou sous-utilisateur avec la permission server_create.

Paramètres

id_myboxintegerrequis
ID de la MyBox.

Corps de la requête

locationrequisintegerID de la localisation (datacenter) où héberger le serveur.
id_eggintegerID du type de serveur (egg). Requis si id_egg_experimental est absent.
id_egg_experimentalintegerID d'un egg expérimental. Requis si id_egg est absent.
cpuintegerCœurs CPU à allouer. Optionnel pour le premier serveur d'une MyBox vide.
ramintegerRAM à allouer, en Go. Optionnel pour le premier serveur d'une MyBox vide.
namestringNom du serveur.
required_fieldsarray<object>Valeurs des champs requis par l'egg choisi.
keystring
valuestring
force_settingsintegerEmpêche l'allocation automatique de toute l'offre au premier serveur.

Réponses

POST/mybox/{id_mybox}/server
curl -X POST 'https://mine.sttr.io/mybox/{id_mybox}/server' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"location":1,"id_egg":1,"id_egg_experimental":0,"cpu":2,"ram":4,"name":"Mon serveur Survie","required_fields":[{"key":"SERVER_VERSION","value":"1.21"}],"force_settings":0}'
{
  "api": {
    "description": "MyBox - Server - Create a server",
    "endpoint": "/mybox/12345/server",
    "code": 200,
    "data": {
      "id_mybox": 12345,
      "id_server": 67890,
      "ip": "51.83.42.10:25565"
    }
  }
}
Serveur créé avec succès
PATCH/mybox/{id_mybox}/server

Modifier les ressources d'un serveur

Modifie le CPU et la RAM alloués à un serveur, dans la limite des ressources de l'offre de la MyBox.

Le serveur doit être éteint pour être redimensionné.

Accès : propriétaire de la MyBox, ou sous-utilisateur avec la permission server_update.

Paramètres

id_myboxintegerrequis
ID de la MyBox.

Corps de la requête

id_serverrequisintegerID du serveur à modifier.
cpurequisintegerCœurs CPU à allouer.
ramrequisintegerRAM à allouer, en Go.

Réponses

PATCH/mybox/{id_mybox}/server
curl -X PATCH 'https://mine.sttr.io/mybox/{id_mybox}/server' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"id_server":67890,"cpu":2,"ram":4}'
{
  "api": {
    "description": "MyBox - Server - Edit server resources",
    "endpoint": "/mybox/12345/server",
    "code": 200
  }
}
Ressources du serveur modifiées avec succès
DELETE/mybox/{id_mybox}/server/{id_server}

Supprimer un serveur

Supprime définitivement un serveur de la MyBox. Cette action est irréversible : le serveur et ses données sont détruits, et ses ressources sont libérées dans la MyBox.

Accès : propriétaire de la MyBox, ou sous-utilisateur avec la permission server_delete.

Paramètres

id_myboxintegerrequis
ID de la MyBox.
id_serverintegerrequis
ID du serveur à supprimer.

Réponses

DELETE/mybox/{id_mybox}/server/{id_server}
curl -X DELETE 'https://mine.sttr.io/mybox/{id_mybox}/server/{id_server}' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)"
{
  "api": {
    "description": "MyBox - Server - Delete a server",
    "endpoint": "/mybox/12345/server/67890",
    "code": 200
  }
}
Serveur supprimé avec succès
PATCH/mybox/{id_mybox}/server/enable

Activer un serveur

Réactive un serveur précédemment désactivé. Le serveur reprend sa part de ressources dans la MyBox — l'offre doit donc avoir assez de CPU / RAM disponibles.

Accès : propriétaire de la MyBox, ou sous-utilisateur avec la permission server_status.

Paramètres

id_myboxintegerrequis
ID de la MyBox.

Corps de la requête

id_serverrequisintegerID du serveur à activer.

Réponses

PATCH/mybox/{id_mybox}/server/enable
curl -X PATCH 'https://mine.sttr.io/mybox/{id_mybox}/server/enable' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"id_server":67890}'
{
  "api": {
    "description": "MyBox - Server - Enable a server",
    "endpoint": "/mybox/12345/server/enable",
    "code": 200
  }
}
Serveur activé avec succès
PATCH/mybox/{id_mybox}/server/disable

Désactiver un serveur

Désactive un serveur sans le supprimer : il est suspendu et libère sa part de ressources dans la MyBox, qui redeviennent disponibles pour les autres serveurs. Réactivable à tout moment.

Accès : propriétaire de la MyBox, ou sous-utilisateur avec la permission server_status.

Paramètres

id_myboxintegerrequis
ID de la MyBox.

Corps de la requête

id_serverrequisintegerID du serveur à désactiver.

Réponses

PATCH/mybox/{id_mybox}/server/disable
curl -X PATCH 'https://mine.sttr.io/mybox/{id_mybox}/server/disable' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"id_server":67890}'
{
  "api": {
    "description": "MyBox - Server - Disable a server",
    "endpoint": "/mybox/12345/server/disable",
    "code": 200
  }
}
Serveur désactivé avec succès
GET/server/catalog/locations

Lister les localisations disponibles

Liste les localisations où un serveur peut être créé. Utilisez l'id retourné comme champ location lors de la création d'un serveur.

Accès : tout client authentifié.

Réponses

GET/server/catalog/locations
curl -X GET 'https://mine.sttr.io/server/catalog/locations' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)"
{
  "api": {
    "description": "Server - Catalog - Available locations",
    "endpoint": "/server/catalog/locations",
    "code": 200,
    "data": {
      "locations": [
        {
          "id": 1,
          "city": "Toulouse",
          "country": "France",
          "country_iso": "FR"
        }
      ]
    }
  }
}
Localisations récupérées avec succès
GET/server/catalog/eggs

Lister les types de serveur (eggs) disponibles

Liste les types de serveur disponibles à la création (jeux, bases de données, outils, runtimes…). Utilisez l'id retourné comme champ id_egg lors de la création.

required_fields indique les champs que l'egg impose : reportez chaque key dans le tableau required_fields du corps de création.

Accès : tout client authentifié.

Réponses

GET/server/catalog/eggs
curl -X GET 'https://mine.sttr.io/server/catalog/eggs' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)"
{
  "api": {
    "description": "Server - Catalog - Available eggs",
    "endpoint": "/server/catalog/eggs",
    "code": 200,
    "data": {
      "eggs": [
        {
          "id": 1,
          "name": "Minecraft",
          "required_fields": [
            null
          ]
        }
      ]
    }
  }
}
Types de serveur récupérés avec succès
GET/server/{id_server}

Récupérer les informations d'un serveur

Récupère les informations complètes d'un serveur.

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission view. Certains blocs de la réponse nécessitent une permission supplémentaire : ports (ports_view), sftp (sftp), livemap (livemap) — sans elle, le bloc est absent.

Paramètres

id_serverintegerrequis
ID du serveur

Réponses

GET/server/{id_server}
curl -X GET 'https://mine.sttr.io/server/{id_server}' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)"
{
  "api": {
    "description": "Server - Actions - Get datas",
    "endpoint": "/server/67890",
    "code": 200,
    "data": {
      "server": {
        "id": 67890,
        "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
        "id_daemon": 0,
        "id_mybox": 12345,
        "offre": "",
        "is_free": 0,
        "hashsupport": "AB3CD",
        "tstart": "",
        "tend": "",
        "dedicated_ip": 0,
        "ip": "94.231.203.18",
        "port": 25565,
        "dns": "monserveur.myjeux.fr",
        "owner": 0,
        "name": "Mon serveur Minecraft",
        "id_groupe": "",
        "ordre": 0,
        "permissions": [
          ""
        ],
        "hibernation": 0
      },
      "websocket": {
        "url": "wss://node1.mystrator.com:8080",
        "token": "eyJhbGciOiJI..."
      },
      "mybox": {
        "name": "Ma MyBox",
        "hashsupport": "WQ6KX",
        "refund_requested_at": "",
        "reduction": 0,
        "to_review": 0,
        "resources": {
          "cpu": 0,
          "ram": 0,
          "disk": 0
        }
      },
      "offer": {
        "name": "MyBox Diamond",
        "is_pro": 0,
        "is_trial": 0,
        "is_free": 0,
        "cpu": 0,
        "ram": 0,
        "disk": 0,
        "auto_shutdown_seconds": 14400
      },
      "egg": {
        "id": 5,
        "type": 0,
        "name": "Minecraft Vanilla",
        "icon": "minecraft.png",
        "uuid": ""
      },
      "settings": {
        "is_bedrock": 0,
        "is_bungeecord": 0,
        "java_memory": 0,
        "image": "ghcr.io/pterodactyl/yolks:java_21",
        "id_java_version": "",
        "startup": "",
        "startup_file": "server.jar",
        "poweraction_message": {
          "restart": "Server restarting in $x seconds...",
          "stop": "Server stopping in $x seconds..."
        }
      },
      "options": [
        {
          "name": "RAM +2 Go",
          "price": "3.99"
        }
      ],
      "history": [
        {
          "date": "",
          "ip": "",
          "is_staff": true,
          "action": "power.start"
        }
      ],
      "ports": [
        {
          "port": 25566,
          "ip": "94.231.203.18",
          "description": "Dynmap"
        }
      ],
      "sftp": {
        "protocol": "sftp",
        "host": "node1.mystrator.com",
        "port": 2022,
        "user": "player123.abc12345",
        "password": ""
      },
      "livemap": {
        "option": 0,
        "enabled": 0,
        "generated": 0,
        "url": "https://node1.mystrator.com/s/abc12345-...",
        "start": "",
        "end": "",
        "is_free": 0
      },
      "onboarding": {
        "eligible": true,
        "status": "not_started",
        "user_disabled": true
      }
    }
  }
}
Données du serveur récupérées avec succès
GET/server/{id_server}/live

Récupérer les statistiques temps réel d'un serveur

Renvoie l'état et les statistiques temps réel d'un serveur. Pour un serveur en ligne, les joueurs connectés et les informations du jeu sont aussi renvoyés si le jeu est supporté (certains jeux ne permettent pas de récupérer ces données).

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission view.

Paramètres

id_serverintegerrequis
ID du serveur

Réponses

GET/server/{id_server}/live
curl -X GET 'https://mine.sttr.io/server/{id_server}/live' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)"
{
  "api": {
    "description": "Server - Actions - Get live datas",
    "endpoint": "/server/67890/live",
    "code": 200,
    "data": {
      "state": "online",
      "status": "",
      "stats": {
        "state": "online",
        "cpu": {
          "current": 0,
          "dedicated": 0,
          "flexcore": 0,
          "limit": 0,
          "percent": 0,
          "is_bursting": true
        },
        "memory": {
          "current": 0,
          "limit": 0,
          "percent": 0
        },
        "disk": {
          "current": 0,
          "limit": 0,
          "percent": 0
        },
        "network": {
          "rx_bytes": 0,
          "tx_bytes": 0
        },
        "uptime": {
          "days": 0,
          "hours": 0,
          "minutes": 0,
          "total_seconds": 0
        },
        "players": {
          "current": 0,
          "limit": 0,
          "list": [
            null
          ]
        },
        "version": "",
        "motd": "",
        "hostname": ""
      }
    }
  }
}
Statistiques temps réel récupérées avec succès
GET/server/{id_server}/live/light

Récupérer les données live complémentaires (version allégée)

Version allégée de GET /server/{id_server}/live, pensée pour accompagner la connexion websocket. Les informations de jeu (joueurs connectés, version…) ne sont disponibles que si le jeu est supporté (certains jeux ne permettent pas de récupérer ces données).

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission view.

Paramètres

id_serverintegerrequis
ID du serveur

Réponses

GET/server/{id_server}/live/light
curl -X GET 'https://mine.sttr.io/server/{id_server}/live/light' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)"
{
  "api": {
    "description": "Server - Actions - Get live datas (light)",
    "endpoint": "/server/67890/live/light",
    "code": 200,
    "data": {
      "status": null,
      "cpu": {
        "dedicated": 200,
        "flexcore": 100,
        "limit": 300
      },
      "disk": {
        "limit": 10000
      },
      "memory": {
        "limit": 8000
      },
      "players": {
        "current": 12,
        "limit": 100,
        "list": [
          "Notch",
          "jeb_"
        ]
      },
      "version": "1.21.1",
      "motd": "Bienvenue sur le serveur !",
      "hostname": "play.example.com"
    }
  }
}
Données live allégées récupérées avec succès
GET/server/{id_server}/console/logs

Récupérer les logs de la console

Renvoie les 100 dernières lignes de la console du serveur, avec leurs codes couleur ANSI bruts.

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission view.

Paramètres

id_serverintegerrequis
ID du serveur.

Réponses

GET/server/{id_server}/console/logs
curl -X GET 'https://mine.sttr.io/server/{id_server}/console/logs' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)"
{
  "api": {
    "description": "Server - Console - Get recent console logs",
    "endpoint": "/server/67890/console/logs",
    "code": 200,
    "data": {
      "logs": [
        "[12:00:03 INFO]: Done (5.123s)! For help, type \"help\"",
        "[12:00:14 INFO]: Steve a rejoint la partie"
      ]
    }
  }
}
Logs récupérés avec succès
PUT/server/{id_server}/poweraction

Envoyer une action d'alimentation

Démarre, redémarre, arrête ou force l'arrêt d'un serveur. Les variantes restart10 / stop10 diffusent un compte à rebours de 10 secondes avant d'agir (la requête reste alors bloquée ~10 s).

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission correspondant à l'action (poweraction_start, poweraction_restart, poweraction_stop, poweraction_kill).

Paramètres

id_serverintegerrequis
ID du serveur

Corps de la requête

poweractionrequisstringAction à exécuter : - start : démarrer le serveur - restart : redémarrer immédiatement - restart10 : redémarrer avec un compte à rebours de 10 s dans la console - stop : arrêter immédiatement - stop10 : arrêter avec un compte à rebours de 10 s dans la console - kill : forcer l'arrêt du processus startrestartrestart10stopstop10kill

Réponses

PUT/server/{id_server}/poweraction
curl -X PUT 'https://mine.sttr.io/server/{id_server}/poweraction' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"poweraction":"start"}'
{
  "api": {
    "description": "Server - Actions - Send power action",
    "endpoint": "/server/67890/poweraction",
    "code": 200
  }
}
Action transmise avec succès
PUT/server/{id_server}/command

Envoyer une commande au serveur

Transmet une commande au serveur.

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission command.

La commande n'est exécutée que si le serveur est en ligne. Sur un serveur arrêté, l'API répond tout de même 200 mais la commande est ignorée.

Paramètres

id_serverintegerrequis
ID du serveur

Corps de la requête

commandrequisstringCommande à envoyer au serveur

Réponses

PUT/server/{id_server}/command
curl -X PUT 'https://mine.sttr.io/server/{id_server}/command' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"command":"say Bonjour à tous !"}'
{
  "api": {
    "description": "Server - Actions - Send command",
    "endpoint": "/server/67890/command",
    "code": 200
  }
}
Commande transmise avec succès
PATCH/server/{id_server}/name

Renommer un serveur

Modifie le nom affiché du serveur. Le changement est appliqué immédiatement, sans redémarrage.

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission server_name.

Paramètres

id_serverintegerrequis
ID du serveur

Corps de la requête

namerequisstringNouveau nom du serveur.

Réponses

PATCH/server/{id_server}/name
curl -X PATCH 'https://mine.sttr.io/server/{id_server}/name' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"name":"Mon serveur Survie"}'
{
  "api": {
    "description": "Server - Settings - Edit server name",
    "endpoint": "/server/67890/name",
    "code": 200
  }
}
Nom du serveur modifié avec succès
GET/server/{id_server}/properties

Lire les paramètres d'un serveur (server.properties)

Renvoie les paramètres de configuration du serveur.

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission settings_view.

Paramètres

id_serverintegerrequis
ID du serveur

Réponses

GET/server/{id_server}/properties
curl -X GET 'https://mine.sttr.io/server/{id_server}/properties' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)"
{
  "api": {
    "description": "Server - Settings - Get server settings (server.properties)",
    "endpoint": "/server/67890/properties",
    "code": 200,
    "data": {
      "properties_type": "server_properties",
      "properties": ""
    }
  }
}
Paramètres du serveur récupérés avec succès
PATCH/server/{id_server}/properties

Modifier un paramètre d'un serveur (server.properties)

Modifie un seul paramètre du serveur ; le paramètre doit déjà exister. Appliqué au prochain démarrage.

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission settings_edit. Deux familles de paramètres exigent une permission supplémentaire : enable-rcon/rcon.*command ; op-permission-levelplayers_operator.

Paramètres

id_serverintegerrequis
ID du serveur

Corps de la requête

propertyrequisstringNom du paramètre à modifier (clé de server.properties).
valuestringNouvelle valeur du paramètre. Une valeur vide est acceptée (vide le paramètre).

Réponses

PATCH/server/{id_server}/properties
curl -X PATCH 'https://mine.sttr.io/server/{id_server}/properties' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"property":"max-players","value":"30"}'
{
  "api": {
    "description": "Server - Settings - Edit server settings (server.properties)",
    "endpoint": "/server/67890/properties",
    "code": 200
  }
}
Paramètre modifié avec succès
PATCH/server/{id_server}/poweraction/messages

Modifier les messages des actions d'alimentation

Définit les messages diffusés dans la console pendant le compte à rebours de 10 secondes des actions restart10 et stop10. Le marqueur $x est remplacé par le nombre de secondes restantes. Les deux champs restart et stop sont requis (valeur vide = efface le message).

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission settings_edit.

Paramètres

id_serverintegerrequis
ID du serveur

Corps de la requête

restartrequisstringMessage du compte à rebours avant redémarrage ($x = secondes restantes)
stoprequisstringMessage du compte à rebours avant arrêt ($x = secondes restantes)

Réponses

PATCH/server/{id_server}/poweraction/messages
curl -X PATCH 'https://mine.sttr.io/server/{id_server}/poweraction/messages' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"restart":"Redémarrage du serveur dans $x secondes...","stop":"Arrêt du serveur dans $x secondes..."}'
{
  "api": {
    "description": "Server - Settings - Edit power actions messages",
    "endpoint": "/server/67890/poweraction/messages",
    "code": 200
  }
}
Messages mis à jour avec succès
PATCH/server/{id_server}/icon

Modifier l'icône d'un serveur

Définit l'icône du serveur (affichée notamment dans la liste multijoueur Minecraft).

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission settings_edit.

Paramètres

id_serverintegerrequis
ID du serveur

Corps de la requête

filerequisstringImage au format data URI base64. Types acceptés : jpg, jpeg, png, bmp.

Réponses

PATCH/server/{id_server}/icon
curl -X PATCH 'https://mine.sttr.io/server/{id_server}/icon' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"file":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABA..."}'
{
  "api": {
    "description": "Server - Settings - Edit server icon",
    "endpoint": "/server/67890/icon",
    "code": 200
  }
}
Icône mise à jour avec succès
PUT/server/{id_server}/command/minecraft/kick

Expulser (kick) un joueur

Expulse un joueur du serveur (serveurs Minecraft ; sans effet si le serveur est hors ligne).

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission players_kick.

Paramètres

id_serverintegerrequis
ID du serveur

Corps de la requête

playerrequisstringNom du joueur

Réponses

PUT/server/{id_server}/command/minecraft/kick
curl -X PUT 'https://mine.sttr.io/server/{id_server}/command/minecraft/kick' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"player":"Notch"}'
{
  "api": {
    "code": 200
  }
}
Commande transmise avec succès
PUT/server/{id_server}/command/minecraft/ban

Bannir un joueur

Bannit un joueur du serveur (serveurs Minecraft ; sans effet si le serveur est hors ligne).

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission players_ban.

Paramètres

id_serverintegerrequis
ID du serveur

Corps de la requête

playerrequisstringNom du joueur

Réponses

PUT/server/{id_server}/command/minecraft/ban
curl -X PUT 'https://mine.sttr.io/server/{id_server}/command/minecraft/ban' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"player":"Notch"}'
{
  "api": {
    "code": 200
  }
}
Commande transmise avec succès
PUT/server/{id_server}/command/minecraft/unban

Débannir un joueur

Lève le bannissement d'un joueur (serveurs Minecraft ; sans effet si le serveur est hors ligne).

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission players_ban.

Paramètres

id_serverintegerrequis
ID du serveur

Corps de la requête

playerrequisstringNom du joueur

Réponses

PUT/server/{id_server}/command/minecraft/unban
curl -X PUT 'https://mine.sttr.io/server/{id_server}/command/minecraft/unban' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"player":"Notch"}'
{
  "api": {
    "code": 200
  }
}
Commande transmise avec succès
PUT/server/{id_server}/command/minecraft/op/add

Promouvoir un joueur opérateur (op)

Donne le statut opérateur à un joueur (serveurs Minecraft ; sans effet si le serveur est hors ligne).

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission players_operator.

Paramètres

id_serverintegerrequis
ID du serveur

Corps de la requête

playerrequisstringNom du joueur

Réponses

PUT/server/{id_server}/command/minecraft/op/add
curl -X PUT 'https://mine.sttr.io/server/{id_server}/command/minecraft/op/add' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"player":"Notch"}'
{
  "api": {
    "code": 200
  }
}
Commande transmise avec succès
PUT/server/{id_server}/command/minecraft/op/remove

Retirer le statut opérateur (deop)

Retire le statut opérateur d'un joueur (serveurs Minecraft ; sans effet si le serveur est hors ligne).

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission players_operator.

Paramètres

id_serverintegerrequis
ID du serveur

Corps de la requête

playerrequisstringNom du joueur

Réponses

PUT/server/{id_server}/command/minecraft/op/remove
curl -X PUT 'https://mine.sttr.io/server/{id_server}/command/minecraft/op/remove' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"player":"Notch"}'
{
  "api": {
    "code": 200
  }
}
Commande transmise avec succès
PUT/server/{id_server}/command/minecraft/whitelist/add

Ajouter un joueur à la whitelist

Ajoute un joueur à la whitelist du serveur (serveurs Minecraft ; sans effet si le serveur est hors ligne).

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission players_whitelist.

Paramètres

id_serverintegerrequis
ID du serveur

Corps de la requête

playerrequisstringNom du joueur

Réponses

PUT/server/{id_server}/command/minecraft/whitelist/add
curl -X PUT 'https://mine.sttr.io/server/{id_server}/command/minecraft/whitelist/add' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"player":"Notch"}'
{
  "api": {
    "code": 200
  }
}
Commande transmise avec succès
PUT/server/{id_server}/command/minecraft/whitelist/remove

Retirer un joueur de la whitelist

Retire un joueur de la whitelist du serveur (serveurs Minecraft ; sans effet si le serveur est hors ligne).

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission players_whitelist.

Paramètres

id_serverintegerrequis
ID du serveur

Corps de la requête

playerrequisstringNom du joueur

Réponses

PUT/server/{id_server}/command/minecraft/whitelist/remove
curl -X PUT 'https://mine.sttr.io/server/{id_server}/command/minecraft/whitelist/remove' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"player":"Notch"}'
{
  "api": {
    "code": 200
  }
}
Commande transmise avec succès
POST/user/{id_user}/snapshot

Créer une snapshot

Crée une snapshot d'un de vos serveurs : une sauvegarde complète que vous pourrez restaurer plus tard, sur ce serveur ou sur un autre.

Le traitement est asynchrone : la réponse renvoie un job_id qui identifie le job lancé en arrière-plan.

Accès : le titulaire du compte (la clé doit correspondre à id_user).

Paramètres

id_userintegerrequis
ID de l'utilisateur.

Corps de la requête

id_serverrequisintegerID du serveur à sauvegarder.
namerequisstringNom de la snapshot.

Réponses

POST/user/{id_user}/snapshot
curl -X POST 'https://mine.sttr.io/user/{id_user}/snapshot' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"id_server":67890,"name":"Avant mise à jour"}'
{
  "api": {
    "description": "User - Snapshots - Create snapshot",
    "endpoint": "/user/12345/snapshot",
    "code": 200,
    "data": {
      "job_id": 4567
    }
  }
}
Snapshot mise en file de traitement
PUT/user/{id_user}/snapshot

Restaurer une snapshot

Restaure une snapshot sur un serveur cible : le contenu actuel du serveur est remplacé par celui de la snapshot.

Le traitement est asynchrone : la réponse renvoie un job_id qui identifie le job lancé en arrière-plan.

Accès : le titulaire du compte (la clé doit correspondre à id_user).

Paramètres

id_userintegerrequis
ID de l'utilisateur.

Corps de la requête

id_snapshotrequisintegerID de la snapshot à restaurer.
id_serverrequisintegerID du serveur cible sur lequel restaurer.

Réponses

PUT/user/{id_user}/snapshot
curl -X PUT 'https://mine.sttr.io/user/{id_user}/snapshot' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"id_snapshot":321,"id_server":67890}'
{
  "api": {
    "description": "User - Snapshots - Restore snapshot",
    "endpoint": "/user/12345/snapshot",
    "code": 200,
    "data": {
      "job_id": 4568
    }
  }
}
Restauration mise en file de traitement
DELETE/user/{id_user}/snapshot/{id_snapshot}

Supprimer une snapshot

Supprime définitivement une snapshot.

Le traitement est asynchrone : la réponse renvoie un job_id qui identifie le job lancé en arrière-plan.

Accès : le titulaire du compte (la clé doit correspondre à id_user).

Paramètres

id_userintegerrequis
ID de l'utilisateur.
id_snapshotintegerrequis
ID de la snapshot.

Réponses

DELETE/user/{id_user}/snapshot/{id_snapshot}
curl -X DELETE 'https://mine.sttr.io/user/{id_user}/snapshot/{id_snapshot}' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)"
{
  "api": {
    "description": "User - Snapshots - Delete snapshot",
    "endpoint": "/user/12345/snapshot/321",
    "code": 200,
    "data": {
      "job_id": 4569
    }
  }
}
Suppression mise en file de traitement
PUT/server/{id_server}/backup

Restaurer une sauvegarde

Lance la restauration d'une sauvegarde sur un serveur. L'opération est asynchrone : la réponse 200 signale uniquement la prise en compte de la demande (le serveur est suspendu le temps de la restauration). Une seule restauration à la fois par serveur.

Accès : propriétaire du serveur, ou sous-utilisateur avec la permission saves_restore. Le propriétaire est notifié si l'action vient d'un sous-utilisateur.

Maintenance : si le système de sauvegarde est en maintenance, l'API répond 503 (API_SMART_BACKUP_MAINTENANCE).

Paramètres

id_serverintegerrequis
ID du serveur

Corps de la requête

id_backuprequisintegerID de la sauvegarde à restaurer (parmi celles du serveur)

Réponses

PUT/server/{id_server}/backup
curl -X PUT 'https://mine.sttr.io/server/{id_server}/backup' \
  -H "Authorization: Bearer $(printf '%s' 'VOTRE_CLE_API' | base64)" \
  -H 'Content-Type: application/json' \
  -d '{"id_backup":123}'
{
  "api": {
    "description": "Server - Backups - Restore backup",
    "endpoint": "/server/67890/backup",
    "code": 200
  }
}
Demande de restauration prise en compte (traitement asynchrone)