PATCH/users/{userId}/mail/{mailId}

특정 메일을 읽음이나 안 읽음으로 표시하거나 중요 메일로 표시한다.

Authorization

oauth2

OAuth 2.0 인증.
자세한 인증 방식은 인가·인증를 참고한다.

Scope

mail

HTTP Request

PATCHhttps://www.worksapis.com/v1.0/users/{userId}/mail/{mailId}

Path Parameters

ParameterTypeDescription
userId string 

구성원 ID (URL인코딩하여 사용)

  • User ID
  • Login ID(email)
  • 자기자신(me)

required
example : me 
mailId string 

메일 ID


required
example : 1 

Header Parameters

HeadertypeDescription
Authorization string 

Bearer {token}


required 
Content-Type string 

application/json


required
example : application/json 

Request Body

PropertyTypeDescription
readStatus boolean 

메일의 읽음 표시 여부 (true : 읽음 표시)

 
markStatus boolean 

메일의 중요 표시 여부 (true : 중요 표시)

 

Request Example

example

1{2  "readStatus": false,3  "markStatus": true4}

Response

HTTP 200

OK

PropertyTypeDescription
mail object (mail) 

메일


required 
attachments array (AttachmentFile) 

첨부 파일 정보


required
minItems : 0 
threads array (Threads) 
 

mail

PropertyTypeDescription
mailId integer 

메일 ID


required
format : int64 
folderId integer 

메일함 ID


required
format : int32 
status integer 

메일 상태

  • 0x4L: 읽음(현재 상태)
  • 0x8L: 답장을 보냄
  • 0x10L: 전달함
  • 0x20L: 중요 메일로 표시함
  • 0x100L: 보낸 메일임
  • 0x800L: 상대방이 읽음
  • 0x1000L: 다운로드 기한이 있는 파일이 첨부된 메일
  • 0x40000L: 답장을 받은 메일
  • 0x00200000L: 내가 수신자로 설정되어 있는 메일
  • 0x00400000L: 일정 메일

메일 상태(status)는 bit AND 연산자로 구해야 한다.
메일의 읽음 여부를 확인하는 코드 예는 다음과 같다.

public boolean IsRead(long status) {  return 0x4L == (0x4L & status);}

required
format : int64 
from object (from) 

메일 정보


required 
replyTo object (replyTo) 

메일 정보

 
to array (MailAddress) 

받는사람


required
minItems : 1 
cc array (MailAddress) 

참조


minItems : 0 
bcc array (MailAddress) 

숨은참조


minItems : 0
uniqueItems : true 
subject string 

메일 제목


required
minLength : 1
maxLength : 180 
body string 

메일 내용


required
minLength : 1 
receivedTime string 

메일 수신 시간


required
example : 2021-07-16T19:20:30+09:00 
sentTime string 

메일 발송 시간


required
example : 2021-07-16T19:20:30+09:00 
size integer 

메일 크기 (단위 : byte)


required
format : int32 
securityLevel string 

메일의 보안 등급

  • General: 일반(기본값)
  • Restricted: 대외비
  • Confidential: 기밀
  • Non-business: 업무외

default : General
Allowed values : General, Restricted, Confidential, Non-business 
securityDeleteDate string 

보안 메일 삭제 예정일

 
useForwarding boolean 

재전송 가능 여부


default : true 
charset string 

읽을 때 사용할 charset

 
spamType string 

스팸 분류 코드

  • SYSTEM_DEFINE: 시스템 분류 기준
  • USER_DEFINE: 사용자 분류 기준
  • USER_REPORT: 사용자가 스팸으로 보고
  • USER_MOVE: 사용자가 스팸메일함으로 이동
  • NORMAL: 일반 메일

Allowed values : SYSTEM_DEFINE, USER_DEFINE, USER_REPORT, USER_MOVE, NORMAL 
spamTypeDetail string 

스팸 상세 설명

 

from

PropertyTypeDescription
name string 

메일 이름

 
email string 

메일 주소 (RFC822 format)


required
minLength : 1 

replyTo

PropertyTypeDescription
name string 

메일 이름

 
email string 

메일 주소 (RFC822 format)


required
minLength : 1 

MailAddress

PropertyTypeDescription
name string 

메일 이름

 
email string 

메일 주소 (RFC822 format)


required
minLength : 1 

AttachmentFile

PropertyTypeDescription
attachmentId integer 

첨부 파일 ID
첨부 파일의 종류에 따라 콘텐츠 검색 방법이 다르다.

  • 양수 : 일반 첨부 파일
    첨부 파일 다운로드 사용
  • -1 : 다운로드 기한이 있는 파일
    bigFileFid 참조
  • -2 : 인라인 이미지
    메일 읽기 설명 참조

required
format : int32 
contentType string 

첨부 파일의 contentType


required 
charset string 

파일의 charset


nullable : true 
filename string 

파일명


required
minLength : 1
maxLength : 250 
encoding string 

파일의 인코딩


nullable : true 
size integer 

파일 크기 (단위는 bytes)


required
format : int32 
bigFileExpireTime string 

다운로드 기한이 있는 파일의 유효 기간

 
bigFileFid string 

다운로드 기한이 있는 파일의 fid

  • https://bigfile.mail.worksmobile.com/download?fid= 형태로 다운로드 기한이 있는 파일을 다운로드할 수 있다.
 
cid string 

Content-ID (인라인 이미지에 사용하는 cid)


nullable : true 
contentDisposition string 

Content-Disposition

  • inline : 인라인 이미지
  • attachment+ : 첨부 파일

Allowed values : inline, attachment 
data string 

인라인 이미지 데이터 (Base64로 인코딩된 데이터)


nullable : true 

Threads

PropertyTypeDescription
mailId integer 

메일 ID


required
format : int64 
folderId integer 

메일함 ID


required
format : int32 
status string 

메일 상태

  • Unread: 안 읽은 메일
  • Read: 읽은 메일

required 
from object (from) 

메일 정보


required 
replyTo object (replyTo) 

메일 정보

 
to array (MailAddress) 

받는사람


required
minItems : 1 
cc array (MailAddress) 

참조(주고받은 메일 묶음에서는 항상 빈값)


minItems : 0 
bcc array (MailAddress) 

숨은참조(주고받은 메일 묶음에서는 항상 빈값)


minItems : 0
uniqueItems : true 
subject string 

메일 제목


required
minLength : 1
maxLength : 180 
receivedTime string 

메일 수신 시간


required
example : 2021-07-16T19:20:30+09:00 
sentTime string 

메일 발송 시간


required
example : 2021-07-16T19:20:30+09:00 
size integer 

메일 크기(단위: byte)


required
format : int32 
securityLevel string 

메일의 보안 등급

  • General: 일반(기본값)
  • Restricted: 대외비
  • Confidential: 기밀
  • Non-business: 업무외

default : General
Allowed values : General, Restricted, Confidential, Non-business 
useForwarding boolean 

재전송 가능 여부


default : true 
attachCount integer 

첨부 파일 개수

 
preview string 

미리보기용 텍스트

 
isImportant boolean 

메일을 쓸 때 중요 메일 여부(메일 제목에 빨간 느낌표 표시)

 

Response Example

example

1{2  "attachments": [3    {4      "attachmentId": 1,5      "contentType": "image/jpeg",6      "filename": "file1.jpg",7      "size": 919,8      "bigFileExpireTime": "",9      "bigFileFid": ""10    },11    {12      "attachmentId": 2,13      "contentType": "image/jpeg",14      "filename": "file2.jpeg",15      "size": 253,16      "bigFileExpireTime": "2022-10-27T00:02:01+09:00",17      "bigFileFid": "RwnmKqg9FAumKwYZHqUmHqUmKoumFxKwKxvmKquqHqurKoKmFqblaxvj1XUwHqg9aAM/axI0Fov9axpCMobqp6FSazEZaACSFA34aAUd&rl=24101"18    }19  ],20  "mail": {21    "mailId": 76285,22    "folderId": 6,23    "status": 4101,24    "from": {25      "name": "works",26      "email": "works@example.com"27    },28    "replyTo": {29      "name": "reply",30      "email": "reply@example.com"31    },32    "to": [33      {34        "name": "admin",35        "email": "admin@example.com"36      }37    ],38    "cc": [39      {40        "name": "admin",41        "email": "admin@example.com"42      }43    ],44    "bcc": [45      {46        "name": "admin",47        "email": "admin@example.com"48      }49    ],50    "subject": "메일 제목",51    "body": "메일 본문",52    "receivedTime": "2022-10-27T00:02:01+09:00",53    "sentTime": "2022-10-27T00:02:01+09:00",54    "size": 1290078,55    "securityLevel": "General",56    "securityDeleteDate": "",57    "useForwarding": true,58    "charset": "",59    "spamType": "NORMAL",60    "spamTypeDetail": "NORMAL"61  },62  "threads": [63    {64      "mailId": 22715,65      "folderId": 0,66      "status": "Read",67      "from": {68        "name": "admin",69        "email": "admin@example.com"70      },71      "to": [72        {73          "name": "admin",74          "email": "admin@example.com"75        }76      ],77      "subject": "메일제목",78      "receivedTime": "2025-04-09T20:19:07+09:00",79      "sentTime": "2025-04-09T20:19:07+09:00",80      "size": 14452,81      "securityLevel": "General",82      "useForwarding": true,83      "attachCount": 0,84      "preview": "",85      "isImportant": true86    }87  ]88}