Skip to main content

Get Result

Poll for cross examination report status and retrieve the download URL when processing is complete.

Request Parameters

ParameterTypeRequiredDescription
reportIdstringYesReport ID from Create Report response

Response Fields

FieldTypeDescription
reportIdstringUnique report identifier
statusstringReport status: "pending", "processing", "completed", or "failed"
reportUrlstringDownload URL (only when status is "completed")

Status Values

  • pending: Report queued for processing
  • processing: AI is generating cross examination questions
  • completed: Report ready for download
  • failed: Report generation failed (check error logs)

Examples

Polling for Completion

import (
"time"
"github.com/silentwitness/go-sdk"
)

silentwitness.Key = "sk_test_..."

reportId := "ceq_xyz789"

// Poll until completed
for {
result, err := silentwitness.CrossExamination.GetResult(ctx, &silentwitness.GetCrossExaminationResultRequest{
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 5 seconds before checking again
time.Sleep(5 * time.Second)
}

Single Status Check

import "github.com/silentwitness/go-sdk"

silentwitness.Key = "sk_test_..."

result, err := silentwitness.CrossExamination.GetResult(ctx, &silentwitness.GetCrossExaminationResultRequest{
ReportId: "ceq_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)
}

Errors

CodeDescription
NOT_FOUNDReport ID not found
PERMISSION_DENIEDReport not accessible by this account
UNAUTHENTICATEDInvalid or missing API key