Skip to main content
This page picks up where Quickstart leaves off. Complete that first — you should already have an authenticated T3nClient and your tenantDid before starting here.
1

Get your API key and DID

If you haven’t already, get your DID, download your API key, and claim test credits from the claim page — it’s self-serve, no approval needed.
2

Install Rust + WASM toolchain

TEE contracts are compiled to WebAssembly (WASM) binaries, built with the Rust toolchain.If you don’t already have rustup/cargo installed:
Then add the WASM target:
cargo install wasm-tools compiles roughly 100 crates from source and takes about 2 minutes with no progress output in between — that’s normal, not a hang.
3

Build a TenantClient from your session

Contracts are registered and managed through a TenantClient, built around the tenantDid you already obtained in Quickstart — never construct or derive this value yourself.Append this to the bottom of the same quickstart.ts you created in Quickstart — it needs t3n and tenantDid from that file’s scope:
Run it the same way as before — npx tsx quickstart.ts — and confirm you see TenantClient ready. printed after your tenantDid line.
This authenticates you to manage your own deployment — a different job from agent authentication. The DID must equal the one admitted as a tenant in idx:_tenants: exactly the tenantDid you already have from Quickstart.

What’s next

Continue to Write your first TEE contract.