AlterLabAlterLab
PricingComparePlaygroundBlogDocsChangelog
    AlterLabAlterLab
    PricingComparePlaygroundBlogDocsChangelog
    IntroductionQuickstartInstallationYour First Request
    REST APIJob PollingAPI KeysSessions APINew
    OverviewPythonNode.js
    JavaScript RenderingOutput FormatsPDF & OCRCachingWebhooksJSON Schema FilteringWebSocket Real-TimeBring Your Own ProxyProAuthenticated ScrapingNewWeb CrawlingBatch ScrapingSchedulerChange DetectionCloud Storage ExportSpend LimitsOrganizations & TeamsAlerts & Notifications
    Structured ExtractionAIE-commerce ScrapingNews MonitoringPrice MonitoringMulti-Page CrawlingMonitoring DashboardAI Agent / MCPMCPData Pipeline to Cloud
    PricingRate LimitsError Codes
    From FirecrawlFrom ApifyFrom ScrapingBee / ScraperAPIFirecrawl v0 API ReferenceLegacy
    PlaygroundPricingStatus
    API Reference
    Auto-generated

    Monitors

    API reference for monitors endpoints.

    Auto-generated

    This page was generated from the OpenAPI spec. Runmake generate-docs to refresh after spec changes.

    POST /api/v1/monitors

    POST
    /api/v1/monitors

    Create Monitor

    Parameters

    NameTypeRequiredDescription
    namestring
    Required
    Name
    urlstring
    Required
    URL to monitor for changes
    formatsstring[]Optionalformats
    check_intervalstringOptionalCron expression for check frequency, e.g. '0 */6 * * *' (every 6h)Default: 0 */6 * * *
    timezonestringOptionalTimezoneDefault: UTC
    diff_mode"semantic" | "exact" | "selector"OptionalDiff algorithm: semantic (structural), exact (byte-level), selector (CSS selectors)Default: semantic
    monitor_selectorsstring[]Optionalmonitor_selectors
    notify_on"change" | "always"OptionalWhen to fire webhook: 'change' (only on diff) or 'always' (every check)Default: change
    optionsobjectOptionaloptions
    webhook_urlstringOptionalwebhook_url

    Request Example

    Bash
    curl -X POST https://api.alterlab.io/api/v1/monitors \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "example_name",
        "url": "example_url",
        "check_interval": "example_check_interval",
        "timezone": "example_timezone"
      }'

    Response Example

    JSON
    {
      "status": "ok"
    }

    GET /api/v1/monitors

    GET
    /api/v1/monitors

    List Monitors

    Parameters

    NameTypeRequiredDescription
    limitintegerOptionallimitDefault: 20
    offsetintegerOptionaloffsetDefault: 0
    active_onlybooleanOptionalactive_onlyDefault: False

    Request Example

    Bash
    curl -X GET https://api.alterlab.io/api/v1/monitors \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "monitors": [],
      "total": 0
    }

    GET /api/v1/monitors/{monitor_id}

    GET
    /api/v1/monitors/{monitor_id}

    Get Monitor

    Parameters

    NameTypeRequiredDescription
    monitor_idstring
    Required
    monitor_id

    Request Example

    Bash
    curl -X GET https://api.alterlab.io/api/v1/monitors/<monitor_id> \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "id": "example",
      "name": "example",
      "url": "example",
      "formats": "example",
      "check_interval": "example",
      "timezone": "example"
    }

    PATCH /api/v1/monitors/{monitor_id}

    PATCH
    /api/v1/monitors/{monitor_id}

    Update Monitor

    Parameters

    NameTypeRequiredDescription
    monitor_idstring
    Required
    monitor_id
    namestringOptionalname
    urlstringOptionalurl
    check_intervalstringOptionalcheck_interval
    timezonestringOptionaltimezone
    diff_mode"semantic" | "exact" | "selector"Optionaldiff_mode
    monitor_selectorsstring[]Optionalmonitor_selectors
    notify_on"change" | "always"Optionalnotify_on
    optionsobjectOptionaloptions
    webhook_urlstringOptionalwebhook_url

    Request Example

    Bash
    curl -X PATCH https://api.alterlab.io/api/v1/monitors/<monitor_id> \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "id": "example",
      "name": "example",
      "url": "example",
      "formats": "example",
      "check_interval": "example",
      "timezone": "example"
    }

    DELETE /api/v1/monitors/{monitor_id}

    DELETE
    /api/v1/monitors/{monitor_id}

    Delete Monitor

    Parameters

    NameTypeRequiredDescription
    monitor_idstring
    Required
    monitor_id

    Request Example

    Bash
    curl -X DELETE https://api.alterlab.io/api/v1/monitors/<monitor_id> \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "status": "ok"
    }

    GET /api/v1/monitors/{monitor_id}/diffs

    GET
    /api/v1/monitors/{monitor_id}/diffs

    List Changes

    Parameters

    NameTypeRequiredDescription
    monitor_idstring
    Required
    monitor_id
    limitintegerOptionallimitDefault: 20
    offsetintegerOptionaloffsetDefault: 0

    Request Example

    Bash
    curl -X GET https://api.alterlab.io/api/v1/monitors/<monitor_id>/diffs \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "changes": [],
      "total": 0
    }

    GET /api/v1/monitors/{monitor_id}/diffs/{change_id}

    GET
    /api/v1/monitors/{monitor_id}/diffs/{change_id}

    Get Change

    Parameters

    NameTypeRequiredDescription
    monitor_idstring
    Required
    monitor_id
    change_idstring
    Required
    change_id

    Request Example

    Bash
    curl -X GET https://api.alterlab.io/api/v1/monitors/<monitor_id>/diffs/<change_id> \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "id": "example",
      "schedule_id": "example",
      "previous_snapshot_id": "example",
      "current_snapshot_id": "example",
      "url": "example",
      "change_type": "example"
    }

    POST /api/v1/monitors/{monitor_id}/pause

    POST
    /api/v1/monitors/{monitor_id}/pause

    Pause Monitor

    Parameters

    NameTypeRequiredDescription
    monitor_idstring
    Required
    monitor_id

    Request Example

    Bash
    curl -X POST https://api.alterlab.io/api/v1/monitors/<monitor_id>/pause \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "id": "example",
      "name": "example",
      "url": "example",
      "formats": "example",
      "check_interval": "example",
      "timezone": "example"
    }

    POST /api/v1/monitors/{monitor_id}/resume

    POST
    /api/v1/monitors/{monitor_id}/resume

    Resume Monitor

    Parameters

    NameTypeRequiredDescription
    monitor_idstring
    Required
    monitor_id

    Request Example

    Bash
    curl -X POST https://api.alterlab.io/api/v1/monitors/<monitor_id>/resume \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "id": "example",
      "name": "example",
      "url": "example",
      "formats": "example",
      "check_interval": "example",
      "timezone": "example"
    }

    GET /api/v1/monitors/{monitor_id}/snapshots

    GET
    /api/v1/monitors/{monitor_id}/snapshots

    List Snapshots

    Parameters

    NameTypeRequiredDescription
    monitor_idstring
    Required
    monitor_id
    limitintegerOptionallimitDefault: 20
    offsetintegerOptionaloffsetDefault: 0

    Request Example

    Bash
    curl -X GET https://api.alterlab.io/api/v1/monitors/<monitor_id>/snapshots \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "snapshots": [],
      "total": 0
    }

    GET /api/v1/monitors/{monitor_id}/snapshots/{snapshot_id}

    GET
    /api/v1/monitors/{monitor_id}/snapshots/{snapshot_id}

    Get Snapshot

    Parameters

    NameTypeRequiredDescription
    monitor_idstring
    Required
    monitor_id
    snapshot_idstring
    Required
    snapshot_id

    Request Example

    Bash
    curl -X GET https://api.alterlab.io/api/v1/monitors/<monitor_id>/snapshots/<snapshot_id> \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "id": "example",
      "schedule_id": "example",
      "run_id": "example",
      "url": "example",
      "content_hash": "example",
      "content": {}
    }
    Last updated: March 2026

    On this page