Appearance
geofeeds
22 endpoints at a glance
| Method | Path | Summary |
|---|---|---|
GET | /admin/geofeeds/ | Admin Status |
POST | /admin/geofeeds/accuracy/run | Accuracy Run |
POST | /admin/geofeeds/check-enable | Trigger Check Enable |
GET | /admin/geofeeds/check-enable/status | Get Check Enable Status |
POST | /admin/geofeeds/discover | Trigger Discovery |
GET | /admin/geofeeds/discover/status | Get Discovery Status |
GET | /admin/geofeeds/imports/ | List Imports |
GET | /admin/geofeeds/imports/{import_id} | Get Import |
POST | /admin/geofeeds/merge | Merge Source |
POST | /admin/geofeeds/refresh | Trigger Refresh |
GET | /admin/geofeeds/refresh/status | Get Refresh Status |
POST | /admin/geofeeds/resolve-geonames | Trigger Resolve Geonames |
GET | /admin/geofeeds/resolve-geonames/status | Get Resolve Geonames Status |
DELETE | /admin/geofeeds/sources | Delete Source |
PATCH | /admin/geofeeds/sources | Patch Source |
GET | /admin/geofeeds/sources/ | List Sources |
POST | /admin/geofeeds/sources/ | Add Source |
POST | /admin/geofeeds/unmerge | Unmerge Source |
GET | /geofeeds/accuracy/daily | Accuracy Daily |
GET | /geofeeds/accuracy/mismatches | Accuracy Mismatches |
GET | /geofeeds/accuracy/summary | Accuracy Summary |
GET | /geofeeds/lookup/{ip} | Lookup Ip |
geofeeds
Admin Status
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
500skip
Type
integer
Default
0Responses
Successful Response
application/json
JSON "additionalProperties": "string"
{
}
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"
{
}
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
Requiredstring
Responses
Successful Response
application/json
JSON "additionalProperties": "string"
{
}
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
Requiredstring
Request Body
application/json
JSON "label": "string", "enabled": true, "verify_tls": true
{
}
Responses
Successful Response
application/json
JSON "additionalProperties": "string"
{
}
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"
{
}
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
Requiredstring
Responses
Successful Response
application/json
JSON "additionalProperties": "string"
{
}
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"
{
}
Get Refresh Status
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"
{
}
Get Discovery Status
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"
{
}
Get Resolve Geonames Status
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"
{
}
Get Check Enable Status
List Imports
Get Import
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"
{
}
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
Requiredstring
Responses
Successful Response
application/json
JSON "additionalProperties": "string"
{
}
Accuracy Summary
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
1000Minimum
1Default
100skip
Type
integer
Minimum
0Default
0Responses
Successful Response
application/json
JSON "additionalProperties": "string"
{
}