Getting Started

This guide walks you through setting up SignalStack from scratch. By the end you will have made your first verification request and received a trust-scored response.

1. Sign up for an account

Visit signal-stack-ten.vercel.app and create a free account. No credit card is required — you get 500 API calls per month to explore all four verification endpoints.

2. Get your API key

Once logged in, navigate to the API Keys page in your dashboard. Click Create Key, give it a descriptive name (e.g. "Production", "Local Dev"), and copy the generated key. Treat it like a password.

For local development, store the key in an environment variable:

bash
export SIGNALSTACK_API_KEY="ssk_live_abc123_def456"

3. Install the SDK (optional)

SignalStack offers native SDKs for four languages. Pick yours:

bash
# Python
pip install signalstack

# TypeScript
npm install @signalstack/sdk

# Go
go get github.com/signalstack/sdk-go

# Rust
cargo add signalstack

# CLI (global)
npm install -g @signalstack/cli

4. Make your first request

You can use the CLI, cURL, or one of our SDKs. All return the same JSON response.

CLI

bash
# First run init to set up your API key
signalstack init

# Then verify a business
signalstack verify business --name "Acme Corp" --pretty

# Or verify a claim
signalstack verify claim --claim "The Eiffel Tower is located in Berlin"

Verify a claim — for example, checking whether a factual statement is supported by authoritative sources.

cURL

bash
curl -X POST https://signal-stack-ten.vercel.app/v1/verify/claim   -H "Authorization: Bearer $SIGNALSTACK_API_KEY"   -H "Content-Type: application/json"   -d '{
    "claim": "The Eiffel Tower is located in Berlin",
    "sources": ["web", "wikipedia"]
  }'

Python

python
import signalstack

client = signalstack.SignalStack(
    api_key="ssk_live_abc123_def456"
)

result = client.verify.claim(
    claim="The Eiffel Tower is located in Berlin",
    sources=["web", "wikipedia"]
)

print(result.trust_score)   # 0.02
print(result.verdict)       # "false"
print(result.evidence)
# [Source(url="https://en.wikipedia.org/wiki/Eiffel_Tower",
#         supports_claim=False, authority_score=0.95)]

TypeScript

typescript
import { SignalStack } from "@signalstack/sdk"

const client = new SignalStack({
  apiKey: process.env.SIGNALSTACK_API_KEY,
})

const result = await client.verify.claim({
  claim: "The Eiffel Tower is located in Berlin",
  sources: ["web", "wikipedia"],
})

console.log(result.trustScore)  // 0.02
console.log(result.verdict)     // "false"

5. Understand the response

The API returns a JSON object with these key fields:

FieldTypeDescription
idstringUnique request identifier (use for support)
trust_scorenumber0.0–1.0 confidence score
verdictstring"true", "false", "unverifiable", or "conflicting"
evidencearrayList of supporting or refuting sources
latency_msnumberServer processing time in milliseconds

Next steps

  • Follow the Quickstart for a more in-depth 5-minute walkthrough
  • Read about Trust Scoring to understand how scores are computed
  • Explore the API Reference for endpoint details
  • Check the SDK docs for language-specific patterns
  • Use the CLI for terminal-based verifications
  • Connect your AI agent via the MCP Server