@qodevai/tfs-soap
v0.1.1
Published
TypeScript client for TFS / Azure DevOps SOAP services (Repository.asmx, DiscussionWebService.asmx).
Downloads
139
Maintainers
Readme
@qodevai/tfs-soap
TypeScript client for TFS / Azure DevOps SOAP services. Speaks the protocol used by Azure DevOps Services (cloud), Azure DevOps Server (on-prem), and Team Foundation Server back to ~2010 — without depending on Visual Studio, Team Explorer Everywhere, or the tf command-line.
Currently covered:
- TFVC (
Repository.asmx) — workspaces, pending changes, shelvesets, undo - Upload (
upload.ashx) — multipart file content upload for shelve / pend - Discussion / Code review (
DiscussionWebService.asmx) — inline review comments
Pure TypeScript, ESM-only, zero runtime dependencies.
Install
npm install @qodevai/tfs-soapUsage
import { HttpClient } from '@qodevai/tfs-soap/core';
import { TfvcSoapClient, TfvcUploadClient } from '@qodevai/tfs-soap/tfvc';
const http = new HttpClient({ strictSSL: true });
const tfvc = new TfvcSoapClient(http, 'https://dev.azure.com/myorg', pat);
await tfvc.createWorkspace({
name: 'my-workspace',
owner: '[email protected]',
ownerDisplayName: 'Me',
computer: 'laptop',
});Subpath imports (/core, /tfvc, /discussion) let you pull only the surface you need; the top-level import { ... } from '@qodevai/tfs-soap' re-exports everything.
Authentication
Personal Access Token (PAT) over HTTP Basic. NTLM/Kerberos are not (yet) supported.
Compatibility
- Azure DevOps Services (cloud,
dev.azure.com) - Azure DevOps Server 2019, 2020, 2022 (on-prem)
- Team Foundation Server 2012, 2013, 2015, 2017, 2018 (older may work, untested)
Development
make test # run unit tests
make check # lint, typecheck, build, publint, attw
make build # produce dist/Releases: bump version + CHANGELOG, tag v<version>, push tag — GitHub Actions publishes to npm via Trusted Publishing (no token; provenance attested automatically).
License
MIT — see LICENSE.
