Skip to content

Installation

Fidemark ships three first-party SDKs that share the same surface, the same EAS schemas, and the same error taxonomy. Pick whichever language fits your stack.

Terminal window
npm install @fidemark/sdk ethers

Peer requirements:

  • Node.js 20 or newer.
  • An ethers v6 signer or a private key for write operations. Read-only verification does not require a signer.
  • An RPC endpoint for Base or Base Sepolia. The SDK ships sensible defaults; override them via provider in the constructor.
import {
Fidemark,
getNetwork,
hashContent,
FidemarkError,
} from "@fidemark/sdk";

Every method documented in this section exists in all three SDKs. Naming follows each language’s conventions (attestHuman in TypeScript, attest_human in Python, AttestHuman in Go) but the inputs, outputs, and error codes are identical.

BehaviorTypeScriptPythonGo
Construct clientnew Fidemark(config)Fidemark(...)fidemark.New(Config{...})
Attest Human ProofattestHumanattest_humanAttestHuman
Attest AI ProofattestAIattest_aiAttestAI
Off-chain envelopeattestHumanOffchainattest_human_offchainAttestHumanOffchain
Publish off-chain on-chainpublishOffchainpublish_offchainPublishOffchain
Multi-partyattestMultiPartyattest_multi_partyAttestMultiParty
PoP-verified (World ID)attestHumanWithPoPattest_human_with_popAttestHumanWithPoP
Verify by UIDverifyverifyVerify
Verify by content hashverifyByHashverify_by_hashVerifyByHash
Walk refUID chainverifyChainverify_chainVerifyChain
RevokerevokerevokeRevoke
GraphQL indexer fallbackindexer config optionindexer config optionIndexer config option

The SDK pages that follow show the same call in each language via tabs. Pick once, your choice persists across pages.