рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреЗрд▓реЛрдб рдХреЗ рд╕рд╛рде 'рдЦрд░рд╛рдм рдЕрдиреБрд░реЛрдз' рддреНрд░реБрдЯрд┐ рд╣реЛ рд░рд╣реА рд╣реИред
cosnt msg = {
"to": "[email protected]",
"from": "[email protected]",
"subject": "Support Pay Transparency at PayCheck",
"templateId": "24ae3147-4faa-4380-8613-c5be144f4542",
"customArgs": {
"ally_id": "cj6zlh7yd000001qir4r5suuk"
}
};
sgMail.send(msg)
{
"message": "Bad Request",
"code": 400,
"response": {
"headers": {
"server": "nginx",
"date": "Wed, 30 Aug 2017 22:30:41 GMT",
"content-type": "application/json",
"content-length": "365",
"connection": "close",
"access-control-allow-origin": "https://sendgrid.api-docs.io",
"access-control-allow-methods": "POST",
"access-control-allow-headers": "Authorization, Content-Type, On-behalf-of, x-sg-elas-acl",
"access-control-max-age": "600",
"x-no-cors-reason": "https://sendgrid.com/docs/Classroom/Basics/API/cors.html"
},
"body": {
"errors": [
{
"message": "Unless a valid template_id is provided, the content parameter is required. There must be at least one defined content block. We typically suggest both text/plain and text/html blocks are included, but only one block is required.",
"field": "content",
"help": "http://sendgrid.com/docs/API_Reference/Web_API_v3/Mail/errors.html#message.content"
}
]
}
}
}
рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдпрд╣ templateId
рдХрд╣рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдореЗрдВ рдпрд╣ template_id
рдХрд╣рддрд╛ рд╣реИред рдореИрдВрдиреЗ рджреЛрдиреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ рдФрд░ рдПрдХ рд╣реА рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рд╣реИред рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реНрдХреНрд░реАрди рдХреЗ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдХреЛ рдПрдХ рдкрд╡рд┐рддреНрд░рддрд╛ рдЬрд╛рдБрдЪ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХрд┐рдпрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛ рд╕рдХреЗ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рд╣реИред
@ рдиреНрдпреВрд╕рд┐рдирди рдиреНрдпреВ рдиреЛрдб рдЬреЗрдПрд╕ рдореЗрд▓рд░ рдПрдкреАрдЖрдИ рдХреЗрд╕ рдПрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдк рджреЛрдиреЛрдВ templateId
рдпрд╛ template_id
рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЬреЗрдПрд╕ рднреВрдорд┐ рдореЗрдВ рдКрдВрдЯ рдХрд╛ рдорд╛рдорд▓рд╛ рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдордиреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ рд╣реИ, рдЬрдмрдХрд┐ рдПрдкреАрдЖрдИ рд╕реНрд╡рдпрдВ рд╕рд╛рдБрдк рдХреЗ рдорд╛рдорд▓реЗ рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рдореБрдЭреЗ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдЬрд╝рд░ рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЖрдИрдбреА рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ
рд╣рд╛рдп @ рдЧреЛрд╕реНрд╕рд┐рдпрди ,
рддреБрдо рднреА рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдЬрд╛рдБрдЪ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрджреНрджрд╛ рдкреБрд░рд╛рдиреЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕рдВрдкрд╛рджрдХ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рдХреНрдпрд╛ рдЖрдк рдПрдХ рдирдпрд╛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдмрдирд╛рдиреЗ рдФрд░ рдЙрд╕ рдЖрдИрдбреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рднреА рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
рд╢реБрднрдХрд╛рдордирд╛рдПрдВ,
рдПрд▓реНрдорд░
рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рдЕрдкрдиреЗ рдЕрдВрдд рдореЗрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ? рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЕрдиреБрд░реЛрдз рдХреЗ рд╕рд╛рде template_id
рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рднреЗрдЬ рд░рд╣реЗ рд╣реИрдВред рдореИрдВрдиреЗ рдЕрднреА рдПрдХ рдирдпрд╛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдмрдирд╛рдпрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИред
@adamreisnz ,
рдореЗрд░реЗ рд╕реНрдерд╛рдиреАрдп рдкрд░реАрдХреНрд╖рдг рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдЦрд╛рддреЗ рдореЗрдВ рдХреЗрд╡рд▓ рдирдП рдЦрд╛рдХреЗ рд╣реИрдВред
рдореИрдВ рджреЛрдмрд╛рд░рд╛ рдЬрд╛рдВрдЪ рдХрд░рд╡рд╛рдКрдВрдЧрд╛
рдирд╣реАрдВ, рдореИрдВрдиреЗ рдПрдХ рдирдпрд╛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛, рд╣реМрд╕рд▓реЗ рд╕реЗ рдмрдирд╛рдпрд╛, рдЙрд╕реА рдореБрджреНрджреЗ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛
рдореЗрд░реЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ (рд╕рдВрд╕реНрдХрд░рдг v6.1.1 рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд░рдХреЗ) рдЙрджрд╛рд╣рд░рдг рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдпрд╣рд╛рдБ :
// Setup sendgrid api
const sendGridMail = require('@sendGrid/mail');
sendGridMail.setApiKey(process.env.SENDGRID_API_KEY);
sendGridMail.setSubstitutionWrappers('-', '-');
//build object
var mailOptions = {
personalizations:[{
to: '[email protected]',
substitutions: {'name':'John', 'city':'Denver'}
}],
from: '[email protected]',
reply_to: '[email protected]',
subject: 'Hello',
html: 'email text goes here',
templateId: '13b8f94f-bcae-4ec6-b752-70d6cb59f932'
};
//send
sendGridMail.send(mailOptions);
рдЖрд╣, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдкреБрд░рд╛рдирд╛ рдмрдЧ рдкреБрдирд░реБрддреНрдерд╛рди рд╣реИ, рдЬрд╣рд╛рдВ рдПрдкреАрдЖрдИ рдХреЛ рд╕рднреА рдорд╛рдорд▓реЛрдВ рдореЗрдВ рд╕рд╛рдордЧреНрд░реА рдмреНрд▓реЙрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рддреЛ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:
// Setup sendgrid api
const sendGridMail = require('@sendGrid/mail');
sendGridMail.setApiKey(process.env.SENDGRID_API_KEY);
sendGridMail.setSubstitutionWrappers('-', '-');
//build object
var mailOptions = {
to: '[email protected]',
from: '[email protected]',
reply_to: '[email protected]',
subject: 'Hello',
templateId: '13b8f94f-bcae-4ec6-b752-70d6cb59f932',
html: ' ',
substitutions: {
name: 'Some One',
city: 'Denver',
}
};
//send
sendGridMail.send(mailOptions);
рд▓реЗрдХрд┐рди рдпрд╣ рдирд╣реАрдВ:
// Setup sendgrid api
const sendGridMail = require('@sendGrid/mail');
sendGridMail.setApiKey(process.env.SENDGRID_API_KEY);
sendGridMail.setSubstitutionWrappers('-', '-');
//build object
var mailOptions = {
to: '[email protected]',
from: '[email protected]',
reply_to: '[email protected]',
subject: 'Hello',
templateId: '13b8f94f-bcae-4ec6-b752-70d6cb59f932',
substitutions: {
name: 'Some One',
city: 'Denver',
}
};
//send
sendGridMail.send(mailOptions);
рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ рдЬрд╛рдБрдЪ рд╣реЛ рд░рд╣реА рд╣реИ ...
рдореБрдЭреЗ рднреЗрдЬреЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рдордЧреНрд░реА рдмреНрд▓реЙрдХ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдерд╛ред рдореБрдЭреЗ рдПрдХ _Bad рдЕрдиреБрд░реЛрдз (400) рдорд┐рд▓ рд░рд╣рд╛ рдерд╛ "рдЬрдм рддрдХ рдПрдХ рд╡реИрдз рдЯреЗрдореНрдкрд▓реЗрдЯ_id рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддрдм рд╕рд╛рдордЧреНрд░реА рдкреИрд░рд╛рдореАрдЯрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдирдП HTML рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рдмрдирд╛рдП рдЧрдП рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдХрдо рд╕реЗ рдХрдо рдПрдХ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╕рд╛рдордЧреНрд░реА рдмреНрд▓реЙрдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП ..." _ред
sgMail.setApiKey(sgKey);
sgMail.setSubstitutionWrappers('-', '-');
var msg: any = {
to: email,
from: '[email protected]',
templateId: 'xxxxxxx',
substitutions: {
verifyUrl: createAccountLink
}
};
sgMail.send(msg)
рдпрджрд┐ рдореИрдВ рдХрдВрдЯреЗрдВрдЯ рдмреНрд▓реЙрдХ рдЬреЛрдбрд╝рддрд╛ рд╣реВрдВ, рддреЛ рдЯреЗрдореНрдкрд▓реЗрдЯ рдИрдореЗрд▓ рдХреЛ html рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рд╕реНрд╡рд░реВрдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
sgMail.setApiKey(sgKey);
sgMail.setSubstitutionWrappers('-', '-');
var msg: any = {
to: email,
from: '[email protected]',
content: [{"type":"text/html","value":"0"}],
templateId: 'xxxxxx',
substitutions: {
verifyUrl: createAccountLink
}
};
sgMail.send(msg)
рдареАрдХ рд╣реИ, рдореИрдВ рдЗрд╕реЗ рдмрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдЦреБрд▓рд╛ рдЫреЛрдбрд╝ рд░рд╣рд╛ рд╣реВрдВред
рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди рд╣реИ рдХрд┐ рдпрд╣ SDK рд╕реЗрдЯ рдирд╣реАрдВ рд╣реЛрдиреЗ рдкрд░ рдПрдХ рдЦрд╛рд▓реА рд╕рд╛рдордЧреНрд░реА рдСрдмреНрдЬреЗрдХреНрдЯ рдЬреЛрдбрд╝ рд░рд╣рд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ html рдФрд░ txt рд╕реЗрдЯ рдирд╣реАрдВ рд╣реЛрдиреЗ рдкрд░ рд╣рдореЗрдВ рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЫреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред
рдЕрднреА рдХреЗ рд▓рд┐рдП, рдЙрдкрд░реЛрдХреНрдд рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рд╡рд╣реА рдХрд░реЗрдЧрд╛ рдЬреЛ рдЖрдкрдХреЛ рдЪрд╛рд╣рд┐рдПред
@thinkingserious рдореИрдВ рддреБрдореНрд╣реЗрдВ рд░рд╣реЗ рд╣реЛрдВ рддреЛ рд╕рд╣реА рд▓рдЧрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдПрдкреАрдЖрдИ рдбреЙрдХреНрд╕ рдкрдврд╝реЗ рдФрд░ рд╕реЛрдЪрд╛ рдХрд┐ рдХреНрд╖реЗрддреНрд░ рдЕрдирд┐рд╡рд╛рд░реНрдп рдерд╛ред рдЗрд╕рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЫрд┐рдкреА рд╣реБрдИ рдЯрд┐рдкреНрдкрдгреА рд╣реИ (рдЬреЛ рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рд░реВрдк рд╕реЗ рдЖрдХрд░реНрд╖рдХ рд╣реИ!) рдЬреЛ рдореИрдВрдиреЗ рдпрд╛рдж рдХрд┐рдпрд╛:
рдореИрдВ рдЗрд╕реЗ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреАрдЖрд░ рдмрдирд╛рдКрдВрдЧрд╛!
рд╣реЗрд╣реЗ, рдзрдиреНрдпрд╡рд╛рдж рдПрдбрдо!
рдкреАрдЖрд░ рдЕрдк рд╣реИ, рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдпрджрд┐ рд╕рд╛рдордЧреНрд░реА рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИ рддреЛ рдЕрдиреБрд░реЛрдз рдХреЗ рд╕рд╛рде рд╕рд╛рдордЧреНрд░реА рдлрд╝реАрд▓реНрдб рдирд╣реАрдВ рднреЗрдЬреЗрдВред
рдорджрдж рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореИрдВ рд╕рдЪрдореБрдЪ рдЕрдкрдирд╛ рджрд┐рдорд╛рдЧ рдЦреЛ рд░рд╣рд╛ рдерд╛ред рдореИрдВрдиреЗ рдЖрдЦрд┐рд░рдХрд╛рд░ рджреЗрд░ рд░рд╛рдд рдПрдХ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдФрд░ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рдЖ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд╕рднреА рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ рдкрд░ рд╣реИрдВ :-)
рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрд╖рдорд╛ рдХрд░реЗрдВ @onesien ,
рдлрд┐рдХреНрд╕ рдХреЛ рдХреЗрд╡рд▓ npm (v6.1.2) рдкрд░ рдзрдХреЗрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдореИрдВрдиреЗ @thinkingsouble рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реЗ рдХреЛрдб рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдФрд░ рдЕрднреА рднреА рдореБрджреНрджреЛрдВ рдореЗрдВ рдЪрд▓ рд░рд╣рд╛ рд╣реВрдВред
рдореИрдВ рд╕рд┐рд░реНрдл рдПрдХ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рд╕реЗрдВрдбрдЧреНрд░рд┐рдб рдореЗрдВ рдмрдирд╛рдП рдЧрдП рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рднреЗрдЬрд╛ рд╣реИред CloudWatch рдореЗрдВ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ (рдЪреВрдВрдХрд┐ рдпрд╣ рд▓реИрдореНрдмреНрдбрд╛ рдореЗрдВ рдЪрд▓ рд░рд╣реА рд╣реИ) 202 рдХреЗ рд░реВрдк рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣реА рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЬреЛ рдИрдореЗрд▓ рдорд┐рд▓рддрд╛ рд╣реИ рд╡рд╣ рд╣реИ: A message was received from this address by our systems that had errors in the smtpapi header, and cannot be processed. The error detected was: The template id must be a valid template id for your account.
рдореИрдВ рдпрд╣рд╛рдБ рдХреНрдпрд╛ рдЧрд▓рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдБ рджреЛрд╕реНрддреЛрдВ? рдореИрдВ Sendgrid рдбреЙрдХреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЭрд╛рд░рдирд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ, рд▓реЗрдХрд┐рди рд╕рдм рдХреБрдЫ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЯреБрдХрдбрд╝рд╛ рд▓рдЧрддрд╛ рд╣реИред
рдЖрдк рдЯреЗрдореНрдкрд▓реЗрдЯ рдЖрдИрдбреА рдХреИрд╕реЗ рднреЗрдЬ рд░рд╣реЗ рд╣реИрдВ? рдЬрдм рд▓реИрдореНрдмреНрдбрд╛ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдХреНрдпрд╛ рдпрд╣ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣реЛрддрд╛ рд╣реИ?
рддреЗрдЬреА рд╕реЗ рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж @cbilliau - рдирд╣реАрдВ, рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рд╣рд╛рд░реНрдбрдХреЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдХреЗрд╡рд▓ рд╕рд╛рдордиреЗ рдФрд░ рдкреАрдЫреЗ рдХреЗ рдЫреЛрд░ рдХреЗ рдмреАрдЪ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдордЪрд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдореЗрд░рд╛ рдЙрджрд╛рд╣рд░рдг рд╢рдмреНрджрд╢рдГ рд╣реИ:
const sgMail = require("@sendgrid/mail");
sgMail.setApiKey(
"XXXXX"
);
sgMail.setSubstitutionWrappers("%", "%"); // Configure the substitution tag wrappers globally
const msg = {
to: formFields.toEmail,
from: formFields.fromEmail,
subject: "Hello world",
text: "test",
html: "<p>test</p>",
templateId: "be2cc0da-5b2c-428f-8e45-c140f6cfb6eb",
substitutions: {
name1: formFields.fromName,
name2: formFields.fromName,
date: formFields.date
}
};
sgMail.send(msg);
@tetreault рдЪреЗрдХрдЖрдЙрдЯ рдореЗрд░реЗ рдЙрддреНрддрд░ рдХреЗ рдКрдкрд░, рдореИрдВ рдЕрдкрдиреЗ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ content: [{"type":"text/html","value":"0"}],
рдЬреЛрдбрд╝рддрд╛ рд╣реВрдВ рдФрд░ рдЗрд╕рдиреЗ рдХрд╛рдо рдХрд┐рдпрд╛ред рдЕрдЬреНрдЮрд╛рдд рдХреНрдпреЛрдВред
рдмрд╕ рдпрд╣ рдХреЛрд╢рд┐рд╢ рдХреА, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдЕрдВрддрд┐рдо рдкрд░рд┐рдгрд╛рдо @cbilliau рдирд╣реАрдВ рдмрджрд▓рд╛ :(ред рдПрдХ рд╣реА рдИрдореЗрд▓ рд╡рд╛рдкрд╕ рдорд┐рд▓ рдЧрдпрд╛:
A message was received from this address by our systems that had errors in the smtpapi header, and cannot be processed.
The error detected was: The template id must be a valid template id for your account. You provided be2cc0da-5b2c-428f-8e45-c140f6cfb6eb
рд╡рд╛рд╣ рдореБрдЭреЗ рдПрдХ рд╕реЗрдХрдВрдб @cbilliau рдХреЗ рд▓рд┐рдП рдмрд╛рд╣рд░ рдЭреБрдХрдирд╛ just рдореИрдВ рд╕рд┐рд░реНрдл рд╕рд╛рдорд╛рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднрд╛рдЧ рд░рд╣рд╛ рдерд╛ рдФрд░ рдЕрдзрд┐рдХ рдзреНрдпрд╛рди рдирд╣реАрдВ рджрд┐рдпрд╛ред рдореБрдЭреЗ рдПрд╣рд╕рд╛рд╕ рд╣реБрдЖ рдХрд┐ рдореИрдВ "рдорд╛рд░реНрдХреЗрдЯрд┐рдВрдЧ" рдХреЗ рддрд╣рдд рдмрдирд╛рдП рдЧрдП рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЗ рд▓рд┐рдП рдпреВрдирд┐рдХ рдЖрдИрдбреА рд╣рдбрд╝рдк рд░рд╣рд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди "рдЯреНрд░рд╛рдВрдЬреЗрдХреНрд╢рдирд▓ рдЯреЗрдореНрдкреНрд▓реЗрдЯ" рдХреЗ рддрд╣рдд рдирд╣реАрдВред рдореИрдВ Sendgrid UI рдХрд╛ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рдФрд░ рдмрд╕ рдЗрд╕ рдПрдХ рд▓реЛрд▓ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реВрдВ
рдХреБрд▓ рдЪреЗрд╣рд░рд╛ рд╣рдереЗрд▓реА, рдореЗрд░реЗ рдЕрдВрдд рдкрд░ рдлрд┐рдХреНрд╕рд┐рдВрдЧ рдФрд░ рдлрд┐рд░ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
kk - рдЕрдм рдЗрд╕рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ content: [{ type: "text/html", value: "0" }]
рд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЬреЛ @cbilliau рдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдорджрдж рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореИрдВ рд╕рдЪрдореБрдЪ рдЕрдкрдирд╛ рджрд┐рдорд╛рдЧ рдЦреЛ рд░рд╣рд╛ рдерд╛ред рдореИрдВрдиреЗ рдЖрдЦрд┐рд░рдХрд╛рд░ рджреЗрд░ рд░рд╛рдд рдПрдХ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдФрд░ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рдЖ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд╕рднреА рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ рдкрд░ рд╣реИрдВ :-)