@parlancelabs/sdk
v0.2.0
Published
Client SDK for the Parlance API — consumed by every parlance extension.
Maintainers
Readme
@parlancelabs/sdk
Client SDK for the Parlance API. Consumed by every parlance extension (MCP server, VS Code extension, browser extension, Figma plugin).
Installation
npm install @parlancelabs/sdkOr pin a specific commit directly from git (alternative, e.g. for pre-release builds):
npm install git+ssh://[email protected]/jpace-cloud/parlance-sdk.git#<commit-sha>Usage
import { ParlanceClient, ParlanceApiError, ParlanceAuthError } from '@parlancelabs/sdk';
const client = new ParlanceClient({
apiKey: 'your-api-key',
clientName: 'vscode-extension/0.2.0',
});
const projects = await client.listProjects();
const contracts = await client.getContracts(projects[0].id);Methods
| Method | Verb + Path |
|---|---|
| testConnection() | GET /api/v1/health + GET /api/v1/projects |
| listProjects() | GET /api/v1/projects |
| getContracts(projectId) | GET /api/v1/projects/:id/contracts |
| getContractDetail(projectId, contractId) | GET /api/v1/projects/:id/contracts/:cid |
| createContract(projectId, input) | POST /api/v1/projects/:id/contracts |
| updateContract(projectId, contractId, input) | PUT /api/v1/projects/:id/contracts/:cid |
| deleteContract(projectId, contractId) | DELETE /api/v1/projects/:id/contracts/:cid |
| getGlossary(projectId) | GET /api/v1/projects/:id/glossary |
| createGlossaryTerm(projectId, input) | POST /api/v1/projects/:id/glossary |
| updateGlossaryTerm(projectId, termId, input) | PUT /api/v1/projects/:id/glossary/:termId |
| deleteGlossaryTerm(projectId, termId) | DELETE /api/v1/projects/:id/glossary/:termId |
| pushAuditResults(projectId, input) | POST /api/v1/projects/:id/audit-results |
| validate(input) | POST /api/v1/validate |
| getStandards(projectId) | GET /api/v1/projects/:id/standards |
Error handling
import { ParlanceAuthError, ParlanceApiError } from '@parlancelabs/sdk';
try {
await client.listProjects();
} catch (err) {
if (err instanceof ParlanceAuthError) {
// 401 — invalid or revoked API key
} else if (err instanceof ParlanceApiError) {
console.error(err.status, err.message, err.code);
}
}Development
npm install
npm run build # tsc → dist/
npm test # vitest
npm run lint
npm run typecheckLicense
Licensed under the Apache License 2.0. Copyright © 2026 Parlance Labs.
