Get Result
Limited Access
This feature is currently available to select partners only. Contact us to request access.
Poll for research scrutinizer report status and retrieve the download URL when processing is complete.
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
reportId | string | Yes | Report ID from Create Report response |
Response Fields
| Field | Type | Description |
|---|---|---|
reportId | string | Unique report identifier |
status | string | Report status: "pending", "processing", "completed", or "failed" |
reportUrl | string | Download URL (only when status is "completed") |
Status Values
- pending: Report queued for processing
- processing: AI is analyzing research documents
- completed: Report ready for download
- failed: Report generation failed (check error logs)
Examples
Polling for Completion
- Go
- TypeScript
import (
"time"
"github.com/silentwitness/go-sdk"
)
silentwitness.Key = "sk_test_..."
reportId := "rs_xyz789"
// Poll until completed
for {
result, err := silentwitness.ResearchScrutinizer.GetResult(ctx, &silentwitness.GetResearchScrutinizerResultRequest{
ReportId: reportId,
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("Status: %s\n", result.Status)
if result.Status == "completed" {
fmt.Printf("Report URL: %s\n", *result.ReportUrl)
break
}
if result.Status == "failed" {
log.Fatal("Report generation failed")
}
// Wait 10 seconds before checking again
time.Sleep(10 * time.Second)
}
import { setApiKey, getResearchScrutinizerResult } from "@silentwitness/typescript-sdk";
setApiKey("sk_test_...");
const reportId = "rs_xyz789";
// Poll until completed
while (true) {
const result = await getResearchScrutinizerResult({ reportId });
console.log(`Status: ${result.status}`);
if (result.status === "completed") {
console.log(`Report URL: ${result.reportUrl}`);
break;
}
if (result.status === "failed") {
throw new Error("Report generation failed");
}
// Wait 10 seconds before checking again
await new Promise(resolve => setTimeout(resolve, 10000));
}
Single Status Check
- Go
- TypeScript
import "github.com/silentwitness/go-sdk"
silentwitness.Key = "sk_test_..."
result, err := silentwitness.ResearchScrutinizer.GetResult(ctx, &silentwitness.GetResearchScrutinizerResultRequest{
ReportId: "rs_xyz789",
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("Status: %s\n", result.Status)
if result.Status == "completed" && result.ReportUrl != nil {
fmt.Printf("Download: %s\n", *result.ReportUrl)
}
import { setApiKey, getResearchScrutinizerResult } from "@silentwitness/typescript-sdk";
setApiKey("sk_test_...");
const result = await getResearchScrutinizerResult({
reportId: "rs_xyz789"
});
console.log(`Status: ${result.status}`);
if (result.status === "completed" && result.reportUrl) {
console.log(`Download: ${result.reportUrl}`);
}
Errors
| Code | Description |
|---|---|
NOT_FOUND | Report ID not found |
PERMISSION_DENIED | Report not accessible by this account |
UNAUTHENTICATED | Invalid or missing API key |