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:
- callsign. This is the callsign you are interested in. Club Log will only process valid amateur radio callsigns.
- api. Your API key (see https://clublog.freshdesk.com/a/solutions/articles/54910)
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" }