Documentation API

YorkHost API

API centralisee pour la gestion des services d'hebergement YorkHost. Gerez vos serveurs, bases de donnees, sous-domaines et plus encore.

Operationnelle

Authentification

Toutes les requetes vers l'API External necessitent une authentification.

Double authentification requise

1. Header Authorization - Token API dans le header HTTP

Authorization: Bearer <EXTERNAL_API_TOKEN>


2. Body JSON - Identifiants client dans chaque requete

"client_id" et "secret_token" doivent etre inclus dans le body JSON.

POST /v1/external/* Exemple de requete

Exemple cURL

curl -X POST https://api.yorkhost.fr/v1/external/services \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "client_id": "12345",
    "secret_token": "your_secret_token"
  }'

Services

Gestion et consultation des services client.

POST /v1/external/services Liste les services d'un client

Parametres

Parametre Type Requis Description
client_id string requis Identifiant du client
secret_token string requis Token secret du client
email string optionnel Alternative: recherche par email

Reponse

{
  "success": true,
  "services": [
    {
      "id": 123,
      "name": "Serveur FiveM",
      "status": "Active"
    }
  ]
}

Base de donnees

Acces aux informations de connexion MySQL.

POST /v1/external/linkdb Recupere les infos de connexion MySQL

Parametres

Parametre Type Requis Description
client_id string requis Identifiant du client
secret_token string requis Token secret du client
service_id string requis Identifiant du service

FiveM

Gestion des serveurs FiveM: txAdmin, artifacts, allocations.

POST /v1/external/txadmin/enable Active txAdmin

Parametres

Parametre Type Requis Description
client_id string requis Identifiant du client
secret_token string requis Token secret du client
service_id string requis Identifiant du service
POST /v1/external/artifacts/update Met a jour les artifacts FiveM

Parametres

Parametre Type Requis Description
client_id string requis Identifiant du client
secret_token string requis Token secret du client
service_id string requis Identifiant du service
POST /v1/external/allocations/add Ajoute un port supplementaire

Parametres

Parametre Type Requis Description
client_id string requis Identifiant du client
secret_token string requis Token secret du client
service_id string requis Identifiant du service
POST /v1/external/reinstall Reinstalle le serveur

Parametres

Parametre Type Requis Description
client_id string requis Identifiant du client
secret_token string requis Token secret du client
service_id string requis Identifiant du service

Bot Discord

Gestion des bots Discord: changement de langage et version.

POST /v1/external/bot/node-version Change la version de Node.js

Parametres

Parametre Type Requis Description
client_id string requis Identifiant du client
secret_token string requis Token secret du client
service_id string requis Identifiant du service
version string optionnel Version Node.js: 18, 20, 21, 22, 23, 24 (defaut: 24)
POST /v1/external/bot/switch-nodejs Passe le bot a Node.js

Parametres

Parametre Type Requis Description
client_id string requis Identifiant du client
secret_token string requis Token secret du client
service_id string requis Identifiant du service
version string optionnel Version Node.js (defaut: 24)
POST /v1/external/bot/switch-python Passe le bot a Python

Parametres

Parametre Type Requis Description
client_id string requis Identifiant du client
secret_token string requis Token secret du client
service_id string requis Identifiant du service
version string optionnel Version Python: 3.10, 3.11, 3.12, 3.13 (defaut: 3.13)

Sous-domaines

Gestion des sous-domaines Cloudflare (*.sub-yorkhost.fr).

POST /v1/external/subdomains Gestion des sous-domaines

Parametres

Parametre Type Requis Description
client_id int requis Identifiant du client
secret_token string requis Token secret du client
action string requis list, get, create, update, delete, toggle_proxy
subdomain string selon action Nom du sous-domaine (pour get/create/update/delete)
ip_address string selon action Adresse IPv4 (pour create/update)
proxied boolean optionnel Activer le proxy Cloudflare

Actions disponibles

"list"     - Liste tous les sous-domaines du client
"get"      - Recupere les details d'un sous-domaine
"create"   - Cree un nouveau sous-domaine
"update"   - Met a jour l'adresse IP
"delete"   - Supprime un sous-domaine
"toggle_proxy" - Active/desactive le proxy Cloudflare

Annulations

Gestion des demandes d'annulation de services.

GET /v1/external/cancellation Liste les demandes d'annulation

Parametres (Query String)

Parametre Type Requis Description
client_id string requis Identifiant du client
secret_token string requis Token secret du client
service_id string requis Identifiant du service
POST /v1/external/cancellation Cree une demande d'annulation

Parametres

Parametre Type Requis Description
client_id string requis Identifiant du client
secret_token string requis Token secret du client
service_id string requis Identifiant du service
type string requis immediate ou end_of_period
reason string requis Raison de l'annulation
other_reason string optionnel Raison supplementaire
DELETE /v1/external/cancellation Annule une demande d'annulation

Parametres

Parametre Type Requis Description
client_id string requis Identifiant du client
secret_token string requis Token secret du client
service_id string requis Identifiant du service

Lookup

Recherche de correspondances Discord/Email.

GET /v1/external/email-by-discord Trouve l'email par Discord ID

Parametres (Query String)

Parametre Type Requis Description
discord_id string requis Identifiant Discord de l'utilisateur
GET /v1/external/discord-by-email Trouve le Discord ID par email

Parametres (Query String)

Parametre Type Requis Description
email string requis Adresse email de l'utilisateur

Health Check

Verification du statut de l'API.

GET /health Statut de l'API

Reponse

{
  "status": "healthy",
  "service": "yorkhost-api",
  "version": "1.0.2"
}