Build with live web data

How to Use TinyMonitor: API, MCP, Pricing, and Examples

Andrew Phan
how to use tinymonitor api

Keeping track of a changing page or topic usually means building a recurring workflow to fetch updates, compare them with previous results, and decide whether a change matters. TinyMonitor handles that monitoring loop for you.

It checks a public web page or search topic on a schedule and alerts you when a change matches a condition written in plain language. For example, your agent can watch the FAA status page every hour and report disruptions at SFO.

What TinyMonitor replaces

TinyMonitor replaces a monitoring loop you would otherwise build yourself.

  1. Schedule a check.
  2. Fetch a page or run a search.
  3. Compare the result with the previous check.
  4. Ask a model whether the change matches your condition.

TinyMonitor includes that last step in the per-check price. It monitors page or search-result content rather than server availability, so it does not replace an uptime monitor.

Naming note: The dashboard and API use the name Monitor, and the REST endpoint is /v1/monitors.

Page monitors vs. topic monitors

TinyMonitor supports two monitor types: page monitors for watching a specific public URL and topic monitors for watching new search results around a query.

CapabilityPage monitorTopic monitor
TargetOne public URLOne search query
Change detectionPage content differs from the previous check, then TinyMonitor judges the change against your conditionAt least one result URL is new, then TinyMonitor judges the result against your condition
ScheduleFive-field cron expressionFive-field cron expression, with checks at least 30 minutes apart
Example jobsTrack a pricing page or documentation pageTrack news about a funding event or policy change

Page monitors use TinyFetch and check public pages, not sites behind authentication. For a one-off retrieval, your agent can use TinySearch or TinyFetch. When your agent must operate a page or complete a task behind a login, use TinyAgent. For a broader comparison, see which TinyFish API to use.

Set up a TinyMonitor in the dashboard

When you have no monitors yet, the TinyMonitor dashboard shows four Monitor ideas cards. Selecting one pre-fills the form.

TinyMonitor dashboard
The TinyMonitor dashboard shows your monitors, recent activity, and scheduled check frequency.
  1. Choose Page monitor and enter a public URL. For a topic monitor, enter a search topic and choose how far back to look (past hour, day, 7 days, 30 days, or any time).
  2. In What do you want to monitor for?, write the condition that should trigger an alert. For example, a Yahoo Finance monitor could use "Alert me when the BTC-USD price moves by at least 2% between checks." If you leave the field blank, every detected change counts.
  3. Set the schedule. The dashboard defaults to Every day at 09:00 in your browser's time zone.
  4. Choose a delivery method. Email to your account address is on by default, and you can also add a webhook.
TinyMonitor configuration
Configure what TinyMonitor should watch, the condition that matters, how often it should check, and where updates should be sent.

Write the purpose as a testable event condition. For example, "Alert me when the docs announce a deprecation date. Ignore other edits."

How to read TinyMonitor results

TinyMonitor runs the first check immediately and stores it as the baseline without sending an alert. After that, each check shows one of these states:

  • Meaningful change
  • No change
  • Changed, nothing met your goal
  • Changed, but could not judge

The distinction matters most when content changes but does not meet your monitoring condition.

TinyMonitor history showing history and result states
TinyMonitor distinguishes meaningful changes from updates that do not meet the monitoring condition.

Changed, nothing met your goal means TinyMonitor detected a change but did not alert you, because the change didn't meet your stated condition. On an hourly BTC monitor, that filtering keeps routine changes quiet and alerts only when the price crosses your threshold.

When a change matches your purpose, the check shows:

  • A one- to three-sentence summary that keeps numbers, prices, and dates exactly as written.
  • The purpose the change was judged against.
  • A line-by-line diff.
TinyMonitor detailed change view
A matched change includes a summary, the condition it was evaluated against, and a line-by-line diff.

The alert email uses the monitor name and the summary's first sentence as the subject. The body lists up to 10 changed lines or new results.

Create a TinyMonitor with the API

TinyMonitor uses the same TinyFish API key and Wallet as TinySearch and TinyFetch. Send the key in the X-API-Key header. The following monitor checks the FAA's National Airspace System Status page each hour for disruptions at SFO.

Shell
curl -X POST "https://agent.tinyfish.ai/v1/monitors" \
  -H "X-API-Key: $TINYFISH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "fetch",
    "name": "SFO disruption alerts",
    "config": { "url": "https://nasstatus.faa.gov/", "format": "markdown" },
    "schedule_cron": "0 * * * *",
    "purpose": "Ground stops, closures, and delays over 30 minutes at SFO reported by the FAA.",
    "webhook_url": "https://example.com/webhooks/monitor"
  }'

A successful request returns HTTP 201 with the monitor and its baseline check. Cron expressions run in UTC unless they start with a time-zone prefix such as CRON_TZ=America/New_York 0 9 * * 1-5 (TinyMonitor API reference, as of Oct 1, 2026).

Create a topic monitor

A topic monitor uses the same request structure with "type": "search". The value "recency_minutes": 1440 restricts the search to the previous 24 hours.

JSON
"config": { "query": "Research Engineer jobs at AI startups in San Francisco", "recency_minutes": 1440 }

Each topic-monitor run returns results and lists the positions of new results (URLs not seen in the previous run) in new_result_positions.

Pause, run, or remove a monitor

The REST API lets your agent pause a monitor, run a check immediately, or remove the monitor.

  • Pause the monitor. Send PATCH with {"status": "paused"}.
  • Run a check now. Send POST /v1/monitors/{id}/runs. A manual run does not send notifications.
  • Remove the monitor. Send DELETE for the monitor resource.

You cannot change a monitor's type or target after creation. See the TinyMonitor API reference for the remaining endpoints.

Receive completed checks through webhooks

TinyMonitor sends a webhook for every completed scheduled check, including checks that find no content change, and retries a failed delivery up to three times. The event contains the raw result and uses search_monitor_id for topic monitors or fetch_monitor_id for page monitors (TinyMonitor documentation).

JSON
{ "fetch_monitor_id": "e047c12d-...", "id": "...", "results": [ ... ], "errors": [] }

The webhook event does not include the diff, judgment, or summary. You see those in the dashboard and in the alert email.

Create a TinyMonitor through MCP

The TinyFish MCP server includes a create_monitor tool (TinyFish MCP documentation). With TinyFish connected in Claude or ChatGPT, your agent can create the monitor from the instruction "Monitor https://nasstatus.faa.gov/ every hour for ground stops at SFO."

Monitors created through the API or MCP start with email notifications off, and the API cannot turn them on. To get judged alerts by email, turn on Email updates under Notifications in the monitor's Configuration panel.

TinyMonitor pricing and limits

TinyMonitor pricing is based on completed checks, so the monitoring frequency determines most of the recurring cost. Page and topic monitors cost the same: $0.005 per completed check.

ScheduleCompleted checks per average monthCost at $0.005 per completed check
Daily~30~$0.15
Hourly~730~$3.65
Every 30 minutes~1,460~$7.30

An average month here is 365/12 days, assuming every scheduled check completes. Prices and limits in this section are from the TinyMonitor documentation as of Oct 1, 2026.

  • Included in each check: The per-check price includes email delivery, webhooks, and change judgment. Failed checks are not billed.
  • Checks that are also billed: The baseline check and manual runs.
  • Automatic pause: TinyMonitor pauses a monitor when your Wallet runs out of funds or after four consecutive scheduled checks fail, then sends an email.
  • Account limit: Up to 50 active monitors per account, and each monitor targets one URL or one query.

Current limitations

These limitations are current as of Oct 1, 2026:

  • No native Slack delivery. Use a webhook.
  • No CLI or SDK support. Use the REST API or MCP.
  • No CSS-selector scoping. Describe the part of the page you care about in the purpose instead.
  • No domain filter on topic monitors.

TinyMonitor does not guarantee it catches every page or topic change. Keep topic queries narrow so new results stay relevant to the job.

TinyMonitor use cases

  • Price thresholds: an asset price or a product plan crossing a set threshold.
  • Page events: registration dates being published, an earnings release, or a new changelog entry.
  • Topic updates: new search results about a funding round or a policy change.
  • Hiring: newly indexed roles that match a narrow company and job query.
  • Combined coverage: a topic monitor for a competitor's announcements, plus page monitors on their pricing and changelog pages.

Ready to try TinyMonitor? Create a monitor in the TinyMonitor dashboard, or use the TinyMonitor documentation to build one through the REST API. For one-off retrieval, you can also start with TinySearch and TinyFetch at no cost.

AI disclosure

Content on this website may be created or refined with the assistance of AI tools and is subject to human editorial review.

FAQ

Questions, answered.

What is TinyMonitor?

What is the difference between a page monitor and a topic monitor?

Can TinyMonitor monitor websites behind a login? No

How much does TinyMonitor cost?

Can I create a TinyMonitor through the API or MCP?

Get started

Start building.

No credit card. No setup. Run your first operation in under a minute.

Get $8 in Wallet fundsRead the docs