Vi är glada att tillkännage lanseringen av nya slutpunkter på Kinsta API. Som ett resultat av dessa kan du få tillgång till detaljerade analyser om dina applikationer och dessutom hämta information om dina företagsanvändare på Kinsta.

Sedan lanseringen av vår tjänst för Applikationshosting har vi tillhandahållit analyser på applikationsnivå. De beskriver exempelvis din applikations bandbredd, byggtid, körtid, CPU- och minnesanvändning, genomsnittlig svarstid, HTTP-förfrågningar och långsammaste förfrågningar. Allt via MyKinsta-panelen (Applikationer > appnamn > Analytics).

Få tillgång till analysinformation för varje applikation i MyKinsta-panelen.
Få tillgång till analysinformation för varje applikation i MyKinsta-panelen.

Nu kan dessa mätvärden dessutom nås programmatiskt via Kinsta API.

Nya metriska slutpunkter för dina applikationer

Du kan nu exempelvis komma åt följande analysinformation via Kinsta API:

  • Bandbredd – Total data som har överförts under den valda tidsperioden.
  • Byggtid – Den totala tid som det tog att bygga din applikation.
  • Körtid – Total tid som applikationen körs efter att den har byggts och distribuerats.
  • HTTP-förfrågningar per minut – Totalt antal genomsnittliga förfrågningar per minut.
  • Genomsnittlig svarstid – Den genomsnittliga svarstiden för förfrågningar. (Om svarstidsfrågan innehåller parametern percent med värdena 95 eller 50, kommer svarstiderna P95 latens eller P50 lat ens att returneras).
  • Långsammaste förfrågningar – Här visas exakt vilka svar som är långsammast i din applikation.
  • CPU-användning – Genomsnittet av den totala CPU-användningen för den valda tidsperioden, som en procentandel av instansens CPU-resurser.
  • Minnesanvändning – Ett genomsnitt av den totala minnesanvändningen (RAM) för den valda tidsperioden.

API-dokumentationen

Kinsta API-dokumentationen tillhandahåller nödvändiga sökvägar och frågeparametrar för åtkomst till dessa mätvärden. Om du exempelvis vill hämta dagliga bandbreddsanvändningsdata skickar du en GET-begäran till:

https://api.kinsta.com/v2/applications/{id}/metrics/bandwidth
Kinsta API-dokumentation som visar olika parametrar för att hämta bandbreddsmätningsinformation.
Kinsta API-dokumentation som visar olika parametrar för att hämta bandbreddsmätningsinformation.

Denna begäran kommer exempelvis att kräva följande parametrar:

  • Sökvägsparameter:
    • id – Detta är applikations-ID:t och kommer att läggas till i API-webbadressen.
  • Frågeparametrar:
    • interval_in_seconds – Detta är obligatoriskt och mäts i sekunder. Om du vill att intervallet mellan de returnerade värdena ska vara 24 timmar konverterar du 24 timmar till sekunder, vilket är 86400.
    • timeframe_start och timeframe_end – Dessa parametrar är obligatoriska och ISO 8601 datum- och tidsformat används. Det har ett allmänt format på YYYY-MM-DDThh:mm:ss.sssZ.

Detaljerad uppdelning

Här är en detaljerad uppdelning av ISO 8601 datum- och tidsformat:

  • YYYYY-MM-DD – Representerar datumet:
    • YYYY – Fyrsiffrigt årtal
    • MM – Tvåsiffrig månad (01 till 12)
    • DD – Tvåsiffrig dag i månaden (01 till 31)
  • T – Bokstaven T används som separator för att tydligt skilja mellan datum- och tidsdelarna.
  • hh:mm:ss.sss – Representerar tiden:
    • hh – Tvåsiffrig timme (00 till 23)
    • mm – Tvåsiffrig minut (00 till 59)
    • ss – Tvåsiffrig sekund (00 till 59)
    • .sssss – Millisekunder, som kan vara en till tre siffror, vilket representerar en bråkdel av en sekund
  • Z – Anger att tiden är inställd på UTC (Coordinated Universal Time). Om tiden inte är i UTC kan en tidsförskjutning anges i stället för ”Z”, formaterad som ±hh:mm, där ”hh” representerar timskillnaden och ”mm” representerar minutskillnaden från UTC.

GET-begäran

För att återgå till vårt exempel kan du skicka en GET-begäran för att hämta dagliga data mellan den 20 april 2024 och den 28 april 2024:

curl -i -X GET \
'https://api.kinsta.com/v2/applications/{application_id}/metrics/bandwidth?interval_in_seconds=86400&timeframe_start=2024-04-20T18%3A10%3A45.511Z&timeframe_end=2024-04-28T18%3A10%3A45.511Z' \
  -H 'Authorization: Bearer '

Ersätt {application_id} och <YOUR_TOKEN_HERE> med ditt applikations-ID respektive din API-token. När du därefter skickar denna begäran returneras därefter följande dataformat:

{
  "app": {
    "id": "MY_APP_ID",
    "display_name": "Kinsta-developer-portfolio",
    "metrics": {
      "timeframe": {
        "start": "1713571200000",
        "end": "1714262400000"
      },
      "bandwidth": [
        {
          "time": "1713571200000",
          "value": "18205"
        },
        {
          "time": "1713657600000",
          "value": "834750"
        },
        {
          "time": "1713744000000",
          "value": "146959"
        },
        {
          "time": "1713830400000",
          "value": "142413"
        },
        {
          "time": "1713916800000",
          "value": "165352"
        },
        {
          "time": "1714089600000",
          "value": "109015"
        },
        {
          "time": "1714176000000",
          "value": "628641"
        }
      ]
    }
  }
}

Svaret specificerar tidsramens start och slut baserat på vad som skickades via din begäran. Om du exempelvis lägger in det i new Date() -konstruktören får du datum/tid-objektet. Bandbredden returnerar dessutom en array av objekt som innehåller tiden (tidsstämpel som ges för varje dag – baserat på det inställda intervallet) och värdet i bytes.

När man konverterar var och en av dessa data i enlighet med detta innebär det följande:

Tidsram

  • Start: 2024-04-20 00:00:00
  • Slut: 2024-04-29 00:00:00

Bandbredd (omräknat till MB)

  • Tid: 2024-04-20 00:00:00, Värde: 0,0174 MB
  • Tid: 2024-04-21 00:00:00, Värde: 0,7961 MB
  • Tid: 2024-04-22 00:00:00, Värde: 0,1402 MB
  • Tid: 2024-04-23 00:00:00, Värde: 0,1358 MB
  • Tid: 2024-04-24 00:00:00, Värde: 0,1577 MB
  • Tid: 2024-04-26 00:00:00, Värde: 0,1040 MB
  • Tid: 2024-04-27 00:00:00, Värde: 0,5995 MB
  • Tid: 2024-04-28 00:00:00, Värde: 5,8086 MB

Som ett resultat kan du programmatiskt få information om var och en av dessa analytiska uppgifter till en annan plattform utan att behöva navigera i MyKinsta-panelen för varje applikation.

Du kan exempelvis skapa en Slackbot som använder Slacks Slash-kommando för att komma åt denna information från Slack. Du kan dessutom skapa en påminnelse för att informera dig när den dagliga bandbredd-, CPU- eller minnesanvändningen passerar ett visst tröskelvärde.

Få åtkomst till företagsanvändare med Kinsta API

Som svar på kundförfrågningar har vi lagt till en slutpunkt för att hämta information om Kinsta-kontots företagsanvändare. Detta inkluderar exempelvis deras fullständiga namn, e-postadress och webbadress för gravatar-bild.

Detta stämmer överens med vårt åtagande att prioritera funktioner baserat på användarnas feedback. Om du anser att ett specifikt verktyg eller en slutpunkt bör ingå i Kinsta API, skicka gärna din feedback.

För att komma åt dessa data, skicka en GET-begäran till: https://api.kinsta.com/v2/company/{company_id}/users. Se till att ersätta {company_id} med ditt företags-ID. Detta kommer därefter att returnera ett svar som:

{
  "company": {
    "users": [
      {
        "user": {
          "id": "54fb80af-576c-4fdc-ba4f-b596c83f15a1",
          "email": "[email protected]",
          "image": "https://www.gravatar.com/avatar/205e460b479e2e5b48aec07710c08d50",
          "full_name": "John Doe"
        }
      }
    ]
  }
}

Kom igång med Kinsta API idag

För att använda Kinsta API behöver du ett aktivt Kinsta-konto med minst en WordPress-webbplats, applikation eller databas i MyKinsta. Så här genererar du en API-nyckel:

  1. Gå till din MyKinsta-panel.
  2. Navigera till sidan API-nycklar (Ditt namn > Företagsinställningar > API-nycklar).
  3. Klicka på Skapa API-nyckel.
  4. Välj därefter ett utgångsdatum eller ställ in ett anpassat startdatum och antal timmar för att nyckeln ska löpa ut.
  5. Ge nyckeln ett unikt namn.
  6. Klicka slutligen på Generera.

När API-nyckeln har skapats ska du se till att kopiera den och förvara den på ett säkert ställe, eftersom det är enda gången du kan se den. Vi rekommenderar att du använder en lösenordshanterare som exempelvis 1Password för att dela den på ett säkert sätt.

Det finns mycket som kan göras med Kinsta API. Kolla gärna in vår dokumentation för att förstå vad som är möjligt med API:et, hur du kommer igång och de olika behörighetsnivåerna och gränserna för API:et.

Du kan dessutom kolla in våra tidigare changelogs för Kinsta API: