3 releases (breaking)
0.3.0 | Apr 20, 2024 |
---|---|
0.2.0 | Jul 9, 2023 |
0.1.0 | Nov 2, 2022 |
#945 in Web programming
22KB
299 lines
urlscan-rs
Rust wrapper for URLScan.io API
Provides an abstraction over the URLScan.io API. This library supports the following tasks:
- Get Quota
- Submit URL to be scanned
- Get JSON Result of scan as String
- Get DOM of previously scanner URL by UUID
- Get Screenshot of page
- Search functionality
Examples
Get your current quota with limits:
let client = UrlScanClient::new("YOUR-API-KEY-HERE");
let response = client.get_quota();
match response {
Ok(quota) => println!("{}", quota),
_ => println!("We got an error..."),
}
Submitting a URL to be scanned:
let client = UrlScanClient::new(API_KEY);
let response = client.scan_url("www.url-you-want-to-check.rust", "public", vec![]);
match response {
Ok(submission) => println!("{}", submission),
_ => println!("We got an error..."),
}
Example Output:
Submission successful.
UUID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
View Result: https://urlscan.io/result/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/
Getting the DOM:
let client = UrlScanClient::new(API_KEY);
// submit a URL to get a "submission" back or directly add the UUID:
let uuid = submission.uuid;
let response = client.get_dom(uuid);
match response {
Ok(dom) => println!("{}", dom),
_ => println!("There was an error, maybe scan is still running."),
}
FAQs
- How do I get a URLScan.io API Key? Create an URLScan.io account and then go to Settings & API to get your API key.
- Is the URLScan.io API key free? Yes, URLScan.io has free API keys that are limited by time. If you reach the limit you can pay for unlimited requests.
License: MIT
Dependencies
~11–23MB
~322K SLoC