You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit ca9d09a
Browse filesBrowse the repository at this point in the historyBrowse files
Add is_satellite, is_anycast and blocklist date fields
The API now reports two more top-level booleans next to is_eu,
is_satellite and is_anycast, each included only when it is true, and
each threat.blocklists entry may carry first_seen and last_seen
(YYYY-MM-DD strings, UTC) plus days_seen. Some feeds omit the three
blocklist fields, so all of them are optional.
LookupResponse declares the new keys as optional (undefined reads as
false for the flags), the dates stay strings, and both flag names are
accepted by the selectField and fields validation of lookup() and
bulkLookup(). Responses are parsed JSON, so unknown keys already pass
through unchanged. Tests add fixtures built from the API samples (a
satellite ISP, an anycast address with dated blocklist entries, a VPN
exit with an undated entry) for single and bulk lookups, and the README
documents the five names.
Claude-Session: https://claude.ai/code/session_01VQiRp4zEJKUXHrKkFaeUke
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
**`is_satellite`** — `true` when the address belongs to a satellite internet provider. The API includes the key only when it is `true` and omits it otherwise, so treat a missing key as `false` (`info.is_satellite ?? false`).
207
+
208
+
**`is_anycast`** — `true` when the address is anycast. Also included only when `true`.
Each entry of `threat.blocklists` is `{ name, site, type, first_seen, last_seen, days_seen }`:
213
+
214
+
-**`first_seen`** — first day the address appeared on that blocklist, as a `YYYY-MM-DD` string (UTC)
215
+
-**`last_seen`** — most recent day the address appeared on that blocklist, same format
216
+
-**`days_seen`** — number of days the address has appeared on that blocklist (integer)
217
+
218
+
Some feeds, for example ipdata's own `vpn` list, do not report these three, so an entry may contain only `name`, `site` and `type`. The dates are passed through as strings.
219
+
208
220
## TypeScript
209
221
210
222
The library is written in TypeScript and exports the following types:
0 commit comments