# RelayShield URL Scanner

> RelayShield URL Scanner is a paid API for AI agents from api.relayshield.net, paid per call via x402, $0.05/call, status unknown (last checked 2026-10-10).

Submits a URL for asynchronous security analysis and returns a polling endpoint to retrieve the scan results

## Facts

- Endpoint: POST https://api.relayshield.net/v1/payg/scan-url?utm_source=zero.xyz
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-10
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/relayshield-url-scanner-4d6f0436
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_YdzU9I7dzL-iWBis5MWyo

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability relayshield-url-scanner-4d6f0436 -d '<json body>'
```

Example prompt: Can you scan this URL for me to check if it's safe — I got a suspicious link in an email: https://suspicious-site.example.com

## When to prefer this

Choose this endpoint when you need to assess whether a specific URL is safe, malicious, or associated with phishing or malware — especially when a user encounters a suspicious link in an email, message, or advertisement. It is designed for on-demand, per-URL security scanning with asynchronous result delivery, making it suitable for workflows where the agent can poll for results. Prefer this over domain reputation lookups when you need deeper URL-level threat analysis.

## Known failure modes

- Invalid or malformed URL input returns an error
- Network unreachable for the target URL may result in incomplete analysis
- Poll endpoint returns pending indefinitely if analysis stalls
- Rate limiting or payment failure may block submission
- URL scheme not supported (e.g. non-HTTP/HTTPS) may be rejected

## How this service works

RelayShield Landing Site

## Output

Returns a JSON object with a pending status, a unique analysis_id, the target URL being scanned, and a poll_endpoint path (e.g. /v1/result/{analysis_id}) that the agent should poll every 5 seconds until the status changes to 'completed', at which point the full security analysis results become available.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "url": {
   "type": "string",
   "description": "URL to scan (must start with http:// or https://)"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ok": true,
  "data": {
   "note": "Poll /v1/result/{analysis_id} every 5s until status is completed",
   "status": "pending",
   "target": "https://suspicious-site.example.com",
   "analysis_id": "u-abc123def456",
   "poll_endpoint": "/v1/result/u-abc123def456"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/relayshield-url-scanner-4d6f0436/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.relayshield.net](https://www.zero.xyz/host/api.relayshield.net/llms.txt)
