pub struct JobCreateRequest { /* private fields */ }Expand description
Request body for POST /v2/jobs.
Use JobCreateRequest::linear for serial pipelines and
JobCreateRequest::graph for branches or joins. Both builders generate
the task names CloudConvert requires.
use cloudconvert_sdk::{FileExtension, JobCreateRequest};
let request = JobCreateRequest::linear()
.import_url("https://example.test/input.docx")
.convert(FileExtension::Pdf)
.export_url()
.build();
let payload = serde_json::to_value(request).unwrap();
assert_eq!(payload["tasks"]["convert"]["input"], "import-url");Implementations§
Source§impl JobCreateRequest
impl JobCreateRequest
Sourcepub fn builder() -> JobBuilder
pub fn builder() -> JobBuilder
Starts a general-purpose job builder.
Prefer JobCreateRequest::linear for serial pipelines and
JobCreateRequest::graph for branch or join jobs.
Sourcepub fn linear() -> JobBuilder
pub fn linear() -> JobBuilder
Starts a job builder for a serial task pipeline.
Sourcepub fn graph(configure: impl FnOnce(&mut JobGraphBuilder)) -> JobBuilder
pub fn graph(configure: impl FnOnce(&mut JobGraphBuilder)) -> JobBuilder
Builds a job graph with task handles scoped to a closure.
Each graph method returns a TaskName that can be passed as the input
for later tasks. The returned JobBuilder can still be used to set
top-level job options before calling JobBuilder::build.
use cloudconvert_sdk::{FileExtension, JobCreateRequest};
let request = JobCreateRequest::graph(|job| {
let source = job.import_url("https://example.test/input.docx");
let pdf = job.convert(&source, FileExtension::Pdf);
let png = job.convert(&source, FileExtension::Png);
job.export_url([&pdf, &png]);
})
.tag("branch-demo")
.build();
let payload = serde_json::to_value(request).unwrap();
assert_eq!(payload["tasks"]["convert"]["input"], "import-url");
assert_eq!(payload["tasks"]["convert-2"]["input"], "import-url");Sourcepub fn tasks(&self) -> &BTreeMap<String, TaskRequest>
pub fn tasks(&self) -> &BTreeMap<String, TaskRequest>
Returns the keyed task map that will be serialized as tasks.
Sourcepub fn webhook_url(&self) -> Option<&str>
pub fn webhook_url(&self) -> Option<&str>
Returns the optional webhook URL.
Trait Implementations§
Source§impl Clone for JobCreateRequest
impl Clone for JobCreateRequest
Source§fn clone(&self) -> JobCreateRequest
fn clone(&self) -> JobCreateRequest
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for JobCreateRequest
impl Debug for JobCreateRequest
Source§impl Default for JobCreateRequest
impl Default for JobCreateRequest
Source§fn default() -> JobCreateRequest
fn default() -> JobCreateRequest
Returns the “default value” for a type. Read more
Source§impl From<JobBuilder> for JobCreateRequest
impl From<JobBuilder> for JobCreateRequest
Source§fn from(builder: JobBuilder) -> Self
fn from(builder: JobBuilder) -> Self
Converts to this type from the input type.
Source§impl From<JobGraphBuilder> for JobCreateRequest
impl From<JobGraphBuilder> for JobCreateRequest
Source§fn from(builder: JobGraphBuilder) -> Self
fn from(builder: JobGraphBuilder) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for JobCreateRequest
impl RefUnwindSafe for JobCreateRequest
impl Send for JobCreateRequest
impl Sync for JobCreateRequest
impl Unpin for JobCreateRequest
impl UnsafeUnpin for JobCreateRequest
impl UnwindSafe for JobCreateRequest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more