49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
# File 'lib/mindee/http/workflow_endpoint.rb', line 49
def workflow_execution_req_post(input_source, opts)
uri = URI(@url)
params = {}
params[:full_text_ocr] = 'true' if opts.full_text
params[:rag] = 'true' if opts.rag
uri.query = URI.encode_www_form(params) if params.any?
= {
'Authorization' => "Token #{@api_key}",
'User-Agent' => USER_AGENT,
}
req = Net::HTTP::Post.new(uri, )
form_data = []
if input_source.is_a?(Mindee::Input::Source::URLInputSource)
form_data.push ['document', input_source.url]
else
form_data.push input_source.read_contents
end
form_data.push ['alias', opts.document_alias] if opts.document_alias
form_data.push ['public_url', opts.public_url] if opts.public_url
form_data.push ['priority', opts.priority.to_s] if opts.priority
req.set_form(form_data, 'multipart/form-data')
response = nil
Net::HTTP.start(uri.hostname, uri.port, use_ssl: true, read_timeout: @request_timeout) do |http|
response = http.request(req)
end
response
end
|