NodeCoreX
AccueilCentre d'aideDocumentation sur l'API
English Deutsch 日本語 Español Français • Русский 简体中文 繁體中文
CommencerCommencer
AccueilCentre d'aideDocumentation sur l'API
ConnexionCréer un compte

Documentation API

Intégrez NodeCoreX avec les API locales (port 5200) et distantes. Les requêtes distantes exigent une signature SHA-256 construite à partir du compte, mot de passe, code machine et horodatage.

API locale de l’appareil

URL de base : http://localhost:5200

GET http://localhost:5200/nodes/count

Obtenir le nombre de nœuds

Obtenez le nombre total de nœuds publicitaires exécutés sur l'appareil actuel.

Succès (HTTP 200) :
{
  "success": true,
  "count": 4
}
Erreur (non-200) :
{
  "success": false,
  "message": "Service unavailable"
}
GET http://localhost:5200/nodes/list

Obtenir la liste d'index des nœuds

Obtenez la liste de tous les index de nœuds pour les opérations ultérieures par index.

Succès (HTTP 200) :
{
  "success": true,
  "nodeIndexes": [
    0,
    1,
    2,
    3
  ]
}
Erreur (non-200) :
{
  "success": false,
  "message": "Failed to list nodes"
}
GET http://localhost:5200/nodes/status

Obtenir l'état du nœud

Obtenez l'état d'exécution de chaque nœud (en cours d'exécution, arrêté, erreur, etc.).

Succès (HTTP 200) :
{
  "success": true,
  "statuses": [
    {
      "index": 0,
      "status": "running",
      "uptime": 3600
    },
    {
      "index": 1,
      "status": "stopped",
      "uptime": 0
    },
    {
      "index": 2,
      "status": "error",
      "message": "Proxy timeout"
    }
  ]
}
Erreur (non-200) :
{
  "success": false,
  "message": "Unable to read node status"
}
POST http://localhost:5200/nodes/{nodeIndex}/start

Démarrer un nœud

Démarrez le nœud de lecture de l'annonce pour l'index de nœud donné.

Paramètres :
  • nodeIndex (path) — Index de nœud (basé sur 0)
Succès (HTTP 200) :
{
  "success": true,
  "message": "Node started",
  "index": 0
}
Erreur (non-200) :
{
  "success": false,
  "message": "Invalid node index or already running"
}
POST http://localhost:5200/nodes/{nodeIndex}/stop

Arrêter un nœud

Arrêtez le nœud de lecture de l'annonce pour l'index de nœud donné.

Paramètres :
  • nodeIndex (path) — Index de nœud (basé sur 0)
Succès (HTTP 200) :
{
  "success": true,
  "message": "Node stopped",
  "index": 0
}
Erreur (non-200) :
{
  "success": false,
  "message": "Invalid node index or already stopped"
}
POST http://localhost:5200/nodes/{nodeIndex}/proxy

Définir un proxy pour un nœud

Configurez la connexion proxy (hôte, port, authentification, etc.) pour l'index de nœud donné.

Paramètres :
  • nodeIndex (path) — Indice de nœud
  • ip (body) — Point de terminaison du proxy
  • port (body) — Port proxy
  • username (body) — Nom d'utilisateur proxy (facultatif)
  • password (body) — Mot de passe proxy (facultatif)
Exemple de corps de requête :
{
  "ip": "127.0.0.1",
  "port": 7890,
  "username": null,
  "password": null
}
Succès (HTTP 200) :
{
  "success": true,
  "message": "Proxy updated",
  "index": 0
}
Erreur (non-200) :
{
  "success": false,
  "message": "Invalid proxy or connection failed"
}
GET http://localhost:5200/device/info

Obtenir des informations sur l'appareil

Obtenez des informations de base sur l'appareil telles que le code machine, le modèle et la version.

Succès (HTTP 200) :
{
  "success": true,
  "machineCode": "PM-XXXX-YYYY",
  "model": "Standard",
  "version": "1.0.0",
  "firmware": "1.2.3"
}
Erreur (non-200) :
{
  "success": false,
  "message": "Node info unavailable"
}
GET http://localhost:5200/device/health

Bilan de santé de l'appareil

Vérifiez si le service local est en cours d'exécution ; peut être utilisé pour le rapport sur les battements de cœur.

Succès (HTTP 200) :
{
  "success": true,
  "healthy": true,
  "uptime": 3600,
  "nodesActive": 4
}
Erreur (non-200) :
{
  "success": false,
  "healthy": false,
  "message": "Service unhealthy"
}

API serveur distante

URL de base : l'hôte API de votre plateforme (voir la console de l'app pour les points de terminaison par environnement).

GET /api/device/ads

Obtenir la liste des tâches publicitaires

Obtenez des sites sources d'annonces, des types d'annonces, des identifiants d'annonces, des URL de lecture et du contenu associé.

Paramètres :
  • sign (query) requis — Signature ; voir l'algorithme de signe ci-dessous
  • machineCode (query) requis — Code du périphérique matériel
  • timestamp (query) requis — Horodatage de la demande (secondes)
Succès (HTTP 200) :
{
  "success": true,
  "data": {
    "ads": [
      {
        "id": "ad-001",
        "adType": "Video",
        "source": "example.com",
        "sourceUrl": "https://example.com/campaign/1",
        "playUrl": "https://cdn.example.com/ad-001",
        "duration": 30,
        "rewardPerView": 0.001
      }
    ]
  }
}
Erreur (non-200) :
{
  "success": false,
  "message": "Invalid sign or expired timestamp",
  "code": "AUTH_FAILED"
}
GET /api/device/earnings

Obtenez des revenus par nœud ou par appareil

Obtenez des détails sur les revenus ou un résumé par code d'appareil et index de nœud facultatif.

Paramètres :
  • sign (query) requis — Signature de requête
  • machineCode (query) requis — Code de l'appareil
  • timestamp (query) requis — Horodatage
  • nodeIndex (query) — Indice de nœud ; omettre pour les revenus à l'échelle de l'appareil
  • startDate (query) — Date de début AAAA-MM-JJ
  • endDate (query) — Date de fin AAAA-MM-JJ
Succès (HTTP 200) :
{
  "success": true,
  "data": {
    "totalPoints": 1200,
    "currency": "points",
    "details": [
      {
        "date": "2025-03-01",
        "nodeIndex": 0,
        "points": 300,
        "adCount": 120
      },
      {
        "date": "2025-03-01",
        "nodeIndex": 1,
        "points": 280,
        "adCount": 115
      }
    ]
  }
}
Erreur (non-200) :
{
  "success": false,
  "message": "Node not found or access denied",
  "code": "FORBIDDEN"
}
POST /api/device/heartbeat

Battement de coeur de l'appareil

Signalez périodiquement l’état en ligne de l’appareil et l’état d’exécution du nœud.

Paramètres :
  • sign (query) requis — Signature de requête
  • machineCode (query) requis — Code de l'appareil
  • timestamp (query) requis — Horodatage
Exemple de corps de requête :
{
  "nodeStatuses": [
    {
      "index": 0,
      "status": "running",
      "uptime": 3600
    },
    {
      "index": 1,
      "status": "running",
      "uptime": 3600
    },
    {
      "index": 2,
      "status": "stopped",
      "uptime": 0
    }
  ],
  "deviceHealthy": true
}
Succès (HTTP 200) :
{
  "success": true,
  "message": "Heartbeat received",
  "nextReportIn": 60
}
Erreur (non-200) :
{
  "success": false,
  "message": "Invalid sign or machineCode",
  "code": "AUTH_FAILED"
}
GET /api/device/config

Obtenir la configuration de l'appareil

Obtenez la configuration d'exécution pour l'appareil (par exemple, intervalle de tâche, limites de région).

Paramètres :
  • sign (query) requis — Signature de requête
  • machineCode (query) requis — Code de l'appareil
  • timestamp (query) requis — Horodatage
Succès (HTTP 200) :
{
  "success": true,
  "data": {
    "taskInterval": 30,
    "allowedRegions": [
      "US",
      "GB",
      "DE"
    ],
    "maxConcurrentAds": 4,
    "reportInterval": 60
  }
}
Erreur (non-200) :
{
  "success": false,
  "message": "Invalid sign or node",
  "code": "AUTH_FAILED"
}

Algorithme de signe

Les requêtes API distantes nécessitent des paramètres de requête sign, machineCode, et timestamp.

sign = SHA256(account + password + machineCode + timestamp)
Créer un compte Centre d'aide

© 2026 NodeCoreX. Tous droits reserves.

Accueil·Centre d'aide·Documentation sur l'API·Conditions·Confidentialité