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

200

Successful response

401

Unauthorized — invalid or missing API token

403

Forbidden — insufficient permissions

Examples

Bash
curl "https://api.lynkow.com/v1/integrations/google/stats?period=30d" \
  -H "Authorization: Bearer $API_TOKEN"

Response Example

JSON
{
  "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

200

Successful response

401

Unauthorized — invalid or missing API token

403

Forbidden — insufficient permissions

Examples

Bash
curl "https://api.lynkow.com/v1/integrations/google/growing-queries?period=30d" \
  -H "Authorization: Bearer $API_TOKEN"

Response Example

JSON
{
  "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

200

Successful response

401

Unauthorized — invalid or missing API token

403

Forbidden — insufficient permissions

Response Example

JSON
{
  "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

200

Successful response

401

Unauthorized — invalid or missing API token

403

Forbidden — insufficient permissions

Response Example

JSON
{
  "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

200

Successful response

401

Unauthorized — invalid or missing API token

403

Forbidden — insufficient permissions

Response Example

JSON
{
  "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 link data

Returns external and internal link analysis from Google Search Console.

Responses

Status

Description

200

Successful response

401

Unauthorized — invalid or missing API token

403

Forbidden — insufficient permissions

Examples

Bash
curl "https://api.lynkow.com/v1/integrations/google/links?period=30d" \
  -H "Authorization: Bearer $API_TOKEN"

Response Example

JSON
{
  "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
      }
    ]
  }
}