MediaObjectRequest

A MediaObjectRequest is a description of the desired state of a clip on Limecraft Flow. This can be an existing clip, or a new clip which should be created.

Property Reference

Field Name Required Type Description Format

acceptedType

String

accessToken

String

annotations

List of object

attachToEdlId

Long

int64

attachToEoId

Long

int64

circled

Boolean

clipMetadata

Object

cloud

Boolean

collections

List of object

content

String

created

Date

The time when this resource was created

date-time

createdBy

String

The request or process that created this resource

createdByShareId

Long

int64

createdBySharedUserId

Long

int64

creatorId

Long

The id of the user who created this resource

int64

customFields

CustomFields

data

Boolean

deleted

Date

date-time

description

String

duration

Long

int64

durationSeconds

Double

double

enableHDProxy

Boolean

enableProxy

Boolean

enableShot

Boolean

enableSpeaker

Boolean

enableSpeech

Boolean

enableStitch

Boolean

fileName

String

forceOverwrite

Boolean

growing

Boolean

hash

String

id

Long

The id of this resource

int64

isCloud

Boolean

isData

Boolean

isProxy

Boolean

keyFrame

Long

int64

label

String

language

String

lastUpdated

Date

The time when this resource was last updated

date-time

loggingStatus

String

Enum: NOT_STARTED, EDITING, COMPLETED,

markForRemoval

Boolean

matchingType

String

Enum: NONE, VIDEO_ONLY, AUDIO_ONLY, FULL,

mediaInfo

Object

mediaInfoObject

MediaInfo

mediaInfoProxy

String

mediaInfoString

String

mediaObjectId

Long

int64

mediaObjectInstanceId

Long

int64

mediaObjectInstances

List of object

modifiedBy

String

The request or process responsible for the last update of this resource

name

String

nonPreferred

Boolean

objectType

String

The data model type or class name of this resource

origin

String

packageId

Long

int64

prefix

String

productionId

Long

int64

proxy

Boolean

proxyOnline

Boolean

proxyProfile

String

rating

Double

double

rawPath

String

resolveMethod

String

Enum: FINGERPRINT, FINGERPRINT_2, NAME, CRITERIA,

reviewStatus

String

sampleRate

SampleRate

screenshot

List of ByteArray

byte

screenshotMimeType

String

size

Long

int64

smallHash

String

source

String

subtitlingStatus

String

Enum: NOT_STARTED, EDITING, COMPLETED, AUTOMATIC_STARTED, AUTOMATIC_COMPLETED, AUTOMATIC_FAILED,

subtitlingStatuses

SubtitlingStatusMap

synchronizeOptions

Map of SynchronizeConfiguration

systemFields

CustomFields

tags

Set of string

timecode

SMPTETimePoint

timecodeFrames

Long

int64

tracks

List of MediaObjectTrack

transcriptionStatus

String

Enum: NOT_STARTED, EDITING, COMPLETED, AUTOMATIC_STARTED, AUTOMATIC_COMPLETED, AUTOMATIC_FAILED,

transcriptionStatuses

TranscriptionStatusMap

type

String

Enum: IMAGE, DOCUMENT, PENDING, AUDIO, VIDEO, SNIPPET, PACKAGE,

umid

String

url

String

version

Long

The version of this resource, used for Optimistic Locking

int64

wfr

List of MediaObjectWorkflowReport

workflowId

String

synchronizeOptions

The manner in which objects are matched and/or updated/created is steered using the synchronizeOptions.

  • At the root level of synchronizeOptions we can define a SynchronizeConfiguration. This will be applied to clips, collections and annotations.

  • It is also possible to define a SynchronizeConfiguration for the clip level, the collection level and / or the annotation level. This has precedence over options defined on the root level.

{
    'synchronizeOptions': {
        'clip': {
            // synchronize options for clips (MediaObject)
            ...
        },
        'collection': {
            // synchronize options for collections (EditorialObject)
            ...
        },
        'annotation': {
            // synchronize options for annotations (Annotation)
            ...
        },
        // global synchronize options
    }
}

See SynchronizeConfiguration to learn more about the structure.

Example of options defined at the root level

{
  "synchronizeOptions": {
    "clip": {
      "matchingCriteria": [],
      "options": {
        "matchOnFirstHit": true,
        "failOnMissingInput": true,
        "failOnMultipleMatches": true,
        "matchOnMissingInput": true,
        "matchOnMissingTarget": true,
        "updateStrategy": {
          "type": "REPLACE"
        }
      }
    }
  }
}

Example of options defined at the collection level

{
   "name": "My Clip",
   "resolveMethod": "CRITERIA",
   "collections": [
   {
      "title": "My Card",
      "funnel": "Card",
      "customFields": {
        "my_id": { "value": "123456789" }
      },
      "synchronizeOptions": {
        "matchingCriteria": [{ "properties": ["customFields.my_id"] }]
      }
   }
   ]
}