bureau-sdk
v1.0.0
Published
Bureau Device Intelligence React Native SDK
Maintainers
Readme
@bureau/device-intelligence
React Native SDK for Bureau Device Intelligence with sophisticated native module integration.
Installation
yarn add @bureau/device-intelligenceiOS Setup
cd ios && pod installAndroid Setup
No additional setup required for Android.
Usage
import { BureauSDK, Environment } from '@bureau/device-intelligence';
// Initialize the SDK
BureauSDK.init({
credentialId: 'your-credential-id',
env: Environment.STAGING,
});
// Set user information
BureauSDK.setUserId('user-123');
BureauSDK.setMetaInfo({
sessionId: 'session-456',
flow: 'onboarding',
});
// Submit device intelligence data
const result = await BureauSDK.submit();
console.log('Device insights:', result.insights);
API Reference
Core Functions
BureauSDK.init(config: BureauConfig): void- Initialize the SDKBureauSDK.submit(): Promise<SubmitResponse>- Submit device dataBureauSDK.isInitialized(): Promise<boolean>- Check if SDK is initializedBureauSDK.getUserId(): Promise<string>- Get current user ID
Configuration Functions
- (Deprecated) Functions such as
setUserId,setMetaInfo,setFlow,enableRiskMonitoring, anddisableMonitoringhave been removed from the public API.
Types
BureauConfig- SDK configurationMetaInfo- Metadata informationSubmitResponse- Response from device intelligence submissionRiskMonitoringOptions- Risk monitoring configurationSuspiciousSignalCallback- Callback functions for suspicious signalsEnvironment- SDK environment (PRODUCTION, STAGING)RiskMonitoringMode- Monitoring mode (CONTINUOUS, INSTANT)
Native Module Integration
iOS
The iOS native module provides:
- Device fingerprinting
- Jailbreak detection
- App store validation
- Frida detection
- Risk assessment
Android
The Android native module provides:
- Device fingerprinting
- Root detection
- ADB status monitoring
- App cloning detection
- Debugging detection
- Risk assessment
Permissions
The SDK requires the following permissions:
Android
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />iOS
No additional permissions required.
License
MIT
