⌘K
Client Methods
Complete reference for AskVerdictClient methods: create, list, get, delete, stream verdicts and more.
1 min read
Share
The AskVerdictClient class provides methods for all API operations.
Verdicts
createVerdict
Create a new debate.
typescript
const result = await client.createVerdict({
question: "Should we use microservices?",
mode: "balanced",
context: "We have a monolith serving 10k requests/sec",
tags: ["architecture"],
});
// result.debate.id → "dbt_abc123"getVerdict
Retrieve a specific debate with its verdict.
typescript
const { verdict } = await client.getVerdict("dbt_abc123");
// verdict.debate.status → "completed"
// verdict.debate.verdict.recommendation → "Stay monolithic"listVerdicts
List debates with pagination and filtering.
typescript
const result = await client.listVerdicts({
page: 1,
limit: 20,
status: "completed",
sortBy: "createdAt",
sortOrder: "desc",
});
// result.debates → DebateResponse[]
// result.pagination → { page, limit, total, totalPages }deleteVerdict
Permanently delete a debate.
typescript
await client.deleteVerdict("dbt_abc123");streamVerdict
Stream debate events in real-time. Returns an async iterable.
typescript
const stream = client.streamVerdict("dbt_abc123");
for await (const event of stream) {
console.log(event.type, event);
}See Streaming for detailed streaming usage.
Aliases
For convenience, debates can also be accessed with debate-prefixed methods:
typescript
// These are equivalent
await client.createVerdict(params);
await client.createDebate(params);
await client.getVerdict(id);
await client.getDebate(id);User & Usage
getMe
Get the authenticated user's profile.
typescript
const user = await client.getMe();
// user.id, user.name, user.email, user.plangetUsage
Get API usage statistics for the current key.
typescript
const usage = await client.getUsage();
// usage.totalRequests, usage.byEndpoint, usage.rateLimitgetBalance
Get credit balance information.
typescript
const balance = await client.getBalance();
// balance.credits, balance.planVotes & Polls
getVotes / castVote
Interact with argument votes on a debate.
typescript
const votes = await client.getVotes("dbt_abc123");
await client.castVote("dbt_abc123", argumentId, "up");getPolls / createPoll / deletePoll
Manage polls on debates.
typescript
const polls = await client.getPolls("dbt_abc123");
const poll = await client.createPoll("dbt_abc123", {
question: "Which argument was strongest?",
options: ["Pro Round 1", "Con Round 2"],
});
await client.deletePoll("dbt_abc123", poll.id);Error Handling
All methods throw on HTTP errors. Catch and inspect the error:
typescript
try {
await client.createVerdict({ question: "" });
} catch (error) {
if (error instanceof Error) {
console.error(error.message);
// "Validation error: Question is required"
}
}Was this page helpful?