Documentación

Integración API

Usa nuestra API para validar licencias, gestionar clientes y proteger entregas de trabajos. Descarga la colección Postman y revisa los ejemplos para empezar rápido.

Accesos rápidos

Introducción

The Bot Place ofrece una API para gestionar licencias, validar accesos y proteger entregas. Usa tu api-key en los encabezados para autenticar cada llamada.

Si necesitas soporte o credenciales, contáctanos en soporte@thebotplace.com.

Descargas y recursos

Colección Postman

Descarga la colección para probar rápidamente los endpoints.

Funciones de base de datos (MQL5)

Descarga utilidades para integrarte con la base de datos desde MQL5.

Descargar

Endpoints principales

Base URL

https://europe-west2-thebotplace.cloudfunctions.net/api/v1/api

Check job delivery access

Verifica si un usuario puede acceder a la entrega de un trabajo.

URL: https://europe-west2-thebotplace.cloudfunctions.net/api/v1/api/job/:jobId
METHOD: GET
Headers: api-key: <your-api-key>
Params: jobId
Query: userId

Get all your customers

Obtiene todos los clientes vinculados a tus bots.

URL: https://europe-west2-thebotplace.cloudfunctions.net/api/v1/api/customers/
METHOD: GET
Headers: api-key: <your-api-key>

Get customers of a software

Lista clientes de un software concreto.

URL: https://europe-west2-thebotplace.cloudfunctions.net/api/v1/api/customers/:softwareId
METHOD: GET
Params: softwareId
Headers: api-key: <your-api-key>

User has software

Comprueba si un usuario posee una licencia.

URL: https://europe-west2-thebotplace.cloudfunctions.net/api/v1/api/customers/user-has-product?userId=<userId>&softwareId=<softwareId>&additional=<additional (optional)>
METHOD: GET
Headers: api-key: <your-api-key>

User has software (no additional data)

Comprueba si un usuario posee una licencia sin la necesidad de enviar un dato adicional. ATENCIÓN: este endpoint no valida datos adicionales asociados a la licencia, por lo que puede si un tercero posee el userId podrá usar tu bot. Este endpoint está pensado para la reventa de bots.

URL: https://europe-west2-thebotplace.cloudfunctions.net/api/v1/api/customers/user-has-product-no-additional?userId=<userId>&softwareId=<softwareId>
METHOD: GET
Headers: api-key: <your-api-key>

User has software with additional data

Verifica licencia incluyendo datos adicionales.

URL: https://europe-west2-thebotplace.cloudfunctions.net/api/v1/api/customers/user-has-product?userId=<userId>&softwareId=<softwareId>&additional=<additional>
METHOD: GET
Headers: api-key: <your-api-key>

User has software (Telegram)

Comprueba licencia usando identificador de Telegram.

URL: https://europe-west2-thebotplace.cloudfunctions.net/api/v1/api/customers/user-has-product-by-telegram?telegram=<telegram>&softwareId=<softwareId>&additional=<additional>
METHOD: GET
Headers: api-key: <your-api-key>

First demo download

Comprueba si es la primera descarga de demo de un software.

URL: https://europe-west2-thebotplace.cloudfunctions.net/api/v1/api/software/first-demo-download?userId=<userId>&softwareId=<softwareId>
METHOD: GET
Headers: api-key: <your-api-key>

Ejemplos de código

MQL5

input string userId = "";
string softwareId = "<software-id>";

bool licenciaActiva() {
   string res_headers;
   char   data[],result[];
   string req_headers = "api-key: <api-key>\r\n";
   string account_id = IntegerToString(AccountInfoInteger(ACCOUNT_LOGIN));
   string url = "https://europe-west2-thebotplace.cloudfunctions.net/api/v1/api/customers/user-has-product?userId="+userId+"&softwareId="+softwareId+"&additional="+account_id;
   int request = WebRequest(
        "GET",
        url,
        req_headers,
        5000,
        data,
        result,
        res_headers
    );
    
    if (request != 200) return false;
    
    string msg = CharArrayToString(result);
    return msg == "true";
}

int OnInit() {
   if (!licenciaActiva()) {
      Print("La licencia está inactiva");
      return INIT_FAILED;
   }
   
   return INIT_SUCCEEDED;
}

Ejemplo de validación de licencia en un EA con MQL5 consultando el endpoint de licencias.

MQL4

input string userId = "";
string softwareId = "<software-id>";

bool licenciaActiva() {
   string res_headers;
   char   data[],result[];
   string req_headers = "api-key: <api-key>\r\n";
   string url = "https://europe-west2-thebotplace.cloudfunctions.net/api/v1/api/customers/user-has-product?userId="+userId+"&softwareId="+softwareId;
   int request = WebRequest(
        "GET",
        url,
        req_headers,
        5000,
        data,
        result,
        res_headers
    );
    
    if (request != 200) return false;
    
    string msg = CharArrayToString(result);
    return msg == "true";
}

int OnInit() {
   if (!licenciaActiva()) {
      Print("La licencia está inactiva");
      return INIT_FAILED;
   }
   
   return INIT_SUCCEEDED;
}

Ejemplo equivalente en MQL4 para verificar licencias antes de ejecutar el bot.

Documentación API | The Bot Place