Developer Libraries
JavaScript SDK
Install `@bgblur/privacy-blur` for Node.js 18+ with TypeScript declarations included.
Installation
Shell
npm install @bgblur/privacy-blurPackage:
@bgblur/privacy-blur with built-in TypeScript declarations.Authentication
Shell
export BGBLUR_AI_API_KEY="YOUR_API_KEY"Get your API key from /developers/api-keys
Quick Start
Basic Usage
TypeScript
import { PrivacyBlur } from "@bgblur/privacy-blur";
const client = new PrivacyBlur({
apiKey: process.env.BGBLUR_AI_API_KEY
});
await client.faceBlur({
input: "image.jpg",
output: "result.jpg",
blurType: "gaussian"
});Blur License Plates
TypeScript
import { PrivacyBlur } from "@bgblur/privacy-blur";
const client = new PrivacyBlur({
apiKey: process.env.BGBLUR_AI_API_KEY
});
await client.licensePlateBlur({
input: "car.jpg",
output: "plates-blurred.jpg"
});Anonymize Video
TypeScript
import { PrivacyBlur } from "@bgblur/privacy-blur";
const client = new PrivacyBlur({
apiKey: process.env.BGBLUR_AI_API_KEY
});
await client.faceAnonymize({
input: "interview.mp4",
output: "anonymous-video.mp4"
});Blur Custom Objects
TypeScript
import { PrivacyBlur } from "@bgblur/privacy-blur";
const client = new PrivacyBlur({
apiKey: process.env.BGBLUR_AI_API_KEY
});
await client.blurAnything({
input: "street.jpg",
prompt: "person",
output: "objects-blurred.jpg"
});Dataset Processing
Batch process entire datasets with folder structure preservation.
TypeScript
import { DatasetProcessor } from "@bgblur/privacy-blur";
const processor = new DatasetProcessor({
apiKey: process.env.BGBLUR_AI_API_KEY,
maxWorkers: 4
});
const report = await processor.processDataset({
datasetPath: "dataset",
outputPath: "dataset_private",
faceBlur: true,
plateBlur: true,
blurType: "pixelated"
});
console.log(report.toJSON());CLI
Shell
# Blur faces
privacy-blur face-blur input.jpg output.jpg --blur-type gaussian
# Anonymize video
privacy-blur face-anonymize input.mp4 output.mp4
# Blur license plates
privacy-blur license-plate-blur car.jpg result.jpg
# Blur custom objects
privacy-blur blur-anything image.jpg result.jpg --prompt "person"
# Process dataset
privacy-blur dataset-process dataset dataset_private \
--face-blur --plate-blur --blur-type pixelatedTypeScript
Type declarations are included with the package.
TypeScript
import { PrivacyBlur, type BlurType } from "@bgblur/privacy-blur";
const blurType: BlurType = "pixelated";
const client = new PrivacyBlur({
apiKey: process.env.BGBLUR_AI_API_KEY
});
await client.faceBlur({
input: "image.jpg",
output: "result.jpg",
blurType
});Error Handling
TypeScript
import {
InsufficientCreditsError,
PrivacyBlur,
PrivacyBlurError
} from "@bgblur/privacy-blur";
try {
const client = new PrivacyBlur({
apiKey: process.env.BGBLUR_AI_API_KEY
});
await client.faceBlur({
input: "image.jpg",
output: "result.jpg"
});
} catch (error) {
if (error instanceof InsufficientCreditsError) {
console.error(error.message);
} else if (error instanceof PrivacyBlurError) {
console.error(`PrivacyBlur error: ${error.message}`);
} else {
throw error;
}
}View on npmnpmjs.com/package/@bgblur/privacy-blur