Se connecter Ajouter mon serveur

API de vote

Vérifiez un vote récent par adresse IP ou pseudo pendant le délai de vote du serveur. Sans vote récent, l’API renvoie HTTP 404 avec success à false et le message User not voted. La recherche par pseudo ne prouve pas une identité et renvoie ipv4 et ipv6 à null.

Endpoint https://serveur-prive.net/api/v1/servers/{server_token}/votes/{identifier}
{server_token} Indiquez le Token associé à votre serveur. Vous pouvez le trouver depuis l'onglet 'Paramètres'
{identifier} Adresse IPv4, IPv6 ou pseudo de 3 à 32 caractères : lettres ASCII, chiffres, tiret, point ou underscore. Exemple : /votes/Trevor. Encodez la valeur dans l’URL.
?type=username Facultatif : force la recherche par pseudo si celui-ci ressemble à une IP. Exemple : /votes/1.2.3.4?type=username. Sans ce paramètre, une IP valide garde le comportement historique.

Exemple de code

<?php
$server_token = "Token de votre serveur"; // Remplacez "TOKEN" par le token de votre serveur.
$identifier = "Trevor";
$query_url = "https://serveur-prive.net/api/v1/servers/$server_token/votes/" . rawurlencode($identifier);
$context = stream_context_create(["http" => ["ignore_errors" => true]]);
$json = file_get_contents($query_url, false, $context);
$json_data = json_decode($json);
if ($json_data->success) {
    echo 'Vous avez bien voté';
    // Vous pouvez utiliser les variables suivantes :
    $datas = $json_data->data; // Cette variable contiendra les données JSON renvoyées par l'API.
    $datas->username; // Pseudonyme de l'utilisateur
    $datas->voted_at; // Correspond à la date du vote au format timestamp
    $datas->is_connected; // Correspond à l'état de connexion de l'utilisateur
    $datas->is_subscriber; // Correspond à l'état d'abonnement de l'utilisateur
    $datas->next_vote_seconds; // Correspond au nombre de secondes restantes avant que l'utilisateur puisse à nouveau voter
} else {
    echo 'Pas ou déjà voté';
}
?>

Exemple de réponse

{
    "success": true,
    "data": {
        "username": "Trevor",
        "ipv4": null,
        "ipv6": null,
        "voted_at": 1689241974,
        "next_vote_seconds": 5395,
        "is_connected": true,
        "is_subscriber": false
    }
}

API de statistiques

Vous permet de récupérer les données de votre serveur comme sa position, son nombre de votes etc.

Endpoint https://serveur-prive.net/api/v1/servers/{server_token}/statistics
{server_token} Indiquez le Token associé à votre serveur. Vous pouvez le trouver depuis l'onglet 'Paramètres'

Exemple de code

<?php
$server_token = "Token de votre serveur"; // Remplacez "TOKEN" par le token de votre serveur.
$json = file_get_contents("https://serveur-prive.net/api/v1/servers/$server_token/statistics");
$json_data = json_decode($json);
if ($json_data->success) {
    echo 'Serveur trouvé';
    // Vous pouvez utiliser les variables suivantes :
    $datas = $json_data->data; // Cette variable contiendra les données JSON renvoyées par l'API.
    $datas->position; // Correspond à la position du serveur dans le classement du mois
    $datas->votes_count; // Correspond au nombre de votes du serveur
    $datas->clicks_count; // Correspond au nombre de clics du serveur
    $datas->comments_count; // Correspond au nombre de commentaires du serveur
    $datas->rating; // Correspond à la note du serveur sur 5
} else {
    echo 'Le Token spécifié est incorrect';
}
?>

Exemple de réponse

{
    "success": true,
    "data": {
        "position": 12,
        "votes_count": 1202,
        "clicks_count": 287,
        "comments_count": 7,
        "rating": 5
    }
}

API donateurs

Vous permet de récupérer les utilisateurs qui ont fait un don pour votre serveur depuis la page donation

Endpoint https://serveur-prive.net/api/v1/servers/{server_token}/donors
{server_token} Indiquez le Token associé à votre serveur. Vous pouvez le trouver depuis l'onglet 'Paramètres'

Exemple de code

<?php
$server_token = "Token de votre serveur"; // Remplacez "TOKEN" par le token de votre serveur.
$json = file_get_contents("https://serveur-prive.net/api/v1/servers/$server_token/donors");
$json_data = json_decode($json);
if ($json_data->success) {
    echo 'Serveur trouvé';
    // Vous pouvez utiliser les variables suivantes :
    $datas = $json_data->data; // Cette variable contiendra les données JSON renvoyées par l'API.
    foreach($datas as $data) {
        $data->username; // Pseudonyme de l'utilisateur
        $data->avatar; // Correspond à l'avatar du donateur ou de l'abonné
        $data->amount; // Correspond au montant du don
        $data->message; // Correspond au message du donateur
        $data->currency; // Correspond à la devise du don
        $data->created_at; // Correspond à la date du don au format timestamp
    }
} else {
    echo 'Le Token spécifié est incorrect';
}
?>

Exemple de réponse

{
    "success": true,
    "data": [{
        "username": "Trevor",
        "avatar": "url",
        "amount": 10,
        "message": "Message...",
        "currency": "eur",
        "created_at": 1689241974
    }]
}

API abonnements

API pour récupérer les utilisateurs qui se sont abonnés à votre serveur depuis la page de vote

Endpoint https://serveur-prive.net/api/v1/servers/{server_token}/subscribers
{server_token} Indiquez le Token associé à votre serveur. Vous pouvez le trouver depuis l'onglet 'Paramètres'

Exemple de code

<?php
$server_token = "Token de votre serveur"; // Remplacez "TOKEN" par le token de votre serveur.
$json = file_get_contents("https://serveur-prive.net/api/v1/servers/$server_token/subscribers");
$json_data = json_decode($json);
if ($json_data->success) {
    echo 'Serveur trouvé';
    // Vous pouvez utiliser les variables suivantes :
    $datas = $json_data->data; // Cette variable contiendra les données JSON renvoyées par l'API.
    foreach($datas as $data) {
        $data->username; // Pseudonyme de l'utilisateur
        $data->avatar; // Correspond à l'avatar du donateur ou de l'abonné
        $data->started_at; // Correspond à la date de début de l'abonnement au format timestamp
        $data->ended_at; // Correspond à la date de fin de l'abonnement au format timestamp
    }
} else {
    echo 'Le Token spécifié est incorrect';
}
?>

Exemple de réponse

{
    "success": true,
    "data": [{
        "username": "Trevor",
        "avatar": "url",
        "started_at": 1689241974,
        "ended_at": 1689241974
    }]
}

API Top voteurs

Vous permet de récupérer la liste des utilisateurs qui ont voté pour votre serveur au cours du mois

Endpoint https://serveur-prive.net/api/v1/servers/{server_token}/voters
{server_token} Indiquez le Token associé à votre serveur. Vous pouvez le trouver depuis l'onglet 'Paramètres'

Exemple de code

<?php
$server_token = "Token de votre serveur"; // Remplacez "TOKEN" par le token de votre serveur.
$json = file_get_contents("https://serveur-prive.net/api/v1/servers/$server_token/voters");
$json_data = json_decode($json);
if ($json_data->success) {
    echo 'Serveur trouvé';
    // Vous pouvez utiliser les variables suivantes :
    $datas = $json_data->data; // Cette variable contiendra les données JSON renvoyées par l'API.
    foreach($datas as $data) {
        $data->username; // Pseudonyme de l'utilisateur
        $data->position; // Correspond à la position du serveur dans le classement du mois
        $data->votes; // Correspond au nombre de votes du joueur
        $data->avatar; // Correspond à l'avatar du donateur ou de l'abonné
        $data->subscribed; // Correspond au statut d'abonnement du joueur
        $data->public_profile; // Correspond à l'URL de la page publique du joueur
    }
} else {
    echo 'Le Token spécifié est incorrect';
}
?>

Exemple de réponse

{
    "success": true,
    "data": [{
        "username": "Trevor",
        "position": 1,
        "votes": 10,
        "avatar": "url",
        "subscribed": true,
        "public_profile": "url",
    }]
}

API OTP (One-Time Token)

L’API génère un code unique et temporaire valable 5 minutes qui authentifie chaque vote. Vous gardez ainsi un contrôle total sur les votants de votre page Serveur-Privé et aucun concurrent ne peut envoyer de votes artificiels sans passer par votre site et votre système de vérification.

Endpoint https://serveur-prive.net/api/v1/servers/{server_token}/otp
HTTP GET
{server_token} Indiquez le Token associé à votre serveur. Vous pouvez le trouver depuis l'onglet 'Paramètres'
Durée de validité Le code retourné expire après 300 secondes (5 minutes).

Exemple de code

<?php
$server_token = "Token de votre serveur"; // Remplacez "TOKEN" par le token de votre serveur.
$json = file_get_contents("https://serveur-prive.net/api/v1/servers/$server_token/otp");
if ($json === false) {
    exit("Erreur d'appel API");
}

$data = json_decode($json);
if (!empty($data->success)) {
    $otp = $data->data->token; // Exemple : Txg5tk32z6mX
    echo "OTP généré : $otp\n";
    echo "Lien de vote : https://serveur-prive.net/minecraft/{slug-du-serveur}/vote?token=$otp";
} else {
    echo "Échec de génération de l'OTP";
}
?>

Exemple de réponse

{
    "success": true,
    "data": {
        "token": "Txg5tk32z6mX",
        "message": "The code has been generated successfully. It will be valid for 5 minutes."
    }
}

API OTP → vérification par token

Vérifie l’état d’un OTP et indique s’il a été consommé par un vote valide. Utilisez ce point d’entrée après avoir redirigé l’utilisateur vers la page de vote avec le token.

Endpoint https://serveur-prive.net/api/v1/servers/{server_token}/votes/otp/{token}
HTTP GET
{server_token} Indiquez le Token associé à votre serveur. Vous pouvez le trouver depuis l'onglet 'Paramètres'
{token} Le code OTP généré précédemment via l’API OTP. Il est à usage unique et a une durée de vie limitée.

Exemple de code

<?php
$server_token = "Token de votre serveur";
$token = $_GET["token"] ?? ""; // Récupéré depuis votre flux applicatif

if ($token === "") {
    exit("Token manquant");
}

$json = file_get_contents("https://serveur-prive.net/api/v1/servers/$server_token/votes/otp/$token");
if ($json === false) {
    exit("Erreur d'appel API");
}

$json_data = json_decode($json);
if ($json_data->success) {
    echo 'Vous avez bien voté';
    // Vous pouvez utiliser les variables suivantes :
    $datas = $json_data->data; // Cette variable contiendra les données JSON renvoyées par l'API.
    $datas->username; // Pseudonyme de l'utilisateur
    $datas->voted_at; // Correspond à la date du vote au format timestamp
    $datas->is_connected; // Correspond à l'état de connexion de l'utilisateur
    $datas->is_subscriber; // Correspond à l'état d'abonnement de l'utilisateur
    $datas->next_vote_seconds; // Correspond au nombre de secondes restantes avant que l'utilisateur puisse à nouveau voter
} else {
    echo 'Pas ou déjà voté';
}
?>

Exemple de réponse

{
    "success": true,
    "data": {
        "username": "Trevor",
        "voted_at": 1689241974,
        "next_vote_seconds": 5395,
        "is_connected": true,
        "is_subscriber": false
    }
}