GitHub releases
GitHub release, tag, and changelog watches for public repositories
This Actor monitors public GitHub repositories for new releases, tags, and optional changelog pages, then emits summary-first rows with diffs when surfaces change. Live input is repositories[] with repo plus modes — README examples that send repos/semverFilter are not schema fields.
Not a private-registry or private-repo scanner. Not npm/PyPI package intelligence. Public GitHub HTTP only.
from $8.00 / 1,000 delivered monitoring result rows ($0.008 per new or changed row). No Actor Start. Unchanged runs are free.
Open GitHub Release & Tag Scraper on Apify
GitHub Release & Tag Scraper, not a neighboring Actor
Use this page for this Actor’s job. Use Website Content Extractor for One-shot page markdown; Use Status Page Incident Digest Monitor for Vendor incidents.
| This Actor | Website Content Extractor | Status Page Incident Digest Monitor | |
|---|---|---|---|
| Intent | GitHub Release & Tag Scraper | One-shot page markdown | Vendor incidents |
| Primary input | repositories |
urls | status pages |
| What it reads | Public sources listed on the Store page | HTML | status sites |
| Primary output | Dataset rows billed per live PPE | markdown | incident rows |
| Not this job | Not a private-registry or private-repo scanner. Not npm/PyPI package intelligence. Public GitHub HTTP only. | Not GitHub release diffs | Not GitHub tags/releases |
Store ID: taroyamada/github-release-monitor. Respect source terms, robots.txt, and rate limits.
Use cases
- Dependency upgrade watches
- Changelog diffs to on-call
- Tag-only monorepo monitors via modes
How is GitHub Release & Tag Scraper different from Website Content Extractor and Status Page Incident Digest Monitor?
GitHub Release & Tag Scraper (taroyamada/github-release-monitor): This Actor monitors public GitHub repositories for new releases, tags, and optional changelog pages, then emits summary-first rows with diffs when surfaces change. Live input is repositories[] with repo plus modes — README examples that send repos/semverFilter are not schema fields. Not a private-registry or private-repo scanner. Not npm/PyPI package intelligence. Public GitHub HTTP only. Website Content Extractor is for One-shot page markdown (input urls; HTML; markdown). Not GitHub release diffs. Status Page Incident Digest Monitor is for Vendor incidents (input status pages; status sites; incident rows). Not GitHub tags/releases.
What input is required?
Live required fields: repositories. exampleRunInput watches apify/crawlee (releases+tags) and axios/axios (releases+tags+changelog). Keep snapshotKey stable. datasetMode default changes_only. delivery enum includes unused email placeholder.
| Field | Type | Default | Notes |
|---|---|---|---|
repositories |
array required | empty |
Repositories (one summary row each). List of repositories to monitor. Each item supports id, name, repo, criticality, owner, tags, modes, releaseUrl, releaseNotesUrl, tagsUrl, changelogUrl, and optional surfaces overr… |
requestTimeoutSeconds |
integer | 30 |
Request timeout (seconds). HTTP request timeout per monitored source. |
userAgent |
string | empty |
Custom User-Agent. Optional User-Agent header for upstream requests. |
maxChars |
integer | 35000 |
Global max chars per source. Upper bound for extracted text per monitored source. |
delivery |
string | dataset |
Delivery mode. Where to send summary-first repository results. |
datasetMode |
string | changes_only |
Dataset mode. Choose every repository row, only changed rows, or only action-needed rows. |
webhookUrl |
string | empty |
Webhook URL. Required when delivery is webhook. |
notifyOnNoChange |
boolean | false |
Notify even if no change. When false, webhook delivery skips when there are no changed or action-needed repository summaries. |
snapshotKey |
string | github-release-monitor-snapshots |
Snapshot key. Key used for recurring snapshot persistence. Keep it stable so release and changelog drift stays comparable over time. |
diffMode |
string | line_summary |
Diff mode. Choose between line-level change summaries for reviewer context or hash-only detection when you only need alerting. |
summaryMaxLines |
integer | 12 |
Max diff lines per source. Maximum added and removed lines retained in each source change summary. |
concurrency |
integer | 2 |
Concurrency. Maximum number of monitored sources processed in parallel. |
batchDelayMs |
integer | 250 |
Inter-batch delay (ms). Delay between processing batches to reduce rate-limit pressure. |
nowIso |
string | empty |
Override current time (ISO). Optional deterministic timestamp override. |
dryRun |
boolean | false |
Dry run. Skip snapshot persistence and side-effect delivery. |
Published Store example run input (omitted fields take schema defaults):
{
"repositories": [
{
"id": "apify-crawlee",
"name": "Apify Crawlee",
"repo": "apify/crawlee",
"criticality": "high",
"owner": "Platform",
"tags": [
"crawler",
"sdk"
],
"modes": [
"releases",
"tags"
]
},
{
"id": "axios",
"name": "Axios",
"repo": "axios/axios",
"criticality": "standard",
"owner": "Developer Experience",
"tags": [
"dependency",
"http-client"
],
"modes": [
"releases",
"tags",
"changelog"
],
"changelogUrl": "https://raw.githubusercontent.com/axios/axios/v1.x/CHANGELOG.md"
}
],
"delivery": "dataset",
"datasetMode": "changes_only",
"notifyOnNoChange": false,
"snapshotKey": "github-release-monitor-quickstart",
"diffMode": "line_summary",
"summaryMaxLines": 12,
"concurrency": 2,
"batchDelayMs": 250,
"dryRun": false
}
Run GitHub Release & Tag Scraper on Apify
How do dataset, webhook, and dry-run delivery work?
delivery defaults to dataset on the live schema. Dataset output is the billable surface when rows are written. webhookUrl is used when delivery is webhook (and typically not during dryRun). dryRun true validates or samples without the usual dataset/webhook side effects described on the Store schema. datasetMode can limit emits to changes_only versus all. Unchanged runs that write zero default-dataset rows typically charge $0.00 on current PPE.
What does a result contain?
Published README Output Example / Sample Output JSON.
{
"repositoryId": "axios",
"repositoryName": "Axios",
"repo": "axios/axios",
"status": "changed",
"severity": "high",
"signals": [
"action_required",
"deprecation"
],
"recommendedActions": [
"Review the latest GitHub release notes with Platform and decide whether upgrade, regression-test, or compatibility work is needed.",
"Read the changelog diff and extract migration, configuration, or rollout work for Platform."
],
"repositorySummary": {
"changedSurfaces": [
"releases",
"changelog"
],
"actionNeeded": true
}
}
There is no published output JSON schema on the Store page.
How is GitHub Release & Tag Scraper priced?
Billing is pay per event. The live Store card is from $8.00 / 1,000 delivered monitoring result rows ($0.008 per new or changed row). No Actor Start. Unchanged runs are free. Current PPE:
| Event | Price | Emitted when |
|---|---|---|
apify-default-dataset-item (Delivered monitoring result row) |
$0.008 | Charged only when a new or changed monitoring result row is delivered. Unchanged runs are free. |
The published README Cost block is stale versus the live Store pricing tab. README Cost quotes actor-start $0.01 + dataset-item $0.003. Live: Delivered monitoring result row $0.008, no start. README extra examples use repos/includeTags/semverFilter which are not live fields. This page quotes live PPE only.
from $8.00 / 1,000 delivered monitoring result rows ($0.008 per new or changed row). No Actor Start. Unchanged runs are free.
See GitHub Release & Tag Scraper pricing on Apify
Limits to keep in mind
- Public GitHub only
- concurrency 1–10
- maxChars 1000–200000
- Not private repos
- README repos examples are stale vs repositories
- Respect source terms, robots.txt, and rate limits.
Open GitHub Release & Tag Scraper on Apify
Related pages
- Website Content Extractor — Fetch docs pages; this Actor diffs GitHub release surfaces.
- Status Page Incident Digest Monitor — Incidents, not changelogs.
- Docs & Changelog Drift Scraper — Docs/changelog pages, not GitHub releases/tags
- Chrome Web Store Extension Intelligence — Chrome extensions, not GitHub repos
- GitHub Repo & Dependency Scraper — manifests/deps, not releases/tags
- Tools