RPKI History
This endpoint returns a timeseries with the count of VRPs (Validated ROA Payload) for the requested resource. The data source of this endpoint are the files hosted in ftp.ripe.net/rpki.
GET /data/rpki-history/data.json?resource=193.0.22.0/23
Parameters
Key | Value | Info | Required |
---|---|---|---|
resource |
| The resource to query for. The query returns only matches, for each case:
| YES |
family | Integer (4 or 6, default=4) | IP address family to filter for | NO |
resolution | Char, one of:
| Time bin to group the result by. All values except d will return a response with min , avg , max , first , last , and samples . | NO |
delegated | true/false | If present, the response will include registration information for that resource. | NO |
Data Output
For each element in the timeseries
array:
Key | Info | ||
---|---|---|---|
One of:
| The resource queried for. | ||
family | The address family queried for. | ||
rpki |
|
If querying for delegated information (delegated=true
) the response will contain:
delegated |
| ||||||||||||||||
rpki |
|
If querying for resolutions other than day (resolution={w,m,y}
) the response will get aggregated into weekly (w
), monthly (m
), or yearly (y
) bins according to the option selected by the user, and will contain:
| The min., max., and avg. VRP count in this time bin. |
| The first and last VRP count for this time bin. A time bin with resolution=m will report first for the VRP count on 2019-02-01 and last for the one on 2019-02-29. |
samples | The amount of samples we have taken under this time bin. If the count happens daily and we query with resolution=m , then months holding 30 days should have 30 samples, those holding 31 days should have 31, and so on. |
time | A timestamp in the format "YYYY-mm-ddTHH:MM:SS" aligned with the start of the time bin. |
Example 1: querying for a country's VRP count
bash
curl --location --request GET "https://stat.ripe.net/data/rpki-history/data.json?resource=AT"
js
const requestOptions = {
method: 'GET',
};
fetch("https://stat.ripe.net/data/rpki-history/data.json?resource=AT", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));
Example 2: querying for a country's VRP count and its information on delegated files
bash
curl --location --request GET "https://stat.ripe.net/data/rpki-history/data.json?resource=AT&delegated=true"
js
const requestOptions = {
method: 'GET',
};
fetch("https://stat.ripe.net/data/rpki-history/data.json?resource=AT&delegated=true", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));
Example 3: querying for a country's VRP count , its information on delegated files, and binning the data points by year.
bash
curl --location --request GET "https://stat.ripe.net/data/rpki-history/data.json?resource=AT&delegated=true"
js
const requestOptions = {
method: 'GET',
};
fetch("https://stat.ripe.net/data/rpki-history/data.json?resource=AT&delegated=true", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));