OpenMPF Workflow Manager REST API

Version 9.0


NOTICE

This software (or technical data) was produced for the U.S. Government under contract, and is subject to the Rights in Data-General Clause 52.227-14, Alt. IV (DEC 2007).

Copyright 2024 The MITRE Corporation. All Rights Reserved.


Introduction

REST-based web services for the OpenMPF Workflow Manager

Table of contents

1. Definitions

EnvironmentVariableModel
SystemMessage
DeployedNodeManagerModel
JobCreationRequest
JobCreationMediaData
JobCreationMediaRange
TransientPipelineDefinition
TransientTask
TransientAction
DeployedServiceModel
JobCreationResponse
ServiceModel
NodeManagerModel
SingleJobInfo
InfoModel
MpfResponse
AggregatePipelineStatsModel
AllJobsStatisticsModel
StreamingJobCreationRequest
StreamingJobCreationResponse
StreamingJobInfo
StreamingJobCancelResponse
JobCreationStreamData
HealthReport
HealthReportData
AllStreamingJobsInfoModel
ResponseMessage
Pipeline
Task
Action
Algorithm
Algorithm.Provides
AlgorithmProperty
Algorithm.Requires
TiesDbRepostResponse
TiesDbRepostResponse.Failure
QueueInfo

2. Paths

GET  /rest/info
GET   /rest/jobs/stats
POST   /rest/jobs
GET   /rest/jobs/{id}
POST   /rest/jobs/{id}/cancel
GET   /rest/jobs/{id}/output/detection
POST   /rest/jobs/{id}/resubmit
GET   /rest/nodes/config
POST   /rest/nodes/config
GET   /rest/nodes/hosts
GET   /rest/nodes/info
GET   /rest/nodes/services
POST   /rest/nodes/services/{serviceName}/start
POST   /rest/nodes/services/{serviceName}/stop
GET   /rest/system-message
POST   /rest/system-message
GET   /rest/system-message/type/{typeFilter}
DELETE   /rest/system-message/{id}
GET   /rest/streaming/jobs
POST   /rest/streaming/jobs
GET   /rest/streaming/jobs/{id}
POST   /rest/streaming/jobs/{id}/cancel
POST   /rest/components/registerUnmanaged
DELETE   /rest/components/{componentName}
GET   /rest/pipelines
GET   /rest/pipelines/{name}
POST   /rest/pipelines
DELETE   /rest/pipelines/{name}
GET   /rest/tasks
GET   /rest/tasks/{name}
POST   /rest/tasks
DELETE   /rest/tasks/{name}
GET   /rest/actions
GET   /rest/actions/{name}
POST   /rest/actions
DELETE   /rest/actions/{name}
GET   /rest/algorithms
GET   /rest/algorithms/{name}
POST   /rest/jobs/tiesdbrepost
GET   /rest/queues
GET   /rest/queues/{name}

1. Definitions

EnvironmentVariableModel


Name Type Description Required
name string The name of the environment variable Yes
value string The value of the environment variable Yes
sep string The separator for values if wanting to append to an existing environment variable, for example, ":" No

SystemMessage


Name Type Description Required
datePosted string The message timestamp, include only if you want to change the timestamp No
msg string The message Yes
msgEnum string The enumerated name of predefined message No
msgType string The type of message (intended target) No
removeStrategy string The strategy for removing this message No
severity string The severity of the message No

DeployedNodeManagerModel (Response only)


Name Type Description
nodeModels array See DeployedServiceModel in the Definitions section.

JobCreationRequest


Name Type Description Required
buildOutput boolean True to build the output objects; otherwise false (true by default) No
externalId string External id No
jobProperties object A key-value pair using strings which may be used to override the parameters associated with the pipeline. No
algorithmProperties object A key-value pair which can override jobProperties for a specific algorithm defined in a pipeline. The key should be the algorithm name, and the value should be a Map of String key-value pairs representing properties specific to the named algorithm. No
media array See JobCreationMediaData in the Definitions section. Yes
pipelineName string The name of the pipeline used to process the media. Obtained from 'rest/pipelines'. One of pipelineName or pipelineDefinition must be provided, but not both. No
pipelineDefinition TransientPipelineDefinition The definition of a temporary pipeline that this job will execute. One of pipelineName or pipelineDefinition must be provided, but not both. No
priority integer Priority of the job, integer values 0 - 9 (0 being the lowest) are valid (default value is set in mpf.properties) No
callbackURL string A valid (properly encoded) URL for job completion callbacks. When the job completes, the callback will perform a GET or POST to the callbackURL with the 'jobId' and 'externalId' parameters. For example, if the callbackURL provided is `http://api.example.com/foo`, the jobId is 'hostname-1', and the externalId is 'someid', then a GET callback will be: http://api.example.com/foo?jobId=hostname-1&externalId=someid. If callbackURL ends in 'foo?someparam=something', then a GET callback will be: http://api.example.com/foo?someparam=something&jobId=hostname-1&externalId=someid. If no externalId is provided, then a GET callback will be: http://api.example.com/foo?jobId=hostname-1. No
callbackMethod string A value of 'GET' or 'POST' to perform a HTTP callback. The default method is GET. No

JobCreationMediaData


Name Type Description Required
mediaUri string A valid (properly encoded) URI to a single media source for the job. Yes
metadata object A map of key-value pairs using strings which may be used to set the metadata for this media. When sufficient metadata is provided, media inspection will be skipped. To skip inspection, the `MEDIA_HASH` and `MIME_TYPE` keys must be set to the media's respective hash and media type. Audio files will also require the metadata value for `DURATION`. Image files will also require the metadata values for `FRAME_WIDTH` and `FRAME_HEIGHT`. Video files will also require the metadata values for `FRAME_WIDTH`, `FRAME_HEIGHT`, `FRAME_COUNT`, `FPS`, and `DURATION`. No
properties object A map of key-value pairs using strings which may be used to override the parameters associated with the pipeline or job properties for this medium. No
frameRanges array<JobCreationMediaRange> When provided for videos, only the specified ranges of frames will be processed. Multiple ranges can be provided. If timeRanges are also included in the request those frames will also be processed. No
timeRanges array<JobCreationMediaRange> When provided for videos, only the specified ranges of times will processed. The times are specified in milliseconds. Multiple ranges can be provided. If frameRanges are also included in the request those frames will also be processed. No

JobCreationMediaRange


Name Type Description Required
start integer The inclusive start of the range Yes
stop integer The inclusive end of the range Yes

TransientPipelineDefinition


Name Type Description Required
pipeline array<string> A list naming the tasks that this pipeline will execute. These tasks must either be TransientTasks defined in the tasks field or be preexisting tasks that have been previously added to Workflow Manager. When there is a TransientTask with the same name as a task added to Workflow Manager, the TransientTask will be used. Yes
tasks array<TransientTask> A list of temporary tasks that may be used by this pipeline. The order that the tasks appear in this list does not affect the order that the tasks are executed — that is defined in the pipeline field. No
actions array<TransientAction> A list of temporary actions that may be used by this pipeline. No

TransientTask


Name Type Description Required
name string This task's name. For this task to be executed, it must be listed in the TransientPipelineDefinition's pipeline field. Yes
actions array<string> A list naming the actions that this task will execute. These actions must either be TransientActions defined in the TransientPipelineDefinition's actions field or be preexisting actions that have been previously added to Workflow Manager. When there is a TransientAction with the same name as an action added to Workflow Manager, the TransientAction will be used. Yes

TransientAction


Name Type Description Required
name string This action's name. For this action to be executed, it must be listed in a TransientTask's actions field. Yes
algorithm string The name of the algorithm that this action will execute. It must be a preexisting algorithm already added to Workflow Manager. Yes
properties array<object> The properties associated with the action which may be used to override algorithm properties. Each property is an object with two fields, name and value. For example: [ {"name": "some_name", "value": "some_value"}, {"name": "some_other_name", "value": "some_other_value"}] No

DeployedServiceModel (Response only)


Name Type Description
kind string Simple (binary) or generic (jar)
lastKnownState string A string that will be one of the following values: Unknown, Configured (configured, but no other indication of presence), Launching (asked to start), Running, ShuttingDown (requested to shut down), ShuttingDownNoRestart, Inactive (inactive after a regular shutdown request), InactiveNoStart, Delete, DeleteInactive (inactive and removed from the config)
name string Name of the service
rank integer Service index
restartCount integer Number of times this service has restarted
serviceCount integer The amount of services
unlaunchable boolean True if the service has reached a condition where it is not launch able; otherwise false

JobCreationResponse (Response only)


Name Type Description
jobId string The job id of the created batch job. It is of the form "[hostname]-[jobId]", where "hostname" is the name of the system where the job was executed, and "jobId" is the integer job identifier used internally by MPF.
mpfResponse See MpfResponse in the Definitions section.
tiesDbCheckStatus string The status of the TiesDb before job check. The possible statuses are:
  • NOT_REQUESTED: The TiesDb check was not performed because the SKIP_TIES_DB_CHECK job property was true.
  • NO_TIES_DB_URL_IN_JOB: The TiesDb check was not performed because the TIES_DB_URL job property was not set.
  • MEDIA_HASHES_ABSENT: The job was configured to check TiesDb, but the media hash was not provided. The check will occur after media inspection.
  • MEDIA_MIME_TYPES_ABSENT: The job was configured to check TiesDb, but the media's mime type was not provided. The check will occur after media inspection.
  • NO_MATCH: TiesDb was checked, but no compatible job was found.
  • FOUND_MATCH: A compatible job was found in TiesDb.
outputObjectUri string If a compatible job is found in TiesDb and the job is not configured to copy the results to a new S3 bucket, this will contain the URI to the old job's output object. A compatible TiesDb job can only be found during job creation when the MEDIA_HASH and MIME_TYPE media metadata are provided in the job request.

ServiceModel


Name Type Description Required
args array Arugments for the process No
cmd string The process command Yes
environmentVariables array See EnvironmentVariableModel in the Definitions section. No
serviceCount integer The number of services to start Yes
serviceDescription string Description of the service Yes
serviceLauncher string 'simple' (binary) or 'generic' (jar) Yes
serviceName string Name of the service Yes
workingDirectory string Working directory for the service Yes

NodeManagerModel


Name Type Description Required
host string The hostname of the server running the node manager Yes
services array See ServiceModel in the Definitions section. Yes

SingleJobInfo (Response only)


Name Type Description
endDate string The date of job completion
jobId string The id of the job. It is of the form "[hostname]-[jobId]", where "hostname" is the name of the system where the job was executed, and "jobId" is the integer job identifier used internally by MPF.
jobPriority integer The priority of the job, an integer value between 0 and 9 with 0 being the lowest priority
jobProgress number A float value from 0 to 100 representing the progress of the job
jobStatus string A string that will be one of the following values: UNKNOWN, INITIALIZED (the job has been initialized but not started), IN_PROGRESS, IN_PROGRESS_ERRORS, IN_PROGRESS_WARNINGS COMPLETE, COMPLETE_WITH_ERRORS, COMPLETE_WITH_WARNINGS, CANCELLING, CANCELLED, CANCELLED_BY_SHUTDOWN, ERROR
mediaUris array<string> The URIs of the media that the job ran on.
outputObjectPath string The server file path to the detection output object
pipelineName string The name of the pipeline used to process the media. Obtained from 'rest/pipelines'.
startDate string The date the job started
terminal boolean True if jobStatus is COMPLETE, COMPLETE_WITH_ERRORS, COMPLETE_WITH_WARNINGS, CANCELLED, CANCELLED_BY_SHUTDOWN, or ERROR; otherwise false
tiesDbStatus string Status of the HTTP POST to TiesDb. Possible statuses are "JOB RUNNING", "IN PROGRESS", "NOT REQUESTED", "COMPLETE", and "ERROR". When there is an error the value will be "ERROR: <description>".
callbackStatus string Status of the job completion callback. Possible statuses are the same as tiesDbStatus.

InfoModel (Response only)


Name Type Description
app string Application name (Media Processing Framework)
appFamily string Application family (Workflow Manager)
buildNum string Build number
gitBranch string git branch
gitHash string git hash
version string Version number ("x.x.x")

MpfResponse (Response only)


Name Type Description
message string Error message if responseCode is not 0
responseCode integer 0 if success, 1 if error, 2 if warning

AggregatePipelineStatsModel (Response only)


Name Type Description
count integer The amount of jobs, in any job status, processed with the pipeline
maxTime integer The longest amount of time in milliseconds taken to complete a job used to build this model
minTime integer The shortest amount of time in milliseconds taken to complete a job used to build this model
states object A key-value pair of (string, integer) where the key is the job status and the value is the amount of jobs currently meeting that status
totalTime integer The total amount of time taken in milliseconds to complete processing of all jobs used to compile this model
validCount integer The amount of jobs with a job status of COMPLETE, which is the amount of total jobs used to compile the statistics in this model

AllJobsStatisticsModel (Response only)


Name Type Description
elapsedTimeMs integer Time in milliseconds it took to retrieve this model
aggregatePipelineStatsMap object A key-value pair of (string, AggregatePipelineStatsModel) where the key is a pipeline name
jobTypes integer Amount of different elements in the aggregatePipelineStatsMap, which is equal to the amount of different pipelines used by all of the processed jobs
totalJobs integer The total amount of jobs used to compile the statistics

StreamingJobCreationRequest


Name Type Description Required
enableOutputToDisk boolean True to build the output objects; otherwise false Yes
externalId string External id No
jobProperties object A key-value pair using strings which may be used to override the parameters associated with the pipeline. No
algorithmProperties object A key-value pair which can override jobProperties for a specific algorithm defined in a pipeline. The key should be the algorithm name, and the value should be a Map of String key-value pairs representing properties specific to the named algorithm. No
stream object See JobCreationStreamData in the Definitions section. Yes
stallTimeout integer Time before OpenMPF will terminate the streaming job after stall has been initially detected (milliseconds). The stream is considered to be abandoned if this timeout has been exceeded, so OpenMPF will terminate this streaming job. Set value to -1 if the streaming job should never be terminated due to stream stall. Yes
pipelineName string The name of the pipeline used to process the media. Obtained from 'rest/pipelines'. Yes
healthReportCallbackUri string A valid (properly encoded) URI for health report callbacks. If specified, the Workflow Manager will include this streaming job in health reports that can be sent to a 3rd party client. If the same healthReportCallbackUri is specified when creating more than one job, the periodically scheduled POST callback will contain health reports for all the jobs created using that healthReportCallbackUri. Health reports that are sent due to status changes and activity alerts for specific jobs will only contain health data for that single job. Monitoring of the OpenMPF health reports is recommended since OpenMPF may have determined the stream to be stalled. For more information, see HealthReport in the Definitions section. No
summaryReportCallbackUri string A valid (properly encoded) URI for summary report callbacks. If specified, as each video segment is processed, OpenMPF will deliver the summary report to the 3rd party client via this URI using the POST callback method. See Section 2.21 for an example of a summary report. No

StreamingJobCreationResponse (Response only)


Name Type Description
jobId integer The unique job id of the streaming job that was created.
outputObjectDirectory string Directory created by OpenMPF for this streaming job. May be null if enableOutputToDisk is false. In this case, there is no directory associated with this streaming job. If enableOutputToDisk is true, then all files generated by this streaming job will be created under this directory. The directory path for streaming job files is returned to the client to support manual file deletion. It is the responsibility of the client to ensure that the volume of video files created for this streaming job does not overwhelm the capacity of the storage disk.
mpfResponse See MpfResponse in the Definitions section.

StreamingJobInfo (Response only)


Name Type Description
jobId integer The id of the streaming job
outputObjectDirectory string Directory created by OpenMPF for this streaming job. May be null if enableOutputToDisk is false. In this case, there is no directory associated with this streaming job. If enableOutputToDisk is true, then all files generated by this streaming job will be created under this directory. The directory path for streaming job files is returned to the client to support manual file deletion. It is the responsibility of the client to ensure that the volume of video files created for this streaming job does not overwhelm the capacity of the storage disk.
streamUri string A valid (properly encoded) URI to a single incoming video stream source for the streaming job. Currently only supporting RTSP and HTTP stream protocols.
startDate string The date the streaming job started, local system time. Example: 2018-01-07T10:23:04.6-05:00.
endDate string The date the streaming job ended, local system time. Example: 2018-01-08T00:00:00.0-05:00 or null if the job hasn't completed.
jobStatus string A string that will be one of the following values: INITIALIZING|IN_PROGRESS|CANCELLING|CANCELLED|TERMINATED| STALLED|JOB_CREATION_ERROR|ERROR|CANCELLED_BY_SHUTDOWN.
jobStatusDetail string Section where more detailed information about the job status may be included. May be null if more detailed information is not available.
pipelineName string The name of the pipeline used to process the media. Obtained from 'rest/pipelines'.
activityFrameId string The frame id corresponding to the start of the first track generated in the current segment. If the current segment has not begun generating any tracks, this will correspond to the last segment that did. This will only be updated once per segment when the first track is started, regardless of the number of other detections in the segment. A null represents that no tracks have been started for this job yet.
activityTimestamp string The detection time associated with the activityFrameId, local system time. Example: 2018-01-07T18:30:00.5-05:00 or null if there has been no activity found in the job.

StreamingJobCancelResponse (Response only)


Name Type Description
jobId integer The unique job id of the streaming job that was cancelled.
doCleanup boolean True if doCleanup was true in the originating streaming job cancel request. False otherwise.
outputObjectDirectory string Directory created by OpenMPF for this streaming job. May be null if enableOutputToDisk was false. All files generated by this streaming job would have been created under this directory. Directory path is returned to the client to support manual file deletion, if this is something the client wants to do later. It is the responsibility of the client to ensure that the volume of video files created for this streaming job does not overwhelm the capacity of the storage disk.
mpfResponse See MpfResponse in the Definitions section.

JobCreationStreamData


Name Type Description Required
streamUri string A valid (properly encoded) URI to a single incoming video stream source for the streaming job. Currently only supporting RTSP and HTTP stream protocols. Yes
segmentSize integer Defines how to reduce the video into manageable segments for processing within the components. Value must be >= 10. Yes
mediaProperties object A map of key-value pairs using strings which may be used to override the parameters associated with the pipeline or streaming job properties for this medium. No

HealthReport (Response only)


Name Type Description
reportDate string The date of this health report.
reports array See HealthReportData in the Definitions section.

HealthReportData (Response only)


Name Type Description
jobId array Unique id of the streaming job.
externalId string External id or null if an external id was not specified in the original streaming job creation request.
jobStatus string A string that will be one of the following values: INITIALIZING|IN_PROGRESS|CANCELLING|CANCELLED|TERMINATED| STALLED|JOB_CREATION_ERROR|ERROR|CANCELLED_BY_SHUTDOWN.
jobStatusDetail string Section where more detailed information about the job status may be included, or null if more detailed job status information is not available.
activityFrameId string The frame id corresponding to the start of the first track generated in the current segment. If the current segment has not begun generating any tracks, this will correspond to the last segment that did. This will only be updated once per segment when the first track is started, regardless of the number of other detections in the segment. A null represents that no tracks have been started for this job yet.
activityTimestamp string The detection time associated with the activityFrameId. A null represents that no tracks have been started for this job yet.

AllStreamingJobsInfoModel (Response Only)


Name Type Description
jobIds array List of job ids for streaming jobs in OpenMPF. This list may just include the active streaming jobs if the isActive parameter was specified in the original [GET] request. This list will be empty if there are no streaming jobs that satisfy the request conditions in OpenMPF. OpenMPF guarantees uniqueness of all job ids. This includes a guarantee that the jobId of a streaming job will not conflict with the jobId of a batch job.

ResponseMessage (Response Only)


Name Type Description
message string Message describing result of REST API call.

Pipeline


Name Type Description
name string The pipeline's name.
description string A description of the pipeline.
tasks array<string> The names of the pipeline's tasks.

Task


Name Type Description
name string The task's name.
description string A description of the task.
actions array<string> The names of the task's actions.

Action


Name Type Description
name string The action's name.
description string A description of the action.
algorithm algorithm The name of the actions' algorithm.
properties array<object> The properties associated with the action which may be used to override algorithm properties. Each property is an object with two fields, name and value. For example: [ {"name": "some_name", "value": "some_value"}, {"name": "some_other_name", "value": "some_other_value"}]

Algorithm


Name Type Description
name string The algorithm's name.
description string A description of the algorithm.
actionType string Currently this is always "DETECTION", except for the markup component.
supportsBatchProcessing boolean Indicates whether or not the algorithm supports batch processing.
supportsStreamProcessing boolean Indicates whether or not the algorithm supports stream processing.
providesCollection Algorithm.Provides See Algorithm.Provides
providesCollection Algorithm.Requires See Algorithm.Requires

Algorithm.Provides


Name Type Description
states array<string> The names of the states provided by the algorithm.
properties array<AlgorithmProperty> The properties provided by the algorithm.

AlgorithmProperty


Name Type Description
name string The name of the property
description string A description the property.
defaultValue string The value to use when no value is explicitly set for the property.
type string The data type of this property value. Must be one of 'BOOLEAN', 'FLOAT', 'DOUBLE', 'INT', 'LONG', or 'STRING'.
propertiesKey string The name of the Java property that provides the default value for the property.

Algorithm.Requires


Name Type Description
states array<string> The names of the states required by the algorithm.

TiesDbRepostResponse


Name Type Description
success array<integer> The job ids that were successfully re-posted to TiesDb.
failures array<TiesDbRepostResponse.Failure> An array containing the job ids and descriptions of failed TiesDb re-posts.

TiesDbRepostResponse.Failure


Name Type Description
jobId integer An id of a job that was not successfully re-posted to TiesDb.
error string A textual description explaining why the TiesDb re-post failed.

QueueInfo


Name Type Description
name string The name of the queue.
messagesInQueue integer The number of messages currently in the queue.

2. Paths

GET  /rest/info
Summary Returns metadata about the Workflow Manager, such as version and build number
Description Note that some of this information is set only during official builds; if you get a '0' or 'unknown', that indicates that this was not an official build.
Operation Id
Produces application/json
Parameters

no parameters

Tags meta
Responses
code description
200 Successful response
  See InfoModel in the Definitions section.

401 Bad credentials
GET  /rest/jobs/stats
Summary Compiles the AllJobsStatisticsModel using all of the submitted jobs.
Description
Operation Id
Produces application/json
Parameters

no parameters

Tags statistics
Responses
code description
200 Successful response
  See AllJobsStatisticsModel in the Definitions section.
401 Bad credentials
POST  /rest/jobs
Summary Creates and submits a job using a JSON JobCreationRequest object as the request body.
Description The pipelineName should be one of the values in 'rest/pipelines', and the component associated with that pipeline must support batch processing. The pipelineDefinition field can be provided in the job request, instead of a pipelineName. The media array should contain objects with a valid mediaUri. Examples: http://localhost/images/image.png, file:///home/user/images/image.jpg.

A callbackURL (optional) and callbackMethod (GET or POST) may be added. When the job completes, the callback will perform a GET or POST to the callbackURL with the jobId, externalId, and outputObjectUri parameters. For example, if the callbackURL provided is 'http://api.example.com/foo', the jobId is 'hostname-1', and the externalId is 'someid', then a GET callback will be:
http://api.example.com/foo?jobid=hostname-1&externalid=someid&outputobjecturi=file%3A%2F%2F%2Fpath%2Fto%2F1%2Fdetection.json

If callbackURL ends in 'foo?someparam=something', then a GET callback will be:
http://api.example.com/foo?someparam=something&jobid=hostname-1&externalid=someid&outputobjecturi=file%3A%2F%2F%2Fpath%2Fto%2F1%2Fdetection.json

If no externalId is provided, then a GET callback will be:
http://api.example.com/foo?jobid=hostname-1&outputobjecturi=file%3A%2F%2F%2Fpath%2Fto%2F1%2Fdetection.json

The body of a POST callback will always include the 'jobId', 'externalId', and 'outputObjectUri' even if the latter two are 'null'.
The jobId that is reported from OpenMPF is a string of the form "[hostname]-[jobid]", where [hostname] is the name of the host where the job was run, and [jobid] is the numeric job id used internally by OpenMPF.

Note that all provided URIs must be properly encoded.

An optional jobProperties object contains String key-value pairs which override the pipeline's job properties for this job. An optional algorithmProperties object containing <String,Map> key-value pairs can override jobProperties for a specific algorithm defined in the pipeline. For algorithmProperties, the key should be the algorithm name, and the value should be a Map of String key-value pairs representing properties specific to the named algorithm.

Within media, an optional metadata object containing String key-value pairs can override media inspection once the required metadata information is provided for audio, image, generic, and video jobs. For media metadata, note that optional parameters like `ROTATION` and `HORIZONTAL_FLIP` can also be provided.

The body of a POST job creation request will be similar to this example which uses a OCV FACE DETECTION (WITH MOG MOTION PREPROCESSOR) PIPELINE. Some unrequired parameters are omitted. Note that this example makes use of overloading by jobProperties, algorithmProperties and mediaProperties:
{
    "jobProperties": {
        "FRAME_INTERVAL": "5"
    },
    "algorithmProperties": {
        "FACECV": {
            "MIN_FACE_SIZE": "50"
        }
    },
    "media": [{
        "mediaUri": "file:///media/sf_SHARED/TRANSFER/samples-new/face/video_01.mp4",
        "properties": {
            "HORIZONTAL_FLIP": "true"
        }
    }],
    "pipelineName": "OCV FACE DETECTION (WITH MOG MOTION PREPROCESSOR) PIPELINE",
    "priority": 0
}
                        

The body of a POST callback will be similar to this example:
{
  "jobId": "localhost-145",
  "externalId": "555",
  "outputObjectUri": "file:///path/to/1/detection.json"
}
                         
Operation Id
Produces application/json
Consumes application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
jobCreationRequest body See JobCreationRequest in the Definitions section. Yes
Tags batch_jobs
Responses
code description
201 Batch Job successfully created
  See JobCreationResponse in the Definitions section.
400 Bad request
401 Bad credentials
GET  /rest/jobs/{id}
Summary Gets a SingleJobInfo model for the job with the id provided as a path variable.
Description
Operation Id
Produces application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
id path Job Id Yes string
Tags batch_jobs
Responses
code description
200 Successful response
  See SingleJobInfo in the Definitions section.
400 Invalid job id, the response body will contain no content
401 Bad credentials
POST  /rest/jobs/{id}/cancel
Summary Cancels the job with the supplied job id.
Description
Operation Id
Produces application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
id path Job id Yes string
Tags batch_jobs
Responses
code description
200 Successful cancellation attempt for the batch job
  See MpfResponse in the Definitions section.
400 Invalid job id, the response will still be an MpfResponse with more information
401 Bad credentials
GET  /rest/jobs/{id}/output/detection
Summary Gets the JSON detection output object of a specific job using the job id as a required path variable.
Description
Operation Id
Produces application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
id path Job id Yes string
Tags batch_job
Responses
code description
200 Successful response
  JsonOutputObject example:
{
  "jobId": "localhost-11",
  "errors": [],
  "warnings": [],
  "objectId": "ef027349-8e6a-4472-a459-eba9463787f3",
  "pipeline": {
    "name": "OCV FACE DETECTION PIPELINE",
    "description": "Performs OpenCV face detection.",
    "tasks": [
      {
        "actionType": "DETECTION",
        "name": "OCV FACE DETECTION TASK",
        "description": "Performs OpenCV face detection.",
        "actions": [
          {
            "algorithm": "FACECV",
            "name": "OCV FACE DETECTION ACTION",
            "description": "Executes the OpenCV face detection algorithm using the default parameters.",
            "properties": {}
          }
        ]
      }
    ]
  },
  "priority": 4,
  "siteId": "mpf1",
  "externalJobId": null,
  "timeStart": "2021-09-07T20:57:01.073Z",
  "timeStop": "2021-09-07T20:57:02.946Z",
  "status": "COMPLETE",
  "algorithmProperties": {},
  "jobProperties": {},
  "environmentVariableProperties": {},
  "media": [
    {
      "mediaId": 3,
      "path": "file:///opt/mpf/share/remote-media/faces.jpg",
      "sha256": "184e9b04369248ae8a97ec2a20b1409a016e2895686f90a2a1910a0bef763d56",
      "mimeType": "image/jpeg",
      "mediaType": "IMAGE",
      "length": 1,
      "mediaMetadata": {
        "FRAME_HEIGHT": "1275",
        "FRAME_WIDTH": "1920",
        "MIME_TYPE": "image/jpeg"
      },
      "mediaProperties": {},
      "status": "COMPLETE",
      "detectionProcessingErrors": {},
      "markupResult": null,
      "output": {
        "FACE": [
          {
            "source": "+#OCV FACE DETECTION ACTION",
            "algorithm": "FACECV",
            "tracks": [
              {
                "id": "d4b4a6e870c1378a3bc85a234b6f4c881f81a14edcf858d6d256d04ad40bc175",
                "startOffsetFrame": 0,
                "stopOffsetFrame": 0,
                "startOffsetTime": 0,
                "stopOffsetTime": 0,
                "type": "FACE",
                "source": "+#OCV FACE DETECTION ACTION",
                "confidence": 5,
                "trackProperties": {},
                "exemplar": {
                  "offsetFrame": 0,
                  "offsetTime": 0,
                  "x": 652,
                  "y": 212,
                  "width": 277,
                  "height": 277,
                  "confidence": 5,
                  "detectionProperties": {},
                  "artifactExtractionStatus": "NOT_ATTEMPTED",
                  "artifactPath": null
                },
                "detections": [
                  {
                    "offsetFrame": 0,
                    "offsetTime": 0,
                    "x": 652,
                    "y": 212,
                    "width": 277,
                    "height": 277,
                    "confidence": 5,
                    "detectionProperties": {},
                    "artifactExtractionStatus": "NOT_ATTEMPTED",
                    "artifactPath": null
                  }
                ]
              },
              {
                "id": "3d51c28fa7373930dc8d1381b4e76f583fce1c5a9802d82926d4476449789bff",
                "startOffsetFrame": 0,
                "stopOffsetFrame": 0,
                "startOffsetTime": 0,
                "stopOffsetTime": 0,
                "type": "FACE",
                "source": "+#OCV FACE DETECTION ACTION",
                "confidence": 18,
                "trackProperties": {},
                "exemplar": {
                  "offsetFrame": 0,
                  "offsetTime": 0,
                  "x": 970,
                  "y": 165,
                  "width": 329,
                  "height": 329,
                  "confidence": 18,
                  "detectionProperties": {},
                  "artifactExtractionStatus": "NOT_ATTEMPTED",
                  "artifactPath": null
                },
                "detections": [
                  {
                    "offsetFrame": 0,
                    "offsetTime": 0,
                    "x": 970,
                    "y": 165,
                    "width": 329,
                    "height": 329,
                    "confidence": 18,
                    "detectionProperties": {},
                    "artifactExtractionStatus": "NOT_ATTEMPTED",
                    "artifactPath": null
                  }
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "mediaId": 4,
      "path": "file:///opt/mpf/share/remote-media/shell.jpg",
      "sha256": "43fa105be8421f70f8335d84b21b10c7f17989a254fab76570113826e7cf6e0e",
      "mimeType": "image/jpeg",
      "mediaType": "IMAGE",
      "length": 1,
      "mediaMetadata": {
        "FRAME_HEIGHT": "1258",
        "FRAME_WIDTH": "1920",
        "MIME_TYPE": "image/jpeg"
      },
      "mediaProperties": {},
      "status": "COMPLETE",
      "detectionProcessingErrors": {},
      "markupResult": null,
      "output": {
        "NO TRACKS": [
          {
            "source": "+#OCV FACE DETECTION ACTION",
            "algorithm": "FACECV"
          }
        ]
      }
    }
  ]
}
                                                            
400 Invalid job id, the response body will contain no content
401 Bad credentials
POST  /rest/jobs/{id}/resubmit
Summary Resubmits the job with the provided job id. If the job priority parameter is not set the default value will be used.
Description
Operation Id
Produces application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
id path Job id Yes string
jobPriority query Job priority (0-9 with 0 being the lowest) - OPTIONAL No integer int32
Tags batch_jobs
Responses
code description
200 Successful resubmission request. See JobCreationResponse in the Definitions section.
400 Invalid job id, the response will still be a JobCreationResponse with more information
401 Bad credentials
GET  /rest/nodes/config
Summary Retrieves the configuration information of all NodeManagers, including all services configured to run on each NodeManager
Description
Operation Id
Produces application/json
Parameters

no parameters

Tags nodes
Responses
code description
200 Successful response
Schema type array
  See NodeManagerModel in the Definitions section.
401 Bad credentials
POST  /rest/nodes/config
Summary Save the NodeManager configuration using a JSON array of NodeManagerModel objects.
Description Each node manager in the cluster will be notified of the change(s) and attempt to conform to those changes.
Operation Id
Produces application/json
Consumes application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
nodeManagerModels body all NodeManagerModel objects as a JSON array specifying all the configurations for all the nodes in the cluster Yes
Tags nodes
Responses
code description
201 Config saved. See MpfResponse in the Definitions section.
401 Bad credentials
GET  /rest/nodes/hosts
Summary Returns a collection of key-value pairs containing a hostname and its node configuration status. If the configuration status is 'true' that hostname is configurated to run a node manager.
Description The response is a set of JSON key-value pairs, where the key is the hostname and the value is the configuration status.
Operation Id
Produces application/json
Parameters

no parameters

Tags nodes
Responses
code description
200 Successful response
Schema type object
  { "host1": true, "host2": true, ..., "hostn": true }
401 Bad credentials
GET  /rest/nodes/info
Summary Retrieves information about the currently configured node managers and the statuses of the services within each configured node manager.
Description
Operation Id
Produces application/json
Parameters

no parameters

Tags nodes
Responses
code description
200 Successful response. See DeployedNodeManagerModel in the Definitions section.
401 Bad credentials
GET  /rest/nodes/services
Summary Retrieves services that are currently available for deployment to a node.
Description In the response, the key is the serviceName and the value is a ServiceModel object.
Operation Id
Produces application/json
Parameters

no parameters

Tags nodes
Responses
code description
200 Successful response
Schema type array
  See ServiceModel in the Definitions section.
401 Bad credentials
POST  /rest/nodes/services/{serviceName}/start
Summary Starts the service named serviceName
Description This method returns a NodeServiceStatusChangeResult and a HTTP 200 status code on success.
Operation Id
Produces application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
serviceName path The fully qualified name of the service to be shutdown, (e.g., localhost.localdomain:markup:1) Yes string
Tags nodes
Responses
code description
200 Successful response. See MpfResponse in the Definitions section.
401 Bad credentials
POST  /rest/nodes/services/{serviceName}/stop
Summary Shuts down the service named serviceName
Description This method returns a NodeServiceStatusChangeResult and a HTTP 200 status code on success.
Operation Id
Produces application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
serviceName path The fully qualified name of the service to be shutdown, (e.g., localhost.localdomain:markup:1) Yes string
Tags nodes
Responses
code description
200 Successful response. See MpfResponse in the Definitions section.
401 Bad credentials
GET  /rest/system-message
Summary Retrieves all system messages.
Description Returns a JSON array of all System Messages.
Operation Id
Produces application/json
Parameters

no parameters

Tags system-message
Responses
code description
200 Successful response
Schema type array
  See SystemMessage in the Definitions section.
401 Bad credentials
POST  /rest/system-message
Summary Adds a system message.
Description Adds a system message.
Operation Id
Produces application/json
Consumes application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
msg body The message Yes string
msgType query The message type refers to the audience it is intended for (defaults to 'all'); valid values are: 'all', 'admin', and 'login' No string
removeStrategy query Strategy governing how a message is to be removed from the queue (defaultst to 'manual'); valid values are 'atServerStartup', and 'manual' No string
severity query Severity of the message (defaults to 'info'); valid values are 'info', 'warning' ,and 'error' No string
Tags system-message
Responses
code description
201 Successfully added. See MpfResponse in the Definitionssection.
401 Bad credentials
GET  /rest/system-message/type/{typeFilter}
Summary Retrieves all system messages of the given type.
Description Returns a JSON array of System Messages matching typeFilter.
Operation Id
Produces application/json
Consumes application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
typeFilter path The message type to find; valid values are 'all', 'admin', and 'login' Yes string
Tags system-message
Responses
code description
200 Successful response
Schema type array
  See SystemMessage in the Definitions section.
401 Bad credentials
DELETE  /rest/system-message/{id}
Summary Deletes a system message identified by id.
Description By design, if you delete a non-existent id, the response code is still 200 since the server no longer has (and may never have had) a message with that id.
Operation Id
Produces application/json
Consumes application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
id path id Yes integer int64
Tags system-message
Responses
code description
200 Successfully deleted
  See MpfResponse in the Definitions section.

401 Bad credentials
GET  /rest/streaming/jobs
Summary Gets a list of job ids for streaming jobs.
Description Gets a list of job ids for streaming jobs. If isActive is true, don't include streaming jobs that are terminated, in error or cancelled. If false, return all streaming jobs.
Operation Id
Produces application/json
Consumes application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
isActive query enable to filter out inactive streaming jobs No boolean true
Tags streaming_jobs
Responses
code description
200 Successful response
Schema type array
  See AllStreamingJobsInfoModel in the Definitions section.
401 Bad credentials
POST  /rest/streaming/jobs
Summary Creates and submits a streaming job using a JSON StreamingJobCreationRequest object as the request body.
Description The pipelineName should be one of the values in 'rest/pipelines', and the component associated with that pipeline must support stream processing. The stream should contain a valid streamUri, for example: rtsp://example.com/media.mp4. Optional segmentSize, mediaProperties, stallTimeout and stallCallbackUri may also be defined for the stream. Additional streaming job options include summaryReportCallbackUri and healthReportCallbackUri. Health and summary reports will always be sent to the callback URIs using the HTTP POST method. Other streaming job options include jobProperties object which contains String key-value pairs which override the pipeline's job properties for this streaming job. An optional algorithmProperties object containing key-value pairs can override jobProperties for a specific algorithm defined in the pipeline. For algorithmProperties, the key should be the algorithm name, and the value should be a Map of String key-value pairs representing properties specific to the named algorithm. Note that the batch jobs and streaming jobs share a range of valid job ids. OpenMPF guarantees that the ids of a streaming job and a batch job will be unique. Also, note that all provided URIs must be properly encoded.

The body of a POST streaming job creation request will be similar to this example which uses a HELLOWORLD TEST PIPELINE. Some unrequired parameters are omitted.:
{
  "enableOutputToDisk": true,
  "externalId": "test-run-8",
  "pipelineName": "HELLOWORLD TEST PIPELINE",
  "stallTimeout": 30000,
  "stream": {
    "segmentSize": 10,
    "streamUri": "rtsp://localhost/vod/mp4:BigBuckBunny_115k.mov"
  },
  "healthReportCallbackUri": "http://localhost:2000",
  "summaryReportCallbackUri": "http://localhost:2001"
}

						

The body of a health report POST callback will be similar to this example:
{
  "reportDate": "2018-02-15T14:51:30.5-05:00",
  "reports": [{
      "jobId": 244,
      "externalId": "test-run-7",
      "jobStatus": "CANCELLED",
      "jobStatusDetail": "Cancelled by user",
      "activityFrameId": null,
      "activityTimestamp": null
    },
    {
      "jobId": 245,
      "externalId": "test-run-8",
      "jobStatus": "IN_PROGRESS",
      "jobStatusDetail": null,
      "activityFrameId": "0",
      "activityTimestamp": "2018-02-15T14:51:30.4-05:00"
    }
  ]
}
                        

The body of a summary report POST callback will be similar to this example:
{
  "reportDate": "2018-02-15T14:51:30.8-05:00",
  "jobId": 245,
  "externalId": "test-run-8",
  "segmentId": 0,
  "segmentStartFrame": 0,
  "segmentStopFrame": 9,
  "errorMessage": "",
  "output": {
    "HELLO": [{
      "id": "0",
      "startOffsetFrame": 0,
      "stopOffsetFrame": 0,
      "startTimestamp": "2018-02-15T14:51:30.4-05:00",
      "stopTimestamp": "2018-02-15T14:51:30.4-05:00",
      "type": "HELLO",
      "exemplar": {
        "offsetFrame": 0,
        "timestamp": "2018-02-15T14:51:30.4-05:00",
        "x": 0,
        "y": 0,
        "width": 960,
        "height": 540,
        "confidence": 0.75,
        "detectionProperties": {
          "propName1": "propVal1"
        }
      },
      "detections": [{
        "offsetFrame": 0,
        "timestamp": "2018-02-15T14:51:30.4-05:00",
        "x": 0,
        "y": 0,
        "width": 960,
        "height": 540,
        "confidence": 0.75,
        "detectionProperties": {
          "propName1": "propVal1"
        }
      }]
    }, {
      "id": "1",
      "startOffsetFrame": 3,
      "stopOffsetFrame": 6,
      "startTimestamp": "2018-02-15T14:51:30.4-05:00",
      "stopTimestamp": "2018-02-15T14:51:30.4-05:00",
      "type": "HELLO",
      "exemplar": {
        "offsetFrame": 3,
        "timestamp": "2018-02-15T14:51:30.4-05:00",
        "x": 0,
        "y": 0,
        "width": 960,
        "height": 540,
        "confidence": 0.75,
        "detectionProperties": {
          "propName1": "propVal1"
        }
      },
      "detections": [{
        "offsetFrame": 3,
        "timestamp": "2018-02-15T14:51:30.4-05:00",
        "x": 0,
        "y": 0,
        "width": 960,
        "height": 540,
        "confidence": 0.75,
        "detectionProperties": {
          "propName1": "propVal1"
        }
      }, {
        "offsetFrame": 6,
        "timestamp": "2018-02-15T14:51:30.4-05:00",
        "x": 0,
        "y": 0,
        "width": 960,
        "height": 540,
        "confidence": 0.75,
        "detectionProperties": {
          "propName1": "propVal1"
        }
      }]
    }, {
      "id": "2",
      "startOffsetFrame": 9,
      "stopOffsetFrame": 9,
      "startTimestamp": "2018-02-15T14:51:30.4-05:00",
      "stopTimestamp": "2018-02-15T14:51:30.4-05:00",
      "type": "HELLO",
      "exemplar": {
        "offsetFrame": 9,
        "timestamp": "2018-02-15T14:51:30.4-05:00",
        "x": 0,
        "y": 0,
        "width": 960,
        "height": 540,
        "confidence": 0.75,
        "detectionProperties": {
          "propName1": "propVal1"
        }
      },
      "detections": [{
        "offsetFrame": 9,
        "timestamp": "2018-02-15T14:51:30.4-05:00",
        "x": 0,
        "y": 0,
        "width": 960,
        "height": 540,
        "confidence": 0.75,
        "detectionProperties": {
          "propName1": "propVal1"
        }
      }]
    }]
  }
}
						

Operation Id
Produces application/json
Consumes application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
streamingJobCreationRequest body See StreamingJobCreationRequest in the Definitions section. Yes
Tags streaming_jobs
Responses
code description
201 Streaming Job successfully created
  See StreamingJobCreationResponse in the Definitions section.
400 Bad request
401 Bad credentials

GET  /rest/streaming/jobs/{id}
Summary Gets a StreamingJobInfo model for the streaming job with the id provided as a path variable.
Description Get information about a previously created streaming job
Operation Id
Produces application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
id path id of streaming job Yes integer int64
Tags streaming_jobs
Responses
code description
200 Successful response
  See StreamingJobInfo in the Definitions section.
400 Invalid streaming job id, the response body will contain no content
401 Bad credentials
POST  /rest/streaming/jobs/{id}/cancel
Summary Cancels the streaming job with the supplied job id.
Description Cancels the streaming job with the supplied job id. Files created by this streaming job may optionally be cleaned up as part of this cancellation request. If streaming job files are not cleaned up when the streaming job is cancelled, it is recommended that the files be manually removed at a later time to avoid overutilization of the disk. The path to the output directory associated with this streaming job is provided for later reference in the StreamingJobCancelResponse.
Operation Id
Produces application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
id path id of streaming job Yes integer int64
doCleanup query Set to true to remove all files associated with this streaming job as part of this cancellation No boolean false
Tags streaming_jobs
Responses
code description
200 Successful cancellation attempt for the streaming job
  See StreamingJobCancelResponse in the Definitions section.
400 Invalid streaming job id. The response will still be a StreamingJobCancelResponse which contains more information.
401 Bad credentials
POST  /rest/components/registerUnmanaged
Summary Register an unmanaged component.
Description An unmanaged component is a component that is not started or stopped by the Node Manager so it must be done externally. For example, a component that runs in its own Docker container is considered an unmanaged component. If there is no existing component with the same name, then the component will be registered. If there is an existing unmanaged component and it has an identical descriptor, nothing is changed. If there is an existing unmanaged component and the descriptor is different, the existing component will be replaced. If there is an existing managed component with the same name, registration will fail with a 409 - Conflict response.
Operation Id
Produces application/json
Parameters
Name In Description Required Type Format Collection Format Default Min Max
descriptor body Component Descriptor for new component. Yes Component Descriptor application/json
Tags
Responses
code description
200 Successfully updated existing unmanaged component.
See ResponseMessage in the Definitions section.
201 Successfully registered new component.
See ResponseMessage in the Definitions section.
400 The descriptor was invalid.
See ResponseMessage in the Definitions section.
401 Invalid credentials.
See ResponseMessage in the Definitions section.
409 The component conflicts with an existing registered component.
See ResponseMessage in the Definitions section.
DELETE  /rest/components/{componentName}
Summary Remove a component.
Description
Operation Id
Produces <No content>
Parameters
Name In Description Required Type Format Collection Format Default Min Max
componentName path Name of component Yes string
Tags
Responses
code description
204 The component was successfully removed.
401 Bad credentials.
404 There was no component with the specified name.
GET   /rest/pipelines
Summary Gets the list of pipelines.
Description
Operation Id
Produces array<Pipeline>
Tags
Responses
code description
200 Success
401 Bad credentials.
GET   /rest/pipelines/{name}
Summary Gets a single pipeline.
Description
Operation Id
Produces Pipeline
Parameters
Name In Description Required Type Format Collection Format Default Min Max
name path Pipeline Name Yes string
Tags
Responses
code description
200 Success
401 Bad credentials.
404 There was no pipeline with the given name.
POST  /rest/pipelines
Summary Creates a new pipeline.
Description
Operation Id
Produces <No content>
Parameters
Name In Description Required Type Format Collection Format Default Min Max
pipeline body The pipeline to create. Yes Pipeline application/json
Tags
Responses
code description
200 The pipeline was successfully created.
400 The pipeline was invalid.
401 Bad credentials.
DELETE  /rest/pipeline/{name}
Summary Deletes a pipeline.
Description
Operation Id
Produces <No content>
Parameters
Name In Description Required Type Format Collection Format Default Min Max
name path Name of pipeline Yes string
Tags
Responses
code description
200 The pipeline was successfully removed.
401 Bad credentials.
GET  /rest/tasks
Summary Gets the list of tasks.
Description
Operation Id
Produces array<Task>
Tags
Responses
code description
200 Success
401 Bad credentials.
GET   /rest/tasks/{name}
Summary Gets a single task.
Description
Operation Id
Produces Task
Parameters
Name In Description Required Type Format Collection Format Default Min Max
name path Task Name Yes string
Tags
Responses
code description
200 Success
401 Bad credentials.
404 There was no task with the given name.
POST  /rest/tasks
Summary Create a new task.
Description
Operation Id
Produces <No content>
Parameters
Name In Description Required Type Format Collection Format Default Min Max
task body The task to create. Yes Task application/json
Tags
Responses
code description
200 The task was successfully created
400 The task was invalid.
401 Bad credentials.
DELETE  /rest/tasks/{name}
Summary Deletes a task.
Description
Operation Id
Produces <No content>
Parameters
Name In Description Required Type Format Collection Format Default Min Max
name path Name of task. Yes string
Tags
Responses
code description
200 The task was successfully removed.
401 Bad credentials.
GET  /rest/actions
Summary Gets the list of actions.
Description
Operation Id
Produces array<Action>
Tags
Responses
code description
200 Success
401 Bad credentials.
GET   /rest/actions/{name}
Summary Gets a single action.
Description
Operation Id
Produces Action
Parameters
Name In Description Required Type Format Collection Format Default Min Max
name path Action Name Yes string
Tags
Responses
code description
200 Success
401 Bad credentials.
404 There was no action with the given name.
POST  /rest/actions
Summary Create a new action.
Description
Operation Id
Produces <No content>
Parameters
Name In Description Required Type Format Collection Format Default Min Max
action body The action to create. Yes Action application/json
Tags
Responses
code description
200 The action was successfully created
400 The action was invalid.
401 Bad credentials.
DELETE  /rest/actions/{name}
Summary Deletes an action.
Description
Operation Id
Produces <No content>
Parameters
Name In Description Required Type Format Collection Format Default Min Max
name path Name of action. Yes string
Tags
Responses
code description
200 The action was successfully removed.
401 Bad credentials.
GET  /rest/algorithms
Summary Gets the list of algorithms.
Description
Operation Id
Produces array<Algorithm>
Tags
Responses
code description
200 Success
401 Bad credentials.
GET   /rest/algorithms/{name}
Summary Gets a single algorithm.
Description
Operation Id
Produces Algorithm
Parameters
Name In Description Required Type Format Collection Format Default Min Max
name path Algorithm Name Yes string
Tags
Responses
code description
200 Success
401 Bad credentials.
404 There was no algorithm with the given name.
POST  /rest/jobs/tiesdbrepost
Summary Retries posting job results to TiesDB.
Description
Operation Id
Produces TiesDbRepostResponse
Parameters
Name In Description Required Type Format Collection Format Default Min Max
jobIds body An array of job ids that should have their results re-posted to TiesDb. Yes array<integer> application/json
Tags
Responses
code description
200 Success
401 Bad credentials.
500 Failed to re-post results to TiesDb
GET  /rest/queues
Summary Gets information about all ActiveMQ queues.
Description
Operation Id
Produces array<QueueInfo>
Tags
Responses
code description
200 Success
401 Bad credentials.
GET   /rest/queues/{name}
Summary Gets information about a single ActiveMQ queue.
Description
Operation Id
Produces QueueInfo
Parameters
Name In Description Required Type Format Collection Format Default Min Max
name path Queue Name Yes string
Tags
Responses
code description
200 Success
401 Bad credentials.
404 There was no queue with the given name.