Client library for Available API endpoints
npm install --save @datafire/versioneye
let versioneye = require('@datafire/versioneye').create();
.then(data => {
console.log(data);
});
VersionEye is a cross-platform search engine for free/libre/open source software libraries.
This endpoint shows all imported repositories from your Github account.
This enpoint expects that you have a GitHub account connected and the token is still valid. If that is not the case please visit https://www.versioneye.com/settings/connect. to update your GitHub credentials.
If it shows no or old data, then you can use the github/sync
endpoint
to update your account with the current meta data from GitHub.
versioneye.getGithub({}, context)
- input
object
- lang
string
: Filter by language - private
boolean
: Filter by visibility - org_name
string
: Filter by name of organization - org_type
string
: Filter by type of organization - page
string
: Number of page - only_imported
boolean
: Show only imported repositories
- lang
Output schema unknown
This endpoint is registered as service hook on GitHub. It triggers a project re-parse on each git push.
versioneye.postGithubHookProjectId({
"project_id": ""
}, context)
- input
object
- project_id required
string
: Project ID
- project_id required
Output schema unknown
Reimports ALL GitHub Repositories. This Endpoint fetches meta information to all repositories in your GitHub account. Meta information such as repo name, branches and supported project files.
This endpoint works asynchronously and returns a status code. The status code is either running or done.
versioneye.getGithubSync(null, context)
This action has no parameters
Output schema unknown
This Endpoint deletes a project on VersionEye!
Due the limits of our current API framework, the repo key has to be encoded as url-safe string. That means all '/' has to be replaced with colons ':' and '.' has to be replaced with '~'.
For example, repository with fullname versioneye/veye
has to transformed
to versioneye:veye
.
versioneye.deleteGithubRepoKey({
"repo_key": ""
}, context)
- input
object
- repo_key required
string
: encoded repo-key - branch
string
: the name of the branch
- repo_key required
Output schema unknown
This Endpoint returns detailed information about a GitHub repository.
Due the limits of our current API framework, the repo key has to be encoded as url-safe string. That means all '/' has to be replaced with colons ':' and '.' has to be replaced with '~'.
For example, repository with fullname versioneye/veye
has to transformed
to versioneye:veye
.
versioneye.getGithubRepoKey({
"repo_key": ""
}, context)
- input
object
- repo_key required
string
: encoded repo name with optional branch info.
- repo_key required
Output schema unknown
Use this Endpoint to import a project file from GitHub. This will create a new project on VersionEye.
Due the limits of our current API framework, the repo key has to be encoded as url-safe string. That means all '/' has to be replaced with colons ':' and '.' has to be replaced with '~'.
For example, repository with fullname versioneye/veye
has to transformed
to versioneye:veye
.
versioneye.postGithubRepoKey({
"repo_key": ""
}, context)
- input
object
- repo_key required
string
: encoded repo name - branch
string
: the name of the branch - file
string
: the project file (default is Gemfile)
- repo_key required
Output schema unknown
On Swagger, you can create session by adding additional parameter :api_key.
versioneye.getMe(null, context)
This action has no parameters
Output schema unknown
shows comments of authorized user
versioneye.getMeComments({}, context)
- input
object
- page
integer
: page number for pagination
- page
Output schema unknown
shows the packages you are following
versioneye.getMeFavorites({}, context)
- input
object
- page
integer
: page number for pagination
- page
Output schema unknown
This Endpoint returns the 30 latest notifications.
If there are new versions out there for software packages you follow directly on VersionEye, then each new version is a new notification for your account.
versioneye.getMeNotifications({}, context)
- input
object
- page
integer
: Specify page for paging
- page
Output schema unknown
This endpoint requires the API key from a user. The result is a set of organisations and their API keys.
versioneye.getOrganisations(null, context)
This action has no parameters
Output schema unknown
Find a detailed description here: https://github.com/versioneye/versioneye-api/blob/master/docs/api/v2/organisation.md
versioneye.getOrganisationsOrgaNameInventory({
"orga_name": 0
}, context)
- input
object
- team_name
string
: Filter by team name - language
string
: Filter by programming language - project_version
string
: Filter down by project version - post_filter
string
: Post processing filter. Possible values are 'ALL', 'duplicates_only', 'show_duplicates' - orga_name required
integer
- team_name
Output schema unknown
Returns the inventory diff object
versioneye.getOrganisationsOrgaNameInventoryDiff({
"orga_name": 0
}, context)
- input
object
- inventory_diff_id
string
: ID of the inventory diff object - orga_name required
integer
- inventory_diff_id
Output schema unknown
This Endpoint takes 2 inventory filters and calculates the difference between them. The diff object contains wich items have been removed and/or added compared to the inventory1 filter. The response of this Endpoint is the ID of the diff object, which is calculated async in the background.
versioneye.postOrganisationsOrgaNameInventoryDiff({
"orga_name": 0
}, context)
- input
object
- f1_team_name
string
: Inventory1, filter by team name - f1_language
string
: Inventory1, filter by programming language - f1_project_version
string
: Inventory1, filter down by project version - f1_post_filter
string
: Inventory1, post processing filter. Possible values are 'ALL', 'duplicates_only', 'show_duplicates' - f2_team_name
string
: Inventory2, filter by team name - f2_language
string
: Inventory2, filter by programming language - f2_project_version
string
: Inventory2, filter down by project version - f2_post_filter
string
: Inventory2, post processing filter. Possible values are 'ALL', 'duplicates_only', 'show_duplicates' - orga_name required
integer
- f1_team_name
Output schema unknown
Returns the list of projects
versioneye.getOrganisationsOrgaNameProjects({
"orga_name": 0
}, context)
- input
object
- orga_name required
integer
- orga_name required
Output schema unknown
Returns the list of teams
versioneye.getOrganisationsOrgaNameTeams({
"orga_name": 0
}, context)
- input
object
- orga_name required
integer
- orga_name required
Output schema unknown
This resource returns same results as our web application. But you get it as JSON objects - the result is an JSON array of product objects.
When there's no match for the query, the result array will be empty.
versioneye.getProductsSearchQ({
"q": ""
}, context)
- input
object
- q required
string
: Query string. At least 2 characters. - lang
string
: Filter results by programming languages; - g
string
: Filter by GroupID. This is Java/Maven specific - page
integer
: Specify page for paging
- q required
Output schema unknown
This Endpoint expects a SHA value and returns the corresponding product to it, if available.
versioneye.getProductsShaSha({
"sha": 0
}, context)
- input
object
- sha required
integer
- sha required
Output schema unknown
Please replace all slashes /
through colons :
and all dots .
through ~
!
Example: The clojure package yummy.json/json
has to be transformed to yummy~json:json
.
-
API returns 404, when the product with given product key doesnt exists.
-
Response 302 means that you didnt encode prod_key correctly.* (Replace all dots & slashes ) *
versioneye.getProductsLangProdKey({
"lang": "",
"prod_key": ""
}, context)
- input
object
- lang required
string
: "Name of programming language" - prod_key required
string
: "Encoded product key, replace all/
and.
- prod_version
string
: "Version string"
- lang required
Output schema unknown
Please replace all slashes /
through colons :
and all dots .
through ~
!
Example: The clojure package yummy.json/json
has to be transformed to yummy~json:json
.
- 400 - bad request; you used wrong product key;
- 401 - unauthorized - please append api_key
- 403 - forbidden; you are not authorized; or just missed api_key;
versioneye.deleteProductsLangProdKeyFollow({
"lang": "",
"prod_key": ""
}, context)
- input
object
- lang required
string
: Programming language - prod_key required
string
: Package specifier
- lang required
Output schema unknown
Please replace all slashes /
through colons :
and all dots .
through ~
!
Example: The clojure package yummy.json/json
has to be transformed to yummy~json:json
.
This resource will returns the status code 404 if there is no product for the given prod_key.
versioneye.getProductsLangProdKeyFollow({
"lang": "",
"prod_key": ""
}, context)
- input
object
- lang required
string
: "Name of programming language" - prod_key required
string
: Package specifier
- lang required
Output schema unknown
Please replace all slashes /
through colons :
and all dots .
through ~
!
Example: The clojure package yummy.json/json
has to be transformed to yummy~json:json
.
It will respond 404, when you are using wrong product key or encode it uncorrectly.
versioneye.postProductsLangProdKeyFollow({
"lang": "",
"prod_key": ""
}, context)
- input
object
- lang required
string
: Programming language - prod_key required
string
: Package product key.
- lang required
Output schema unknown
It returns the references of a package.
Please replace all slashes /
through colons :
and all dots .
through ~
!
Example: The clojure package yummy.json/json
has to be transformed to yummy~json:json
.
This resource will return the status code 404 if there is no product for the given prod_key or the product has 0 references.
versioneye.getProductsLangProdKeyReferences({
"lang": "",
"prod_key": ""
}, context)
- input
object
- lang required
string
: Language - prod_key required
string
: Product Key - page
integer
: Page for paging
- lang required
Output schema unknown
Please replace all slashes /
through colons :
and all dots .
through ~
!
Example: The clojure package yummy.json/json
has to be transformed to yummy~json:json
.
-
API returns 404, when the product with given product key doesnt exists.
-
Response 302 means that you didnt encode prod_key correctly.* (Replace all dots & slashes ) *
versioneye.getProductsLangProdKeyVersions({
"lang": "",
"prod_key": ""
}, context)
- input
object
- lang required
string
: "Name of programming language" - prod_key required
string
: "Encoded product key, replace all/
and.
- lang required
Output schema unknown
With this endpoint users can suggest a license for an artifact.
versioneye.postProductsLangProdKeyProdVersionLicense({
"lang": "",
"prod_key": "",
"prod_version": "",
"license_name": "",
"license_source": ""
}, context)
- input
object
- lang required
string
: programming language - prod_key required
string
: product key - prod_version required
string
: product version - license_name required
string
: name of the license - license_source required
string
: source of the license. Where did you find it? - comments
string
: you wanna say anyting important to this license?
- lang required
Output schema unknown
This resource can parse a changelog.xml from the maven-changelog-plugin, assign it to a specific artifact and display the changelog infos on the product page.
Please replace all slashes /
through colons :
and all dots .
through ~
!
Example: The clojure package yummy.json/json
has to be transformed to yummy~json:json
.
It will respond 404, when you are using wrong product key or encode it uncorrectly.
versioneye.postProductsLangProdKeyProdVersionScmChanges({
"lang": "",
"prod_key": "",
"prod_version": ""
}, context)
- input
object
- lang required
string
: programming language - prod_key required
string
: product key - prod_version required
string
: product version
- lang required
Output schema unknown
To use this resource you need either an active session or you have to append your API Key to the URL as parameter. For example: "?api_key=666_your_api_key_666"
versioneye.getProjects({}, context)
- input
object
- orga_name
string
: The name of the organisation the project is assigned to. - team_name
string
: The name of the team in the organisation this project is assigned to.
- orga_name
Output schema unknown
To use this resource you need either an active session or you have to append your API Key to the URL as parameter. For example: "?api_key=666_your_api_key_666"
versioneye.postProjects({
"upload": ""
}, context)
- input
object
- upload required
string
,object
: Project file - [maven.pom, Gemfile ...]- content
string
- encoding
string
(values: ascii, utf8, utf16le, base64, binary, hex) - contentType
string
- filename
string
- content
- visibility
string
: By default 'public'. If 'public' everybody can see the project. - name
string
: The name of the VersionEye project. By default it is the filename. - orga_name
string
: The name of the organisation this project should be assigned to. - team_name
string
: The name of the team in the organisation this project should be assigned to. - temp
string
: If 'true' this project will not show up in the UI and gets removed later.
- upload required
Output schema unknown
This endpoint merges a project (child_id) into another project (group_id/artifact_id). This endpoint is specially for Maven based projects! To use this resource you need either an active session or you have to append your API Key to the URL as parameter. For example: "?api_key=666_your_api_key_666"
versioneye.getProjectsGroupIdArtifactIdMergeGaChildId({
"group_id": "",
"artifact_id": "",
"child_id": ""
}, context)
- input
object
- group_id required
string
: GroupId of the parent project - artifact_id required
string
: ArtifactId of the parent project - child_id required
string
: Project ID of the child
- group_id required
Output schema unknown
This endpoint merges a project (child_id) into another project (parent_id). To use this resource you need either an active session or you have to append your API Key to the URL as parameter. For example: "?api_key=666_your_api_key_666"
versioneye.getProjectsParentIdMergeChildId({
"parent_id": "",
"child_id": ""
}, context)
- input
object
- parent_id required
string
: Project ID of the parent - child_id required
string
: Project ID of the child
- parent_id required
Output schema unknown
This endpoint unmerges a project (child_id) from another project (parent_id). It makes the chilld again a separate project! To use this resource you need either an active session or you have to append your API Key to the URL as parameter. For example: "?api_key=666_your_api_key_666"
versioneye.getProjectsParentIdUnmergeChildId({
"parent_id": "",
"child_id": ""
}, context)
- input
object
- parent_id required
string
: Project ID of the parent - child_id required
string
: Project ID of the child
- parent_id required
Output schema unknown
To use this resource you need either an active session or you have to append your API Key to the URL as parameter. For example: "?api_key=666_your_api_key_666"
versioneye.deleteProjectsProjectKey({
"project_key": ""
}, context)
- input
object
- project_key required
string
: Delete project with given project ID.
- project_key required
Output schema unknown
It shows detailed info of your project.
versioneye.getProjectsProjectKey({
"project_key": ""
}, context)
- input
object
- project_key required
string
: Project ID
- project_key required
Output schema unknown
To use this resource you need either an active session or you have to append your API Key to the URL as parameter. For example: "?api_key=666_your_api_key_666"
versioneye.postProjectsProjectKey({
"project_key": "",
"project_file": ""
}, context)
- input
object
- project_key required
string
: Project ID - project_file required
string
,object
: Project file - [maven.pom, Gemfile ...]- content
string
- encoding
string
(values: ascii, utf8, utf16le, base64, binary, hex) - contentType
string
- filename
string
- content
- project_key required
Output schema unknown
To use this resource you need either an active session or you have to append your API Key to the URL as parameter. For example: "?api_key=666_your_api_key_666"
With this Endpoint an existing project can be updated. This are the fields which can be updated:
{
public: false,
name: "toto",
description: "beschreibung",
license: "Lizenz",
version: "Versionio"
}
versioneye.putProjectsProjectKey({
"project_key": ""
}, context)
- input
object
- project_key required
string
: Project ID
- project_key required
Output schema unknown
This Endpoint returns a list of ALL dependencies of the project. This list includes dependencies of child projects as well.
To use this resource you need either an active session or you have to append your API Key to the URL as parameter. For example: "?api_key=666_your_api_key_666"
versioneye.getProjectsProjectKeyDependencies({
"project_key": ""
}, context)
- input
object
- project_key required
string
: Project ID or project_key
- project_key required
Output schema unknown
To use this resource you need either an active session or you have to append your API Key to the URL as parameter. For example: "?api_key=666_your_api_key_666"
versioneye.getProjectsProjectKeyLicenses({
"project_key": ""
}, context)
- input
object
- project_key required
string
: Project ID or project_key
- project_key required
Output schema unknown
Security Vulnerabilities
versioneye.getSecurity({
"language": ""
}, context)
- input
object
- language required
string
: Filter by programming languages - prod_key
string
: prod_key of the package - page
integer
: Specify page for paging - asc_sort
string
: Asc sort by value - desc_sort
string
: Desc sort by value
- language required
Output schema unknown
check is the service up and running
versioneye.getServicesPing(null, context)
This action has no parameters
Output schema unknown
Close current session. It's very handy method when you re-generated your current API-key.
versioneye.deleteSessions(null, context)
This action has no parameters
Output schema unknown
If current user has active session, then this method will return 200 with short user profile. For othercase, it will return error message with status code 401.
versioneye.getSessions(null, context)
This action has no parameters
Output schema unknown
You need to append your api_key to request.
versioneye.postSessions({
"api_key": ""
}, context)
- input
object
- api_key required
string
: your personal token for API.
- api_key required
Output schema unknown
You need to append your api_key to request.
versioneye.postSessionsLogin({
"username": "",
"password": ""
}, context)
- input
object
- username required
string
: email or username - password required
string
: password
- username required
Output schema unknown
shows profile of given user_id
versioneye.getUsersUsername({
"username": ""
}, context)
- input
object
- username required
string
: username
- username required
Output schema unknown
shows user's comments
versioneye.getUsersUsernameComments({
"username": ""
}, context)
- input
object
- username required
string
: VersionEye users' nickname - page
integer
: pagination number
- username required
Output schema unknown
shows user's favorite packages
versioneye.getUsersUsernameFavorites({
"username": ""
}, context)
- input
object
- username required
string
: username - page
integer
: Pagination number
- username required
Output schema unknown
This integration has no definitions