@trustoriginalityai/sdk
v0.1.0
Published
JavaScript/Node SDK for the TrustOriginality.ai AI-content detection and provenance API
Maintainers
Readme
TrustOriginality.ai — JavaScript/Node SDK
Thin wrapper around the TrustOriginality.ai REST API for AI-content detection, composite KYC verification and the signed provenance registry. Requires Node 18+.
Install
npm install @trustoriginalityai/sdk
# Local dev from repo: npm install ./sdk/javascriptQuick start
import { TrustOriginality } from "@trustoriginalityai/sdk";
const client = new TrustOriginality({ apiKey: "to_live_..." }); // create keys in the panel
// Text
let res = await client.analyzeText("The content you want to analyze...");
console.log(res.isAIGeneratedLikely, res.score);
// Image — local file path, Buffer/Blob, or a public URL
res = await client.analyzeImage({ file: "photo.jpg", name: "Campaign visual" });
res = await client.analyzeImage({ url: "https://example.com/photo.jpg" });
// Audio / video work the same way
res = await client.analyzeAudio({ file: "voice.mp3" });
res = await client.analyzeVideo({ url: "https://example.com/clip.mp4" });
// Composite KYC: ID document + selfie (+ optional voice)
res = await client.verifyKyc({ document: "id-card.jpg", selfie: "selfie.jpg", voice: "sample.wav" });
console.log(res.riskLevel, res.recommendation);
// Provenance registry
res = await client.registerProvenance({ file: "original.png", declaration: "human-created" });
console.log(res.contentHash, res.verifyUrl);
const record = await client.getProvenance(res.contentHash);Errors
All non-2xx responses throw TrustOriginalityError with statusCode and the
parsed API payload:
import { TrustOriginality, TrustOriginalityError } from "@trustoriginalityai/sdk";
try {
await client.analyzeImage({ url: "https://example.com/missing.jpg" });
} catch (e) {
if (e instanceof TrustOriginalityError) console.log(e.statusCode, e.payload);
}Self-hosted / on-prem (TrustOriginality Box)
const client = new TrustOriginality({ apiKey: "unused", baseUrl: "http://box.local:8080" });Note: Box endpoints use /analyze/image style paths; cloud-specific features
(credits, provenance) are panel-only. See TrustOriginality_Box/README.md.
