Latest IPv4
curl --request GET \
--url https://app.onefirewall.com/api/v1/ips \
--header 'Authorization: <api-key>'import requests
url = "https://app.onefirewall.com/api/v1/ips"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://app.onefirewall.com/api/v1/ips', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.onefirewall.com/api/v1/ips",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.onefirewall.com/api/v1/ips"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://app.onefirewall.com/api/v1/ips")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.onefirewall.com/api/v1/ips")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"header": {
"type": "IPv4",
"version": 2,
"ts": "1684014988",
"page_size": 1,
"delay": 0,
"eval": "return (scoreTimeZero) / (1 + Math.exp( (3/(scoreTimeZero)) * ((current_time/3600) - (2.5 * scoreTimeZero))))",
"exec_python": "score = (scoreTimeZero) / (1 + numpy.exp( (3/(scoreTimeZero)) * ((current_time/3600) - (2.5 * scoreTimeZero))))",
"user": {
"guid": "OFA-GUID-XXXX-XXXX-XXXX",
"name": "Your name",
"surname": "Your surname",
"username": "Your email",
"role": 0,
"unsuccessful_login": 0,
"member_of": {
"gid": "OFA-GID-XXXXXXX",
"name": "Organisation name",
"trust": 0.9,
"delay": "0"
}
}
},
"body": [
{
"gid": "OFA-RULE-GID-XXXXXX",
"ip": "XXX.YYY.ZZZ.WWW",
"ts": 1684015144,
"entry_ts": 1683928684,
"is_network": false,
"ip_info": {
"as_domain": "cloudflare.com",
"as_name": "Cloudflare, Inc.",
"asn": "AS13335",
"continent": "NA",
"continent_name": "North America",
"country": "US",
"country_name": "United States"
},
"score": 34,
"info": {
"members": 1,
"events": 1,
"sources": [
"sshlog"
],
"stix_bundles": [],
"attack_infos": [],
"notes": [
"May 12 23:47:55 OFA-SRV2 sshd[12317]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=XXX.YYY.ZZZ.WWW user=root"
]
},
"elk_ts": "2023-05-13T21:59:04.000Z",
"elk_entry_ts": "2023-05-12T21:58:04.000Z",
"delay": 0,
"dec": 8.3e-7
}
]
}IPv4 Feeds
Latest IPv4
You can call the API /api/v1/ips in order to receive an array of the latest IPv4 feeds collected at the OneFirewall Data lake.
GET
/
ips
Latest IPv4
curl --request GET \
--url https://app.onefirewall.com/api/v1/ips \
--header 'Authorization: <api-key>'import requests
url = "https://app.onefirewall.com/api/v1/ips"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://app.onefirewall.com/api/v1/ips', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.onefirewall.com/api/v1/ips",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.onefirewall.com/api/v1/ips"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://app.onefirewall.com/api/v1/ips")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.onefirewall.com/api/v1/ips")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"header": {
"type": "IPv4",
"version": 2,
"ts": "1684014988",
"page_size": 1,
"delay": 0,
"eval": "return (scoreTimeZero) / (1 + Math.exp( (3/(scoreTimeZero)) * ((current_time/3600) - (2.5 * scoreTimeZero))))",
"exec_python": "score = (scoreTimeZero) / (1 + numpy.exp( (3/(scoreTimeZero)) * ((current_time/3600) - (2.5 * scoreTimeZero))))",
"user": {
"guid": "OFA-GUID-XXXX-XXXX-XXXX",
"name": "Your name",
"surname": "Your surname",
"username": "Your email",
"role": 0,
"unsuccessful_login": 0,
"member_of": {
"gid": "OFA-GID-XXXXXXX",
"name": "Organisation name",
"trust": 0.9,
"delay": "0"
}
}
},
"body": [
{
"gid": "OFA-RULE-GID-XXXXXX",
"ip": "XXX.YYY.ZZZ.WWW",
"ts": 1684015144,
"entry_ts": 1683928684,
"is_network": false,
"ip_info": {
"as_domain": "cloudflare.com",
"as_name": "Cloudflare, Inc.",
"asn": "AS13335",
"continent": "NA",
"continent_name": "North America",
"country": "US",
"country_name": "United States"
},
"score": 34,
"info": {
"members": 1,
"events": 1,
"sources": [
"sshlog"
],
"stix_bundles": [],
"attack_infos": [],
"notes": [
"May 12 23:47:55 OFA-SRV2 sshd[12317]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=XXX.YYY.ZZZ.WWW user=root"
]
},
"elk_ts": "2023-05-13T21:59:04.000Z",
"elk_entry_ts": "2023-05-12T21:58:04.000Z",
"delay": 0,
"dec": 8.3e-7
}
]
}Updated API documentation with live interaction is now available in the product dashboard under API Docs.
Authorizations
Authorization Token
Query Parameters
The maximum size of the array to retrieve
Required range:
0 < x < 1001Use 0 for all feeds, 1 for feeds submitted by your organization, 2 for manually blocked/blacklisted feeds, and 3 for unblocked/whitelisted feeds.
Required range:
0 < x < 3Timestamp from when to retreive data
Required range:
x > -1full=yes provide more information
Available options:
yes, no Response
200 - application/json
The response is of type string.
⌘I

