vss-setup-video-analytics-api

Deploy the vss-video-analytics-api REST service standalone with Elasticsearch and optional Kafka.

2|Updated Aug 20, 2026
One-click install
npx skills add https://github.com/atomicrajat/industry_safety_monitoring_system --skill vss-setup-video-analytics-api-atomicrajat
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: vss-setup-video-analytics-api
Source: https://github.com/atomicrajat/industry_safety_monitoring_system/tree/main/.claude/skills/vss-setup-video-analytics-api
Command: npx skills add https://github.com/atomicrajat/industry_safety_monitoring_system --skill vss-setup-video-analytics-api-atomicrajat

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Deploying the NVIDIA VSS video-analytics-api REST service outside the full warehouse blueprint stack requires choosing the right config source, wiring Elasticsearch and optional Kafka, setting up data-log bind mounts, and verifying health — a multi-step process with many failure points. This Skill guides an agent through that standalone deployment end to end. ## Core Features & Use Cases - Standalone deployment workflow: Brings up only the vss-video-analytics-api container via Docker Compose, with config-source selection (image-baked, service-shipped, or custom) and data-log volume setup. - Infrastructure wiring: Connects the API to a required Elasticsearch instance and an optional Kafka broker, including broker-less operation with an empty brokers list. - REST endpoint and troubleshooting references: Documents the full endpoint table (/livez, /config, /alerts, /incidents, /metrics, and more) plus a symptom-to-fix troubleshooting table. - Use Case: An engineer wants to run the video analytics REST API against an existing Elasticsearch cluster without deploying the full warehouse stack — the Skill walks through compose edits, NGC registry login, deploy, and health verification. ## Quick Start Ask the agent to deploy the vss-video-analytics-api REST service standalone using the default service-shipped config with Elasticsearch reachable and Kafka optional.

Frequently Asked Questions about vss-setup-video-analytics-api

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I deploy the vss-video-analytics-api REST service standalone?

Set VSS_APPS_DIR to the repo's deploy/docker directory, create the data-log directory under VSS_DATA_DIR, then run docker compose with the video-analytics-api compose file. Verify health with curl against http://localhost:8081/livez once Elasticsearch is reachable.

Can the video-analytics-api run without Kafka?

Yes, Kafka is optional. Set kafka.brokers to an empty array or null in the config and the server starts normally; only Kafka-dependent features like dynamic config, dynamic calibration, and RTLS/AMR endpoints become unavailable.

Why does the video-analytics-api container keep restarting on startup?

The server pings Elasticsearch during bootstrap and exits if it is unreachable, and the restart: always policy creates a restart loop. Verify Elasticsearch health with curl against /_cluster/health and confirm the elasticsearch.node URL in your config matches.

What config sources does the video-analytics-api support?

Three sources: the image-baked default at /configs/default-configs/config.json with Kafka disabled, the service-shipped config mounted by the compose file with Kafka enabled, or any custom JSON config bind-mounted to an absolute host path.

How do I fix 401 or 403 errors when pulling the VSS image from nvcr.io?

The NGC_CLI_API_KEY is missing, expired, or not scoped to NGC Catalog. Regenerate a personal key in the NGC console, export it, and log in with docker login using the literal username $oauthtoken and --password-stdin.

When should I use the full warehouse profile instead of standalone deployment?

Use the full warehouse profile when you need the UI, agent, or perception pipeline alongside the API. The standalone deployment only runs the REST API container and is meant for serving endpoints against existing Elasticsearch and Kafka infrastructure.