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
Copy file name to clipboardExpand all lines: README.md
+38-3Lines changed: 38 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -223,16 +223,51 @@ Real-Time Threat Intelligence Feeds provide data on the different stages of the
223
223
Custom parameters aside from the common `GET` Request parameters:
224
224
-`endpoint` (choose either `download` or `feed` API endpoint - default is `feed`)
225
225
```python
226
-
api = API(USERNAME, KEY)
226
+
api = API(USERNAME, KEY, always_sign_api_key=False)
227
227
api.nod(endpoint="feed", **kwargs)
228
228
```
229
229
-`header_authentication`: by default, we're using API Header Authentication. Set this False if you want to use API Key and Secret Authentication. Apparently, you can't use API Header Authentication for`download` endpoints so you need to set this to `False` when calling `download`API endpoints.
230
230
```python
231
-
api = API(USERNAME, KEY)
231
+
api = API(USERNAME, KEY, always_sign_api_key=False)
232
232
api.nod(header_authentication=False, **kwargs)
233
233
```
234
234
-`output_format`: (choose either `csv`or`jsonl`- default is`jsonl`). Cannot be used in`domainrdap` feeds. Additionally, `csv`isnot available for`download` endpoints.
235
235
```python
236
-
api = API(USERNAME, KEY)
236
+
api = API(USERNAME, KEY, always_sign_api_key=False)
237
237
api.nod(output_format="csv", **kwargs)
238
238
```
239
+
240
+
The Feed API standard access pattern is to periodically request the most recent feed data, as often as every 60 seconds. Specify the range of data you receive in one of two ways:
241
+
242
+
1. With `sessionID`: Make a call and provide a new `sessionID` parameter of your choosing. The API will return the last hour of data by default.
243
+
- Each subsequent call to the API using your `sessionID` will returnall data since the last.
244
+
- Any single request returns a maximum of 10M results. Requests that exceed 10M results will return a HTTP206 response code; repeat the same request (with the same `sessionID`) to receive the next tranche of data until receiving a HTTP200 response code.
245
+
2. Or, specify the time rangein one of two ways:
246
+
- Either an `after=-60` query parameter, where (in this example) -60 indicates the previous 60 seconds.
247
+
- Or `after`and`before` query parameters for a time range, with each parameter accepting an ISO-8601UTC formatted timestamp (a UTC date and time of the formatYYYY-MM-DDThh:mm:ssZ)
248
+
249
+
## Handling iterative response from RTUF endpoints:
250
+
251
+
Since we may dealing with large feeds datasets, the python wrapper uses `generator`for efficient memory handling. Therefore, we need to iterate through the `generator`if we're accessing the partial results of the feeds data.
252
+
253
+
### Single request because the requested data is within the maximum result:
254
+
```python
255
+
from domaintools importAPI
256
+
257
+
api = API(USERNAME, KEY, always_sign_api_key=False)
Copy file name to clipboardExpand all lines: domaintools/cli/utils.py
+1Lines changed: 1 addition & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -85,6 +85,7 @@ def _phisheye_termlist():
85
85
c.FEEDS_NAD: "Returns back newly active domains feed.",
86
86
c.FEEDS_NOD: "Returns back newly observed domains feed.",
87
87
c.FEEDS_DOMAINRDAP: "Returns changes to global domain registration information, populated by the Registration Data Access Protocol (RDAP).",
88
+
c.FEEDS_DOMAINDISCOVERY: "Returns new domains as they are either discovered in domain registration information, observed by our global sensor network, or reported by trusted third parties.",
0 commit comments