Quickstart
Get up and running with Tenzro Platform in under 5 minutes. This guide walks you through installing the SDK, configuring authentication, and making your first API call.
Prerequisites
- A Tenzro Platform account with API access
- Node.js 18+ (for TypeScript) or Rust 1.70+ (for Rust)
- Your API key and tenant ID from the dashboard
Step 1: Install the SDK
TypeScript
npm install @tenzro/platform
# or
yarn add @tenzro/platform
# or
pnpm add @tenzro/platformRust
cargo add tenzro-platformStep 2: Configure Environment
Create a .env file with your credentials:
TENZRO_API_KEY=tnz_yourtenant_yoursecretkey
TENZRO_TENANT_ID=your-tenant-id
TENZRO_NETWORK=devnet
TENZRO_BASE_URL=https://api.platform.tenzro.comStep 3: Initialize the Client
TypeScript
import { TenzroPlatform } from '@tenzro/platform';
const platform = new TenzroPlatform({
apiKey: process.env.TENZRO_API_KEY!,
tenantId: process.env.TENZRO_TENANT_ID!,
baseUrl: process.env.TENZRO_BASE_URL,
});Rust
use tenzro_platform::TenzroPlatform;
// Reads TENZRO_API_KEY, TENZRO_TENANT_ID, TENZRO_NETWORK from env
let platform = TenzroPlatform::from_env()?;
// Or construct directly
let platform = TenzroPlatform::new(
"tnz_yourtenant_yoursecretkey",
"your-tenant-id",
)?;Step 4: Make Your First API Call
Let's list Canton parties and check a balance:
TypeScript
// List Canton parties
const parties = await platform.ledger.listParties();
console.log('Parties:', parties);
// Get balance for a party
const balance = await platform.ledger.getBalance(parties[0].partyId);
console.log('Balance:', balance);Rust
// List Canton parties
let parties = platform.ledger().list_parties().await?;
for party in &parties {
println!("Party: {} ({})", party.display_name, party.party_id);
}
// Get balance for a party
let balance = platform.ledger().get_balance(&parties[0].party_id).await?;
println!("Balance: {:?}", balance);Step 5: Handle Errors
The SDK provides typed errors for all failure cases:
TypeScript
import { TenzroError, RateLimitError, AuthenticationError } from '@tenzro/platform';
try {
const wallet = await platform.wallet.create({ ... });
} catch (error) {
if (error instanceof RateLimitError) {
console.log('Rate limited, retry after:', error.retryAfter);
} else if (error instanceof AuthenticationError) {
console.log('Invalid API key');
} else if (error instanceof TenzroError) {
console.log('API error:', error.message, error.code);
}
}Next Steps
- Explore the API Reference for all available endpoints
- Read the Security Best Practices guide
- Set up SSE event streaming for real-time updates
- Learn about multi-tenancy for enterprise deployments