소개
앱스크립트를 활용해 안정적이고 오류가 적은 이메일 자동화 파이프라인을 구축한 사례를 공유합니다. 이번 프로젝트는 AI 이메일 초안 생성 → 디자인 적용 → 주소록 기반 단체 발송까지 이어지는 전체 흐름을 직접 구성해보려는 목적에서 시작되었습니다.
진행 방법
🔧 사용 도구
Apps Script
Gemini API
Google Sheets
Google Docs (스마트 칩 기반 프롬프트 문서 연결)
📌 구현 흐름
1) 이메일 초안 생성 자동화
시트 입력값(C6, C7)을 바탕으로 Apps Script가 Docs의 기본 프롬프트와 결합
Gemini API(gemini-2.5-pro)에 전달할 최종 프롬프트 생성
응답 형식:
제목: ... --- 본문...파싱하여 C8(제목), C9(본문)에 자동 입력
// 예시 코드 구조
function generateEmail() {
const sheet = SpreadsheetApp.getActiveSheet();
const core = sheet.getRange("C6").getValue();
const docUrl = extractSmartChipUrl(sheet.getRange("C7").getValue());
const basePrompt = getDocContent(docUrl);
const finalPrompt = ${basePrompt}\n사용자 입력: ${core};
const aiResponse = callGemini(finalPrompt);
const { title, body } = parseEmail(aiResponse);
sheet.getRange("C8").setValue(title);
sheet.getRange("C9").setValue(body);
}
2) 향후 구현 예정: 이메일 디자인 적용
C9의 텍스트 + C12의 디자인 프롬프트를 조합
Gemini API로 HTML 이메일 생성 요청
C11의 테스트 이메일 주소로 시각적 결과 발송 예정
3) 향후 구현 예정: 주소록 기반 단체 발송
C17~C19에서 발송자 정보·주소록 구조 읽기
MailApp.sendEmail()으로 루프 발송
{name} 치환 기능 추가 예정
결과와 배운 점
🌱 배운 점
스마트 칩에서 URL을 추출하는 구조가 직관적이면서도 주의가 필요함
Apps Script의 메뉴, 함수 구조, 트리거 세팅을 통해 자동화의 전체 플로우를 명확히 이해
Gemini API와의 연동이 생각보다 매끄러워 다양한 확장 가능성이 보임
🔍 n8n과의 비교 관찰
Apps Script: 구글 생태계 기반 자동화에 최적화, Spreadsheet/Docs 등과 연결이 쉬움
n8n: 시각적 워크플로우 구성은 좋지만 Google Docs/Sheets 기반 세밀한 제어는 Apps Script가 더 유리
향후에는 이메일 디자인 단계와 단체 발송 단계를 마저 완성해 전체 파이프라인을 독립 실행형으로 만들 계획입니다.