Ada.ia
Logo Base de Conhecimento

Programación del envío de API

Puede activar manualmente un programa de envío configurado en BIMachine mediante una llamada POST a la API.

1. Clave de aplicación 🔑

Para empezar a utilizarla, necesitas crear una clave de aplicación, consulta el paso a paso a continuación o con más detalle aquí:

  • Accede al menú Gestión de cuentas.
  • Haz clic en Nueva clave de aplicación.
  • Dale un nombre a la clave para identificarla.
  • Copie la clave generada.

Essa chave será usada para autenticar futuras requisições à API.

2. Generación de token de autenticación 🔐

Con la clave de aplicación, puedes generar un token de autenticación de usuario, necesario para validar el acceso externo.

POST
<url_aplicação>/api/token-manager/?appKey=<chave_aplicação>

Request Body:
{
"email":"email@exemplo.com"
}

Respuesta esperada:

{
  "id": 1,
  "applicationKey": {
    "id": 1,
    "name": "NomeDaAplicacao",
    "token": "chave_da_aplicacao",
    "account": {
      "id": 1,
      "accountOwnerId": 1,
      "accountMasterId": 1,
      "applicationKeys": null,
      "name": "NomeDaConta"
    },
    "blockByDomain": false,
    "allowedDomains": null
  },
  "user": {
    "id": 1,
    "username": "usuario@dominio.com",
    "email": "usuario@dominio.com",
    "preferredLanguage": "idioma_preferido",
    "displayName": "Nome de Exibição",
    "viewTutorial": false,
    "createObject": false,
    "addData": false,
    "preferences": {
      "id": 1,
      "defaultProjectId": 0,
      "defaultCockpits": null
    },
    "phone": "(00) 0000-0000",
    "projectLinks": null,
    "members": [1],
    "avatarLink": "/avatar?user-id=1&i=0000000000000&oi=0"
  },
  "token": "token_de_autenticacao"
}

El token generado se utiliza para autenticar al usuario en BIMachine cuando se utiliza en otras aplicaciones. Este token es único y caduca en 30 minutos, pero se renueva cada vez que se utiliza.

Ejemplo de código JAVA para autenticación tokenizada:

public String getToken(){
    try {
        return new SimpleTimeLimiter().callWithTimeout(new Callable<String>() {
            @Override
            public String call() throws Exception {
                String emailUser = "usuario@dominio.com";
                String appKey = "chave_da_aplicacao";
                RestTemplate restTemplate = new RestTemplate();
                URI uri = UriComponentsBuilder
                    .fromHttpUrl("https://app.bimachine.com.br/api/token-manager")
                    .queryParam("appKey", appKey)
                    .build()
                    .toUri();

                HttpEntity httpEntity = jsonEntity(new EmailToken(emailUser, appKey));
                ResponseEntity<Token> responseEntity = restTemplate.postForEntity(uri, httpEntity, Token.class);

                if (responseEntity.getStatusCode().value() == 200) {
                    return responseEntity.getBody().getToken();
                } else {
                    return null;
                }
            }
        }, 2, TimeUnit.SECONDS, true);
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }
}

3. Localizar el ID de la Programación

Antes de realizar la solicitud, diríjase al área de Programacións de la plataforma BIMachine, acceda a los detalles de la reserva deseada y copie el ID como se muestra a continuación:

4. Forzando la Programación vía API

Utilice el siguiente endpoint para forzar la ejecución inmediata del horario introducido:

POST 
https://api.bimachine.com/api/export/schedulings/{id}/run&appToken={appToken}

Parámetros:

  • id: ID del horario que se ejecutará (obtenido en el paso 3).
  • appToken: token de autenticación del usuario (obtenido en el paso 2)

Ultimos artículos

Scroll al inicio