Wymaga autoryzacji
Wysyłaj zapytania dotyczące danych o ruchu z wyszukiwarki za pomocą zdefiniowanych przez siebie filtrów i parametrów. Metoda zwraca 0 lub więcej wierszy zgrupowanych według zdefiniowanych przez Ciebie kluczy wierszy (wymiarów). Musisz określić zakres dat obejmujący co najmniej 1 dzień.
Jeśli jednym z wymiarów jest data, z listy wyników są pomijane wszystkie dni, w przypadku których nie ma danych. Aby dowiedzieć się, w które dni są dostępne dane, wyślij zapytanie bez filtrów pogrupowane według daty dla interesującego Cię zakresu dat.
Wyniki są sortowane malejąco według liczby kliknięć. Jeśli 2 wiersze mają taką samą liczbę kliknięć, są sortowane w dowolny sposób.
Aby dowiedzieć się, jak wywołać tę metodę, zapoznaj się z przykładowym kodem w Pythonie.
Interfejs API podlega wewnętrznym ograniczeniom Search Console i nie gwarantuje zwracania wszystkich wierszy danych, a jedynie te najważniejsze.
Zobacz ograniczenia dotyczące ilości dostępnych danych
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"] }
Żądanie
Żądanie HTTP
POST https://www.googleapis.com/webmasters/v3/sites/siteUrl/searchAnalytics/query
Parametry
Nazwa parametru | Wartość | Opis |
---|---|---|
Parametry ścieżki | ||
siteUrl |
string |
Adres URL usługi zgodnie z definicją w Search Console. Przykłady:
http://www.example.com/ (w przypadku usługi z prefiksem adresu URL) lub
sc-domain:example.com (w przypadku usługi domeny)
|
Autoryzacja
To żądanie wymaga autoryzacji z użyciem co najmniej jednego z tych zakresów (więcej informacji o uwierzytelnianiu i autoryzacji).
Zakres |
---|
https://www.googleapis.com/auth/webmasters.readonly |
https://www.googleapis.com/auth/webmasters |
Treść żądania
Dane w treści żądania muszą mieć poniższy format:
{ "startDate": string, "endDate": string, "dimensions": [ string ], "type": string, "dimensionFilterGroups": [ { "groupType": string, "filters": [ { "dimension": string, "operator": string, "expression": string } ] } ], "aggregationType": string, "rowLimit": integer, "startRow": integer }
Nazwa usługi | Wartość | Opis | Uwagi |
---|---|---|---|
startDate |
string |
[Wymagany] Data rozpoczęcia żądanego zakresu dat w formacie RRRR-MM-DD w czasie PT (UTC-7:00/8:00). Musi być wcześniejsza lub równa dacie zakończenia. Ta wartość jest uwzględniona w zakresie. | |
endDate |
string |
[Wymagane] Data zakończenia żądanego zakresu dat w formacie RRRR-MM-DD, podana zgodnie ze strefą czasową PT (UTC-7:00/8:00). Musi być równa dacie rozpoczęcia lub od niej późniejsza. Ta wartość jest uwzględniona w zakresie. | |
dimensions[] |
list |
[Opcjonalnie] Co najmniej 1 wymiar, według którego mają być grupowane wyniki.Wyniki są grupowane w kolejności, w jakiej podasz te wymiary. W dimensionFilterGroups[].filters[].dimension możesz użyć dowolnej nazwy wymiaru, a także „date” i „hour”. Wartości wymiaru grupowania są łączone w celu utworzenia unikalnego klucza dla każdego wiersza wyników. Jeśli nie podasz żadnych wymiarów, wszystkie wartości zostaną połączone w jeden wiersz. Nie ma limitu liczby wymiarów, według których możesz grupować dane, ale nie możesz grupować według tego samego wymiaru 2 razy. Przykład: [kraj, urządzenie] | |
searchType |
string |
Wycofana, zamiast niej używaj type
|
|
type |
string |
[Opcjonalnie] Filtruj wyniki według tego typu:
|
|
dimensionFilterGroups[] |
list |
[Opcjonalnie] Zero lub więcej grup filtrów do zastosowania do wartości grupowania wymiarów. Aby wiersz został zwrócony w odpowiedzi, wszystkie grupy filtrów muszą być zgodne. W ramach jednej grupy filtrów możesz określić, czy wszystkie filtry muszą pasować, czy wystarczy, że pasuje co najmniej jeden. | |
dimensionFilterGroups[].groupType |
string |
Czy wszystkie filtry w tej grupie muszą zwracać wartość „prawda” („and”), czy co najmniej 1 filtr musi zwracać wartość „prawda” (ta opcja nie jest jeszcze obsługiwana).
Akceptowane wartości:
|
|
dimensionFilterGroups[].filters[] |
list |
[Opcjonalnie] Co najmniej 1 filtr do przetestowania w wierszu. Każdy filtr składa się z nazwy wymiaru, operatora i wartości. Maksymalna długość to 4096 znaków. Przykłady:
country equals FRA query contains mobile use device notContains tablet |
|
dimensionFilterGroups[].filters[].dimension |
string |
Wymiar, do którego odnosi się ten filtr. Możesz filtrować dane według dowolnego z wymienionych tu wymiarów, nawet jeśli nie grupujesz według niego danych.
Akceptowane wartości:
|
|
dimensionFilterGroups[].filters[].operator |
string |
[Opcjonalnie] Określa, czy podana wartość musi być zgodna z wartością wymiaru w wierszu.
Akceptowane wartości:
|
|
dimensionFilterGroups[].filters[].expression |
string |
Wartość filtra, która ma być dopasowana lub wykluczona w zależności od operatora. | |
aggregationType |
string |
[Opcjonalnie] Sposób agregowania danych. Jeśli dane są agregowane według usługi, wszystkie dane dotyczące tej samej usługi są agregowane. Jeśli dane są agregowane według strony, wszystkie dane są agregowane według kanonicznego URI. Jeśli filtrujesz lub grupujesz według strony, wybierz opcję automatyczną. W przeciwnym razie możesz agregować dane według usługi lub strony w zależności od tego, jak chcesz je obliczać. Aby dowiedzieć się, jak dane są obliczane w przypadku witryny i strony, zapoznaj się z dokumentacją pomocy. Uwaga: jeśli grupujesz lub filtrujesz według strony, nie możesz agregować według usługi. Jeśli podasz inną wartość niż auto, typ agregacji w wyniku będzie zgodny z żądanym typem. Jeśli zażądasz nieprawidłowego typu, otrzymasz błąd. Interfejs API nigdy nie zmieni typu agregacji, jeśli żądany typ jest nieprawidłowy. Akceptowane wartości:
|
|
rowLimit |
integer |
[Opcjonalnie; prawidłowy zakres to 1–25 000; wartość domyślna to 1000] Maksymalna liczba wierszy do zwrócenia. Aby przeglądać wyniki, użyj przesunięcia startRow . |
|
startRow |
integer |
[Opcjonalnie; domyślnie 0] Indeks pierwszego wiersza w odpowiedzi liczony od zera. Musi to być liczba nieujemna. Jeśli wartość startRow przekracza liczbę wyników zapytania, odpowiedź będzie pomyślna i nie będzie zawierać wierszy. |
|
dataState |
string |
[Opcjonalnie] Jeśli wartość to „all” (bez rozróżniania wielkości liter), dane będą zawierać najnowsze dane. Jeśli wartość to „final” (bez rozróżniania wielkości liter) lub jeśli ten parametr zostanie pominięty, zwrócone dane będą zawierać tylko dane ostateczne. Jeśli wartość to „hourly_all” (wielkość liter nie jest rozróżniana), dane będą zawierać zestawienie godzinowe. Wskazuje ona, że dane godzinowe obejmują dane częściowe i należy jej używać podczas grupowania według wymiaru interfejsu API HOUR. |
Odpowiedź
Wyniki są grupowane według wymiarów określonych w żądaniu. Wszystkie wartości z tym samym zestawem wartości wymiarów zostaną zgrupowane w jednym wierszu. Jeśli na przykład pogrupujesz wyniki według wymiaru „Kraj”, wszystkie wyniki dla „usa” zostaną zgrupowane razem, wszystkie wyniki dla „mdv” zostaną zgrupowane razem itd. Jeśli zgrupujesz dane według kraju i urządzenia, wszystkie wyniki dla „usa, tablet” zostaną zgrupowane, wszystkie wyniki dla „usa, telefon” zostaną zgrupowane itd. Więcej informacji o tym, jak obliczane są kliknięcia, wyświetlenia itp. oraz co oznaczają, znajdziesz w dokumentacji raportu Analityka wyszukiwania.
Wyniki są sortowane według liczby kliknięć w kolejności malejącej, chyba że grupujesz je według daty. W takim przypadku wyniki są sortowane według daty w kolejności rosnącej (od najstarszych do najnowszych). Jeśli 2 wiersze są sobie równorzędne, kolejność sortowania jest dowolna.
Maksymalną liczbę wartości, które można zwrócić, znajdziesz we właściwości rowLimit w żądaniu.
{ "rows": [ { "keys": [ string ], "clicks": double, "impressions": double, "ctr": double, "position": double } ], "responseAggregationType": string }
Nazwa usługi | Wartość | Opis | Uwagi |
---|---|---|---|
rows[] |
list |
Lista wierszy pogrupowanych według wartości kluczy w kolejności podanej w zapytaniu. | |
rows[].keys[] |
list |
Lista wartości wymiarów w tym wierszu, zgrupowanych według wymiarów w żądaniu, w kolejności określonej w żądaniu. | |
rows[].clicks |
double |
Liczba kliknięć w wierszu. | |
rows[].impressions |
double |
Liczba wyświetleń w wierszu. | |
rows[].ctr |
double |
Współczynnik klikalności (CTR) w wierszu. Wartości mieszczą się w zakresie od 0 do 1, 0 włącznie. | |
rows[].position |
double |
Średnia pozycja w wynikach wyszukiwania. | |
responseAggregationType |
string |
Sposób agregacji wyników. Więcej informacji o tym, jak dane są obliczane w przypadku witryny i strony, znajdziesz w dokumentacji pomocy.
Akceptowane wartości:
|
|
metadata |
object |
Obiekt, który może być zwracany z wynikami zapytania i zawierać kontekst dotyczący stanu danych. Gdy poprosisz o najnowsze dane (używając Wszystkie daty i godziny podane w tym obiekcie są w strefie czasowej Konkretne pole zwrócone w tym obiekcie zależy od sposobu grupowania danych w żądaniu:
|
Wypróbuj
Użyj narzędzia APIs Explorer poniżej, aby wywołać tę metodę na danych na żywo i zobaczyć odpowiedź.