Skip to content
PricingDocs
All Integrations
Angular

Device Intelligence for Angular

Angular injectable service for device identification. Add visitor identification, bot detection, and smart signals to your Angular application in minutes.

Quick Install

Add the SDK to your project with your preferred package manager.

npmnpm install @tracio/client
yarnyarn add @tracio/client
pnpmpnpm add @tracio/client

Basic Usage

Get up and running with the minimal setup.

$typescript
import { TracioService } from '@tracio/client/angular'
@Component({ ... })
export class AppComponent {
constructor(private tracio: TracioService) {
tracio.getVisitorId().then(result => {
console.log(result.visitorId)
})
}
}

Advanced Patterns

Production-ready patterns with error handling, loading states, and advanced configuration.

Service Injection with Observable Stream — Click to expand
import { Component, OnInit } from '@angular/core'
import { TracioService, TracioResult } from '@tracio/client/angular'
import { Observable, catchError, of, shareReplay } from 'rxjs'
@Component({
selector: 'app-protected',
template: `
<div *ngIf="result$ | async as result">
<p>Visitor: {{ result.visitorId }}</p>
<p>Confidence: {{ result.confidence | percent }}</p>
</div>
`,
})
export class ProtectedComponent implements OnInit {
result$: Observable<TracioResult>
constructor(private tracio: TracioService) {}
ngOnInit() {
this.result$ = this.tracio.identify({
timeout: 15000,
extendedResult: true,
}).pipe(
shareReplay(1),
catchError(err => {
console.error('tracio.ai error:', err)
return of(null)
})
)
}
}

Configuration Options

All available options for initializing and configuring the SDK.

apiKeystringYour API key from the dashboard
endpointstringCustom endpoint URL for proxy-routed deployments
regionstringData region (us, eu, ap)
timeoutnumberRequest timeout in milliseconds
extendedResultbooleanAdds bot detection, incognito mode flags, and smart signals
linkedIdstringCustom identifier to associate visits (e.g. user ID or session ID)