Cloud Code Functions
Integrations
Integração SendGrid e Cloud Code com API v3: Guia para Devs
11 min
usando a api de email sendgrid introdução esta seção explica como você pode integrar o sendgrid com uma função de cloud code após completar este guia com instruções passo a passo, você estará pronto para usar sua função em seu app e chamá la em seu app ios ou android pré requisitos para completar este tutorial, você precisará um app criado no back4app siga o tutorial criar novo app para aprender como criar um app no back4app back4app command line configurado com o projeto siga o tutorial configurando cloud code para aprender como configurar o cloud code para um projeto conta criada em twilio vamos começar! vamos escrever uma função usando o sendgrid que você poderá trabalhar com muitas possibilidades, como enviar mensagens para nossos clientes e configurar parâmetros para usar a api rest v3 do sendgrid para aprender como criar ou acessar uma conta no sendgrid, verifique os links abaixo criar uma nova conta faça login na sua conta 1 criar uma chave de api do sendgrid o passo mais importante antes de começar a codificar é criar as chaves corretas para configurar seu ambiente após acessar sua conta, localize no menu suspenso configurações, a chaves de api chaves de api opção como na imagem abaixo depois disso, no canto superior direito, localize e escolha uma identificação para a nome da chave de api nome da chave de api , como mostrado abaixo como você pode ver na imagem acima, é necessário selecionar uma opção para permitir o acesso total à chave de api após clicar em criar e visualizar criar e visualizar , para prosseguir com a criação da chave, você poderá ver a tela abaixo dica tenha cuidado para anotá lo, pois não há como recuperá lo clique no texto para copiá lo 2 adicione uma função ao cloud code a principal estratégia para essa forma de usar a api do sendgrid é criar uma função no cloud code chamada sendgridemail sendgridemail e chamá la a partir do app 2 1 instalar módulo do sendgrid crie um arquivo chamado package json package json , e dentro deste arquivo, você precisa instalar o módulo twilio, assim 1 { 2 "dependencies" { 3 "@sendgrid/mail" " " 4 } 5 } 2 2 implementar cloud code você deve notar que cada campo de e mail deve ser enviado pelo app – do assunto ao conteúdo – como parâmetros o código é o seguinte parse server 3 x 1 parse cloud define("sendgridemail", async(request) => { 2 const sgmail = require('@sendgrid/mail'); 3 4 // import sendgrid module and call with your sendgrid api key 5 sgmail setapikey("your sendgrid api key here"); 6 7 const msg = { 8 to request params toemail, 9 replyto 'info\@youremail com', 10 from 'info\@youremail com', 11 subject request params subject, 12 text request params body 13 }; 14 15 try{ 16 await sgmail send(msg); 17 return 'ok' 18 } catch (e){ 19 return `error ${e message}` 20 } 21 22 }); parse server 2 x 1 parse cloud define("sendgridemail", (request, response) => { 2 const sgmail = require('@sendgrid/mail'); 3 4 // import sendgrid module and call with your sendgrid api key 5 sgmail setapikey("your sendgrid api key here"); 6 7 const msg = { 8 to request params toemail, 9 replyto 'info\@youremail com', 10 from 'info\@youremail com', 11 subject request params subject, 12 text request params body 13 }; 14 15 sgmail send(msg) then(() => { 16 response success("the message was sent!"); 17 }) 18 catch(error => { 19 //log friendly error 20 response error(error tostring()); 21 }); 22 }); dica lembre se de alterar os campos de de e responder a responder a para suas informações pessoais então, é necessário implementar uma chamada para a função do cloud code no aplicativo 3 chamar a função do cloud code neste passo atual, podemos trabalhar com duas possibilidades para chamar nossa função, que são android e ios (swift e objective c) android 1 map\<string, string> params = new hashmap<>(); 2 3 // create the fields "emailaddress", "emailsubject" and "emailbody" 4 // as strings and use this piece of code to add it to the request 5 params put("toemail", emailaddress); 6 params put("subject", emailsubject); 7 params put("body", emailbody); 8 9 parsecloud callfunctioninbackground("sendgridemail", params, new functioncallback\<object>() { 10 @override 11 public void done(object response, parseexception exc) { 12 if(exc == null) { 13 // the function executed, but still has to check the response 14 } 15 else { 16 // something went wrong 17 } 18 } 19 }); ios(swift) 1 pfcloud callfunctioninbackground("sendgridemail", withparameters \[ 2 // these fields have to be defined earlier 3 "toemail" toemail, 4 "subject" subject, 5 "body" body 6 ]) { (response, error) in 7 if error == nil { 8 // the function executed, but still has to check the response 9 } else { 10 // the function returned an error 11 } 12 } ios(objective c) 1 \[pfcloud callfunctioninbackground @"sendgridemail" 2 withparameters @{@"toemail" toemail, 3 @"subject" subject, 4 @"body" body} 5 block ^(nsstring myalertmsg, nserror error){ 6 if(!error) { 7 // the function executed, but still has to check the response 8 } 9 else { 10 // the function returned an error 11 } 12 } 13 ]; 4 está feito! e é isso para o uso do sendgrid observe que você pode querer usar algum tipo de autenticação antes de permitir que qualquer pessoa use sua api do sendgrid para enviar e mails caso você precise de ajuda ou uma função/link não funcione, entre em contato com nossa equipe via chat!