É possível acionar manualmente um agendamento de envio configurado no BIMachine por meio de uma chamada POST à API.
1. Chave de aplicação 🔑
Para iniciar a utilização, é necessário criar uma chave de aplicação, veja o passo a passo abaixo ou mais detalhado aqui:
- Acesse o menu Gestão de Contas.
- Clique em Nova Chave de Aplicação.
- Dê um nome para identificar a chave.
- Copie a chave gerada.
Essa chave será usada para autenticar futuras requisições à API.
2. Geração Token de autenticação 🔐
Com a chave de aplicação, você poderá gerar um token de autenticação do usuário, necessário para validar os acessos externos.
POST
<url_aplicação>/api/token-manager/?appKey=<chave_aplicação>
Request Body:
{
"email":"email@exemplo.com"
}
Resposta 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"
}
O token gerado é utilizado para autenticar o usuário no BIMachine quando utilizado em outras aplicações. Este Token é único e expirável, o tempo de expiração é de 30 minutos, mas é renovado toda vez que for utilizado.
Exemplo de código JAVA para autenticação por meio do token:
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. Localizando o ID do Agendamento
Antes de fazer a requisição, acesse a área de Agendamentos na plataforma BIMachine, acesse os detalhes do agendamento desejado e copie o ID conforme ilustrado abaixo:

4. Disparando o Agendamento via API
Utilize o endpoint abaixo para forçar a execução imediata do agendamento informado:
POST
https://api.bimachine.com/api/export/schedulings/{id}/run&appToken={appToken}
Parâmetros:
id
: ID do agendamento que será executado (obtido na etapa 3).- appToken: token de autenticação do usuário (obtido na etapa 2)