Jobs are the processing entity in MoveUGC. By creating a Job, you can initiate the processing for a take. A job can have multiple output types, currently the only output types supported are mp4 and fbx files.

Prerequisites

Before creating a job, please make sure that a take is created. If you've not created a take please refer to this usage guide.

Creating a job

mutation CreateJob {
    job: createJob(takeId: "take-2be2463e-ffa3-419b-beb4-ea0f99c79512") { // (1)
        id
        metadata
        state
        created
        client {
            id
        }
        take {
            id
        }
        outputs {
            key
            file {
                id
                presignedUrl
            }
        }
    }
}
  1. takeId is the id of the take for which you want to create a job. This is typically fetched from the response of creating a take

Attaching a metadata to a job

You can attach a metadata to a job. This metadata will be returned when you create/retrieve the job. This can be useful to store additional information about the job which can fulfil any custom business logic.

mutation CreateJob {
    job: createJob(takeId: "take-2be2463e-ffa3-419b-beb4-ea0f99c79512", metadata: "{\"key\": \"value\"}") {
        id
        metadata
    }
}

Retrieving a job

query retrieveJob {
    job: getJob(jobId: "job-43171933-7526-41a9-a1e2-d6ef328e2cbe") {
        id
        metadata
        state
        created
        client {
            id
        }
        take {
            id
        }
        outputs {
            key
            file {
                id
                presignedUrl
            }
        }
    }
}