---
title: "Get default configuration"
method: GET
path: "/v1/{server}/plugin/vif/config"
tags: ["Configuration"]
---

# Get default configuration

`GET /v1/{server}/plugin/vif/config`

Retrieves the full default VIF configuration from `video-intelligence.json`, including default settings, analysis parameters, event listeners, and all per-stream configuration overrides in the `streams` array.

## Response `200`

Configuration retrieved successfully.

- VifConfig — Full VIF configuration object as stored in `video-intelligence.json`. The top level holds the default settings; per-stream overrides live in the `streams` array.
  - `active` boolean — Set to true to register WSE with the VI service.
  - `vi_service` string, nullable — WebSocket endpoint for the VI service, e.g. ws://HOST:PORT/ws/stream/.
  - `vi_service_api_key` string, nullable — API key for authentication with the VI service.
  - `app_name` string, nullable — Per-stream application name. If blank, applies to all applications.
  - `stream_name` string, nullable — Stream name or regex pattern to match incoming streams, e.g. objects.*.
  - `vif_event_listeners` union — Array (or map) of VIF event listeners to trigger.
    - EventListener[]
      - `name` string, nullable — Descriptive name of the event listener.
      - `class_name` string, nullable — Java class (with namespace) for the event. Built-in classes: Id3Event, WebhookEvent2, LogFileEvent, OverlayEvent (default namespace com.wowza.wms.plugin.videointelligence.event).
      - `methods` union — Which events are sent and how often.
        - 'disabled' | 'immediate' | 'batch' | 'rollup'
        - string[]
      - `confidence_threshold` number — Threshold for objects/scenes used by immediate and batch methods.
      - `suppress_empty_detections` boolean — Do not call the listener when there are no detections.
      - `properties` object, nullable — Custom key/value properties for the event. Included by default are stream_name, width, height, frame_rate, and detector_type. The OverlayEvent supports jitter, debug_string, show_stats, overlay_delay, overlay_thread_drawing, replace_video, and fade_step.
    - object
  - `rollup_batch_interval` integer — Seconds to hold detections for rollup and batch events.
  - `grayscaled` boolean — Send/process frames as grayscale to reduce latency and traffic.
  - `landscape_video` boolean — Whether the video is in landscape orientation.
  - `object_analysis` ObjectAnalysis — Object-detection configuration.
    - `model_name` string
    - `class_names` string[]
    - `confidence_threshold` number
    - `tracking_method` string, nullable
    - `byte_track_properties` ByteTrackProperties — ByteTrack object-tracking tuning parameters.
      - `track_creation_minimum_confidence` number
      - `max_lost_track_frames_before_track_removal` integer
      - `minimum_consecutive_track_overlap` number
      - `track_creation_minimum_consecutive_frames` integer
  - `scene_analysis` SceneAnalysis — Scene/VLM analysis configuration.
    - `class_names` string[]
    - `type` string
    - `sensitivity` number
    - `confidence_threshold` number
  - `ignore_untracked_objects` boolean — Ignore untracked objects when a tracking_method is set.
  - `frame_buffer` integer — Size of the frame buffer holding frames to send to the VIF service.
  - `catch_up_to_live` boolean — Scene/VLM only. When inference stays slower than real-time, skip the stale buffered backlog and resume at the live edge instead of letting latency grow.
  - `catch_up_max_behind_seconds` number, nullable — Scene/VLM only. How far behind live (seconds) detections may fall before catch-up skips to live. Unset derives to the buffer headroom (~2s).
  - `auto_frame_throttle` boolean — Opt-in frame-rate throttle (all modes): reduce inference_fps when inference falls behind. Renamed from auto_scene_frame_throttle (still accepted on read).
  - `use_transcoder` boolean — Use the transcoder to grab frames.
  - `inference_fps` integer — Frames per second sent to inferencing when use_transcoder is true.
  - `inference_video_height` integer — Height of the video to be inferenced. -1 = source, 0 = model, >0 actual value.
  - `frame_grab_interval` integer — Seconds between grabbing a frame when use_transcoder is false.
  - `skip_frames` integer — Process every Nth frame.
  - `save_images` boolean — Debug: save frames from the transcoder to /tmp/vif/<stream_name>.
  - `log_timing` integer — Debug: seconds between writing timing metrics. 0 disables.
  - `log_max_messages` integer — Debug: max log messages to write for vif/ws/wss. -1 all, 0 disabled.
  - `streams` VifConfig[] — Per-stream configuration overrides.

## Other responses

- `401` — Authentication failed. Check the WSE Manager username and password.

---

[API](https://skmtc.net/wowza/apis/wowza-video-intelligence-framework-vif-rest-api.md) · [All operations](https://skmtc.net/wowza/apis/wowza-video-intelligence-framework-vif-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/wowza/wowza-video-intelligence-framework-vif-rest-api/revisions/7128019ae2c5/schema)
