Super Monitoring API

« powrót do listy funkcji

Dokumentacja Super Monitoring API 1.1

Super Monitoring API umożliwia pobieranie historycznych danych monitoringowych z serwisu www.supermonitoring.pl.


1. Uwierzytelnienie

Dostęp do Super Monitoring API udzielany jest w oparciu o Klucz API.
Klucz API generowany jest tylko dla konkretnego adresu IP, z którego następować będą połączenia do API.
W celu uzyskania Klucza API prosimy o kontakt obsługą klienta Super Monitoring.

1.1. Kody i opisy statusów odpowiedzi

Super Monitoring API zwraca kody statusów razem z krótkimi opisami słownymi.

ResponseCodeResponseTextObjaśnienie
01OKUdane uwierzytelnienie.
10AUTH FAILEDUwierzytelnienie nieudane. Podany apikey jest nieprawidłowy lub zapytanie przyszło z innego adresu IP niż ten, dla którego apikey został wygenerowany.
11URL NOT FOUNDNa koncie użytkownika nie odnaleziono testu z podanym adresem URL.

Podpowiedź: Upewnij się, że adres URL jest enkodowany oraz nie zawiera http://" ani "https://".
12INCORRECT DATE RANGEData i czas w parapetrze "od" nie jest wcześniejsza od daty i czasu w parametrze "do" - lub jeden z tych parmetrów nie jest prawidłowo sformatowany.
13SERVICE BLOCKEDDany test lub konto są nieaktywne.
14RANGE LIMIT EXCEEDEDPodany okres jest dłuższy niż 1 rok.

1.2. Przykład odpowiedzi

Przykład: Nieudane uwierzytelnienie.
{
  "ResponseCode":10,
  "ResponseText":"AUTH FAILED",
  "Host":"78.10.233.131"
}

2. Pobieranie listy testów

2.1. Zapytanie HTTP

MetodaAdres URL
GEThttps://www.supermonitoring.pl/API/1.1/checks/

2.2. Parametry zapytania

ParametrWymaganyDomyślnieOpis
apikeytak-Klucz API.

Przykład: " 4grf647e4tyrfg43663f"

2.3. Przykład zapytania

https://www.supermonitoring.pl/API/1.1/checks/?apikey=4grf647e4tyrfg43663f

2.4. Schemat odpowiedzi

Super Monitoring API zwraca odpowiedzi w formacie JSON.

Nazwa polaOpis
ResponseCodeKod statusu odpowiedzi - patrz niżej.
ResponseTextOpis słowny statusu odpowiedzi - patrz niżej.
HostAdres IP, z którego przyszło zapytanie (informacyjnie).
XNumer kolejny testu.
  idUnikalny identyfikator testu.
  protoProtokół / numer portu monitorowanego hosta.
Możliwe wartości:
- "http"
- "https"
- "ftp"
- "pop3"
- "smtp"
- "imap"
- "telnet"
- "ssh"
- "dns"
- "connect"
- "sip"
- "ping"
- "MySQL"
- "MSSQL"
- "PostgreSQL"
  urlAdres URL monitorowanego obiektu, bez przedrostka z protokołem.
  typeRodzaj testu.
Możliwe wartości:
- "availability" - dostępność
- "content" - treść
- "form" - formularz
- "loading_time" - czas wczytywania
- "file_integrity" - spójność pliku
- "transaction" - proces
- "daily_health" - kondycja dnia
- "core_web_vitals" - Core Web Vitals
- "changes" - zmiany
  activeStatus testu.
Możliwe wartości:
- "0" - nieaktywny
- "1" - aktywny.

2.5. Przykład odpowiedzi

Przykład: Lista testów.
{
   "ResponseCode":"01",
   "ResponseText":"OK",
   "Host":"78.10.233.131",
   "1":{
      "id":"2442",
      "proto":"http",
      "url":"www.mojastrona.pl",
      "type":"availability",
      "active":1
   },
   "2":{
      "id":"2453",
      "proto":"https",
      "url":"www.innastrona.pl/oferta",
      "type":"content",
      "active":1
   },
   "3":{
      "id":"4099",
      "proto":"https",
      "url":"www.jeszcze-inna-strona.com",
      "type":"loading_time",
      "active":0
   }
}

3. Pobieranie historii zdarzeń wybranego testu

3.1. Zapytanie HTTP

MetodaAdres URL
GEThttps://www.supermonitoring.pl/API/1.1/

3.2. Parametry zapytania

ParametrWymaganyDomyślnieOpis
apikeytak-Klucz API.

Przykład: " 4grf647e4tyrfg43663f"
urltak-Enkodowany adres URL testu, bez "http://" or "https://".

Przykład: "www.mojastrona.pl%2Ffolder"
fromtak-Data początkowa okresu.
Format: YYYY-MM-DD-HH-MM

Przykład: "2016-01-01-00-00"
totak-Data końcowa okresu.
Format: YYYY-MM-DD-HH-MM

Okres jest ograniczony do maksymalnie 1 roku.

Przykład: "2016-01-26-23-59"
typeniesPrzy wartości "s" (lub braku tego parametru) wynik będzie zawierał tylko podsumowanie.
Dla wartości "d" wynik będzie zawierał podsumowanie oraz szczegółową listę awarii.

Przykład: "s"

3.3. Przykłady zapytań

Przykład 1
https://www.supermonitoring.pl/API/1.1/?apikey=4grf647e4tyrfg43663f&url=www.mojastrona.pl%2Ffolder&from=2016-01-01-00-00&to=2016-01-26-23-59&type=s

Przykład 2
https://www.supermonitoring.pl/API/1.1/?apikey=4grf647e4tyrfg43663f&url=www.mojastrona.pl%2Ffolder&from=2016-01-01-00-00&to=2016-01-26-23-59&type=d

3.4. Schemat odpowiedzi

Super Monitoring API zwraca odpowiedzi w formacie JSON.

Nazwa polaOpis
ResponseCodeKod statusu odpowiedzi - patrz niżej.
ResponseTextOpis słowny statusu odpowiedzi - patrz niżej.
HostAdres IP, z którego przyszło zapytanie (informacyjnie).
OutagesCałkowita liczba awarii w danym okresie.
DowntimeŁączny czas niedostępności (w minutach) w danym okresie.
EventsSzczegółowa lista awarii z danego okresu.
  eventIDUnikalny identyfikator awarii.
  eventStartData i czas wykrycia awarii. Format: YYYY-MM-DD HH:MM
  eventDurationCzas trwania awarii (w minutach).
  eventErrorRodzaj awarii.
Możliwe rodzaje awarii:
- kody błędów http, np. "HTTP 503"
- "CONNECTION TIMEOUT"
- "PING TIMEOUT"
- "PAGE LOADING TIMEOUT"
- "NOPHRASE"
- "NOPHRASE FORM"
- "CHECKSUM"
- "PROCESS"
- "DOMAIN EXPIRED"
- "BLACKLISTED (GOOGLE)"
- "BLACKLISTED (RBL)"
- "INVALID SSL CERT."
- "SSL CERT. EXPIRED"
- przekroczone progi Core Web Vitals, np. "Field LCP: 4.03s"
- "ROBOTS BLOCKED"
- "CHANGE DETECTED"
- "CHANGE - ELEMENT NOT FOUND"

3.5. Przykłady odpowiedzi

Przykład 1: Podsumowanie.
{
  "ResponseCode":"01",
  "ResponseText":"OK",
  "Host":"78.10.233.131",
  "Outages":12,
  "Downtime":142
}

Przykład 2: Podsumowanie + szczegółowa lista.
{
  "ResponseCode":"01",
  "ResponseText":"OK",
  "Host":"78.10.233.131",
  "Outages":12,
  "Downtime":142,
  "Events":
    [
      {
        "eventID":"365257",
        "eventStart":"2016-01-04 10:54:47",
        "eventDuration":"8",
        "eventError":"HTTP 503"
      },
      {
        "eventID":"365287",
        "eventStart":"2016-01-04 14:18:48",
        "eventDuration":"1",
        "eventError":"CONNECTION TIMEOUT"
      },
      {
        "eventID":"366191",
        "eventStart":"2016-01-09 08:26:47",
        "eventDuration":"3",
        "eventError":"HTTP 503"
      },
      {
        "eventID":"368393",
        "eventStart":"2016-01-22 12:00:48",
        "eventDuration":"1",
        "eventError":"HTTP 500"
      }
    ]
}