class CloudConvert::Resources::Jobs

Public Instance Methods

all(params = {}) click to toggle source

@param params [Hash] @return [Collection<Job>]

# File lib/cloudconvert/resources/jobs.rb, line 6
def all(params = {})
  Job.collection(client.get("/v2/jobs", params))
end
create(params) click to toggle source

@param params [Hash] @return [Job]

# File lib/cloudconvert/resources/jobs.rb, line 19
def create(params)
  schema = Schemacop::Schema.new do
    type :hash, allow_obsolete_keys: true do
      req :tasks, :array, min: 1 do
        type :hash, allow_obsolete_keys: true do
          req :operation, :string
        end
      end
    end
  end

  schema.validate! params

  payload = params.dup

  payload[:tasks] = payload[:tasks].to_h do |task|
    [task[:name], task.reject { |k| k == :name }]
  end

  Job.result(client.post("/v2/jobs", payload))
end
delete(id) click to toggle source

@param id [String] @return [void]

# File lib/cloudconvert/resources/jobs.rb, line 49
def delete(id)
  client.delete("/v2/jobs/#{id}")
end
find(id, params = {}) click to toggle source

@param id [String] @param params [Hash] @return [Job]

# File lib/cloudconvert/resources/jobs.rb, line 13
def find(id, params = {})
  Job.result(client.get("/v2/jobs/#{id}", params))
end
wait(id) click to toggle source

@param id [String] @return [Job]

# File lib/cloudconvert/resources/jobs.rb, line 43
def wait(id)
  Job.result(client.get(client.api_sync_host + "/v2/jobs/#{id}", {}))
end