URL
curl --request GET \
--url https://api.threatbook.io/v2/feeds/stix/url \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.threatbook.io/v2/feeds/stix/url"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.threatbook.io/v2/feeds/stix/url', 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://api.threatbook.io/v2/feeds/stix/url",
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: Bearer <token>"
],
]);
$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://api.threatbook.io/v2/feeds/stix/url"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.threatbook.io/v2/feeds/stix/url")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.threatbook.io/v2/feeds/stix/url")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body"PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000Nz7\\\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000W\u0004\u0000\u0000\u0011\u0000 \u0000url_20260109.jsonUT\n\u0000\u0007� si� si� siux\u000b\u0000\u0001\u0004�\u0001\u0000\u0000\u0004\u0014\u0000\u0000\u0000�R�n�0\u0010肩+\u0004\n]r墒\u0014)J�ü™As\t�K\u0003绵cY车DGぼ\u001aA™��H@额�\u0017�Yr�t$i<\u001f1mT\n9`z3�Y+\u0000Z[\u0005�ü\u0013\u0001u!\u0015\b+FQ\\��pD�;a\u001f�&\u0005�/üW_Q�0�\u001e�c<碗怃:愦�\u0007 FsΩ\u0001Zk\u0002\\�谪\u001a\u0004W*�1虫荥:�\"�Blg�V\u001ev~\b骚�+�c\u0017�=狮�…6<銮蘧�W�\"�熘K锑�\u0007�;�xN�E�4r涛鼍\u001f
�\u0012H\u000eぜТ�ES�\u0019!潴jx1b?苦眯\u001f�冷Cr��\u0018推�\u0003\u0006\b��\u0014\u0014U�rVq�99活r�\t俎酚\u001eヶ\n]�a�\\oW\u0017=\n]\u001f�e#缔8�.e亏\u000ff禊�/褡X\u0010Ss\u0006�r�\u0014 ㄉ\u0001+i�\n�…-™�_�*\"�}涿�\u0006抨�{�}{y�o\u001d…�[鲲�\u001d醉阵OPK\u0007\b�++Q\u0001\u0000\u0000W\u0004\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000Nz7\\\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�\u0000\u0000\u0000\u001c\u0000 \u0000__MACOSX/._url_20260109.jsonUT\n\u0000\u0007� si� si� siux\u000b\u0000\u0001\u0004�\u0001\u0000\u0000\u0004\u0014\u0000\u0000\u0000c`\u0015cg`b`�MLV�\u000fVPü\u0002\u0018\u0003'\u0010\u001b\u0001q!\u0010�\u0019\u0002!!AP&H�\f �FS�\u0010\u0017M蜗�K,(�I�+(�/K�K�KN\u0005)赝w�:t�^s\u0000PK\u0007\by�m\u001aT\u0000\u0000\u0000�\u0000\u0000\u0000PK\u0001\u0002\u0014\u0003\u0014\u0000\b\u0000\b\u0000Nz7\\�++Q\u0001\u0000\u0000W\u0004\u0000\u0000\u0011\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�\u0000\u0000\u0000\u0000url_20260109.jsonUT\n\u0000\u0007� si� si� siux\u000b\u0000\u0001\u0004�\u0001\u0000\u0000\u0004\u0014\u0000\u0000\u0000PK\u0001\u0002\u0014\u0003\u0014\u0000\b\u0000\b\u0000Nz7\\y�m\u001aT\u0000\u0000\u0000�\u0000\u0000\u0000\u001c\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000��\u0001\u0000\u0000__MACOSX/._url_20260109.jsonUT\n\u0000\u0007� si� si� siux\u000b\u0000\u0001\u0004�\u0001\u0000\u0000\u0004\u0014\u0000\u0000\u0000PK\u0005\u0006\u0000\u0000\u0000\u0000\u0002\u0000\u0002\u0000�\u0000\u0000\u0000�\u0002\u0000\u0000\u0000\u0000"{
"msg": "Required:{resource/apikey}",
"response_code": 400
}{
"msg": "Invalid account status",
"response_code": 401
}{
"msg": "Invalid API method",
"response_code": 405
}{
"msg": "Request rate limitation",
"response_code": 429
}{
"msg": "System error",
"response_code": 500
}Feeds
URL
This API provides malicious URLs.
GET
/
v2
/
feeds
/
stix
/
url
URL
curl --request GET \
--url https://api.threatbook.io/v2/feeds/stix/url \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.threatbook.io/v2/feeds/stix/url"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.threatbook.io/v2/feeds/stix/url', 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://api.threatbook.io/v2/feeds/stix/url",
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: Bearer <token>"
],
]);
$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://api.threatbook.io/v2/feeds/stix/url"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.threatbook.io/v2/feeds/stix/url")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.threatbook.io/v2/feeds/stix/url")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body"PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000Nz7\\\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000W\u0004\u0000\u0000\u0011\u0000 \u0000url_20260109.jsonUT\n\u0000\u0007� si� si� siux\u000b\u0000\u0001\u0004�\u0001\u0000\u0000\u0004\u0014\u0000\u0000\u0000�R�n�0\u0010肩+\u0004\n]r墒\u0014)J�ü™As\t�K\u0003绵cY车DGぼ\u001aA™��H@额�\u0017�Yr�t$i<\u001f1mT\n9`z3�Y+\u0000Z[\u0005�ü\u0013\u0001u!\u0015\b+FQ\\��pD�;a\u001f�&\u0005�/üW_Q�0�\u001e�c<碗怃:愦�\u0007 FsΩ\u0001Zk\u0002\\�谪\u001a\u0004W*�1虫荥:�\"�Blg�V\u001ev~\b骚�+�c\u0017�=狮�…6<銮蘧�W�\"�熘K锑�\u0007�;�xN�E�4r涛鼍\u001f
�\u0012H\u000eぜТ�ES�\u0019!潴jx1b?苦眯\u001f�冷Cr��\u0018推�\u0003\u0006\b��\u0014\u0014U�rVq�99活r�\t俎酚\u001eヶ\n]�a�\\oW\u0017=\n]\u001f�e#缔8�.e亏\u000ff禊�/褡X\u0010Ss\u0006�r�\u0014 ㄉ\u0001+i�\n�…-™�_�*\"�}涿�\u0006抨�{�}{y�o\u001d…�[鲲�\u001d醉阵OPK\u0007\b�++Q\u0001\u0000\u0000W\u0004\u0000\u0000PK\u0003\u0004\u0014\u0000\b\u0000\b\u0000Nz7\\\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�\u0000\u0000\u0000\u001c\u0000 \u0000__MACOSX/._url_20260109.jsonUT\n\u0000\u0007� si� si� siux\u000b\u0000\u0001\u0004�\u0001\u0000\u0000\u0004\u0014\u0000\u0000\u0000c`\u0015cg`b`�MLV�\u000fVPü\u0002\u0018\u0003'\u0010\u001b\u0001q!\u0010�\u0019\u0002!!AP&H�\f �FS�\u0010\u0017M蜗�K,(�I�+(�/K�K�KN\u0005)赝w�:t�^s\u0000PK\u0007\by�m\u001aT\u0000\u0000\u0000�\u0000\u0000\u0000PK\u0001\u0002\u0014\u0003\u0014\u0000\b\u0000\b\u0000Nz7\\�++Q\u0001\u0000\u0000W\u0004\u0000\u0000\u0011\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000�\u0000\u0000\u0000\u0000url_20260109.jsonUT\n\u0000\u0007� si� si� siux\u000b\u0000\u0001\u0004�\u0001\u0000\u0000\u0004\u0014\u0000\u0000\u0000PK\u0001\u0002\u0014\u0003\u0014\u0000\b\u0000\b\u0000Nz7\\y�m\u001aT\u0000\u0000\u0000�\u0000\u0000\u0000\u001c\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000��\u0001\u0000\u0000__MACOSX/._url_20260109.jsonUT\n\u0000\u0007� si� si� siux\u000b\u0000\u0001\u0004�\u0001\u0000\u0000\u0004\u0014\u0000\u0000\u0000PK\u0005\u0006\u0000\u0000\u0000\u0000\u0002\u0000\u0002\u0000�\u0000\u0000\u0000�\u0002\u0000\u0000\u0000\u0000"{
"msg": "Required:{resource/apikey}",
"response_code": 400
}{
"msg": "Invalid account status",
"response_code": 401
}{
"msg": "Invalid API method",
"response_code": 405
}{
"msg": "Request rate limitation",
"response_code": 429
}{
"msg": "System error",
"response_code": 500
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Precise time in UTC, format: YYYYMMDD. For example, 20210122 returns data from 2021-01-22 (UTC). Default: returns the most recent data (t-1 day). Feed packages can be retrieved for up to 90 days in the past.
Response
The response is of type object.
⌘I