Skip to content

geofeeds ​

22 endpoints at a glance
MethodPathSummary
GET/admin/geofeeds/Admin Status
POST/admin/geofeeds/accuracy/runAccuracy Run
POST/admin/geofeeds/check-enableTrigger Check Enable
GET/admin/geofeeds/check-enable/statusGet Check Enable Status
POST/admin/geofeeds/discoverTrigger Discovery
GET/admin/geofeeds/discover/statusGet Discovery Status
GET/admin/geofeeds/imports/List Imports
GET/admin/geofeeds/imports/{import_id}Get Import
POST/admin/geofeeds/mergeMerge Source
POST/admin/geofeeds/refreshTrigger Refresh
GET/admin/geofeeds/refresh/statusGet Refresh Status
POST/admin/geofeeds/resolve-geonamesTrigger Resolve Geonames
GET/admin/geofeeds/resolve-geonames/statusGet Resolve Geonames Status
DELETE/admin/geofeeds/sourcesDelete Source
PATCH/admin/geofeeds/sourcesPatch Source
GET/admin/geofeeds/sources/List Sources
POST/admin/geofeeds/sources/Add Source
POST/admin/geofeeds/unmergeUnmerge Source
GET/geofeeds/accuracy/dailyAccuracy Daily
GET/geofeeds/accuracy/mismatchesAccuracy Mismatches
GET/geofeeds/accuracy/summaryAccuracy Summary
GET/geofeeds/lookup/{ip}Lookup Ip

geofeeds​


Admin Status​

GET
/admin/geofeeds/

Header data for the admin panel — source count, prefix count,
last successful refresh ts, plus worker liveness.

Parameters​

Header Parameters

authorization
x-api-key

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers

Samples​


List Sources​

GET
/admin/geofeeds/sources/

List geofeed sources with per-source row counts. enabled /
discovery filters mirror the admin-panel toggle chips.
duplicate filters on the merge marker (False powers the
panel's "hide duplicates" default; True shows only merged-away
duplicates).

Parameters​

Header Parameters

authorization
x-api-key

Query Parameters

enabled
discovery
duplicate
limit
Type
integer
Default
500
skip
Type
integer
Default
0

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers
Variables
Key
Value

Samples​


Add Source​

POST
/admin/geofeeds/sources/

Manual add. URL must start with http:// or https://.

Parameters​

Header Parameters

authorization
x-api-key

Request Body​

application/json
JSON
{
  
"url": "string",
  
"label": "string",
  
"enabled": true,
  
"verify_tls": true
}

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers
Body

Samples​


Delete Source​

DELETE
/admin/geofeeds/sources

Remove the source row + sweep its prefixes. Returns the
deletion tally for the admin toast.

The source URL is passed as a query parameter (not a path segment)
so its scheme's // isn't collapsed to / in transit.

Parameters​

Header Parameters

authorization
x-api-key

Query Parameters

url*

The geofeed source URL (its _id).

Type
string
Required

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers
Variables
Key
Value

Samples​


Patch Source​

PATCH
/admin/geofeeds/sources

Update label, enabled flag, or verify_tls without re-importing.

The source URL is passed as a query parameter (not a path segment)
so its scheme's // isn't collapsed to / in transit.

Parameters​

Header Parameters

authorization
x-api-key

Query Parameters

url*

The geofeed source URL (its _id).

Type
string
Required

Request Body​

application/json
JSON
{
  
"label": "string",
  
"enabled": true,
  
"verify_tls": true
}

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers
Variables
Key
Value
Body

Samples​


Merge Source​

POST
/admin/geofeeds/merge

Mark source as a duplicate of into: it's disabled, never
fetched again, and its prefixes are swept (the survivor is
authoritative). The survivor absorbs the duplicate's provenance.
Returns {duplicate, into, removed_prefixes}.

Parameters​

Header Parameters

authorization
x-api-key

Request Body​

application/json
JSON
{
  
"source": "string",
  
"into": "string"
}

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers
Body

Samples​


Unmerge Source​

POST
/admin/geofeeds/unmerge

Undo a merge — clear the duplicate_of marker on url and
drop it from its survivor's aliases. The row stays disabled until the
operator re-enables it.

The URL is a query parameter (not a path segment) so its scheme's
// isn't collapsed to / in transit.

Parameters​

Header Parameters

authorization
x-api-key

Query Parameters

url*

The merged-away duplicate URL (its _id).

Type
string
Required

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers
Variables
Key
Value

Samples​


Trigger Refresh​

POST
/admin/geofeeds/refresh

Queue a refresh. Returns immediately with the queue depth +
the live progress state. UI polls /refresh/status for live
updates.

Parameters​

Header Parameters

authorization
x-api-key

Request Body​

application/json
JSON
{
  
"url": "string",
  
"all": false
}

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers
Body

Samples​


Get Refresh Status​

GET
/admin/geofeeds/refresh/status

Parameters​

Header Parameters

authorization
x-api-key

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers

Samples​


Trigger Discovery​

POST
/admin/geofeeds/discover

Queue the whois discovery scan. Walks
db.ips.whois.data.records[] for geofeed: attributes (RFC
8805) + remarks: Geofeed … (RFC 9092); newly-found URLs are
upserted with enabled=False so admin reviews before they're
fetched.

Parameters​

Header Parameters

authorization
x-api-key

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers

Samples​


Get Discovery Status​

GET
/admin/geofeeds/discover/status

Parameters​

Header Parameters

authorization
x-api-key

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers

Samples​


Trigger Resolve Geonames​

POST
/admin/geofeeds/resolve-geonames

Queue a GeoNames-resolve pass over db.geofeed_prefixes.
Stamps geonames_id on every prefix row whose country +
city resolves; coords for the cross-check map follow from the
GeoNames link.

Parameters​

Header Parameters

authorization
x-api-key

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers

Samples​


Get Resolve Geonames Status​

GET
/admin/geofeeds/resolve-geonames/status

Parameters​

Header Parameters

authorization
x-api-key

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers

Samples​


Trigger Check Enable​

POST
/admin/geofeeds/check-enable

Queue a TLS check-and-enable pass: each disabled, non-duplicate
source is fetched over TLS (certificate verification on) and, if it
succeeds and returns ≥1 prefix, enabled. Background — poll
/check-enable/status.

Parameters​

Header Parameters

authorization
x-api-key

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers

Samples​


Get Check Enable Status​

GET
/admin/geofeeds/check-enable/status

Parameters​

Header Parameters

authorization
x-api-key

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers

Samples​


List Imports​

GET
/admin/geofeeds/imports/

Parameters​

Header Parameters

authorization
x-api-key

Query Parameters

source
since
until
limit
Type
integer
Default
100

Responses​

Successful Response

application/json
JSON
[
  
{
  
  
"additionalProperties": "string"
  
}
]

Playground​

Headers
Variables
Key
Value

Samples​


Get Import​

GET
/admin/geofeeds/imports/{import_id}

Parameters​

Header Parameters

authorization
x-api-key

Path Parameters

import_id*
Type
string
Required

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers
Variables
Key
Value

Samples​


Accuracy Run​

POST
/admin/geofeeds/accuracy/run

Recompute the accuracy snapshot now. Fire-and-forget — the scan
over the geofeed-stamped db.ips subset can run past the gateway
timeout, so it's handed to a background task and recorded in
db.task_history (derive_geofeed_accuracy, trigger=manual).

Parameters​

Header Parameters

authorization
x-api-key

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers

Samples​


Lookup Ip​

GET
/geofeeds/lookup/{ip}

Longest-prefix-match against db.geofeed_prefixes. Returns
the same envelope :class:api.atlas.geofeeds.Geofeeds.summarize_ipproduces, ornull`` when no prefix covers the IP.

Parameters​

Header Parameters

authorization
x-api-key

Path Parameters

ip*
Type
string
Required

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers
Variables
Key
Value

Samples​


Accuracy Summary​

GET
/geofeeds/accuracy/summary

Current accuracy rollup: per-source agreement %, mismatch counts,
and the worst geofeed sources. null before the first snapshot.

Parameters​

Header Parameters

authorization
x-api-key

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers

Samples​


Accuracy Mismatches​

GET
/geofeeds/accuracy/mismatches

Country-mismatching IPs from the current snapshot — declared vs
each inferred source — for investigation.

Parameters​

Header Parameters

authorization
x-api-key

Query Parameters

country

Filter on the operator-declared country.

geofeed_source

Filter on the geofeed source URL.

limit
Type
integer
Maximum
1000
Minimum
1
Default
100
skip
Type
integer
Minimum
0
Default
0

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers
Variables
Key
Value

Samples​


Accuracy Daily​

GET
/geofeeds/accuracy/daily

Per-date agreement trend (oldest-first).

Parameters​

Header Parameters

authorization
x-api-key

Query Parameters

since
until

Responses​

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground​

Headers
Variables
Key
Value

Samples​


Atlas — built on RIPE Atlas data.