Logga in

Kom igång

Med API:et kan du göra det mesta som finns under Checkar i appen: skapa, ändra, pausa och ta bort checkar och läsa kontroller, incidenter och statistik.

1. Skapa en API-nyckel

  1. Logga in på my.upfinity.app.
  2. Gå till Inställningar › API Keys och skapa en nyckel.
  3. Välj de scopes nyckeln behöver, se Scopes.
  4. Kopiera nyckeln. Den visas bara en gång.

Nyckeln ger tillgång till organisationens checkar. Lägg den i en miljövariabel, aldrig i kod som körs i webbläsaren eller i ett git-repo.

2. Gör ditt första anrop

export UPFINITY_API_KEY=upf_live_...

curl "https://api.upfinity.app/api/v1/sites" \
  -H "Authorization: Bearer $UPFINITY_API_KEY"

Svaret innehåller organisationens checkar. Listan ligger i sites.sites:

const res = await fetch('https://api.upfinity.app/api/v1/sites', {
  headers: { Authorization: `Bearer ${process.env.UPFINITY_API_KEY}` },
});
const { sites } = await res.json();
for (const site of sites.sites) {
  console.log(site.name, site.lastCheck?.isUp ? 'uppe' : 'nere', site.uptime24h);
}

3. Skapa en check

curl -X POST "https://api.upfinity.app/api/v1/sites" \
  -H "Authorization: Bearer $UPFINITY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"Kundportal","url":"https://portal.example.com/health","checkInterval":60}'

Checken kontrolleras direkt och larmar via organisationens standardkanaler. Alla fält finns under Fält för checkar.

Fel

Fel returneras som JSON med en HTTP-statuskod. Fältet error finns alltid.

KodNär
400Fel i det som skickats. details visar vad som är fel per fält.
401Nyckel saknas, är fel, avstängd eller har gått ut.
403Nyckeln saknar scope för endpointen, planen saknar funktionen eller planens antal checkar är uppnått.
402Organisationens provperiod har gått ut eller abonnemanget är inte aktivt.
404Checken finns inte eller tillhör en annan organisation.
429För många anrop. Vänta det antal sekunder som Retry-After anger.
500Fel hos Upfinity. Försök igen senare.
{
  "error": "Validation failed",
  "details": {
    "url": [
      "URL is required for HTTP checks"
    ]
  }
}