Operator's Guide

How to register and maintain your APRS service in the registry.

TL;DR

Register your service with a single HTTP POST to /api/v1/registry with your callsign, description, and website URL. The registry will automatically check your service's health hourly.

curl -X POST https://aprs.hemna.com/api/v1/registry \
  -H "Content-Type: application/json" \
  -d '{"callsign": "MYCALL", "description": "My APRS service", "service_website": "http://example.com", "software": "APRSD 3.3.0"}'

Prerequisites

Before registering your service, make sure you have:

  • A valid amateur radio callsign — Your service must operate under a licensed callsign
  • A running APRS service — Your service should be operational and connected to APRS-IS
  • A service website (optional) — A URL where users can learn more about your service

Registration Process

Register your service by sending an HTTP POST request to the registry API. You can do this manually, or configure your APRS software to do it automatically.

Required Fields

Field Type Description
callsign string Your service's callsign (will be uppercased)
description string A brief description of what your service does
service_website string URL for more information about your service
software string The software and version running your service

Optional Fields

Field Type Description
callsign_owner string The owner's name or personal callsign

Example Request

curl -X POST https://aprs.hemna.com/api/v1/registry \
  -H "Content-Type: application/json" \
  -d '{
    "callsign": "REPEAT",
    "description": "Find the nearest N repeaters to your current location",
    "service_website": "http://aprs-repeat.hemna.com",
    "software": "APRSD version 3.3.0",
    "callsign_owner": "WB4BOR"
  }'

Using APRSD

If you're running APRSD version 3.3.0 or later, you can enable automatic registry updates in your configuration file:

[aprs_registry]
# Enable the automatic registry feature
enable = true

# The description of your service
description = My service does X, Y, and Z.

# The URL of your service
service_website = http://myaprsservice.com

# How often to update the registry (in seconds)
# Default: 900 (15 minutes)
frequency_seconds = 900

With this configuration, APRSD will automatically register and periodically update your service in the registry.

Health Checks

The registry automatically monitors registered services to track their availability.

How Health Checks Work

  1. The registry sends an APRS message to your service's callsign
  2. It waits for a response (any valid APRS response)
  3. If a response is received within the timeout, the check passes
  4. Results are recorded and displayed on the service card

Check Frequency

Health checks run hourly for all registered services. The registry stores the last 24 check results, which are displayed as a heatmap on each service card.

Status Transitions

  • Active → Pending — Occurs after the first failed health check
  • Pending → Active — Occurs when a health check passes
  • Pending → Down — Occurs after 3 consecutive failed health checks
  • Down → Active — Occurs when a health check passes

Manual Health Check

You can manually trigger a health check for your service:

curl -X POST https://aprs.hemna.com/api/v1/health-check/YOURCALL

Updating Your Service

To update your service information, simply POST to the same endpoint with the updated data. The callsign is used as the unique identifier, so any POST with the same callsign will update the existing record.

curl -X POST https://aprs.hemna.com/api/v1/registry \
  -H "Content-Type: application/json" \
  -d '{
    "callsign": "MYCALL",
    "description": "Updated description",
    "service_website": "http://new-url.com",
    "software": "APRSD 3.4.0"
  }'

Removing Your Service

To remove your service from the registry, send a DELETE request:

curl -X DELETE https://aprs.hemna.com/api/v1/registry/YOURCALL

This performs a "soft delete" — your service will be marked as deleted and hidden from the public listing, but the record is retained in case you want to re-register later.

Best Practices

  • Keep your description concise — Aim for one or two sentences that clearly explain what your service does
  • Provide a working website — Include documentation on how to use your service
  • Update regularly — If using APRSD, enable automatic updates to keep your listing current
  • Monitor health checks — Check your service's status periodically to ensure it's responding