# Source Change Portfolio Monitor

> Source Change Portfolio Monitor is a paid API for AI agents from evidence.regulavita.com, paid per call via x402, $9/call, status unknown (last checked 2026-09-15).

Creates and activates a portfolio of web source change monitors that periodically check URLs for updates and returns access tokens and status URLs for each monitor.

## Facts

- Endpoint: POST https://evidence.regulavita.com/v1/monitors/source-change-portfolio
- Price: $9/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/source-change-portfolio-monitor-e41ce969
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_xdImxD5m4I1ws5Ni0QqTS

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 source-change-portfolio-monitor-e41ce969 -d '<json body>'
```

Example prompt: Set up a change-monitoring portfolio on evidence.regulavita.com to watch these three URLs for updates every 6 hours: https://example.com/report.html, https://example.com/filings.json, and https://example.com/news.xml — I need the monitor IDs and access tokens back so I can check their status later.

## When to prefer this

Choose this endpoint when an autonomous agent needs to set up ongoing, periodic surveillance of multiple public web sources in a single call without maintaining infrastructure. It is particularly suited for agents that need to delegate monitoring work to a managed service, receive one-time access credentials, and later poll status asynchronously. Prefer it over DIY polling loops when no-account, pay-per-call access is required and the agent cannot maintain persistent connections.

## Known failure modes

- Invalid or unreachable source URLs result in monitor creation failure or inactive status
- Payment not received causes request rejection with no monitors created
- Malformed request body missing required source list returns validation error
- Expired portfolio causes status URLs to return inactive or 404 responses
- Access token lost after initial return cannot be recovered — single-use delivery

## How this service works

One-call isolated Python execution, brokered machine work, source monitoring, and factual evidence for autonomous agents, payable with no account or API key.

## Output

Returns a JSON object containing a portfolio ID, list of monitor objects each with a unique monitor_id, a status_url for polling, and an access_token (returned only once after payment), plus an expires_at timestamp, the total source_count, and the configured check_interval_seconds.

## 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",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "type": "object",
     "required": [
      "sources"
     ],
     "properties": {
      "sources": {
       "type": "array",
       "items": {
        "type": "object",
        "required": [
         "url"
        ],
        "properties": {
         "url": {
          "type": "string",
          "format": "uri",
          "pattern": "^https://",
          "maxLength": 2048
         },
         "label": {
          "type": "string",
          "maxLength": 120
         },
         "webhook_url": {
          "type": "string",
          "format": "uri",
          "pattern": "^https://",
          "maxLength": 2048
         }
        },
        "additionalProperties": false
       },
       "maxItems": 10,
       "minItems": 2
      }
     },
     "additionalProperties": false
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST",
      "PUT",
      "PATCH"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "portfolio_id",
      "status",
      "source_count",
      "expires_at",
      "check_interval_seconds",
      "monitors"
     ],
     "properties": {
      "status": {
       "type": "string"
      },
      "monitors": {
       "type": "array"
      },
      "expires_at": {
       "type": "string",
       "format": "date-time"
      },
      "portfolio_id": {
       "type": "string"
      },
      "source_count": {
       "type": "integer"
      },
      "check_interval_seconds": {
       "type": "integer"
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "status": "ACTIVE",
  "monitors": [
   {
    "monitor_id": "mon_example",
    "status_url": "https://evidence.regulavita.com/v1/monitors/mon_example",
    "access_token": "returned_once_after_payment"
   }
  ],
  "expires_at": "2026-09-12T00:00:00+00:00",
  "portfolio_id": "portfolio_example",
  "source_count": 2,
  "check_interval_seconds": 21600
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/source-change-portfolio-monitor-e41ce969/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from evidence.regulavita.com](https://www.zero.xyz/host/evidence.regulavita.com/llms.txt)
