14. Atualização dos dados com API

Ao criar um "Novo agendamento de carga" você será direcionado a essa página. Esse agendamento específico, só existirá para origens SQL, CSV(Remoto) e uMov.me.
https://sites.google.com/a/sol7.com.br/bimachine/administracao-do-ambiente/como-agendar-carga-tipo-api/agendamentoapi.png

Esse agendamento de carga é disparado quando acionado o disparo imediato, ou pela URL com a requisição por POST for executada. Segue o Identificador da carga destacado abaixo.                    
https://sites.google.com/a/sol7.com.br/bimachine/administracao-do-ambiente/como-agendar-carga-tipo-api/idcarga.png


Ao clicar em "Imediatos" veja a notificação da carga Api executada:
https://sites.google.com/a/sol7.com.br/bimachine/administracao-do-ambiente/como-agendar-carga-tipo-api/notificacaoapi.png

Nos "logs" você poderá visualizar mais informações de sua carga "Api":

https://sites.google.com/a/sol7.com.br/bimachine/administracao-do-ambiente/como-agendar-carga-tipo-api/verlog.png


 " Chave da Api": Em seu perfil existe uma opção de gerar uma chave, que você utilizará junto ao código do agendamento criado:

https://sites.google.com/a/sol7.com.br/bimachine/administracao-do-ambiente/como-agendar-carga-tipo-api/chaveapiperfil.png


Importante: Esse tipo de carga é recomendável para um sistema que efetue esse disparo ou um sistema feito por nós da SOL7. 

Exemplo de chamada "REST" em linguagem "JAVA":
URL url = new URL("http://app.bimachine.com.br/api/origins/schedulings/" + ID do Agendamento + "/execute?key="+token);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("POST");
connection.setDoInput(true);
connection.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(connection.getOutputStream());
wr.flush();
Como funciona?
Utilizando o protocolo HTTP (Hypertext Transfer Protocol) com o método de requisição POST, existirá várias formas de executar:
    
Fazendo uma chamada REST utilizando a URL (Exemplo: http://app.bimachine.com.br/api/origins/schedulings/"ID agendamento"/execute?key=" Chave da Api" ) usando a requisição POST;
        - " ID agendamento ": É o código gerado do agendamento criado no BIMachine (para ver o código clique no "editar" da estrutura de dados).


Notificações de Retorno da Carga Api:

-Quando sua requisição for executada com "Sucesso", você receberá um retorno com um valor 200, que representa a resposta padrão HTTP de retorno com sucesso.

    Código com "Sucesso"
           
  • 200 – ok.
    • O estados 200 ou Ok informa que uma requisiçao pelo protocolo HTTP  foi efetuada, aceita e entregue ao destinatário com sucesso.
-Quando sua requisição for executada com "Erro",ou seja, sua Api não finalizar com sucesso você receberá valores representados abaixo, no padrão HTTP de retorno:
   
    Códigos de erro:
  • 400 – Bad Request (Pedido Ruim).
  • 401 – Unauthorized (Não Autorizado).
  • 402 – Payment Required (Pagamento Requerido).
  • 403 – Forbidden (Proibido).
  • 404 – Not Found (Não Existe).
  • 405 – Method Not Allowed (Método Não Permitido).
  • 406 – Not Acceptable (Não Aceitavel).
  • 407 – Proxy Authentication Required (Autenticação de Proxy Requerida).
  • 408 – Request Timeout (Tempo Limite para requisição).
  • 409 – Conflict (Conflito).
  • 410 – Gone (Desaparecido).
  • 411 – Length Required (Comprimento Requerido).
  • 412 – Precondition Failed (Pré Condição Falhou).
  • 413 – Request Entity Too Large (Entidade Solicitada muito Grande).
  • 414 – Request-URI Too Long (Solicitação de URI muito longa).
  • 415 – Unsupported Media Type (Tipo de mídia não suportado).
  • 416 – Requested Range Not Satisfiable (Intervalo solicitado não satisfatório).
  • 417 – Expectation Failed (Expectativa de Falha).
  • 500 – Internal Server Error (Erro Interno no Servidor).
  • 501 – Not Implemented (Não Implementado).
  • 502 – Bad Gateway (Porta de Saida Ruim).
  • 503 – Service Unavailable (Serviço Não Avaliado).
  • 504 – Gateway Timeout (Tempo Limite para Porta de Saida).
  • 505 – HTTP Version Not Supported (Versão do protocolo HTTP Não Suportado).