Funções sem servidor – Tipos de entradas
Índice
A entrada para a função pode ser adquirida nos seguintes tipos:
Parâmetros
Os parâmetros são transmitidos no URL da string de consulta e os dados transmitidos na seção "form-data" da postagem em uma entrada. O "params" no mapa crmAPIRequest contém esses parâmetros que possuem todas as informações que são transmitidas na solicitação.
Enviar os parâmetros usando POSTMAN, dentro do URL da solicitação:

Enviar os parâmetros usando POSTMAN, como objetos JSON em form-data:

Enviar os parâmetros usando POSTMAN, como chaves em form-data:

Qualquer parâmetro que mapeie os argumentos definidos na função é automaticamente sincronizado.
Para obter parâmetros adicionais usados na solicitação:
crmAPIRequestMap = crmAPIRequest.toMap();
// para obter os parâmetros da solicitação
parameters = crmAPIRequestMap.get("params");
/**
Sua lógica de negócios aqui
**/
return crmAPIRequestMap;
Nota:
- Evite usar o nome "argumentos" como um argumento dentro da função, pois a incompatibilidade de nomes pode levar alguns argumentos a não funcionarem.
- O mapeamento dos argumentos da função é feito automaticamente quando transmitidos por meio de "parâmetros", ou seja, transmitidos por meio da string de consulta (do URL) ou form-data.
Fluxo
O "Corpo" da solicitação pode ser usado para obter o conteúdo que é transmitido como um fluxo para a solicitação. Geralmente o corpo só está em uso quando o método de solicitação é POST.
Enviar o corpo usando o POSTMAN como um fluxo (bruto):

Enviar o corpo usando o POSTMAN como um arquivo binário:

Para obter toda a seção do corpo da solicitação em uma função:
crmAPIRequestMap = crmAPIRequest.toMap();
// para obter o conteúdo do Corpo da solicitação
request_body = crmAPIRequestMap.get("body");
/**
Sua lógica de negócios aqui
**/
return crmAPIRequestMap;
No POSTMAN, o conteúdo do corpo pode ser transmitido na forma bruta ou binária.
Nota:
- Se os argumentos da função forem transmitidos por Fluxo, eles não serão mapeados para os argumentos da função.
- Caso seja preciso codificar/decodificar os dados de entrada dentro da função, você pode usar as Tarefas de criptografia disponíveis no Deluge.
Conteúdo do arquivo
Se o tipo de conteúdo da solicitação for "multipart", ela será considerada como um arquivo. Você pode obter o arquivo dentro da função no objeto de solicitação.
Os tipos de arquivo atualmente suportados são os arquivos de texto. Para enviar o arquivo para a função como dados "multipart", envie-o sob o nome de argumento "inputFile".

Para obter o upload do arquivo a ser usado na função:
crmAPIRequestMap = crmAPIRequest.toMap();
// para obter o conteúdo do Arquivo da solicitação
parameters = crmAPIRequestMap.get("file_content");
/**
Sua lógica de negócios aqui
**/
return crmAPIRequestMap;
Nota:
- Se a entrada para a função é dada como um "file", os argumentos no arquivo não serão mapeados para os argumentos da função.
Cabeçalhos
O cabeçalho de uma solicitação geralmente contém informações adicionais sobre a solicitação. As informações disponíveis no cabeçalho podem ser adquiridas na chave "cabeçalhos" dentro do argumento crmAPIRequest.
Para obter os cabeçalhos da solicitação:
crmAPIRequestMap = crmAPIRequest.toMap();
// para obter informações do usuário da solicitação
header_request = crmAPIRequestMap.get("headers");
/**
Sua lógica de negócios aqui
**/
return crmAPIRequestMap;
Informações do usuário
Essa chave pode ser usada para obter as informações sobre o usuário, bem como sobre a organização do usuário, que chama a função usando o método OAuth2.
Para obter as informações sobre os usuários:
crmAPIRequestMap = crmAPIRequest.toMap();
// para obter informações do usuário da solicitação
user_info = crmAPIRequestMap.get("user_info");
/**
Sua lógica de negócios aqui
**/
return crmAPIRequestMap;
Nota:
- Se a função for chamada como a chave de API, as informações do usuário obtidas serão as informações do superadministrador e não da pessoa que está chamando a função.
Tipo de autenticação e método
Essas 2 chaves podem ser usadas para obter as informações de autenticação (apikey ou oauth) e o método HTTP (GET/POST).
Para obter as informações sobre o tipo de autenticação:
crmAPIRequestMap = crmAPIRequest.toMap();
// para obter o método HTTP da solicitação
user_info = crmAPIRequestMap.get("method");
// para obter o tipo de autenticação da solicitação
user_info = crmAPIRequestMap.get("auth_type");
/**
Sua lógica de negócios aqui
**/
return crmAPIRequestMap;