Aller au contenu

API de votes

L'API permet à ton émulateur ou à ton site de vérifier les votes de tes joueurs. Ta clé API se trouve dans ton espace, sous chacun de tes serveurs. Garde-la secrète : ne l'utilise que côté serveur.

Vérification simple (compatible serveur-prive.net)

GET https://serveur-prive-dofus.fr/api/vote/json/{id}/{ip}

Même format que l'API de serveur-prive.net : si ton plugin de vote la gère déjà, remplace simplement l'adresse. {id} est l'identifiant de ton serveur, affiché dans ton espace. Aucune clé n'est nécessaire.

{ "status": 1, "voted_at": "2026-11-03T14:12:09Z", "next_vote_at": "2026-11-03T16:12:09Z" }

status vaut 1 si cette IP a voté pour ton serveur dans la dernière heure et demie, 0 sinon.

Vérifier le vote d'une IP (avec clé)

Pour récupérer aussi le pseudo saisi par le joueur, utilise l'API avec ta clé secrète :

GET https://serveur-prive-dofus.fr/api/v1/{cle}/vote/{ip}

Indique si cette IP a voté pour ton serveur dans la dernière heure et demie.

{
  "voted": true,
  "voted_at": "2026-11-03T14:12:09Z",
  "pseudo": "Bwork-du-71",
  "next_vote_at": "2026-11-03T16:12:09Z"
}

Lister les votes récents

GET https://serveur-prive-dofus.fr/api/v1/{cle}/votes?depuis={timestamp}

Renvoie jusqu'à 500 votes reçus depuis le timestamp Unix indiqué (24 dernières heures par défaut), du plus ancien au plus récent : pratique pour distribuer les récompenses par pseudo.

{
  "server": "mon-serveur",
  "votes": [
    { "id": 1532, "pseudo": "Bwork-du-71", "ip": "203.0.113.7", "voted_at": "2026-11-03T14:12:09Z" }
  ]
}

Notification de vote (sans interroger l'API)

Indique une adresse https dans ta fiche serveur : à chaque vote, on lui envoie une requête POST en JSON.

{
  "event": "vote",
  "vote_id": 1532,
  "server_id": 12,
  "pseudo": "Bwork-du-71",
  "ip": "203.0.113.7",
  "voted_at": "2026-11-03T14:12:09Z"
}

Pour vérifier que la requête vient bien de nous, calcule un HMAC-SHA256 de {X-SPD-Timestamp}.{corps de la requête} avec ton secret (affiché dans ton tableau de bord), puis compare-le à l'en-tête X-SPD-Signature (format sha256=…). Refuse les requêtes dont l'horodatage a plus de 5 minutes. Le bouton « Envoyer un vote de test » de ton tableau de bord envoie un événement "test".

Codes d'erreur

  • 401 : clé API inconnue.
  • 400 : paramètre invalide.