# Changelog Radar for SaaS (`seeb/changelog-radar-for-saas`) Actor

Turn SaaS changelogs and release notes into product-intelligence rows with release date, feature area, change type, launch signal, and competitive impact.

- **URL**: https://apify.com/seeb/changelog-radar-for-saas.md
- **Developed by:** [Techionik](https://apify.com/seeb) (community)
- **Categories:** Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $25.00 / 1,000 changelog signals

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Changelog Radar for SaaS

Turn SaaS changelogs and release notes into product-intelligence rows with release date, feature area, change type, launch signal, and competitive impact.

Changelog Radar for SaaS helps product marketers, founders, sales teams, and competitive-intelligence analysts watch public release notes without drowning in raw changelog text. It extracts what changed, who it matters to, and why the update may affect positioning or roadmap decisions.

This actor is designed for focused marketplace research runs. You can give it public URLs, paste copied source text, or combine both. URL fetching is useful for public HTML pages; pasted text is useful when a site uses heavy JavaScript, login walls, CAPTCHA, or restrictive anti-bot controls that should not be bypassed.

### Who Uses It

- Product marketers
- Competitive intelligence teams
- SaaS founders and operators
- Sales enablement teams
- Developer relations and platform teams

### What It Extracts

- `vendorName` - SaaS vendor, product, framework, or platform mentioned in the update.
- `changelogUrl` - Original changelog, release note, or pasted source URL.
- `releaseTitle` - Release note title or concise update heading.
- `releaseDate` - Visible date connected to the update.
- `productArea` - Product area such as API, integration, security, analytics, admin, checkout, or developer experience.
- `changeType` - Type of update such as launched, improved, fixed, beta, deprecated, patched, or integrated.
- `featureOrFix` - Specific feature, fix, integration, or deprecation mentioned.
- `customerSegment` - Likely affected customer segment such as enterprise, developers, admins, merchants, or security teams.
- `competitiveImpact` - Why this release matters for competitor monitoring or product strategy.
- `urgencySignal` - Signal for immediate review, such as security patch, deprecation, beta launch, or major integration.
- `evidenceText` - Short release-note evidence phrase.

### Why This Actor Is Useful

SaaS updates often reveal roadmap direction, enterprise readiness, security posture, and integration strategy. This actor gives teams a structured way to monitor competitor releases.

### Input

- `startUrls` - Public pages to fetch and analyze.
- `sourceTexts` - Optional pasted source snippets for pages that are blocked, login-gated, JavaScript-heavy, or easier to collect manually.
- `maxPagesPerStartUrl` - Same-domain crawl depth for each URL. Use a low value for precise runs.
- `maxConcurrency` - Parallel request count.
- `proxyConfiguration` - Optional Apify Proxy settings for public pages that rate-limit normal requests.

### Example Input

```json
{
    "startUrls": [
        {
            "url": "https://github.blog/changelog/"
        }
    ],
    "sourceTexts": [
        "July 18, 2026: FlowBase launched beta support for Salesforce field mapping, improved API rate-limit headers, and fixed webhook retry failures for enterprise customers."
    ],
    "maxPagesPerStartUrl": 2,
    "maxConcurrency": 2
}
```

### Example Output

```json
{
    "vendorName": "FlowBase",
    "changelogUrl": "pasted://changelog-1",
    "releaseTitle": "FlowBase launched beta support for Salesforce field mapping",
    "releaseDate": "July 18, 2026",
    "productArea": "integration",
    "changeType": "beta launch",
    "featureOrFix": "Salesforce field mapping and API rate-limit headers",
    "customerSegment": "enterprise customers",
    "competitiveImpact": "Signals deeper CRM workflow investment and enterprise-readiness messaging.",
    "urgencySignal": "beta launch",
    "evidenceText": "FlowBase launched beta support for Salesforce field mapping."
}
```

### How It Works

1. The actor normalizes every URL and pasted text item.
2. Public URLs are fetched with a browser-like user agent and a clear timeout.
3. HTML pages are converted into readable page text while scripts, styles, iframes, and hidden noise are removed.
4. The actor applies Changelog Radar for SaaS-specific extraction rules rather than a generic page-summary template.
5. Only rows with useful actor-specific information are saved to the dataset.
6. A run summary is saved to the key-value store for quick review.

### Practical Workflows

- Monitor competitor release notes weekly.
- Detect new integrations, security changes, or enterprise features.
- Feed launch signals into sales enablement.
- Track deprecated features that may create migration opportunities.

### Reliability Notes

- Best results come from public HTML pages or pasted snippets that visibly contain the target signal.
- For JavaScript-heavy sites, paste the relevant text or use URLs that return readable HTML.
- The actor does not bypass logins, paywalls, CAPTCHA, private systems, or website restrictions.
- Some fields may be empty when the source does not contain that information.
- Use smaller crawl limits for broad portals and larger limits only for well-structured sites.

### Limitations

- This actor extracts public or user-provided visible text only.
- It is not a legal-access tool for restricted procurement portals, private retailer dashboards, closed review platforms, account-only changelogs, or internal documentation.
- Results should be reviewed before making procurement, legal, inventory, engineering, or sales decisions.

### Search Keywords

changelog radar for saas, changelog radar for saas, vendor name, changelog url, release title, release date, product area, change type, feature or fix, customer segment, competitive impact, urgency signal, evidence text

# Actor input Schema

## `startUrls` (type: `array`):

Add public changelog/release-note URLs or paste update text from SaaS changelog pages, product blogs, GitHub releases, or developer update feeds.

## `sourceTexts` (type: `array`):

Optional pasted snippets. Use this for blocked pages, login-gated portals you can view manually, newsletters, exported notes, or copied page sections.

## `maxPagesPerStartUrl` (type: `integer`):

How many same-domain pages to analyze from each start URL. Keep this low for focused, low-cost runs.

## `maxConcurrency` (type: `integer`):

How many pages to analyze at the same time.

## `proxyConfiguration` (type: `object`):

Optional proxy settings. Use Apify Proxy for public pages that rate-limit normal datacenter requests.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://github.blog/changelog/"
    },
    {
      "url": "https://nodejs.org/en/blog/release"
    }
  ],
  "sourceTexts": [
    "July 18, 2026: FlowBase launched beta support for Salesforce field mapping, improved API rate-limit headers, and fixed webhook retry failures for enterprise customers.",
    "Release notes 2026-08-02: CartPilot added Shopify Markets integration, new checkout analytics dashboard, and admin controls for multi-store teams."
  ],
  "maxPagesPerStartUrl": 3,
  "maxConcurrency": 3,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

## `dataset` (type: `string`):

No description

## `summary` (type: `string`):

No description

## `rawJson` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "startUrls": [
        {
            "url": "https://github.blog/changelog/"
        },
        {
            "url": "https://nodejs.org/en/blog/release"
        }
    ],
    "sourceTexts": [
        "July 18, 2026: FlowBase launched beta support for Salesforce field mapping, improved API rate-limit headers, and fixed webhook retry failures for enterprise customers.",
        "Release notes 2026-08-02: CartPilot added Shopify Markets integration, new checkout analytics dashboard, and admin controls for multi-store teams."
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("seeb/changelog-radar-for-saas").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "startUrls": [
        { "url": "https://github.blog/changelog/" },
        { "url": "https://nodejs.org/en/blog/release" },
    ],
    "sourceTexts": [
        "July 18, 2026: FlowBase launched beta support for Salesforce field mapping, improved API rate-limit headers, and fixed webhook retry failures for enterprise customers.",
        "Release notes 2026-08-02: CartPilot added Shopify Markets integration, new checkout analytics dashboard, and admin controls for multi-store teams.",
    ],
}

# Run the Actor and wait for it to finish
run = client.actor("seeb/changelog-radar-for-saas").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "startUrls": [
    {
      "url": "https://github.blog/changelog/"
    },
    {
      "url": "https://nodejs.org/en/blog/release"
    }
  ],
  "sourceTexts": [
    "July 18, 2026: FlowBase launched beta support for Salesforce field mapping, improved API rate-limit headers, and fixed webhook retry failures for enterprise customers.",
    "Release notes 2026-08-02: CartPilot added Shopify Markets integration, new checkout analytics dashboard, and admin controls for multi-store teams."
  ]
}' |
apify call seeb/changelog-radar-for-saas --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=seeb/changelog-radar-for-saas",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/acts/33JioWjLiJ3tCilF7/builds/htj7Zzh9f22VNH0PG/openapi.json
