mvnrepository.com APImvnrepository.com ↗
Search Maven artifacts, retrieve artifact details, licenses, categories, relocation notices, and popular rankings from MVNRepository via a simple REST API.
curl -X GET 'https://api.parse.bot/scraper/e0f94779-1992-4a91-8ea8-a82f17840fbc/get_artifact?name=junit-jupiter-api&group=org.junit.jupiter' \ -H 'X-API-Key: $PARSE_API_KEY'
Get details for a specific Maven artifact, including its relocation status, license, categories, and latest version information.
| Param | Type | Description |
|---|---|---|
| namerequired | string | Maven artifact ID (e.g., 'junit-jupiter-api', 'jetty'). |
| grouprequired | string | Maven group ID (e.g., 'org.junit.jupiter', 'org.mortbay.jetty'). |
{
"type": "object",
"fields": {
"name": "string — Maven artifact ID",
"group": "string — Maven group ID",
"title": "string — display title of the artifact",
"license": "string — license name",
"categories": "array of category name strings",
"description": "string — artifact description",
"is_relocated": "boolean — whether the artifact has been relocated",
"relocated_to": "object with group, name, url, full_name if relocated; null otherwise",
"latest_version": "string — latest version number",
"latest_version_date": "string — date of latest version release"
},
"sample": {
"data": {
"name": "junit-jupiter-api",
"group": "org.junit.jupiter",
"title": "JUnit Jupiter API",
"license": "EPL 2.0",
"categories": [
"Testing"
],
"description": "JUnit Jupiter is the API for writing tests using JUnit 5.",
"is_relocated": false,
"relocated_to": null,
"latest_version": "6.1.0-RC1",
"latest_version_date": "Apr 25, 2026"
},
"status": "success"
}
}About the mvnrepository.com API
This API exposes 3 endpoints for querying Maven artifact data from MVNRepository, covering artifact metadata, keyword search, and popularity rankings. The get_artifact endpoint returns fields including license, categories, is_relocated, relocated_to, latest_version, and latest_version_date for any artifact identified by its group and artifact ID. Use search to find artifacts by keyword with paginated results, or get_popular to retrieve the top-ranked artifacts by usage count.
Artifact Details
The get_artifact endpoint accepts two required parameters — group (e.g., org.junit.jupiter) and name (e.g., junit-jupiter-api) — and returns a structured object with the artifact's display title, description, license, categories array, latest_version, and latest_version_date. Notably, it also exposes relocation data: is_relocated is a boolean flag, and when true, relocated_to provides the replacement artifact's group, name, url, and full_name. This is useful for detecting deprecated or moved artifacts before adding them as dependencies.
Search
The search endpoint accepts a required query string and an optional page integer for pagination. Each page returns up to 10 results. Each result object includes group, name, title, description, is_relocated, relocated_to, and usages — the usage count as indexed on MVNRepository. Out-of-range page numbers return an empty results array rather than an error, so iterating pages until empty is a reliable way to exhaust results.
Popular Artifacts
The get_popular endpoint takes no inputs and returns a ranked list of artifacts by usage count. Each entry includes rank, group, name, title, description, and usages. This is useful for identifying the most widely adopted libraries in the Maven ecosystem at any point in time.
- Detect relocated or deprecated Maven artifacts before embedding them in a build file by checking
is_relocatedandrelocated_to. - Build a dependency audit tool that resolves artifact license information using the
licensefield fromget_artifact. - Power an IDE plugin that autocompletes Maven coordinates by querying the
searchendpoint with a keyword. - Track trending Java libraries by polling
get_popularand recording theusagesandrankfields over time. - Validate that a given
group/namepair exists and retrieve itslatest_versionbefore generating a POM template. - Categorize a set of dependencies by their
categoriesarray to audit third-party library usage by domain. - Identify the most common replacements for deprecated artifacts by aggregating
relocated_todata across search results.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does MVNRepository have an official developer API?+
What does the `get_artifact` endpoint return for relocated artifacts?+
is_relocated is set to true and relocated_to contains an object with the replacement artifact's group, name, url, and full_name. For non-relocated artifacts, relocated_to is null.Does the `search` endpoint return all available versions for each artifact?+
search results include only top-level artifact metadata — group, name, title, description, is_relocated, relocated_to, and usages — not a list of versions. Version details are available via get_artifact, which exposes latest_version and latest_version_date but not a full version history. You can fork this API on Parse and revise it to add a version-listing endpoint.Is there a limit to how many pages the `search` endpoint supports?+
results array rather than an error. There is no explicit total_results or total_pages field in the response, so callers must paginate until an empty page is returned.Does the API expose download counts or vulnerability data for artifacts?+
usages field in search and popular results), license names, categories, and relocation status, but does not include download statistics or security/vulnerability information. You can fork this API on Parse and revise it to add endpoints targeting those data points.