ParseForge Scrapers

Quay.io Container Tags Scraper

parseforge/quay-io-tags-scraper

Developer toolsAutomationIntegrations

Scrapes Quay.io container tags by repository slug and returns each tag as a flat row with name, manifest digest, size, and last modified date.

Run this scraper See the API call
Total users
1
Monthly active
0
Total runs
87
Bookmarked
0
Rating
Not rated yet
Last modified
9 days ago

Overview

ParseForge

Quay.io Container Tags Scraper

Scrape Quay.io container tags from any public repository, up to a million per run. Every tag comes with its name, manifest digest, size, last modified date, and computed signals. No login or API key. Export to CSV, JSON, Excel, or XML.

Quay.io's official API needs an OAuth token and rate-limits you. This reads the public tag pages directly, filtered by active status or exact tag name, and returns each match in one fixed schema. It is the fastest way to monitor container image releases without touching the registry API.

Who uses it What they scrape Quay.io for
DevOps engineers Which image tags a project published this week
Security researchers Which tags are still active for a public image
Platform teams Which tags exist before pinning a deployment
Data analysts How often a repository publishes new tags

What it does

This Actor collects Quay.io container tags by repository slug and returns each one as a flat row.

  • ๐Ÿท๏ธ Tag listing: every tag name, manifest digest, size, and last modified date.
  • ๐Ÿ” Specific tag lookup: pass one exact tag name and get that record.
  • โœ… Active-only filter: exclude expired or hidden tags automatically.
  • ๐Ÿ“ฆ Flat output: one row per tag, ready for CSV, JSON, Excel, or XML.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with Quay.io data

๐Ÿ“ˆ Monitor release cadence.

A DevOps engineer runs the Actor daily on coreos/etcd and charts how often new tags appear to plan upgrade windows.

๐Ÿ”’ Audit active tags.

A security researcher scrapes prometheus/prometheus with onlyActiveTags true to list every tag still pullable for a CVE sweep.

๐Ÿ“Œ Pin exact versions.

A platform team passes a specific tag like v3.5.0 to confirm its manifest digest and size before writing a deployment manifest.

๐Ÿ—‚๏ธ Build an image inventory.

A data analyst exports all tags from a namespace to CSV and joins them with internal asset records for compliance reporting.

Why choose this scraper

What you get
No API token Reads public tag pages directly, no OAuth or registry credentials
One fixed schema Every tag returns the same fields, no nested JSON to flatten
Active-only filter Skip expired or hidden tags before they hit your dataset
Exact tag lookup Pass a specific tag name and get one row, no pagination

How it compares

This Actor focuses on tag-level data for a single repository, while the competitor searches across repositories and returns repository metadata, not tags.

Feature ParseForge Quay Containers Scraper - Repository Search Data
Tag name Yes Not listed
Manifest digest Yes Not listed
Tag size Yes Not listed
Last modified date Yes Not listed
Active-only filter Yes Not listed
Specific tag lookup Yes Not listed
Repository search Not listed Yes

Configure the run

Drive the Actor from a repository slug, an optional exact tag name, and a maximum item count. Filters run as each tag is read so only matches reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

{
 "repository": "coreos/etcd",
 "maxItems": 10
}

A larger pull:

{
 "repository": "coreos/etcd",
 "maxItems": 200
}

Pricing

Pay-per-result: $0.0085 per result collected. You pay only for the results written to your dataset.

Results collected Approximate cost
100 results $0.85
1,000 results $8.50
10,000 results $85.00

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the Quay.io Container Tags Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to Quay.io through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/quay-io-tags-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check that the repository slug is correct and public. If onlyActiveTags is true, the repository may have no active tags. Try setting it to false.

Why does the run stop before maxItems?

The repository may have fewer tags than maxItems, or onlyActiveTags is filtering out expired tags. Check the repository on Quay.io directly.

Why is my specificTag not found?

The tag name must match exactly, including case. Verify the tag exists on the repository's public tag page.

Why do I get an error about the repository?

The repository may be private, renamed, or deleted. Confirm the slug is correct and the repository is public.

Can I scrape multiple repositories in one run?

No, the Actor accepts one repository per run. Run it multiple times or use Apify's actor chaining to loop over a list.

FAQ

Question Answer
Do I need a Quay.io account or API token? No. The Actor reads public tag pages directly, so no login, OAuth, or registry credentials are required.
Can I scrape private repositories? No. Only public repositories are accessible. Private repositories require authentication that this Actor does not support.
What is the repository input format? Use the namespace/name slug exactly as it appears in the Quay.io URL, for example coreos/etcd or prometheus/prometheus.
How do I get only one specific tag? Set the specificTag field to the exact tag name. The Actor returns that tag and skips pagination.
What does onlyActiveTags do? When true, the Actor excludes expired or hidden tags and returns only tags that are currently pullable.
How many tags can I collect in one run? Set maxItems to any number from 1 to 1,000,000. The Actor stops after collecting that many tags.
What output formats are supported? The dataset can be exported to CSV, JSON, Excel, or XML from the Apify platform.
Does the Actor follow pagination? Yes, it pages through all tag listings until maxItems is reached or no more tags exist.
Can I run this on a schedule? Yes, use Apify schedules to run the Actor hourly, daily, or weekly and track tag changes over time.
What fields does each tag row contain? Each row includes the tag name, manifest digest, size, last modified date, and other metadata. See the sample output for the full schema.

Related actors

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Red Hat, Inc. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

Input

FieldTypeWhat it doesDefault
repository string Repository slug in `namespace/name` form (e.g. `coreos/etcd`, `prometheus/prometheus`). coreos/etcd
maxItems integer Maximum number of tags to collect per run. 10
onlyActiveTags boolean If true, expired or hidden tags are excluded. true
specificTag string Optional exact tag name (overrides pagination, returns only that tag). not set

Pricing

from $7.50 per 1,000 results

Charged forWhat it isPrice each
result Single result in the default dataset. $0.0075 to $0.0085

Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.

API

One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.

POST ยท run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~quay-io-tags-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "helloWorld": 123
  }'

Examples

Input that runs as-is.

input.json
{
  "helloWorld": 123
}

Reviews

No reviews yet. Be the first.

Issues

We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.

Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.

Related scrapers

Run Quay.io Container Tags Scraper on Apify All scrapers