Start a scan
curl --request POST \
--url https://testwebmcp.com/api/v1/scan \
--header 'Content-Type: application/json' \
--data '
{
"url": "https://example.com"
}
'const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({url: 'https://example.com'})
};
fetch('https://testwebmcp.com/api/v1/scan', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://testwebmcp.com/api/v1/scan"
payload = { "url": "https://example.com" }
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"id": "cmuelrzr40001o63kiv6vveim",
"status": "queued",
"url": "https://example.com/",
"statusUrl": "https://testwebmcp.com/api/v1/scan/cmuelrzr40001o63kiv6vveim",
"reportUrl": "https://testwebmcp.com/scan/cmuelrzr40001o63kiv6vveim"
}{
"error": "10.0.0.1 is in a private or reserved range."
}{
"error": "The free limit is 1 scan per 24 hours per IP address, shared with the website.",
"retryAfterSeconds": 86400,
"resetAt": "2023-11-07T05:31:56Z",
"retryAfterHuman": "24 hours"
}{
"error": "<string>"
}API reference
Start a scan
Queues a scan of one page. Poll the returned statusUrl for the result; a scan takes up to a minute.
Uses your daily scan (1 per 24 hours per IP, shared with the website), including when sent from this page.
POST
/
scan
Start a scan
curl --request POST \
--url https://testwebmcp.com/api/v1/scan \
--header 'Content-Type: application/json' \
--data '
{
"url": "https://example.com"
}
'const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({url: 'https://example.com'})
};
fetch('https://testwebmcp.com/api/v1/scan', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://testwebmcp.com/api/v1/scan"
payload = { "url": "https://example.com" }
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"id": "cmuelrzr40001o63kiv6vveim",
"status": "queued",
"url": "https://example.com/",
"statusUrl": "https://testwebmcp.com/api/v1/scan/cmuelrzr40001o63kiv6vveim",
"reportUrl": "https://testwebmcp.com/scan/cmuelrzr40001o63kiv6vveim"
}{
"error": "10.0.0.1 is in a private or reserved range."
}{
"error": "The free limit is 1 scan per 24 hours per IP address, shared with the website.",
"retryAfterSeconds": 86400,
"resetAt": "2023-11-07T05:31:56Z",
"retryAfterHuman": "24 hours"
}{
"error": "<string>"
}Body
application/json
The page to scan. A bare hostname is treated as https://. Only public http and https addresses.
Example:
"https://example.com"
Response
Queued.
Example:
"cmuelrzr40001o63kiv6vveim"
Allowed value:
"queued"The URL as it will be scanned.
Example:
"https://example.com/"
Poll this for the result.
Example:
"https://testwebmcp.com/api/v1/scan/cmuelrzr40001o63kiv6vveim"
The report on the website.
Example:
"https://testwebmcp.com/scan/cmuelrzr40001o63kiv6vveim"