Integrate with Visual Studio Team Services from your Node.js apps.
npm install vso-node-api --save
6.3.2 has been released and is out of preview. This release contains the latest generated 4.0 VSTS/TFS api contracts. It also consumes the latest typed-rest-client.
Note: as of released 6.3.2 version, the web api create methods need to be async so you must use await. For example, note the await
in this sample
See samples for complete coding examples
npm install vso-node-api --save
import * as vsts from 'vso-node-api';
// your collection url
let collectionUrl = "https://fabrikam.visualstudio.com/defaultcollection";
// ideally from config
let token: string = "cbdeb34vzyuk5l4gxc4qfczn3lko3avfkfqyb47etahq6axpcqha";
let authHandler = vsts.getPersonalAccessTokenHandler(token);
let connection = new vsts.WebApi(collectionUrl, authHandler);
import * as ba from 'vso-node-api/BuildApi';
let vstsBuild: ba.IBuildApi = await connection.getBuildApi();
These clients are available in the new 6.x preview API (npm install vso-node-api@preview
)
- Build
- Core
- Dashboard
- ExtensionManagement
- FeatureManagement
- FileContainer
- Git
- Locations
- Notification
- Policy
- Profile
- ProjectAnalysis
- Release
- SecurityRoles
- TaskAgent
- Task
- Test
- Tfvc
- Wiki
- Work
- WorkItemTracking
- WorkItemTrackingProcess
- WorkItemTrackingProcessDefinitions
Coding is easy using linear coding with async/await in typescript
import * as bi from 'vso-node-api/interfaces/BuildInterfaces';
async function run() {
let project: string = 'myProject';
let defs: bi.DefinitionReference[] = await vstsBuild.getDefinitions(project);
defs.forEach((defRef: bi.DefinitionReference) => {
console.log(defRef.name + ' (' + defRef.id + ')');
});
}
run();
To see what APIs are available, see the appropriate client interface. For example, GitApi.ts
Pre-reqs: Node >= 4.4.7 LTS and typescript (tsc) >= 1.8
Run npm install
first
Set environment variables using set or export:
API_URL=https://fabrikam.visualstudio.com/defaultcollection
// use your token
API_TOKEN=cbdeb34vzyuk5l4gxc4qfczn3lko3avfkfqyb47etahq6axpcqha
API_PROJECT=myProject
Run samples:
$ npm run samples
Run a specific sample:
$ npm run samples -- http
To contribute to this repository, see the contribution guide
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.