Search Analytics: query

승인 필요

정의한 필터 및 매개변수를 사용하여 검색 트래픽 데이터를 쿼리합니다. 이 메서드는 정의된 행 키 (측정기준)에 따라 그룹화된 0개 이상의 행을 반환합니다. 1일 이상의 기간을 정의해야 합니다.

날짜가 측정기준 중 하나인 경우 데이터가 없는 날짜는 결과 목록에서 생략됩니다. 데이터가 있는 날짜를 알아보려면 원하는 기간에 대해 날짜별로 그룹화한 필터 없이 쿼리를 실행하세요.

결과는 클릭수를 기준으로 내림차순으로 정렬됩니다. 두 행의 클릭수가 동일하면 임의의 방식으로 정렬됩니다.

이 메서드를 호출하는 방법은 Python 샘플을 참조하세요.

API는 Search Console의 내부 제한에 의해 제한되며 모든 데이터 행이 아닌 상위 데이터 행을 반환한다고 보장하지 않습니다.

사용 가능한 데이터 양에 대한 한도 알아보기

JSON POST 예시:
POST https://www.googleapis.com/webmasters/v3/sites/https%3A%2F%2Fwww.example.com%2F/searchAnalytics/query?key={MY_API_KEY}
{
  "startDate": "2015-04-01",
  "endDate": "2015-05-01",
  "dimensions": ["country","device"]
}
지금 사용해 보기

요청

HTTP 요청

POST https://www.googleapis.com/webmasters/v3/sites/siteUrl/searchAnalytics/query

매개변수

매개변수 이름 설명
경로 매개변수
siteUrl string Search Console에 정의된 속성의 URL입니다. 예: http://www.example.com/ (URL 접두사 속성) 또는 sc-domain:example.com (도메인 속성)

승인

이 요청에는 다음 범위 중 최소 하나를 사용하여 인증이 필요합니다. (인증 및 승인에 대해 자세히 알아보기)

범위
https://www.googleapis.com/auth/webmasters.readonly
https://www.googleapis.com/auth/webmasters

요청 본문

요청 본문에 다음과 같은 구조의 데이터를 제공합니다.

{
  "startDate": string,
  "endDate": string,
  "dimensions": [
    string
  ],
  "type": string,
  "dimensionFilterGroups": [
    {
      "groupType": string,
      "filters": [
        {
          "dimension": string,
          "operator": string,
          "expression": string
        }
      ]
    }
  ],
  "aggregationType": string,
  "rowLimit": integer,
  "startRow": integer
}
속성 이름 설명 Notes
startDate string [필수사항] PT 시간 (UTC - 7:00/8:00) 형식으로 YYYY-MM-DD 형식으로 요청된 기간의 시작일입니다. 종료일보다 작거나 같아야 합니다. 이 값이 범위에 포함됩니다.
endDate string [필수] PT 시간 (UTC - 7:00/8:00)으로 YYYY-MM-DD 형식으로 요청된 기간의 종료일입니다. 시작일 이후여야 합니다. 이 값이 범위에 포함됩니다.
dimensions[] list [선택사항] 결과를 그룹화할 측정기준이 0개 이상입니다.결과는 이러한 측정기준을 제공한 순서대로 그룹화됩니다.dimensionFilterGroups[].filters[].dimension에서 모든 측정기준 이름 및 '날짜'를 사용할 수 있습니다.그룹화 측정기준 값이 결합되어 각 결과 행의 고유 키가 생성됩니다. 측정기준을 지정하지 않으면 모든 값이 단일 행으로 결합됩니다. 그룹화할 수 있는 측정기준의 수에는 제한이 없지만 동일한 측정기준으로 두 번 그룹화할 수 없습니다. 예: [국가, 기기]
searchType string 지원 중단되었으므로 type를 대신 사용하세요.
type string [선택사항] 다음 유형으로 결과를 필터링합니다.
  • "discover": 디스커버 결과
  • 'googleNews': news.google.com 및 Android 및 iOS용 Google 뉴스 앱의 검색 결과입니다. Google 검색의 '뉴스' 탭 검색결과는 포함되지 않습니다.
  • "news": Google 검색의 '뉴스' 탭에 있는 검색 결과입니다.
  • 'image': Google 검색의 '이미지' 탭에 있는 검색 결과입니다.
  • "video": 동영상 검색결과
  • 'web': [기본값] Google 검색의 결합된 ('전체') 탭으로 결과를 필터링합니다. 디스커버 또는 Google 뉴스 검색결과는 포함되지 않습니다.
dimensionFilterGroups[] list [선택사항] 측정기준 그룹화 값에 적용할 0개 이상의 필터 그룹입니다. 응답에서 행이 반환되려면 모든 필터 그룹이 일치해야 합니다. 단일 필터 그룹 내에서 모든 필터가 일치해야 하는지 또는 하나 이상의 필터가 일치해야 하는지를 지정할 수 있습니다.
dimensionFilterGroups[].groupType string 이 그룹의 모든 필터가 true ('and')를 반환해야 하는지 아니면 하나 이상의 필터가 true를 반환해야 하는지 (아직 지원되지 않음) 여부입니다.

사용 가능한 값은 다음과 같습니다.
  • 'and': 필터 그룹이 참이면 그룹의 모든 필터가 참을 반환해야 합니다.
dimensionFilterGroups[].filters[] list [선택사항] 행을 테스트할 0개 이상의 필터입니다. 각 필터는 측정기준 이름, 연산자, 값으로 구성됩니다. 최대 길이는 4,096자(영문 기준)입니다. 예:
country equals FRA
query contains mobile use
device notContains tablet
dimensionFilterGroups[].filters[].dimension string 이 필터가 적용되는 측정기준입니다. 여기에 나열된 측정기준별로 필터링할 수 있으며, 해당 측정기준을 기준으로 그룹화하지 않아도 됩니다.

사용 가능한 값은 다음과 같습니다.
  • 'country': 3자리 국가 코드 (ISO 3166-1 alpha-3)로 지정된 국가를 기준으로 필터링합니다.
  • 'device': 지정된 기기 유형을 기준으로 결과를 필터링합니다. 지원되는 값:
    • 데스크톱
    • 모바일
    • 태블릿
  • 'page': 지정된 URI 문자열을 기준으로 필터링합니다.
  • 'query': 지정된 쿼리 문자열을 기준으로 필터링합니다.
  • 'searchAppearance': 특정 검색결과 기능을 기준으로 필터링합니다. 사용 가능한 값 목록을 보려면 'searchAppearance'로 그룹화된 쿼리를 실행하세요.
dimensionFilterGroups[].filters[].operator string [선택사항] 지정된 값이 행의 측정기준 값과 어떻게 일치해야 하는지 (또는 일치하지 않는지)를 나타냅니다.

사용 가능한 값은 다음과 같습니다.
  • 'contains': 행 값이 표현식을 포함하거나 같아야 합니다 (대소문자를 구분하지 않음).
  • "equals": [기본값] 표현식이 행 값과 정확히 일치해야 합니다 (페이지 및 쿼리 측정기준의 경우 대소문자 구분).
  • 'notContains': 행 값에 하위 문자열 또는 대소문자 구분이 없는 완전 일치로 표현식을 포함해서는 안 됩니다.
  • 'notEquals': 표현식이 행 값과 정확히 같아서는 안 됩니다 (페이지 및 쿼리 측정기준의 경우 대소문자 구분).
  • 'includingRegex': 일치해야 하는 RE2 구문 정규 표현식입니다.
  • 'excludingRegex': 일치해서는 안 되는 RE2 구문 정규 표현식입니다.
dimensionFilterGroups[].filters[].expression string 연산자에 따라 일치하거나 제외할 필터의 값입니다.
aggregationType string

[선택사항] 데이터 집계 방법입니다. 속성별로 집계하면 동일한 속성의 모든 데이터가 집계됩니다. 페이지 단위로 집계하면 모든 데이터가 표준 URI를 기준으로 집계됩니다. 페이지별로 필터링하거나 그룹화하는 경우 자동을 선택하세요. 그렇지 않으면 데이터 계산 방법에 따라 속성 또는 페이지를 기준으로 집계할 수 있습니다. 사이트 및 페이지별로 데이터가 어떻게 다르게 계산되는지 알아보려면 도움말 문서를 참고하세요.

참고: 페이지를 기준으로 그룹화하거나 필터링하는 경우 속성 단위로 집계할 수 없습니다.

auto 이외의 값을 지정하면 결과의 집계 유형이 요청된 유형과 일치하게 되며, 잘못된 유형을 요청하면 오류가 발생합니다. 요청된 유형이 잘못된 경우 API는 집계 유형을 변경하지 않습니다.

사용 가능한 값은 다음과 같습니다.
  • "auto": [기본값] 서비스에서 적절한 집계 유형을 결정하도록 허용합니다.
  • "byNewsShowcasePanel": 뉴스 쇼케이스 패널별로 값을 집계합니다. NEWS_SHOWCASE searchAppearance 필터 및 type=discover 또는 type=googleNews와 함께 사용해야 합니다. 페이지별로 그룹화하거나, 페이지로 필터링하거나, 다른 searchAppearance(으)로 필터링하는 경우 byNewsShowcasePanel 기준으로 집계할 수 없습니다.
  • 'byPage': URI별로 값을 집계합니다.
  • 'byProperty': 속성별로 값을 집계합니다. type=discover 또는 type=googleNews에는 지원되지 않음
rowLimit integer [선택사항, 유효 범위는 1~25,000개, 기본값은 1,000개] 반환할 최대 행 수입니다. 결과 페이징을 하려면 startRow 오프셋을 사용합니다.
startRow integer [선택사항, 기본값은 0] 응답에서 첫 번째 행의 0부터 시작하는 색인입니다. 음수가 아닌 숫자여야 합니다. startRow가 쿼리 결과 수를 초과하면 행이 0개인 성공적인 응답이 반환됩니다.
dataState string [선택사항] 'all' (대소문자를 구분하지 않음)인 경우 데이터에 최신 데이터가 포함됩니다. '최종' (대소문자를 구분하지 않음)이거나 이 매개변수를 생략하면 반환된 데이터에 최종 데이터만 포함됩니다.

대답

결과는 요청에 지정된 측정기준에 따라 그룹화됩니다. 측정기준 값 집합이 동일한 모든 값은 단일 행으로 그룹화됩니다. 예를 들어 국가 측정기준으로 그룹화하면 'usa'에 대한 모든 결과가 그룹화되고 'mdv'에 대한 모든 결과는 함께 그룹화됩니다. 국가 및 기기별로 그룹화한 경우 'usa, 태블릿'에 대한 모든 결과가 그룹화되고 'usa, 모바일'에 대한 모든 결과는 그룹화되고 이런 방식으로 그룹화됩니다. 클릭수, 노출수 등의 계산 방식과 그 의미를 자세히 알아보려면 검색 애널리틱스 보고서 문서를 참고하세요.

결과는 클릭수에 따라 내림차순으로 정렬됩니다. 단, 날짜별로 그룹화하는 경우에는 결과가 날짜별로 오름차순 (가장 오래된 순서, 최근 순서)으로 정렬됩니다. 두 행 간에 연결이 있는 경우 정렬 순서는 임의적입니다.

반환될 수 있는 값의 최대 개수는 요청의 rowLimit 속성을 참고하세요.

{
  "rows": [
    {
      "keys": [
        string
      ],
      "clicks": double,
      "impressions": double,
      "ctr": double,
      "position": double
    }
  ],
  "responseAggregationType": string
}
속성 이름 설명 Notes
rows[] list 쿼리에 제공된 순서대로 키 값을 기준으로 그룹화된 행 목록입니다.
rows[].keys[] list 요청에 지정된 순서대로 요청의 측정기준에 따라 그룹화된, 해당 행의 측정기준 값 목록입니다.
rows[].clicks double 행의 클릭수입니다.
rows[].impressions double 행의 노출수입니다.
rows[].ctr double 행의 클릭률 (CTR)입니다. 값 범위는 0 이상 1.0 이하입니다.
rows[].position double 검색결과의 평균 게재순위입니다.
responseAggregationType string 결과 집계 방법입니다.사이트 및 페이지별로 데이터가 어떻게 다르게 계산되는지 알아보려면 도움말 문서를 참고하세요.

사용 가능한 값은 다음과 같습니다.
  • "auto"
  • 'byPage': 페이지별로 결과가 집계되었습니다.
  • 'byProperty': 결과가 속성별로 집계되었습니다.

사용해 보기

아래의 API 탐색기를 사용하여 실시간 데이터를 대상으로 이 메소드를 호출하고 응답을 확인해 보세요.