Reading from Google Search Console entities
Prerequisite
A Google Search Console object you would like to read from. You will need the object name.
Supported entities for source:
| Entity | Can be filtered | Supports limit | Supports Order by | Supports Select * | Supports partitioning |
|---|---|---|---|---|---|
| Search Analytics | Yes | Yes | No | Yes | No |
| Sites | No | No | No | Yes | No |
| Sitemaps | No | No | No | Yes | No |
Example:
googleSearchConsole_read = glueContext.create_dynamic_frame.from_options( connection_type="googlesearchconsole", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "entityName", "API_VERSION": "v3" }
Google Search Console entity and field details:
Google Search Console provides endpoints to fetch metadata dynamically for supported entities. Accordingly, operator support is captured at the datatype level.
| Entity | Field | Data type | Supported operators | Note |
|---|---|---|---|---|
| Search Analytics | keys | List | N/A | |
| clicks | Double | N/A | ||
| impressions | Double | N/A | ||
| ctr | BigDecimal | N/A | For BigDecimal datatype, the value '0' is formatted as '0E-18' | |
| position | Double | N/A | ||
| start_end_date | Date | BETWEEN | Default value for start_end_date is between <30 days ago from the current date> AND <yesterday: that is, 1 day ago from the current date>
Note: expects you to pass a UTC date value. Example: start_end_date between '2022-01-01' AND '2024-09-09' |
|
| country | String | EQUAL_TO, NOT_EQUAL_TO, CONTAINS | Valid values are "IND", "CAN", etc. | |
| type | String | EQUAL_TO, NOT_EQUAL_TO | Valid values are "discover", "googleNews", "news", "image", "video", "web" | |
| searchAppearance | String | EQUAL_TO, NOT_EQUAL_TO, CONTAINS | See Search Appearance |
|
| device | String | EQUAL_TO, NOT_EQUAL_TO, CONTAINS | Valid values are "DESKTOP", "MOBILE", "TABLET" | |
| dimensions | String | EQUAL_TO | Valid values are "country", "device" | |
| page | String | EQUAL_TO, NOT_EQUAL_TO, CONTAINS | ||
| query | String | EQUAL_TO, NOT_EQUAL_TO, CONTAINS | ||
| dataState | String | EQUAL_TO | Valid values are "all" and "final" | |
| Sites | siteUrl | String | N/A | |
| permissionLevel | String | N/A | ||
| Sitemaps | path | String | N/A | |
| type | String | N/A | ||
| lastSubmitted | DateTime | N/A | ||
| isPending | Boolean | N/A | ||
| isSitemapsIndex | Boolean | N/A | ||
| lastDownloaded | DateTime | N/A | ||
| warnings | Long | N/A | ||
| errors | Long | N/A | ||
| contents | List | N/A |
Note
For an updated list of valid values for filters, see the Google Search Console
The field start_end_date is a combination of start_date and end_date.
Partitioning queries
Filter-based partitioning and record-based partitioning are not supported.