호출 사용자가 액세스할 수 있는 Google Chat의 메시지를 검색합니다. 검색 기준과 일치하는 메시지 목록을 반환합니다.
사용자가 액세스할 수 있는 모든 스페이스를 검색하려면 parent를 spaces/-로 설정합니다. parent에 다른 값을 사용하면 INVALID_ARGUMENT 오류가 발생합니다. 반환된 메시지의 name 필드는 메시지가 있는 특정 space를 포함하는 전체 리소스 이름으로 채워집니다.
이 API는 모든 메시지 유형을 반환하지 않습니다. 아래에 나열된 메시지 유형은 응답에 포함되지 않습니다. messages.list를 사용하여 모든 메시지를 나열합니다.
createTime: RFC-3339 형식의 타임스탬프를 허용하며 지원되는 비교 연산자는 < 및 >=입니다.
sender.name: 발신자의 리소스 이름 (users/{user}). =만 지원합니다. 이메일을 {user}의 별칭으로 사용할 수 있습니다. 예를 들어 users/example@gmail.com입니다. 여기서 example@gmail.com은 Google Chat 사용자의 이메일입니다.
space.name: 메시지가 게시된 스페이스의 리소스 이름입니다. (spaces/{space}). =만 지원합니다. 이 필터가 설정되지 않으면 사용자가 스페이스 구성원으로 액세스할 수 있는 모든 다이렉트 메시지 및 스페이스에서 검색이 실행됩니다.
space.display_name: 연산자 : (has)를 지원하며 표시 이름의 부분 일치를 기반으로 스페이스를 필터링합니다. 결과는 상위 5개 스페이스 일치 항목으로 제한됩니다. 예를 들어 space.display_name:Project는 표시 이름에 "Project"라는 단어가 포함된 상위 5개 스페이스에서 메시지를 검색합니다.
attachment: 첨부파일의 존재 여부를 확인하는 연산자 :* (has any)를 지원합니다. attachment:*가 지정되면 첨부파일이 하나 이상 있는 메시지만 반환됩니다.
annotations.user_mentions.user.name: 언급된 사용자의 리소스 이름 (users/{user}). : (has)만 지원합니다. 예를 들어 annotations.user_mentions.user.name:"users/1234567890"은 지정된 사용자에 대한 멘션이 포함된 메시지만 반환합니다. 또는 me 별칭을 사용하여 호출자 사용자를 멘션하는 메시지를 필터링할 수 있습니다(예: annotations.user_mentions.user.name:users/me). 이메일을 {user}의 별칭으로 사용할 수도 있습니다(예: users/example@gmail.com).
고급 필터링을 위해 다음 함수도 사용할 수 있습니다.
has_link(): 메시지 텍스트에 하이퍼링크가 하나 이상 있는 메시지만 반환합니다.
is_unread(): 호출 사용자가 읽은 메시지를 필터링합니다.
space.display_name 필터를 사용하려면 호출 인증 정보에 다음 승인 범위 중 하나가 포함되어야 합니다.
서로 다른 필드에서는 AND 연산자만 지원됩니다. 유효한 예는 sender.name = "users/1234567890" AND is_unread()입니다. AND라는 단어는 선택사항이며 생략하면 암시됩니다. 예를 들어 sender.name =
"users/1234567890" is_unread()는 유효하며 이전 예와 동일합니다. OR은 서로 다른 필드 간에 지원되지 않으므로 sender.name = "users/1234567890" OR
is_unread()는 잘못된 예입니다.
동일한 필드 중에서:
createTime은 AND만 지원하며 createTime >= "2022-01-01T00:00:00+00:00" AND
createTime < "2023-01-01T00:00:00+00:00"과 같은 간격을 나타내는 데만 사용할 수 있습니다.
sender.name은 OR 연산자만 지원합니다(예: sender.name = "users/1234567890" OR sender.name = "users/0987654321").
space.name은 OR 연산자만 지원합니다(예: space.name = "spaces/ABCDEFGH" OR space.name = "spaces/QWERTYUI").
space.display_name은 AND 및 OR 연산자를 지원하지만 둘 다 혼합해서는 지원하지 않습니다. 예를 들어 space.display_name:Project AND space.display_name:Tasks는 표시 이름에 Project와 Tasks가 모두 포함된 스페이스의 메시지를 반환하는 반면 space.display_name:Project OR space.display_name:Tasks는 표시 이름에 Project 또는 Tasks 또는 둘 다 포함된 스페이스의 메시지를 반환합니다.
annotations.user_mentions.user.name은 AND 및 OR 연산자를 지원하지만 둘 다 혼합해서는 지원하지 않습니다. 예를 들어 annotations.user_mentions.user.name:"users/1234567890" AND
annotations.user_mentions.user.name:"users/0987654321"은 두 사용자를 모두 멘션하는 메시지만 반환하는 반면 annotations.user_mentions.user.name:"users/1234567890" OR
annotations.user_mentions.user.name:"users/0987654321"은 한 명의 사용자 또는 두 명의 사용자를 모두 멘션하는 메시지를 반환합니다.
동일한 쿼리에서 AND 및 OR 연산자를 결합할 때 연산자 우선순위를 명확히 하려면 괄호가 필요합니다. 예를 들어 (sender.name="users/me" OR sender.name="users/123456") AND is_unread()입니다. 그 외의 경우에는 괄호가 선택사항입니다.
다음 쿼리 예는 유효합니다.
"Pending reports" AND createTime >= "2023-01-01T00:00:00Z"
sender.name = "users/example@gmail.com"
annotations.user_mentions.user.name:"users/0987654321"
attachment:* AND space.name = "spaces/ABCDEFGH"
tasks AND is_unread() AND sender.name = "users/1234567890"
"things to do" "urgent"
(sender.name = "users/1234567890")
AND (createTime < "2023-05-01T00:00:00Z")
tasks AND space.name = "spaces/ABCDEFGH" AND has_link()
"project one" is_unread()
space.display_name:Project tasks
최대 쿼리 길이는 1,000자입니다.
잘못된 쿼리는 INVALID_ARGUMENT 오류와 함께 서버에서 거부됩니다.
pageSize
integer
선택사항입니다. 반환할 최대 결과 수입니다. 서비스가 이 값보다 더 적게 반환할 수 있습니다.
지정하지 않으면 최대 25개가 반환됩니다.
최댓값은 100입니다. 100보다 큰 값을 사용하면 자동으로 100으로 변경됩니다.
pageToken
string
선택사항입니다. 이전 검색 메시지 호출에서 가져온 토큰입니다. 후속 페이지를 가져오려면 이 매개변수를 제공합니다.
페이지를 나누는 경우 제공된 다른 모든 매개변수는 페이지 토큰을 제공한 호출과 일치해야 합니다. 다른 매개변수에 다른 값을 전달하면 예기치 않은 결과가 발생할 수 있습니다.
orderBy
string
선택사항입니다. 결과 목록이 정렬되는 방식입니다.
정렬할 수 있는 지원되는 속성은 다음과 같습니다.
createTime: 메시지 생성 시간을 기준으로 결과를 정렬합니다. 기본값
relevance: 관련성을 기준으로 결과를 정렬합니다.
기본 정렬은 createTime desc입니다. 쿼리당 하나의 순서 (createTime 또는 relevance)만 지원됩니다. 내림차순 (desc)만 지원되며 순서 속성 뒤에 지정해야 합니다.
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2026-05-13(UTC)"],[],[]]