API Reference
Reviews & Sharing
API endpoints for review comments on comparisons and shareable links.
Review comments
review.list
List review comments on a comparison.
| Type | Query |
| Auth | Protected |
Input: { comparisonId: string }
review.create
Add a review comment to a comparison.
| Type | Mutation |
| Auth | Protected |
Input:
{
comparisonId: string;
body: string;
type?: "comment" | "approve" | "request_changes";
}review.update
Update a review comment.
| Type | Mutation |
| Auth | Protected |
Input:
{
id: string;
body?: string;
resolved?: boolean;
}review.delete
Delete a review comment.
| Type | Mutation |
| Auth | Protected |
Input: { id: string }
Share links
share.create
Create a shareable link for a comparison.
| Type | Mutation |
| Auth | Protected |
Input:
{
comparisonId: string;
expiresInDays?: number; // 1-30
}Response:
{
token: string;
expiresAt: string;
}share.list
List share links for a comparison.
| Type | Query |
| Auth | Protected |
Input: { comparisonId: string }
share.revoke
Revoke a share link.
| Type | Mutation |
| Auth | Protected |
Input: { id: string }
share.view
View a shared comparison (no auth required).
| Type | Query |
| Auth | Public |
Input: { token: string }
Response:
{
comparison: Comparison;
expiresAt: string;
viewCount: number;
}Activity log
activity.list
List activity events.
| Type | Query |
| Auth | Protected |
Input:
{
projectId?: string;
limit?: number; // 1-100
days?: number; // 1-90
}activity.log
Record an activity event.
| Type | Mutation |
| Auth | Protected |
Input:
{
projectId?: string;
action: string;
entityType: string;
entityId?: string;
entityName?: string;
metadata?: object;
}Reports
report.projectReport
Generate a report for a project.
| Type | Query |
| Auth | Protected |
Input: { projectId: string }
Response:
{
project: Project;
summary: object;
comparisons: Comparison[];
generatedAt: string;
}report.workspaceExport
Export all workspace data.
| Type | Query |
| Auth | Protected |
| Input | None |
Response:
{
exportVersion: string;
exportedAt: string;
projects: Array<Project & { comparisons: Comparison[] }>;
}