The idea of 'monitoring' a callsign is to keep track of it, potentially to trigger alerts or to give a user or application a chance to do something helpful when activity occurs. Examples might be expedition callsigns arriving on the bands, or perhaps it's about LoTW uploads occurring.


The monitor endpoint gives Club Log's most up-to-date (to within 10 minutes) information about any given callsign. Although it does best when the callsign is one that is active in Club Log, it does also look for traces of QSOs and spots for non-participating callsigns.


The endpoint is: https://clublog.org/watch.php.


The required GET variables are:



The monitor endpoint looks for recent activity and gathers a report in JSON form for you. Note that the date windows are fixed to 24 hours and 7 days, as this allows the results to be reusable in a cached form.


Beware! If you make too many requests to this endpoint, your requests will be blocked and the originating IP address will also be firewalled if the warning messages given are not heeded. Look for HTTP error code 403 and cease immediately if you receive this result, as further requests will lead to firewall responses.


Fields output:


24h_qsos_per_band_mode - A nested dictionary of bands and modes, giving the count of QSOs in the last 24 hours

24h_spots_per_band - A nested dictionary of bands, giving the count of spots in the last 24 hours

24h_skimmer_per_band - A nested dictionary of bands, giving the count of skimmer spots in the last 24 hours

7days_qso_totals - A nested dictionary of the last 7 days, giving the count of QSOs per band for each date

clublog_user - boolean true or false, the callsign is registered in Club Log

is_expedition - boolean true or false, the callsign is an expedition in Club Log

has_oqrs - boolean true or false, the callsign is set up to use Club Log OQRS

livestream - boolean true or false, the callsign is set up to use Club Log livestreams

qra - the QRA locator of the callsign

clublog_info: - an array of extra information that is provided if and only if the callsign is in Club Log and has QSOs

total_qsos - the total QSOs stored under this callsign in Club Log

first_qso - the date of the first QSO in the log

last_qso - the date of the last QSO in the log

log_duration_days - the duration in days of the log

last_clublog_upload - the date of the last upload to Club Log (note, this will not report on realtime uploads)

last_lotw_confirmation - the last known LoTW upload date (may be null)

24h_oqrs_requests_made - the number of OQRS requests made in the last 24 hours (not in total)

updated_at - The date and time in UTC the data was prepared


Example request:


https://clublog.org/watch.php?call=vk9dx&api=[API-KEY-HERE]


Example output:


{
   "24h_qsos_per_band_mode":{
      "6":{
         "Data":5
      },
      "40":{
         "Data":5
      },
      "80":{
         "Data":51
      },
      "160":{
         "Data":19
      }
   },
   "24h_spots_per_band":{
      "6":1,
      "80":2,
      "160":4
   },
   "24h_skimmer_per_band":{
      "20":1
   },
   "7days_qso_totals":{
      "2025-01-07":15,
      "2025-01-08":314,
      "2025-01-09":54,
      "2025-01-10":4,
      "2025-01-11":51,
      "2025-01-12":196,
      "2025-01-13":90,
      "2025-01-14":29
   },
   "clublog_user":true,
   "is_expedition":false,
   "has_oqrs":false,
   "livestream":true,
   "qra":"RG30XX",
   "clublog_info":{
      "total_qsos":140977,
      "first_qso":"2021-10-23 21:28:45",
      "last_qso":"2025-01-14 11:52:00",
      "log_duration_days":1178,
      "last_clublog_upload":"2025-01-14 12:03:24",
      "last_lotw_confirmation":"2025-01-03 00:45:36",
      "24h_oqrs_requests_made":0
   },
   "updated_at":"2025-01-14 15:18:44"
}