EditorialObjectShareObject

This object gives access to an EditorialObject and its attached clips outside of the Production context.

{
    "clientProperties": {
        "eo": {
            "title": "upload test",
            "objectType": "Draft"
        },
        "contents": {},
        "identifyUser": false,
        "overviewVisible": true
    },
    "created": 1681386462138,
    "createdBy": "REST",
    "creatorId": 12,
    "deleted": false,
    "description": "Take a look at this material, it's nice isn't it?",
    "editorialObjectId": 1178778,
    "id": 5678,
    "label": "Demo of a share",
    "lastUpdated": 1681386472427,
    "objectType": "EditorialObjectShareObject",
    "passwordProtected": false,
    "permissions": [
        "UPLOAD",
        "DOWNLOAD_PROXY",
        "DOWNLOAD",
        "VIEW"
    ],
    "productionId": 1234,
    "sharedWithId": 95641,
    "token": "eyJhIjSomethingSwidiI6MX0",
    "version": 3
}

Property Reference

Field Name Required Type Description Format

clientProperties

✘

Object

created

✘

Date

The time when this resource was created

date-time

createdBy

✘

String

The request or process that created this resource

creatorId

✘

Long

The id of the user who created this resource

int64

deleted

✘

Boolean

deletedTimestamp

✘

Date

date-time

description

✘

String

Description of the share. It can contain a description of what the share contains, or what is expected of the user accessing it.

editorialObjectId

✘

Long

int64

expires

✘

Date

The share token will no longer work after this date

date-time

id

✔

Long

The id of this resource

int64

label

✘

String

A label or title of the share. In the UI this is shown as the title when accessing the share.

lastUpdated

✘

Date

The time when this resource was last updated

date-time

modifiedBy

✔

String

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

objectType

✘

String

The data model type or class name of this resource

passwordProtected

✘

Boolean

permissions

✘

Set of string

productionId

✘

Long

int64

sharedWithId

✘

Long

int64

token

✘

String

version

✔

Long

The version of this resource, used for Optimistic Locking

int64

token

The magic part. The Limecraft Flow API will generate a token when the share is created. The token is what gives access to the share and its contents.

The productionId and token are used to construct the shared url: https://platform.limecraft.com#shared/production/{productionId}/{token}.

permissions

The permissions field contains an array of permission strings, which define what users can do with this share.

See the "Share Permissions" section of Permissions for an overview of which permissions can be used.

expires

The expires field contains the Date when the share expires (in milliseconds since the Unix Epoch). Accessing the share via its token will no longer be possible after this date.

passwordProtected / password

The passwordProtected boolean field indicates whether an a password should be given when accessing the share via its token, as an additional security measure.

The password property can be set, but not read (as it is not stored).

clientProperties

The clientProperties field is a JSON object which is not interpreted by the backend. It contains properties that are useful for the Limecraft Flow UI Application.

Field Description

identifyUser

A boolean which determines if a user accessing the share in the Limecraft Flow UI should be asked to identify (provide a name and email). This is by no means a security feature, but it can provide useful informational logging.

overviewVisible

A boolean which determines if the user lands on the overview page of the share (showing a list of clips), or lands on the player of the first clip.

contents

An object describing the contents of the share. Used to render things like meaningful titles.

The shares being used by Limecraft Flow UI are always shares of an EditorialObject.

When a collection (Draft) is shared in the Limecraft Flow UI, the contents of the created share will look like this

{
    "clientProperties": {
        "contents": {
            "eo": {
                "title": "Title of the shared collection",
                "funnel": "Draft"
            }
        }
    }
}

If on the other hand, a selection of clips and / or subclips is being shared in the Limecraft Flow UI, the Limecraft Flow UI will first create an EditorialObject and attach the selection to it. This EditorialObject will have a funnel equal to SelectionShare, and is not explicitly shown in the Limecraft Flow UI. The clientProperties.contents of the created share will look like this:

{
    "clientProperties": {
        "contents": {
            "eo": {
                "title": "Title of the shared collection",
                "funnel": "SelectionShare"
            },
            "annotationCount": 7,
            "clipCount": 3,
            "subclipCount": 4
        }
    }
}