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

✘

Set 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

✘

Set 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

✘

Set 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

✘

Set 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"] }]
      }
   }
   ]
}