Environment Setup & Installation

Ztrace Documentation

Get Ztrace running in your environment with our comprehensive installation guide for all platforms.

Prerequisites

RequirementMinimum VersionRecommended
Node.js18.0.020.x LTS
Python3.93.11+
Memory512MB2GB+
Storage100MB1GB+ for offline models

Installation

npm

Bash
npm install @ztrace/sdk

yarn

Bash
yarn add @ztrace/sdk

pnpm

Bash
pnpm add @ztrace/sdk

pip (Python)

Bash
pip install ztrace

Environment Variables

.env
Bash
1# Required
2ZTRACE_API_KEY=zt_live_xxxxxxxxxxxxx
3 
4# Optional
5ZTRACE_BASE_URL=https://api.<span class="text-cyan-300">ztrace</span>.<span class="text-cyan-300">ai</span>/v2
6ZTRACE_TIMEOUT=<span class="text-orange-400">30000</span>
7ZTRACE_MAX_RETRIES=<span class="text-orange-400">3</span>
8ZTRACE_REGION=us-east-<span class="text-orange-400">1</span>

Quick Start Example

quickstart.ts
TypeScript
1<span <span class=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>class</span>=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>><span class=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>import</span></span> { <span class="text-yellow-300">Ztrace</span> } <span <span class=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>class</span>=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>><span class=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>from</span></span> <span class="text-emerald-<span class="text-orange-400">400</span>">'@ztrace/sdk'</span>;
2 
3// Initialize the client with your API key
4<span <span class=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>class</span>=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>const</span> client = <span <span class=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>class</span>=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>new</span> <span class="text-blue-400"><span class="text-yellow-300">Ztrace</span></span>({
5 apiKey: process.<span class="text-cyan-300">env</span>.<span class="text-cyan-300">ZTRACE_API_KEY</span>,
6 region: <span class="text-emerald-<span class="text-orange-400">400</span>">'us-east-<span class="text-orange-400">1</span>'</span>,
7 timeout: <span class="text-orange-400">30000</span>,
8 retries: <span class="text-orange-400">3</span>
9});
10 
11// Analyze an image and get location data
12<span <span class=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>class</span>=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>const</span> result = <span <span class=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>class</span>=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>><span class=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>await</span></span> client.<span class="text-blue-400">analyze</span>({
13 image: <span class="text-emerald-<span class="text-orange-400">400</span>">'./path/to/image.<span class="text-cyan-300">jpg</span>'</span>,
14 options: {
15 confidence_threshold: <span class="text-orange-400">0.<span class="text-cyan-300">85</span></span>,
16 include_metadata: <span <span class=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>class</span>=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>true</span>,
17 include_features: <span <span class=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>class</span>=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>true</span>,
18 include_landmarks: <span <span class=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>class</span>=<span class="text-emerald-<span class="text-orange-400">400</span>">"text-purple-<span class="text-orange-400">400</span> font-medium"</span>>true</span>
19 }
20});
21 
22console.<span class="text-blue-400">log</span>(<span class="text-emerald-<span class="text-orange-400">400</span>">'<span class="text-yellow-300">Location</span>:'</span>, result.<span class="text-cyan-300">location</span>);
23// Output: { lat: 35.6762, lng: 139.6503, confidence: 0.947 }
24 
25console.<span class="text-blue-400">log</span>(<span class="text-emerald-<span class="text-orange-400">400</span>">'<span class="text-yellow-300">Place</span>:'</span>, result.<span class="text-cyan-300">place_name</span>);
26// Output: "Shibuya Crossing, Tokyo, Japan"

Last updated December 2025

Was this helpful?