Summary
Cinegy Capture is a broadcast video capture engine controlled via a REST API over HTTP. The API supports JSON and XML content types and provides endpoints to start/stop capture sessions, load job templates, query engine status, and manage scheduled triggers. The base URL is http://<engine_host>:<8000+n>/REST where n is the engine number (1–9).
Transport
protocols:
- http
addressing:
base_url: http://{engine_host}:{port}/REST
port: null # UNRESOLVED: port is variable - 8000+n where n is engine number [1..9]; default example uses 8001
auth:
type: none # inferred: no auth procedure in source
Traits
traits:
- queryable # inferred: Status, Info, Job queries return engine/job state
Actions
actions:
- id: start_capture
label: Start Capture
kind: action
transport: http
method: POST
path: /REST/Start
params: []
- id: stop_capture
label: Stop Capture
kind: action
transport: http
method: POST
path: /REST/Stop
params: []
- id: split_capture
label: Split Capture
kind: action
transport: http
method: POST
path: /REST/Split
params: []
- id: load_job
label: Load Job
kind: action
transport: http
method: POST
path: /REST/LoadJob
params:
- name: profile_xml
type: string
description: Capture profile XML
- id: load_job_by_id
label: Load Job By Template ID
kind: action
transport: http
method: POST
path: /REST/LoadJobById
params:
- name: template_id
type: string
description: Template GUID
- id: start_by_template_id
label: Start By Template ID
kind: action
transport: http
method: POST
path: /REST/StartByJobTemplateId
params:
- name: template_id
type: string
description: Template GUID; if omitted, uses default template set in Cinegy Capture Control
- id: start_by_template_id_ex
label: Start By Template ID with Custom Metadata
kind: action
transport: http
method: POST
path: /REST/StartByJobTemplateIdEx
params:
- name: template_id
type: string
description: Template GUID; if omitted, uses default template
- name: custom_metadata
type: array
description: Optional array of {Name, Value} metadata pairs (FileName, ClipName, TapeName, etc.)
- id: update_job_triggers
label: Update Job Triggers
kind: action
transport: http
method: PUT
path: /REST/Job/Triggers
params:
- name: start
type: object
description: "Start trigger: {TimeType: 'Timecode'|'Time', Value: 'HH:MM:SS:FF' or 'HH:MM:SS'}"
- name: stop
type: object
description: "Stop trigger: {TimeType, Value, AsDuration: bool}. If AsDuration is true, Value defines duration."
- name: break
type: object
description: "Auto-split trigger: {TimeType, Value}. If not set, task will not be split."
Feedbacks
feedbacks:
- id: info
label: Engine Info
transport: http
method: GET
path: /REST/Info
response_type: object
fields:
- name: APIVersion
type: integer
- name: EngineVersion
type: string
- id: status
label: Engine Status
transport: http
method: GET
path: /REST/Status
response_type: object
fields:
- name: ErrorDescription
type: string
- name: HasLicense
type: boolean
- name: JobShortState
type: object
description: Contains Status (JobStatusType enum), Timecodes, DroppedFramesCount, ProcessedFramesCount, PercentageCompleted, etc.
- name: JobStatus
type: string
- name: PreviewState
type: string
- name: Status
type: string
- name: Timecode
type: string
- name: TVFormatInfo
type: object
description: Contains AspectRatio {Width, Height} and FrameRate (double)
- id: job_status_type
label: Job Status Type
type: enum
values:
- Pending
- Ready
- Started
- Completed
- Failed
- id: preview
label: Engine Preview
transport: http
method: GET
path: /REST/Preview
response_type: image
description: Real-time feedback preview image from the Capture engine
- id: job_templates
label: Job Templates List
transport: http
method: GET
path: /REST/JobTemplates
response_type: array
fields:
- name: Id
type: string
description: Template GUID
- name: Name
type: string
- id: job_template
label: Job Template Details
transport: http
method: GET
path: /REST/JobTemplate
response_type: object
query_params:
- name: id
type: string
description: Template GUID
- id: job_info
label: Job Info
transport: http
method: GET
path: /REST/Job
response_type: object
description: Detailed info about loaded/running/previous task including template config, sync status, job params, timecode report
- id: job_triggers
label: Job Triggers
transport: http
method: GET
path: /REST/Job/Triggers
response_type: object
fields:
- name: Start
type: object
description: "{TimeType: 'Timecode'|'Time', Value: 'HH:MM:SS:FF' or 'HH:MM:SS'}"
- name: Stop
type: object
description: "{TimeType, Value, AsDuration: bool}"
- name: Break
type: object
description: "{TimeType, Value} - auto-split interval"
Variables
# UNRESOLVED: no continuously settable parameters (e.g., gain, level) documented beyond job triggers.
# Job triggers (start/stop/break times) are updatable via PUT but are schedule parameters, not continuous variables.
Events
# UNRESOLVED: no unsolicited event/notification mechanism documented in source
Macros
# UNRESOLVED: no multi-step sequences explicitly described in source
Safety
confirmation_required_for: []
interlocks: []
# UNRESOLVED: no safety warnings, interlock procedures, or power-on sequencing documented in source
Notes
- The REST API base URL port is dynamic:
8000 + nwherenis the Capture engine number (1–9). The default for engine 1 is port 8001. - Both JSON and XML data formats are supported. Use
Content-Typeheader to indicate sent format andAcceptheader for requested format. StartByJobTemplateIdandStartByJobTemplateIdExfall back to the default template set in Cinegy Capture Control if no template ID is provided.- Updating the "Start" trigger via
PUT /REST/Job/Triggersafter loading a job causes the task to start automatically at the scheduled time — no separateStartcommand is needed. - The
Stoptrigger supports anAsDurationboolean: when true, the stop value represents task duration rather than an end time. This can be updated while a capture task is running.
Provenance
source_domains:
- open.cinegy.com
source_urls:
- https://open.cinegy.com/products/capture/25.10/capture-rest-api/
retrieved_at: 2026-04-30T04:41:00.285Z
last_checked_at: 2026-06-03T06:31:53.110Z
Verification Summary
verdict: verified
checked_at: 2026-06-03T06:31:53.110Z
matched_actions: 8
action_count: 8
confidence: medium
summary: "All 8 spec actions verified against Cinegy Capture REST API (11 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "no firmware version compatibility range stated"
- "no authentication or authorization mechanism described"
- "port is variable - 8000+n where n is engine number [1..9]; default example uses 8001"
- "no continuously settable parameters (e.g., gain, level) documented beyond job triggers."
- "no unsolicited event/notification mechanism documented in source"
- "no multi-step sequences explicitly described in source"
- "no safety warnings, interlock procedures, or power-on sequencing documented in source"
- "error handling and recovery behavior not documented"
- "API version compatibility range not stated (APIVersion: 2 observed in example)"
- "concurrent request handling and rate limits not documented"
- "maximum number of engine instances (n=1..9) — upper bound stated but practical limits unknown"
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0