API: How get APRS Gateway with coordinates in a Boundingbox

56 views
Skip to first unread message

Roman har

unread,
Oct 11, 2024, 1:00:30 PM10/11/24
to aprs.fi

Dear OM's
I hope someone can help me.

How can I find (with Python) all APRS gateways (callsigns and coordinates) (all types: RX, Lora, etc.) within a defined area (BBOX)?
The following did not work:
url
= f https://api.aprs.fi/api/get?what=box&bbox={lon_sw},{lat_sw},{lon_ne},{lat_ne}&apikey={api_key}&format=json

73 and thank you for your help, Roman, HB9XBK

Shawn Stoddard

unread,
Oct 11, 2024, 1:04:43 PM10/11/24
to 'Steffan Jeschek' via aprs.fi
Did that return an empty result set or not what you expected?
--
You received this message because you are subscribed to the Google Groups "aprs.fi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to aprsfi+un...@googlegroups.com.

Heikki Hannikainen

unread,
Oct 11, 2024, 2:38:57 PM10/11/24
to aprs.fi
On Fri, 11 Oct 2024, Roman har wrote:

> How can I find (with Python) all APRS gateways (callsigns and coordinates)
> (all types: RX, Lora, etc.) within a defined area (BBOX)?
> The following did not work:
> url = f‘https://api.aprs.fi/api/get?what=box&bbox={lon_sw},{lat_sw},{lon_ne},{lat_
> ne}&apikey={api_key}&format=json’

Hi,

This is not surprising, as the API does not support a bounding box lookup,
and frankly, it is not going to support it, as those queries are
potentially heavy on the database.

You'll need to collect the positions in your own database from the APRS-IS
and do a search locally. The APRS-IS supports server-side filter commands
which you can use to limit the data volume, by only collecting a certain
area, if you wish.

All the features supported by the aprs.fi are documented here:

https://aprs.fi/page/api

- Hessu

Roman har

unread,
Oct 17, 2024, 3:06:52 PM10/17/24
to aprs.fi

Hello Hesu thank you very much for your respond.

I am surprised because for the Visualisation with leaflet it needs somehow to get the data in a BBOX.

I try to collect the location of all the gateway and digipeater of Switzerland to make calculation about the APRS coverage and to understand the network. I think also about having a "RX gateway" installed if needed.

I got a way to get with python the data stream of aprs-is. (with aprslib) (but have still some problems about the server side Filter)

I got also a way to get all the callsigns from HB9HB3 from aprs.fi

Now I try to get the type and location of all station with APRS-fi.api which seems to be too much for the API (I would need to get about 1700 requests probably every half year)

Maybee it is possible to get the info over the leaflet interface.

73 de Roman, HB9XBK

Heikki Hannikainen

unread,
Oct 17, 2024, 3:22:15 PM10/17/24
to aprs.fi
On Sun, 13 Oct 2024, Roman har wrote:

> I am surprised because for the Visualisation with leaflet it needs somehow to get the data in a BBOX.

Yes, but that is on a private API that aprs.fi provides only for the
visitors of aprs.fi, and paying customers using the aprs.fi iPhone app.

The public API (https://aprs.fi/page/api) only provides information that
can be provided very quickly, using a key-value lookup, so it's fairly
cheap for me to provide as a service. The public API is intentionally
limited and does not provide search, or bounding-box lookups. It will not
have those features in the future as I've seen those abused before.

If you can't get the data from that public API, then you can't get it from
aprs.fi, you'll need to get it from elsewhere, and possibly pay for the
database hosting yourself, and develop some software to fill the DB.

> I got also a way to get all the callsigns from HB9HB3 from aprs.fi

Could you please describe your method to do this?

I hope this does not involve using the aprs.fi user interface as an API.

> Now I try to get the type and location of all station with APRS-fi.api
> which seems to be too much for the API (I would need to get about 1700
> requests probably every half year)

Yes, you'll need to collect the data from the APRS-IS as the API rate
limit does not support your use case.

> Maybee it is possible to get the info over the leaflet interface.

Everything is technically possible, but please observe the aprs.fi Terms
Of Service: https://aprs.fi/page/tos

Every now and then I find someone developing software to scrape data from
the private API. It's usually visible as rather heavy requests which place
a lot of load on the database, much more than by regular users of the web
site. I'll then usually get a little bit angry, and add some more rate
limiting to stop it, blacklist the IPs, etc.

Please don't be an ass. Observe the TOS, and if aprs.fi does not provide
the service you need, please collect the data from elsewhere. Thanks!

- Hessu
Reply all
Reply to author
Forward
0 new messages