메시지 세부정보 가져오기

이 페이지에서는 Mail Admin Quarantine API에서 customers.quarantinedMessages 리소스의 get 메서드를 사용하여 격리된 단일 메일의 세부정보를 가져오는 방법을 설명합니다. 메일을 승인하거나 거부하기 전에 메일의 헤더, 제목, 본문, 첨부파일을 검사하는 데 사용합니다.

기본 요건

  • API 설정의 단계를 완료했습니다.
  • 관리자 스팸 격리 저장소 권한이 있는 관리자를 가장하고 https://www.googleapis.com/auth/gmail.admin.quarantine 또는 https://www.googleapis.com/auth/gmail.admin.quarantine.readonly 범위가 포함된 액세스 토큰입니다. 도메인 전체 위임으로 승인을 참조하세요.
  • 스팸으로 분류된 메일 나열 및 검색에서 가져오는 스팸으로 분류된 메일의 리소스 이름입니다.

스팸으로 분류된 메일 가져오기

격리된 메일을 가져오려면 메일의 리소스 이름에 대해 get 메서드에 GET 요청을 전송하고 view 쿼리 매개변수를 사용하여 반환할 콘텐츠의 양을 선택합니다.

GET https://mailadminquarantine.googleapis.com/v1/customers/CUSTOMER_ID/quarantinedMessages/MESSAGE_OWNER:MESSAGE_ID?view=MESSAGE_VIEW_DETAILS
Authorization: Bearer ACCESS_TOKEN

다음을 바꿉니다.

  • CUSTOMER_ID: 고객 ID입니다.
  • MESSAGE_OWNER: messageOwner 필드에 반환된 편지함 소유자의 이메일 주소입니다.
  • MESSAGE_ID: messageId 필드에 반환된 Gmail 메일 ID입니다.

이러한 값을 찾으려면 customers.quarantinedMessages 리소스의 list 또는 search 메서드를 호출합니다. list 또는 search 응답의 name 필드를 요청 경로로 직접 전달할 수 있습니다(예: https://mailadminquarantine.googleapis.com/v1/customers/01abc23de/quarantinedMessages/user@example.com:18d3ef45a8b2c1d0).

메시지 조회수

view 쿼리 매개변수는 응답에 포함되는 필드를 결정합니다.

보기 반환된 필드
MESSAGE_VIEW_BASIC(기본) 격리 메타데이터만: name, messageId, messageOwner, quarantines, receiveTime, direction, state, retentionExpireTime, triggeredRules
MESSAGE_VIEW_DETAILS name, messageId, messageOwner, subject, body, headers, attachments, labels, classificationLabelValues가 포함된 파싱된 content 객체
MESSAGE_VIEW_RAW name, messageId, messageOwner, rawMessage, base64url로 인코딩된 문자열인 RFC 2822 형식의 전체 메시지입니다.

view를 생략하면 API가 기본 뷰를 반환합니다. 인식할 수 없는 뷰 값은 400 INVALID_ARGUMENT 오류를 반환합니다.

응답 예

다음 응답은 view=MESSAGE_VIEW_DETAILS를 사용합니다.

{
  "name": "customers/01abc23de/quarantinedMessages/user@example.com:18d3ef45a8b2c1d0",
  "messageId": "18d3ef45a8b2c1d0",
  "messageOwner": "user@example.com",
  "content": {
    "subject": "Urgent: Verify your account details",
    "body": "Please click the link below to verify your login credentials...",
    "headers": [
      {"name": "From", "value": "security-alert@external.example.net"},
      {"name": "To", "value": "user@example.com"},
      {"name": "Date", "value": "Tue, 22 Sep 2026 10:15:00 +0000"},
      {"name": "Subject", "value": "Urgent: Verify your account details"}
    ],
    "attachments": [
      {
        "filename": "invoice_update.pdf",
        "mimeType": "application/pdf",
        "sizeBytes": "142857",
        "attachmentId": "att_987654321"
      }
    ],
    "labels": ["^admin_quarantine"]
  }
}

다음 표에는 응답의 콘텐츠 필드가 표시됩니다.

필드 설명
content.subject 메시지의 제목입니다.
content.body 메시지의 일반 텍스트 본문 또는 스니펫입니다.
content.headers[] MIME 디코딩된 값이 있는 메일 헤더입니다.
content.attachments[] 각 첨부파일의 파일 이름, MIME 유형, 크기(바이트), ID입니다.
content.labels[] 메일에 적용된 표준 Gmail 라벨입니다.
content.classificationLabelValues[] 메일에 적용된 분류 라벨(있는 경우)

원시 메시지 디코딩

view=MESSAGE_VIEW_RAW를 사용하면 rawMessage 필드에 base64url 문자열로 인코딩된 RFC 2822 형식의 전체 메시지가 포함됩니다. 표준 이메일 도구를 사용하여 메시지를 분석하도록 디코딩합니다. 예를 들면 다음과 같습니다.

import base64
import email

raw_message = response.json()['rawMessage']
mime_message = email.message_from_bytes(base64.urlsafe_b64decode(raw_message))
print(mime_message['Subject'])

다음 단계