
Research
/Security News
Critical Vulnerability in NestJS Devtools: Localhost RCE via Sandbox Escape
A flawed sandbox in @nestjs/devtools-integration lets attackers run code on your machine via CSRF, leading to full Remote Code Execution (RCE).
gitlab-api-client
Advanced tools
Welcome to gitlab-api-client documentation. This client has been designed to fit in as little lines as possible.
All you have to know is that :
This client exposes an HTTP request from the node module
request. This means that you can use it like any request
based
project with a simple callback that takes (err, response, body)
.
All paths are build generically. Once you understand this concept,
you will have access to all the gitlab API endpoints, even for
those that haven't been defined yet. Isn't life good ?
example: gitlab.projects().all()
builds the path /projects/all
gitlab.projects(1).repository().commits("b4da333ha1")
builds the
path /projects/1/repository/commits/b4da33sha1
.
With this, you can now easily build all the required API paths for your gitlab server.
Prior to all this, you should configure your client to use the proper
PRIVATE-TOKEN
and the correct url. For this, simply pass those when
you require the module.
gitlab = require('gitlab')('my-token', 'https://gitlab.com')
Now that you have configured your client and that you know how to
build a path for any gitlab api resources, the last step is to create
a GET
and a POST
request.
A simple example:
gitlab
.projects(1)
.repository()
.compare()
.get({from: "master", to:"branch}, function(err, response, diffs) {
console.log(JSON.stringify(diffs));
})
This simple emits a GET
request with 2 query string parameters on
the path /projects/1/repository/compare
If you need to make a call without querystring, make sure to pass
undefined
.
gitlab
.projects
.all()
.get(undefined, function(err, response, projects) {
console.log("ALL THE PROJECTS!");
})
as to make a POST
request, follow the same logic:
gitlab
.projects(1)
.merge_requests()
.post({
source_branch: "branch",
target_branch: "master",
title: "A simple merge request"
}, function(err, response, merge_request) {
console.log(JSON.stringify(merge_request))
})
Thanks for trying this module. I hope that you will enjoy it. Please, report and idea, comment and bugs that you may find in the issue section of this repo.
Hasta la vista !
1.0.2
FAQs
probably the simplest full-featured client for gitlab api
The npm package gitlab-api-client receives a total of 0 weekly downloads. As such, gitlab-api-client popularity was classified as not popular.
We found that gitlab-api-client demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
/Security News
A flawed sandbox in @nestjs/devtools-integration lets attackers run code on your machine via CSRF, leading to full Remote Code Execution (RCE).
Product
Customize license detection with Socket’s new license overlays: gain control, reduce noise, and handle edge cases with precision.
Product
Socket now supports Rust and Cargo, offering package search for all users and experimental SBOM generation for enterprise projects.