-
Notifications
You must be signed in to change notification settings - Fork 0
feed endpoints
You will learn the feed-related API endpoints, what each returns, and how to use them.
GET /api/v1/sets
Lists all public feeds with summary metadata. Each entry includes feed name, category, IP family, current size, health state, maintainer, redistribution state, and critical-infrastructure overlap tiers where applicable.
Example:
GET /api/v1/sets
Key response fields per feed:
- Identity and provenance:
name,official_name,short_description,category,provenance,maintainer,maintainer_url,license,redistributable, andinfo. - Source and output:
ipv,url,public_url,file,source, andhash. - Timestamps:
started_date,source_date,processed_date, andchecked_date. - Size and cadence:
entries,unique_ips,entries_min,entries_max,ips_min,ips_max,frequency_minutes,average_update_mins,min_update_mins, andmax_update_mins. - Change and uniqueness metrics:
rotation_median_pct,rotation_p75_pct,rotation_samples,change_ratio_median_pct,change_ratio_p75_pct,change_ratio_samples,unique_share_pct, andunique_share_samples. - Status and risk signals:
health,current_status_state,last_status,last_error,download_failures,version,critical, andcritical_overlap_tiers.
GET /api/v1/sets/{name}
Returns full metadata for a single feed. Includes identification, data characteristics, update statistics, health class, merge composition (for merge feeds), and provider enrichment summaries.
Example:
GET /api/v1/sets/firehol_level1
Key response fields:
- Identity and ownership:
name,category,provenance,maintainer,maintainer_url,license,attribution,official_name,short_description,current_status,enrichment, andinfo. - Output metadata:
entries,entries_min,entries_max,ips,ips_min,ips_max,ipv,hash,frequency,aggregation,source,file,file_local,output,format, andversion. - Timestamps and cadence:
started,updated,processed,checked,clock_skew,average_update,min_update,max_update,rotation_median_pct,rotation_p75_pct,rotation_samples,change_ratio_median_pct,change_ratio_p75_pct, andchange_ratio_samples. - Published related artifacts:
history,comparison,commit_history,geo, and provider-specific classification routes. - Operational state:
health,errors,downloader,processor,pre_processor,used_for,hidden,dont_redistribute,merge_included,merge_subtracted, andmerge_excluded.
GET /api/v1/sets/{name}/data
Returns the raw IP list as text/plain. One CIDR range or IP address per line.
This endpoint streams the canonical feed body from disk. It does not load the entire file into memory. Archived and non-redistributable feeds return an error.
Example:
GET /api/v1/sets/firehol_level1/data
Response:
1.2.3.0/24
10.20.30.0/24
192.168.1.1
GET /api/v1/sets/{name}/history
Returns feed history as CSV with columns: DateTime, Entries, UniqueIPs.
Each row represents one historical snapshot of the feed's size. Snapshots are sparse — they exist only for observed successful updates.
DateTime is a Unix timestamp in seconds.
Example:
GET /api/v1/sets/firehol_level1/history
Response:
DateTime,Entries,UniqueIPs
1736920800,142,9834
1736942400,145,10012
1736964000,139,9756GET /api/v1/sets/{name}/compare
GET /api/v1/sets/{name}/comparison
Returns a JSON object with pairwise overlap data between this feed and all other public feeds.
The comparison contains only non-zero overlaps. Feeds with zero shared IPs are absent from the results.
Example:
GET /api/v1/sets/firehol_level1/compare
Key response fields: array of comparison rows with name, category, ips, common, and optional related.
GET /api/v1/sets/{name}/retention
Returns a JSON summary of IP retention patterns. Shows how many IPs are in past and current age buckets based on observed additions and removals.
Example:
GET /api/v1/sets/firehol_level1/retention
Key response fields: ipset, started, updated, incomplete, past, and current.
The past and current objects each contain aligned hours and ips arrays plus a total count.
GET /api/v1/sets/{name}/insights
Returns a deterministic insight payload generated from the feed's current state, comparison data, and retention patterns. Insights are precomputed — the endpoint reads a published artifact and does not compute anything at request time.
Example:
GET /api/v1/sets/firehol_level1/insights
GET /api/v1/sets/{name}/changesets
Returns changeset data as JSON. Changesets record the additions and removals between consecutive feed updates.
Example:
GET /api/v1/sets/firehol_level1/changesets
Key response fields: array of changeset entries with added/removed IP counts and timestamps.
GET /api/v1/sets/{name}/search?ip=1.2.3.4
Returns whether the given IP address is present in this specific feed. This is a scoped version of the global search endpoint — it checks only one feed instead of all public feeds. The response includes scope: "feed", searched_feed, and a structured matches array; a miss returns HTTP 200 with an empty matches array.
Example:
GET /api/v1/sets/firehol_level1/search?ip=1.2.3.4
Each feed has sub-routes for country, ASN, bogon, and critical-infrastructure overlap data. These return precomputed comparison artifacts.
GET /api/v1/sets/{name}/countries
GET /api/v1/sets/{name}/countries/{provider}
The provider-list route returns configured GeoIP providers in default-first
order. It does not prove that every provider has a materialized artifact for
this feed. Request a specific {provider} to retrieve that provider's
precomputed country comparison data; missing provider artifacts return 404.
GET /api/v1/sets/{name}/asn
GET /api/v1/sets/{name}/asn/{provider}
The provider-list route returns configured ASN providers in default-first order.
It does not prove that every provider has a materialized artifact for this
feed. Request a specific {provider} to retrieve that provider's precomputed
ASN attribution data; missing provider artifacts return 404.
GET /api/v1/sets/{name}/bogons
GET /api/v1/sets/{name}/bogons/{provider}
The provider-list route returns configured bogon providers. Hidden bogon
providers can appear here because the route describes reference data, not
navigable feed pages. Request a specific {provider} to retrieve that
provider's precomputed bogon overlap data; missing provider artifacts return
404.
GET /api/v1/sets/{name}/infrastructure
GET /api/v1/sets/{name}/infrastructure/providers
GET /api/v1/sets/{name}/infrastructure/{provider}
Returns the critical infrastructure aggregate, list of providers, or provider-specific overlap data.
- Daemon Command Reference
- Environment Variables
- Configuration Reload
- Listener Topologies
- Admin Authentication
- Feed Families
- Source Feeds
- Processor Reference
- Static Feeds
- Merge Feeds
- Artifact Parents
- History Derivatives
- Provider Databases
- Use Roles
- Critical Infrastructure Reference Feeds
- Legal Fields
- Feed Visibility & Lifecycle
- YAML Field Reference
- Pipeline Overview
- Download Lifecycle
- Processing Lifecycle
- Feed Status Reference
- Health Classes
- What Triggers Reprocessing
- Accessing the Admin
- Runtime Status
- Feed Inventory
- Artifact Inventory
- Live Queues
- Background Work
- Schedule State
- Operator Actions
- Enable & Disable