이 문서에서는 Gmail API를 사용하여 이메일 초안을 만들고, 업데이트하고, 전송하는 방법을 설명합니다.
이메일 임시보관함은 DRAFT 시스템 라벨이 적용된 보내지 않은 메일을 나타냅니다.
초안에 포함된 메일은 생성된 후에는 수정할 수 없지만 교체할 수는 있습니다. 이러한 의미에서 drafts 리소스는 메시지가 대체될 때마다 기본 메시지 ID가 변경되므로 안정적인 ID를 제공하는 컨테이너입니다.
임시보관 메일 내의 messages 리소스는 다음과 같은 차이점을 제외하고 다른 메일과 유사하게 동작합니다.
- 임시보관함 메시지에는
DRAFT시스템 라벨 이외의 라벨을 지정할 수 없습니다. - 초안이 전송되면 초안이 자동으로 삭제되고 업데이트된 ID가 포함된 새 메일이
SENT시스템 라벨과 함께 생성됩니다. 이 메시지는drafts.send메서드 응답에서 반환됩니다.
초안 만들기
앱은 drafts.create 메서드를 사용하여 초안을 만들 수 있습니다. 초안을 만들려면 다음 단계를 따르세요.
- RFC 2822를 준수하는 MIME 메시지를 만듭니다.
- 메시지를 base64URL로 인코딩된 문자열로 변환합니다.
drafts.create메서드를 호출하여messages.raw필드의 값을 인코딩된 문자열로 설정합니다.
다음 코드 샘플은 이 프로세스를 보여줍니다.
자바
Python
cURL
curl --request POST \
'https://gmail.googleapis.com/gmail/v1/users/me/drafts' \
--header 'Authorization: Bearer ACCESS_TOKEN" \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"message":{"raw":"MESSAGE"}}'
다음을 바꿉니다.
- ACCESS_TOKEN: API에 대한 액세스 권한을 부여하는 액세스 토큰입니다.
- MESSAGE: RFC 2822 형식의 MIME 메시지로, base64URL로 인코딩됩니다.
초안 업데이트
초안을 만드는 것과 마찬가지로 초안을 업데이트하려면 요청 본문에 drafts 리소스를 제공해야 하며, messages.raw 필드는 MIME 메시지가 포함된 base64URL 인코딩 문자열로 설정해야 합니다. 메일을 업데이트할 수 없으므로 초안에 포함된 메일이 삭제되고 업데이트 요청에 제공된 새 MIME 메일로 대체됩니다.
format=raw 쿼리 매개변수를 사용하여 drafts.get 메서드를 호출하면 초안에 포함된 현재 MIME 메시지를 가져올 수 있습니다.
자세한 내용은 drafts.update 메서드를 참조하세요.
초안 보내기
초안을 보낼 때 초안을 그대로 보낼 수도 있고 보내기 요청에서 업데이트를 제공할 수도 있습니다.
전송 시 초안을 업데이트하려면 drafts.send 메서드의 요청 본문에 drafts 리소스를 제공합니다. drafts 리소스에서 전송할 메일 초안의 id을 지정하고 messages.raw 필드를 base64URL 문자열로 인코딩된 새 MIME 메시지로 설정해야 합니다.
Gmail 메일 전송에 관한 자세한 내용은 메일 보내기를 참고하세요.