# Configure Webhook Bdd Test

Configure the Docker Compose webhook receivers required by the VIOS webhook...

- Repository: https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization (1959 stars)
- Category: Testing
- License: Apache-2.0
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add NVIDIA-AI-Blueprints/video-search-and-summarization --skill configure-webhook-bdd-test -g -a claude-code -y`
Codex: `npx skills add NVIDIA-AI-Blueprints/video-search-and-summarization --skill configure-webhook-bdd-test -g -a codex -y`
Cursor: `npx skills add NVIDIA-AI-Blueprints/video-search-and-summarization --skill configure-webhook-bdd-test -g -a cursor -y`
Gemini CLI: `npx skills add NVIDIA-AI-Blueprints/video-search-and-summarization --skill configure-webhook-bdd-test -g -a gemini-cli -y`

## Description

Configure the Docker Compose webhook receivers required by the VIOS webhook notification BDD tests, including the custom body template cases. Use when preparing deployment/stream-processing/docker-compose/configs/notification_config.json for test_webhook_notifications.py or test_webhook_custom_body.py, or when those tests time out waiting for camera_add, camera_streaming, camera_remove, or a custom body delivery.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Configure Webhook BDD Test

Every BDD webhook receiver is declared in one file:
`test/bdd_tests/data/webhook_bdd_config.json`. It is the single source of
truth shared by three consumers:

- `test/bdd_tests/scripts/update_notification_config.py` applies it to the
  deployed `notification_config.json`.
- `tests/notification/test_webhook_custom_body.py` reads `custom_body_cases`
  to know each case's path, method, and template.
- The `standard_receivers` paths must match `webhook_paths` in
  `test/bdd_tests/config.json` (the script warns on divergence).

**Never hand-edit the BDD receivers in `notification_config.json`.** Change
`webhook_bdd_config.json` (or accept it as-is) and run the script:

```bash
cd test/bdd_tests && python3 scripts/update_notification_config.py
```

By default it updates
`deployment/stream-processing/docker-compose/configs/notification_config.json`;
pass `--notification-config <path>` for another deployment, or `--dry-run` to
preview. The script sets `webhooks.enabled: true`, owns the three items
`wh-001`/`wh-002`/`wh-003` (`camera_add`/`camera_streaming`/`camera_remove`, the ids are asserted as `webhook_id` by the tests), rewrites BDD requests in
place matched by URL, prunes stale `/bdd/webhooks/` receivers, and preserves
every non-BDD item and receiver. It refuses to run if the existing config is
not valid JSON, restore a valid file first.

## What the declared receivers cover

The rest: https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/HEAD/services/vios/.cursor/skills/configure-webhook-bdd-test/SKILL.md
