Gmail API를 활용해서 할 수 있는 것
Gmail API가 제공하는 7개 리소스와 50개 이상의 메서드를 한눈에 정리하고, 이를 활용해 만들 수 있는 자동화 서비스 아이디어까지 소개합니다.
바이브코딩 시대, API가 곧 능력이다
AI 활용 시대가 본격화되면서 "바이브코딩(Vibe Coding)"이라는 표현이 자연스러워졌습니다. 아이디어만 있으면, AI와 대화하며 코드를 만들어내는 시대입니다. 이런 흐름 속에서 특히 주목할 만한 것이 API 활용입니다. 수많은 API 중에서도, 거의 모든 사람이 매일 사용하는 Gmail의 API는 활용 가능성이 특히 큽니다.
공식 문서에는 방대한 양의 레퍼런스가 매뉴얼처럼 정리되어 있지만, 이 글에서는 한눈에 어떤 기능이 있는지 파악할 수 있도록 정리해봤습니다.
Gmail API 기능 전체 맵
Gmail API는 RESTful API로, 기본 URL은 https://gmail.googleapis.com입니다. 인증은 OAuth 2.0을 사용하며, Python, JavaScript, Java, Go, Node.js 등 다양한 언어에서 사용할 수 있습니다.

1. Messages (메시지)
이메일의 핵심입니다. 보내기, 읽기, 삭제, 정리까지 메일과 관련된 거의 모든 작업이 여기에 있습니다.
| 기능 | 설명 |
|---|---|
| list | 메일함의 메시지 목록 조회 |
| get | 특정 메시지 상세 조회 (본문, 헤더, 첨부파일 등) |
| send | 메시지 발송 |
| insert | 메일함에 메시지 직접 삽입 (IMAP APPEND와 유사) |
| import | 스팸 필터 등 처리를 거쳐 메시지 가져오기 |
| modify | 메시지의 라벨 변경 (읽음/안읽음, 분류 등) |
| trash / untrash | 휴지통 이동 / 복원 |
| delete | 영구 삭제 |
| batchDelete | 여러 메시지 일괄 삭제 |
| batchModify | 여러 메시지 라벨 일괄 수정 |
특정 메시지의 첨부파일을 별도로 조회(Attachments.get)할 수도 있습니다.
2. Threads (스레드)
대화 단위로 이메일을 묶어 관리합니다. Gmail에서 하나의 대화로 묶이는 이메일 체인을 프로그래밍으로 다룰 수 있습니다.
| 기능 | 설명 |
|---|---|
| list | 스레드 목록 조회 |
| get | 특정 스레드(대화) 전체 조회 |
| modify | 스레드의 라벨 수정 |
| trash / untrash | 휴지통 이동 / 복원 |
| delete | 영구 삭제 |
3. Labels (라벨)
Gmail의 폴더 역할입니다. 시스템 라벨(INBOX, SPAM, TRASH 등)과 사용자 정의 라벨로 나뉩니다. 라벨을 코드로 생성하고 관리할 수 있어서, 자동 분류 시스템의 핵심이 됩니다.
| 기능 | 설명 |
|---|---|
| list | 전체 라벨 목록 조회 |
| get | 특정 라벨 상세 조회 |
| create | 새 라벨 생성 |
| update / patch | 라벨 수정 |
| delete | 라벨 삭제 |
4. Drafts (임시저장)
작성 중인 메일을 프로그래밍 방식으로 관리합니다. 미리 초안을 만들어두고 특정 조건에서 발송하는 워크플로를 구현할 수 있습니다.
| 기능 | 설명 |
|---|---|
| list | 임시저장 목록 조회 |
| get | 특정 임시저장 조회 |
| create | 새 임시저장 생성 |
| update | 임시저장 내용 교체 |
| send | 임시저장을 그대로 발송 |
| delete | 영구 삭제 |
5. History (변경 이력)
메일함에 일어난 변화를 추적합니다. 특정 시점 이후 어떤 메시지가 추가되고, 삭제되고, 라벨이 변경되었는지를 한 번에 확인할 수 있습니다. 동기화 기능을 만들 때 핵심이 되는 리소스입니다.
| 기능 | 설명 |
|---|---|
| list | 특정 시점 이후의 모든 변경 이력 조회 |
6. Users (사용자)
프로필 조회와 실시간 알림 설정을 담당합니다. 특히 watch 메서드는 Google Cloud Pub/Sub와 연동하여 메일 수신을 실시간으로 감지할 수 있게 해줍니다. 폴링 없이 이벤트 기반으로 반응하는 시스템을 만들 때 필수입니다.
| 기능 | 설명 |
|---|---|
| getProfile | 이메일 주소, 총 메시지 수, 스레드 수 등 프로필 조회 |
| watch | 메일함 변경 시 푸시 알림 구독 |
| stop | 푸시 알림 중지 |
7. Settings (설정)
Gmail의 거의 모든 설정을 코드로 제어합니다. 조직 전체의 이메일 서명을 통일하거나, 수백 명의 필터 규칙을 일괄 적용하는 것이 가능합니다.
| 카테고리 | 주요 기능 |
|---|---|
| 자동 포워딩 | 자동 전달 설정 조회/수정 |
| 휴가 응답 | 부재중 자동 응답 설정 |
| IMAP / POP | 메일 프로토콜 설정 조회/수정 |
| 언어 | Gmail 인터페이스 언어 설정 |
| 필터(Filters) | 수신 메일 자동 분류 규칙 생성/조회/삭제 |
| 포워딩 주소 | 전달 대상 이메일 주소 관리 |
| Send As (별칭) | 발신 이메일 주소(별칭) 관리, 서명 설정 |
| 위임(Delegates) | 다른 사용자에게 메일함 접근 권한 부여 |
| S/MIME | 이메일 암호화 인증서 관리 |
| CSE | 클라이언트 측 암호화 키 쌍 및 아이덴티티 관리 |
이걸로 뭘 만들 수 있을까?
기능 목록만 보면 감이 잘 안 올 수 있습니다. Gmail API의 메서드들을 조합하면 어떤 서비스가 가능한지, 대표적인 아이디어 5가지를 정리했습니다.

1. 모닝 다이제스트 봇
messages.list + messages.get으로 지난밤 도착한 이메일을 가져오고, AI로 요약한 뒤, 매일 아침 Slack이나 노션에 보내주는 봇입니다. "오늘 신경 쓸 메일 3통"만 알려주는 개인 비서가 됩니다. 매일 아침 메일함을 뒤지는 15분이 사라집니다.
2. 스마트 자동 분류기
settings.filters.create + messages.modify를 활용합니다. Gmail 기본 필터는 발신자, 제목, 키워드 정도만 조건으로 걸 수 있지만, API를 쓰면 AI가 메일 본문의 맥락을 분석해서 "견적 요청", "미팅 일정", "뉴스레터" 등으로 정교하게 분류할 수 있습니다.
3. 고객 문의 자동 응답 시스템
watch로 실시간 수신을 감지하고, messages.get으로 내용을 분석한 뒤, messages.send로 맞춤 응답을 보냅니다. FAQ 수준의 질문은 AI가 즉시 답변하고, 복잡한 건만 사람에게 전달하는 구조입니다. 소규모 팀에서 고객 응대 부담을 크게 줄일 수 있습니다.
4. 이메일 기반 간이 CRM
threads.list + threads.get으로 고객별 대화 이력을 추적하고, labels로 고객 상태(리드/미팅 완료/계약)를 태깅합니다. 별도 CRM 도구 없이 Gmail 안에서 영업 파이프라인을 관리하는 시스템입니다. 1인 사업자나 프리랜서에게 특히 유용합니다.
5. 이메일 백업/마이그레이션 도구
messages.list + messages.get으로 전체 메일을 추출하고, messages.insert로 다른 계정에 복원합니다. 회사 메일을 개인 계정에 백업하거나, 이직 시 메일 계정을 이전할 때 쓸 수 있습니다.
API 공부, 어디서부터 시작할까
Gmail API가 흥미로워 보이는데 어디서부터 시작해야 할지 모르겠다면, 이 순서를 추천합니다.
하나의 API를 끝까지 써보기. Gmail API든, Notion API든, 관심 있는 하나를 골라 공식 문서의 Quickstart를 처음부터 끝까지 따라해보는 것이 첫걸음입니다. OAuth 인증 설정이 가장 큰 허들이므로 여기를 넘기면 나머지는 수월합니다.
"나를 위한 도구" 만들기. 거창한 서비스가 아니라, 내 이메일을 정리하는 스크립트, 특정 발신자의 메일만 모아보는 도구 같은 소소한 자동화부터 시작합니다. 자기 문제를 풀어야 끝까지 만들게 됩니다.
AI를 페어 프로그래머로 활용하기. API 문서를 읽다가 막히면 AI에게 "이 엔드포인트로 Python 코드 작성해줘"라고 요청합니다. 바이브코딩 시대에 API 문서 독해력과 AI 프롬프팅 능력은 사실상 같은 스킬입니다.
Postman이나 API 테스트 도구 익히기. 코드를 작성하기 전에, API를 직접 호출해보고 응답 구조를 눈으로 확인하는 습관을 들입니다. 감을 잡는 데 가장 빠른 방법입니다.
결국 API는 "남이 만든 기능을 내 것처럼 쓰는 기술"입니다. 이 기술을 익히면, 혼자서도 제법 쓸만한 서비스를 만들 수 있는 시대가 바로 지금입니다.
3줄 요약:
- Gmail API는 메시지, 스레드, 라벨, 임시저장, 변경이력, 사용자, 설정의 7개 리소스로 구성되며, 50개 이상의 메서드를 제공합니다.
- 이 메서드들을 조합하면 모닝 다이제스트, 자동 분류, 고객 응대, 간이 CRM, 메일 백업 등 다양한 자동화 서비스를 만들 수 있습니다.
- 시작은 공식 문서의 Quickstart를 따라하고, 나를 위한 작은 도구를 만드는 것이 가장 좋습니다.
