Google Search Console data integration. Requires a Google Search Console account connected to the site via the admin dashboard.
All GSC endpoints accept period and startDate/endDate parameters.
6 endpoints
GET /integrations/google/stats
Get GSC overview
Returns aggregate GSC metrics: total clicks, impressions, average CTR, and average position.
Responses
Status | Description |
|---|---|
| Successful response |
| Unauthorized — invalid or missing API token |
| Forbidden — insufficient permissions |
Examples
curl "https://api.lynkow.com/v1/integrations/google/stats?period=30d" \
-H "Authorization: Bearer $API_TOKEN"Response Example
{
"data": {
"clicks": 4250,
"impressions": 85000,
"ctr": 0.05,
"position": 12.3,
"comparison": {
"clicks": 3800,
"impressions": 78000,
"ctr": 0.049,
"position": 13.1
}
}
}GET /integrations/google/growing-queries
Get growing search queries
Returns search queries with increasing click counts compared to the previous period.
Responses
Status | Description |
|---|---|
| Successful response |
| Unauthorized — invalid or missing API token |
| Forbidden — insufficient permissions |
Examples
curl "https://api.lynkow.com/v1/integrations/google/growing-queries?period=30d" \
-H "Authorization: Bearer $API_TOKEN"Response Example
{
"data": [
{
"query": "headless cms",
"clicks": 320,
"impressions": 5400,
"ctr": 0.059,
"position": 8.2,
"clicksChange": 45,
"clicksChangePercent": 16.4
},
{
"query": "lynkow api",
"clicks": 180,
"impressions": 2100,
"ctr": 0.086,
"position": 4.5,
"clicksChange": 30,
"clicksChangePercent": 20
}
]
}GET /integrations/google/lost-queries
Get declining search queries
Returns search queries with decreasing click counts compared to the previous period.
Responses
Status | Description |
|---|---|
| Successful response |
| Unauthorized — invalid or missing API token |
| Forbidden — insufficient permissions |
Response Example
{
"data": [
{
"query": "free cms",
"clicks": 50,
"impressions": 3200,
"ctr": 0.016,
"position": 22.5,
"clicksChange": -35,
"clicksChangePercent": -41.2
}
]
}GET /integrations/google/growing-pages
Get growing pages
Returns pages with increasing click counts.
Responses
Status | Description |
|---|---|
| Successful response |
| Unauthorized — invalid or missing API token |
| Forbidden — insufficient permissions |
Response Example
{
"data": [
{
"page": "https://www.example.com/blog/getting-started",
"clicks": 450,
"impressions": 8200,
"ctr": 0.055,
"position": 6.3,
"clicksChange": 80,
"clicksChangePercent": 21.6
}
]
}GET /integrations/google/declining-pages
Get declining pages
Returns pages with decreasing click counts.
Responses
Status | Description |
|---|---|
| Successful response |
| Unauthorized — invalid or missing API token |
| Forbidden — insufficient permissions |
Response Example
{
"data": [
{
"page": "https://www.example.com/blog/old-tutorial",
"clicks": 30,
"impressions": 1500,
"ctr": 0.02,
"position": 28.1,
"clicksChange": -25,
"clicksChangePercent": -45.5
}
]
}GET /integrations/google/links
Get link data
Returns external and internal link analysis from Google Search Console.
Responses
Status | Description |
|---|---|
| Successful response |
| Unauthorized — invalid or missing API token |
| Forbidden — insufficient permissions |
Examples
curl "https://api.lynkow.com/v1/integrations/google/links?period=30d" \
-H "Authorization: Bearer $API_TOKEN"Response Example
{
"data": {
"externalLinks": [
{
"targetUrl": "https://www.example.com/blog/getting-started",
"count": 42
},
{
"targetUrl": "https://www.example.com/",
"count": 28
}
],
"internalLinks": [
{
"targetUrl": "https://www.example.com/blog",
"count": 156
},
{
"targetUrl": "https://www.example.com/about",
"count": 89
}
]
}
}