Rohith
Rohith

Reputation: 106

Rest API to get list of artifacts from Nexus OSS 3.x Repository

I have created a raw repository in Nexus 3.x and I'm able to upload artifacts to the same. Now I want get the list of all artifacts residing inside that repo using Rest API. Any help is appreciated.

Upvotes: 7

Views: 23268

Answers (2)

Pierluigi Vernetto
Pierluigi Vernetto

Reputation: 2050

in the current Nexus3.14.0-04 the REST API has become final (no longer "beta") and the curl you need is:

curl -X GET "http://localhost:8081/service/rest/v1/components?repository=central" -H "accept: application/json"

this will return each "component" (group, name, version) with all its assets = each individual file (pom, sha1, md5, jar) who constitue the component

The result is a JSON string.

If instead you want to perform a COMPONENTS search - based on a groupId, artifactId - you can use this curl:

curl -X GET "http://localhost:8081/service/rest/v1/search?repository=central&format=maven2&maven.groupId=com.fasterxml.jackson.core&maven.artifactId=jackson-core&maven.extension=jar" -H "accept: application/json"

this returns COMPONENTS with child ASSETS.

The variant to retrieve only the ASSETS, without grouping them by COMPONENT, is GET /service/rest/v1/search/assets?repository=central&format=maven2&maven.groupId=com.fasterxml.jackson.core&maven.artifactId=jackson-core&maven.extension=jar

Upvotes: 7

Djidiouf
Djidiouf

Reputation: 840

You can use the - still in beta - new API for Nexus. It's available by default on the version 3.3.0 and more: http://localhost:8082/swagger-ui/

Basically, you retrieve the json output from this URL: http://localhost:8082/service/siesta/rest/beta/assets?repositoryId=YOURREPO

Only 10 records will be displayed at a time and you will have to use the continuationToken provided to request the next 10 records for your repository by calling: http://localhost:8082/service/siesta/rest/beta/assets?continuationToken=46525652a978be9a87aa345bdb627d12&repositoryId=YOURREPO

More information here: http://blog.sonatype.com/nexus-repository-new-beta-rest-api-for-content

Upvotes: 3

Related Questions