CoreDash API: Kysy todellisten käyttäjien Core Web Vitals -tietoja

Kysy todellisten käyttäjien Core Web Vitals -tietojasi ohjelmallisesti. Käytä sitä skripteistä, CI-liukuhihnoista tai anna tekoälyagenttisi diagnosoida suorituskykyongelmia automaattisesti.

Arjen Karel Core Web Vitals Consultant
Arjen Karel - linkedin
Last update: 2026-03-23

Trusted by market leaders · Client results

whowhatwearsaturncompareebaynestlenina carekpnadevintaloopearplugsworkivahappyhorizonaleteiamy work featured on web.devperionfotocasaharvardsnvvpndpg mediamonarcherasmusmcmarktplaats

Suorituskykytietosi, missä tahansa niitä tarvitsetkin

CoreDash kerää Core Web Vitals -tietoja todellisilta käyttäjiltä, jotka vierailevat sivustollasi. API antaa sinulle pääsyn samoihin tietoihin mistä tahansa työkalusta, skriptistä tai tekoälyagentista. Kolme työkalua, JSON sisään, JSON ulos.

Mielenkiintoisin käyttötapaus: tekoälysi yhdistäminen. CoreDash API käyttää samaa protokollaa kuin Model Context Protocol (MCP), mikä tarkoittaa, että tekoälytyökalut, kuten Claude, Cursor ja Windsurf, voivat kysyä todellisten käyttäjien tietojasi suoraan. Kysy tekoälyltäsi "miksi LCP on hidas mobiilissa?" ja se hakee todelliset kenttätiedot vastatakseen.

Rakensimme CWV Superpowers -työkalun tämän päälle. Se on tekoälyagentti, joka yhdistää CoreDash -kenttätietosi Chrome DevToolsiin diagnosoidakseen ja korjatakseen Core Web Vitals -ongelmia. API on se, mikä tekee sen mahdolliseksi.

Mutta et tarvitse tekoälyagenttia. curl-komento toimii aivan yhtä hyvin.

Todennus

Jokainen pyyntö tarvitsee API-avaimen Authorization-otsikossa:

Authorization: Bearer cdk_YOUR_API_KEY

Avaimen hankkiminen:

  1. Kirjaudu sisään osoitteessa app.coredash.app
  2. Mene projektiisi, sitten AI Insights, sitten Connect Your AI
  3. Napsauta Create API Key ja kopioi se. Se näytetään vain kerran.

Avaimet alkavat cdk_ ja on rajattu yhteen projektiin. Voit luoda useita avaimia ja peruuttaa ne samalta sivulta.

Pyyntömuoto

API käyttää JSON-RPC 2.0:aa. Jokainen pyyntö on POST osoitteeseen:

https://app.coredash.app/api/mcp

Pyynnön runko näyttää tältä:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_metrics",
    "arguments": { }
  }
}

id-kenttä voi olla mikä tahansa numero tai merkkijono. Se palautetaan takaisin vastauksessa. Työkaluja on kolme: get_metrics, get_timeseries ja get_histogram.

get_metrics: nykyinen suorituskyky

Palauttaa nykyiset Core Web Vitals -arvot hyvillä/paranna/huonoilla arvioilla. Tämä on työkalu, jota käytät "mikä on LCP juuri nyt?" -tyyppisiin kysymyksiin.

Parametrit

ParametriTyyppiOletusKuvaus
metricsstringLCP,INP,CLS,FCP,TTFBPilkuilla erotetut palautettavat mittarit
percentilestringp75p50, p75, p80, p90, tai p95
filtersobject{}Suodata ulottuvuuksien mukaan (katso Ulottuvuudet alla)
groupstringRyhmittele tulokset ulottuvuusavaimen mukaan segmenttien vertailemiseksi
datestring-31dAikaväli: -6h, today, -1d, -7d, -31d
limitnumber100Segmenttien enimmäismäärä ryhmiteltäessä (enintään 500)

Esimerkki: hae kaikki mittarit

curl -X POST https://app.coredash.app/api/mcp \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer cdk_YOUR_API_KEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "get_metrics",
      "arguments": {}
    }
  }'

Raakavastaus on JSON-RPC-kääre:

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [{
      "type": "text",
      "text": "{ ... JSON string ... }"
    }]
  }
}

Varsinainen data on JSON-merkkijono text-kentän sisällä. Jäsennettynä se näyttää tältä:

{
  "period": "last 31 days",
  "percentile": "p75",
  "metrics": {
    "LCP": {
      "value": 2450,
      "unit": "ms",
      "rating": "improve",
      "distribution": { "good": 61.2, "improve": 22.4, "poor": 16.4 }
    },
    "INP": {
      "value": 180,
      "unit": "ms",
      "rating": "good",
      "distribution": { "good": 82.1, "improve": 12.3, "poor": 5.6 }
    },
    "CLS": {
      "value": 0.08,
      "unit": "",
      "rating": "good",
      "distribution": { "good": 74.5, "improve": 18.2, "poor": 7.3 }
    }
  }
}

distribution-objekti kertoo sinulle, mikä prosenttiosuus todellisista sivulatauksista osuu kuhunkin luokitukseen. Tämä on usein hyödyllisempi kuin pelkkä p75-arvo. LCP 2450 ms ja 61 % hyvä tarkoittaa, että useimmilla käyttäjillä on hyvä kokemus, mutta häntä vetää p75:tä alaspäin.

Esimerkki: vertaa mobiili ja työpöytä LCP:tä

Käytä group-parametriä tulosten jakamiseksi minkä tahansa ulottuvuuden mukaan. Näin saat selville, onko LCP-ongelmasi mobiiliongelma:

curl -X POST https://app.coredash.app/api/mcp \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer cdk_YOUR_API_KEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": 2,
    "method": "tools/call",
    "params": {
      "name": "get_metrics",
      "arguments": {
        "metrics": "LCP",
        "group": "d",
        "date": "-7d"
      }
    }
  }'

Jäsennetty vastaus:

{
  "period": "last 7 days",
  "percentile": "p75",
  "groupedBy": "d",
  "groupName": "Device Type",
  "segments": [
    {
      "segment": "mobile",
      "value": "mobile",
      "metrics": {
        "LCP": {
          "value": 3200, "unit": "ms", "rating": "improve",
          "distribution": { "good": 52.3, "improve": 28.1, "poor": 19.6 }
        }
      }
    },
    {
      "segment": "desktop",
      "value": "desktop",
      "metrics": {
        "LCP": {
          "value": 1800, "unit": "ms", "rating": "good",
          "distribution": { "good": 78.5, "improve": 15.2, "poor": 6.3 }
        }
      }
    }
  ]
}

Mobiili 3200 ms kohdalla, työpöytä 1800 ms kohdalla. Yhdistelmä näyttäisi 2500 ms ja luulisit "ei hienoa, mutta ei kamalaakaan". Ryhmitelty näkymä näyttää todellisen tarinan: työpöytä on kunnossa, mobiili vaatii työtä.

Esimerkki: suodata tietylle sivulle mobiilissa

Yhdistä filters rajataksesi täsmälleen sinua kiinnostavaan liikenteeseen:

curl -X POST https://app.coredash.app/api/mcp \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer cdk_YOUR_API_KEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": 3,
    "method": "tools/call",
    "params": {
      "name": "get_metrics",
      "arguments": {
        "metrics": "LCP,CLS",
        "filters": { "ff": "/checkout", "d": "mobile" },
        "date": "-7d"
      }
    }
  }'

get_timeseries: suorituskyky ajan myötä

Palauttaa mittariarvot ajallisesti ryhmiteltyinä automaattisella trendien tunnistuksella. Tämä on työkalu, jota käytät kysymyksiin "onko LCP:ni huonontunut?" ja "korjasiko tuo julkaisu regression?"

Parametrit

ParametriTyyppiOletusKuvaus
metricsstringLCP,INP,CLS,FCP,TTFBPilkuilla erotetut mittarit
percentilestringp75Mikä prosenttipiste (percentile)
filtersobject{}Suodata ulottuvuuksien mukaan
datestring-31dAikaväli
granularitystringdayLokerokoko: hour, 6hours, day, week

Esimerkki: LCP-trendi viimeisten 7 päivän aikana

curl -X POST https://app.coredash.app/api/mcp \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer cdk_YOUR_API_KEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": 4,
    "method": "tools/call",
    "params": {
      "name": "get_timeseries",
      "arguments": {
        "metrics": "LCP",
        "date": "-7d",
        "granularity": "day"
      }
    }
  }'

Jäsennetty vastaus:

{
  "period": "last 7 days",
  "percentile": "p75",
  "granularity": "day",
  "dataPoints": 7,
  "timeseries": [
    { "date": "2026-03-10T00:00:00.000Z", "LCP": { "value": 2600, "unit": "ms", "rating": "improve" } },
    { "date": "2026-03-11T00:00:00.000Z", "LCP": { "value": 2450, "unit": "ms", "rating": "improve" } },
    { "date": "2026-03-12T00:00:00.000Z", "LCP": { "value": 2300, "unit": "ms", "rating": "good" } }
  ],
  "summary": {
    "LCP": {
      "recent": 2350,
      "previous": 2680,
      "change": -12.3,
      "trend": "improving",
      "unit": "ms"
    }
  }
}

summary vertailee ajanjakson jälkimmäistä puoliskoa ensimmäiseen puoliskoon. Trendiarvot ovat improving (yli 5 % parempi), stable (5 % sisällä), tai regressing (yli 5 % huonompi). Tämä tekee aikasarjapäätepisteestä hyödyllisen automatisoituun seurantaan: sinun ei tarvitse jäsentää datapisteitä itse tietääksesi, ovatko asiat menossa huonompaan suuntaan.

get_histogram: jakauman muoto

Palauttaa yhden mittarin jakauman noin 40 lokerona, joissa on lukumäärät aluetta kohden. Tämä on työkalu, jota käytät, kun p75 näyttää hyvältä, mutta epäilet pitkää häntää, tai kun haluat nähdä suorituskykytietojesi koko muodon.

Parametrit

ParametriTyyppiOletusKuvaus
metricstringrequiredYksittäinen mittari: LCP, INP, CLS, FCP, tai TTFB
filtersobject{}Suodata ulottuvuuksien mukaan
datestring-31dAikaväli

Huomautus: toisin kuin get_metrics, tämä ottaa vastaan yksittäisen metric-parametrin (ei metrics). Yksi mittari per pyyntö.

Esimerkki: LCP-jakauma mobiilissa

curl -X POST https://app.coredash.app/api/mcp \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer cdk_YOUR_API_KEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": 5,
    "method": "tools/call",
    "params": {
      "name": "get_histogram",
      "arguments": {
        "metric": "LCP",
        "filters": { "d": "mobile" },
        "date": "-7d"
      }
    }
  }'

Jäsennetty vastaus:

{
  "period": "last 7 days",
  "metric": "LCP",
  "unit": "ms",
  "filters": { "d": "mobile" },
  "buckets": [
    { "from": 0, "to": 250, "count": 1250, "rating": "good" },
    { "from": 250, "to": 500, "count": 3400, "rating": "good" },
    { "from": 500, "to": 750, "count": 2800, "rating": "good" },
    { "from": 2500, "to": 2750, "count": 890, "rating": "improve" },
    { "from": 4000, "to": 4250, "count": 120, "rating": "poor" },
    { "from": 9750, "to": null, "count": 15, "rating": "poor" }
  ],
  "total": 45000
}

Jokaisella lokerolla on from/to-rajat, arvioitujen sivulatausten count kyseisellä alueella ja rating, joka perustuu siihen, missä lokero sijaitsee suhteessa Core Web Vitals -kynnyksiin. Viimeisellä lokerolla on to: null, koska se on avoin häntä.

Lokerojen leveydet ovat kiinteitä mittaria kohden: LCP käyttää 250 ms, INP käyttää 25 ms, CLS käyttää 0.025, FCP käyttää 200 ms, TTFB käyttää 125 ms.

Tämä on hyödyllistä tietojesi muodon ymmärtämiseksi. p75-arvo 2400 ms voisi tarkoittaa, että useimmat käyttäjät ovat noin 2400 ms tienoilla, tai se voisi tarkoittaa, että 60 % on alle 1000 ms ja osa hitaasta mobiililiikenteestä vetää häntää. Histogrammi kertoo sinulle, kumpi on kyseessä.

Ulottuvuudet

Käytä näitä avaimia filters-parametrissa tai group-arvona. Suodatus rajaa datan tiettyyn segmenttiin. Ryhmittely jakaa tulokset, jotta voit vertailla segmenttejä rinnakkain.

Yleiset

AvainNimiEsimerkkiarvot
dLaitetyyppimobile, desktop
ccMaaUS, NL, DE (ISO 3166-1 alpha-2)
ffPolun nimi/products, /checkout (null = /)
uKoko URLTukee * jokereita, [neq] etuliitettä negaatiolle
qsKyselymerkkijonoOsa ?key=value
lbSivun tunnisteMukautettu tunniste RUM-koodinpätkästä
browserSelainChrome, Safari, Firefox
osKäyttöjärjestelmäAndroid, iOS, Windows
ntNavigointityyppinavigate, back_forward, reload
fvVierailijatyyppi0 = palaava, 1 = uusi vierailija
liSisäänkirjautumisen tila0 = kirjautunut ulos, 1 = kirjautunut sisään, 2 = ylläpitäjä
noNavigoinnin alkuperä1 = sama alkuperä, 2 = ristiin alkuperä
abA/B-testiMukautettu testitunniste

Laite ja verkko

AvainNimiYksikkö
mLaitteen muistiGB
dlVerkon nopeusMbps
ccsClient Capability Score1=Excellent, 2=Good, 3=Moderate, 4=Limited, 5=Constrained
redirUudelleenohjausten määrämäärä

Mittarien attribuutio

Nämä ulottuvuudet kertovat sinulle, mikä aiheutti mittariarvon. Ryhmittele lcpel-avaimella nähdäksesi, mitkä elementit muodostuvat LCP:ksi sivuillasi. Ryhmittele inpel-avaimella löytääksesi vuorovaikutukset, jotka tuottavat huonoimman INP:n.

AvainNimiMittarille
lcpelLCP-elementtiLCP
lcpetLCP-elementin tyyppiLCP: text, image, background-image, video
lcpprioLCP-prioriteettiLCP: 1=Preloaded, 2=High fetchpriority, 3=Not preloaded, 4=Lazy loaded
lcpurlLCP-kuvan URLLCP
inpelINP-elementtiINP
inpitINP-syötetyyppiINP
inplsINP-lataustilaINP
lurlLOAF-skriptin URLINP
clselCLS-elementtiCLS

Suodatinesimerkkejä

{ "d": "mobile" }
{ "ff": "/checkout", "d": "desktop" }
{ "cc": "US", "browser": "Chrome" }
{ "u": "[neq]*/admin/*" }

Mittarien viite

MittariNimiYksikköHyväTarvitsee parannustaHuono
LCPLargest Contentful Paintms< 25002500 - 4000> 4000
INPInteraction to Next Paintms< 200200 - 500> 500
CLSCumulative Layout Shift< 0.10.1 - 0.25> 0.25
FCPFirst Contentful Paintms< 18001800 - 3000> 3000
TTFBTime to First Bytems< 800800 - 1800> 1800

Oletusprosenttipiste on p75. Tätä Google käyttää Core Web Vitals -sijoituksissa. Jos 75 % sivulatauksistasi on alle kynnyksen, läpäiset.

API:n käyttö MCP-palvelimena

API-päätepiste on täysin yhteensopiva MCP-palvelin. Jos tekoälytyökalusi tukee MCP:tä (Claude Code, Cursor, Windsurf ja muut), voit yhdistää sen suoraan. Tekoälyllä on silloin pääsy työkaluihin get_metrics, get_timeseries ja get_histogram, ja se voi kysyä kenttätietojasi osana mitä tahansa keskustelua.

Näin CWV Superpowers toimii: se yhdistää CoreDashiin MCP:n kautta, hakee todellisten käyttäjien tietosi, avaa sivustosi Chromessa ja jäljittää tarkan syyn hitaalle mittarille. API tarjoaa "mitä tuotannossa tapahtuu" -osan, Chrome tarjoaa "miksi se tapahtuu" -osan.

Voit myös yhdistää MCP-palvelimen omaan tekoälyasetukseesi. Osoita MCP-asiakasohjelmasi osoitteeseen https://app.coredash.app/api/mcp API-avaimellasi, ja tekoälysi voi vastata kysymyksiin kuten "millä sivuilla on huonoin INP mobiilissa?" käyttämällä todellisia kenttätietoja arvaamisen sijaan.

Pyyntöjen rajoitukset

Rajoitukset ovat projektikohtaisia ja päiväkohtaisia, ja ne nollautuvat keskiyöllä UTC-aikaa.

TilausPäivittäisiä pyyntöjä
Trial150
Starter500
Standard500
Pro500+
Enterprise500+

150 pyyntöä Trial-tilauksessa riittää mainiosti manuaaliseen tutkimiseen ja tekoälyavusteiseen virheenkorjaukseen. Jos suoritat automatisoitua seurantaa CI:ssä, maksulliset tilaukset antavat 500 päivässä.

Virheiden käsittely

Virheet palautetaan JSON-RPC-virheobjekteina:

{
  "jsonrpc": "2.0",
  "id": 1,
  "error": { "code": -32001, "message": "Invalid or revoked API key." }
}
KoodiHTTP-tilaMerkitys
-32001401Virheellinen tai puuttuva API-avain
-32002429Pyyntörajoitus ylitetty
-32600400Virheellinen pyyntö
-32601200Tuntematon metodi
-32602200Tuntematon työkalu tai puuttuvia parametreja
-32603500Sisäinen palvelinvirhe

Jos saat virheen -32001, tarkista, että avaimesi alkaa cdk_ ja että et ole peruuttanut sitä. Jos saat virheen -32002, olet saavuttanut päivittäisen rajan. Odota keskiyön UTC-nollausta tai päivitä tilauksesi.

CoreDash API: Kysy todellisten käyttäjien Core Web Vitals -tietojaCore Web Vitals CoreDash API: Kysy todellisten käyttäjien Core Web Vitals -tietoja