# is-port-25-open-watch

> is-port-25-open-watch is a paid API for AI agents from ip.intel.rallylive.ca, paid per call via x402, $0.02/call, status unknown (last checked 2026-10-10).

Monitors whether port 25 (SMTP) is open on a given IP/host, returning the current status, whether it changed since the last check, and a diff of changed fields.

## Facts

- Endpoint: GET https://ip.intel.rallylive.ca/watch/ip/port/25?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-10
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/is-port-25-open-watch-24fa3764
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_3BTD4IzGhNdPfEk7Zzspq

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 is-port-25-open-watch-24fa3764
```

Example prompt: Keep an eye on whether port 25 is open on 203.0.113.45 and let me know if that status changes from what it was last time you checked.

## When to prefer this

Choose this endpoint when you need change-detection semantics for port 25 specifically — not just a one-off port check. It is ideal for scheduled polling workflows where you want to be alerted only when the open/closed state transitions, rather than receiving redundant status reports on every call. Prefer this over a plain port-check endpoint when you care about drift detection, security alerting on unexpected SMTP exposure, or auditing mail server availability over time.

## Known failure modes

- Invalid or unreachable IP/hostname returns an error or inconclusive result
- No previous check stored (first call) — 'changed' will be false/null with no diff available
- Payment failure causes request rejection
- Host firewalls or rate limiting may cause false negatives (port appears closed when filtered)
- Results older than 90 days are purged, so baseline is lost and comparison restarts

## How this service works

Change watch for is port 25 open: runs the check, compares it with the result from your previous call for the same host (kept 90 days) and returns the current answer, changed true/false, the fields that changed with before/after values, and when it was last seen. Schedule it to be alerted when this changes. $0.02 per check.

## Output

Returns the current open/closed status of port 25, a boolean indicating whether the result changed since the last call for the same host (stored up to 90 days), a diff object showing before and after values for any changed fields, and a timestamp of when the status was last observed.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "properties": {}
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/is-port-25-open-watch-24fa3764/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from ip.intel.rallylive.ca](https://www.zero.xyz/host/ip.intel.rallylive.ca/llms.txt)
