Amazon SES에서 이메일 템플릿 작업 - AWS SDK for JavaScript

곧 AWS SDK for JavaScript(v2)에 대한 지원이 종료될 예정임을 알려드립니다. AWS SDK for JavaScript v3로 마이그레이션하실 것을 권장합니다. 마이그레이션 날짜, 추가 세부 정보 및 방법에 대한 자세한 내용은 링크된 공지 사항을 참조하세요.

Amazon SES에서 이메일 템플릿 작업

JavaScript code example that applies to Node.js execution

이 Node.js 코드 예제는 다음을 보여 줍니다.

  • 모든 이메일 템플릿의 목록을 가져옵니다.

  • 이메일 템플릿을 검색하고 업데이트합니다.

  • 이메일 템플릿을 생성하고 삭제합니다.

Amazon SES에서 이메일 템플릿을 사용하여 맞춤형 이메일 메시지를 전송할 수 있습니다. Amazon Simple Email Service(Amazon SES)에서 이메일 템플릿을 생성하고 사용하는 방법에 대한 자세한 내용은 Amazon Simple Email Service 개발자 안내서의 템플릿을 사용하여 Amazon SES API를 통해 맞춤형 이메일 전송 섹션을 참조하세요.

시나리오

이 예제에서는 일련의 Node.js 모듈을 사용하여 이메일 템플릿을 작업합니다. 이 Node.js 모듈은 SDK for JavaScript에서 AWS.SES 클라이언트 클래스의 다음 메서드를 사용하여 이메일 템플릿을 생성하고 사용합니다.

사전 필수 작업

이 예제를 설정하고 실행하려면 먼저 이러한 작업들을 완료해야 합니다.

이메일 템플릿 나열

이 예에서는 Node.js 모듈을 사용하여 Amazon SES에 사용할 이메일 템플릿을 생성합니다. 파일 이름이 ses_listtemplates.js인 Node.js 모듈을 생성합니다. 위와 같이 SDK를 구성합니다.

AWS.SES 클라이언트 클래스의 listTemplates 메서드에 대한 파라미터를 전달할 객체를 생성합니다. listTemplates 메서드를 호출하려면 파라미터를 전달하는 Amazon SES 서비스 객체를 호출하기 위한 promise를 생성합니다. 그런 다음 promise 콜백에서 response를 처리합니다.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create the promise and SES service object var templatePromise = new AWS.SES({ apiVersion: "2010-12-01" }) .listTemplates({ MaxItems: ITEMS_COUNT }) .promise(); // Handle promise's fulfilled/rejected states templatePromise .then(function (data) { console.log(data); }) .catch(function (err) { console.error(err, err.stack); });

예제를 실행하려면 명령줄에서 다음을 입력합니다. Amazon SES가 템플릿 목록을 반환합니다.

node ses_listtemplates.js

이 샘플 코드는 GitHub에서 찾을 수 있습니다.

이메일 템플릿 가져오기

이 예에서는 Node.js 모듈을 사용하여 Amazon SES에 사용할 이메일 템플릿을 가져옵니다. 파일 이름이 ses_gettemplate.js인 Node.js 모듈을 생성합니다. 위와 같이 SDK를 구성합니다.

AWS.SES 클라이언트 클래스의 getTemplate 메서드에 대한 TemplateName 파라미터를 전달할 객체를 생성합니다. getTemplate 메서드를 호출하려면 파라미터를 전달하는 Amazon SES 서비스 객체를 호출하기 위한 promise를 생성합니다. 그런 다음 promise 콜백에서 response를 처리합니다.

// Load the AWS SDK for Node.js. var AWS = require("aws-sdk"); // Set the AWS Region. AWS.config.update({ region: "REGION" }); // Create the promise and Amazon Simple Email Service (Amazon SES) service object. var templatePromise = new AWS.SES({ apiVersion: "2010-12-01" }) .getTemplate({ TemplateName: "TEMPLATE_NAME" }) .promise(); // Handle promise's fulfilled/rejected states templatePromise .then(function (data) { console.log(data.Template.SubjectPart); }) .catch(function (err) { console.error(err, err.stack); });

예제를 실행하려면 명령줄에서 다음을 입력합니다. Amazon SES가 템플릿 세부 정보를 반환합니다.

node ses_gettemplate.js

이 샘플 코드는 GitHub에서 찾을 수 있습니다.

이메일 템플릿 생성

이 예에서는 Node.js 모듈을 사용하여 Amazon SES에 사용할 이메일 템플릿을 생성합니다. 파일 이름이 ses_createtemplate.js인 Node.js 모듈을 생성합니다. 위와 같이 SDK를 구성합니다.

TemplateName, HtmlPart, SubjectPartTextPart를 포함하여 AWS.SES 클라이언트 클래스의 createTemplate 메서드에 대한 파라미터를 전달할 객체를 생성합니다. createTemplate 메서드를 호출하려면 파라미터를 전달하는 Amazon SES 서비스 객체를 호출하기 위한 promise를 생성합니다. 그런 다음 promise 콜백에서 response를 처리합니다.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create createTemplate params var params = { Template: { TemplateName: "TEMPLATE_NAME" /* required */, HtmlPart: "HTML_CONTENT", SubjectPart: "SUBJECT_LINE", TextPart: "TEXT_CONTENT", }, }; // Create the promise and SES service object var templatePromise = new AWS.SES({ apiVersion: "2010-12-01" }) .createTemplate(params) .promise(); // Handle promise's fulfilled/rejected states templatePromise .then(function (data) { console.log(data); }) .catch(function (err) { console.error(err, err.stack); });

예제를 실행하려면 명령줄에서 다음을 입력합니다. 템플릿이 Amazon SES에 추가됩니다.

node ses_createtemplate.js

이 샘플 코드는 GitHub에서 찾을 수 있습니다.

이메일 템플릿 업데이트

이 예에서는 Node.js 모듈을 사용하여 Amazon SES에 사용할 이메일 템플릿을 생성합니다. 파일 이름이 ses_updatetemplate.js인 Node.js 모듈을 생성합니다. 위와 같이 SDK를 구성합니다.

AWS.SES 클라이언트 클래스의 updateTemplate 메서드에 전달된 필수 TemplateName 파라미터와 함께 템플릿에서 업데이트하려는 Template 파라미터 값을 전달할 객체를 생성합니다. updateTemplate 메서드를 호출하려면 파라미터를 전달하는 Amazon SES 서비스 객체를 호출하기 위한 promise를 생성합니다. 그런 다음 promise 콜백에서 response를 처리합니다.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create updateTemplate parameters var params = { Template: { TemplateName: "TEMPLATE_NAME" /* required */, HtmlPart: "HTML_CONTENT", SubjectPart: "SUBJECT_LINE", TextPart: "TEXT_CONTENT", }, }; // Create the promise and SES service object var templatePromise = new AWS.SES({ apiVersion: "2010-12-01" }) .updateTemplate(params) .promise(); // Handle promise's fulfilled/rejected states templatePromise .then(function (data) { console.log("Template Updated"); }) .catch(function (err) { console.error(err, err.stack); });

예제를 실행하려면 명령줄에서 다음을 입력합니다. Amazon SES가 템플릿 세부 정보를 반환합니다.

node ses_updatetemplate.js

이 샘플 코드는 GitHub에서 찾을 수 있습니다.

이메일 템플릿 삭제

이 예에서는 Node.js 모듈을 사용하여 Amazon SES에 사용할 이메일 템플릿을 생성합니다. 파일 이름이 ses_deletetemplate.js인 Node.js 모듈을 생성합니다. 위와 같이 SDK를 구성합니다.

AWS.SES 클라이언트 클래스의 deleteTemplate 메서드에 필수 TemplateName 파라미터를 전달할 객체를 생성합니다. deleteTemplate 메서드를 호출하려면 파라미터를 전달하는 Amazon SES 서비스 객체를 호출하기 위한 promise를 생성합니다. 그런 다음 promise 콜백에서 response를 처리합니다.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create the promise and SES service object var templatePromise = new AWS.SES({ apiVersion: "2010-12-01" }) .deleteTemplate({ TemplateName: "TEMPLATE_NAME" }) .promise(); // Handle promise's fulfilled/rejected states templatePromise .then(function (data) { console.log("Template Deleted"); }) .catch(function (err) { console.error(err, err.stack); });

예제를 실행하려면 명령줄에서 다음을 입력합니다. Amazon SES가 템플릿 세부 정보를 반환합니다.

node ses_deletetemplate.js

이 샘플 코드는 GitHub에서 찾을 수 있습니다.