Looplex Knowledge Base

APIPost

O tube APIPost recupera informações de uma API específica via POST (novas entidades).

Formato:

Possibilidades com <bodyReceiver> e <bodySender>.

<bodyReceiver>. APIPost(<bodySender>, <APIinfo>, <endpoint>)
<bodyReceiver>. APIPost(<bodySender>, <APIinfo>, <endpoint>, <mappingTranslator>)
<bodyReceiver>. APIPost(<bodySender>, {<header>}, <APIinfo>, <endpoint>, <mappingTranslator>)

Possibilidades com <body>.

APIPost(<body>, <APIinfo>, <endpoint>)
APIPost(<body>, <APIinfo>, <endpoint>, <mappingTranslator>)
APIPost(<body>, {<header>}, <APIinfo>, <endpoint>, <mappingTranslator>)

Parâmetros:

<bodyReceiver>: objeto ou vetor a ser recebido no body da API externa. Recebe tanto body quanto header de retorno.

<bodySender>: objeto a ser enviado no body da API externa.

<body>: objeto a ser enviado/recebido no body da API externa. Após envio, objeto é compartilhado para recebimento (tanto body quanto header de retorno).

<header>: objeto a ser enviado no header da API externa, para os casos em que há um header.

<APIinfo>: nome do arquivo Lawdef onde se armazena as informações (tokens, base URI, etc) sobre a API respectiva. Obrigatoriamente uma String. Pode ser "null" caso não haja nenhum Lawdef associado.

<endpoint>: o sufixo do recurso URI do serviço propriamente. Obrigatoriamente uma String. Caso não haja Lawdef que defina o path root da API, pode-se colocar o o endereço completo da URI.

<mappingTranslator>: um mapeamento que toma cada chave do objeto recebido da API externa e o redireciona a um alias dentro do objeto receptor no Lawtex. Obrigatoriamente uma String formatado como "ChaveExternaRecebida: caminhoDoOperandoNoReceptorLawtex" separados por vírgula. Ex. “NumeroExterno: obj.numeroExterno, IDCaso: idCaso”. Alternativamente, pode-se usar a propriedade “label” do operando para definir esse alias da API externa.

Observação: Note que há três parâmetros para o body da API. <bodyReceiver> e <bodySender> é usado para APIs que o body separa o envio e recebimento de informações. O <body>, por sua vez, é usado quando o body da API compartilha o envio e recebimento das informações.

Observação: O <header> deve ser usado com as chaves.

Retorno:

Devolve os dados em body ou bodyReceiver para a API especificada em APIinfo e pelo endpoint via POST.

Exemplo:

declarations {
+<strTeste> : Struct {
fields {
+[nome] : String,
+[rg] : String
}
}
}
operations {
APIPost(<strTeste>, null, "http://api.com.br/pessoa")
}
Edit this page on GitHub