Class: Mindee::V2::HTTP::MindeeApiV2

Inherits:
Object
  • Object
show all
Defined in:
lib/mindee/v2/http/mindee_api_v2.rb

Overview

API client for version 2.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_key: nil) ⇒ MindeeApiV2

Returns a new instance of MindeeApiV2.

Parameters:

  • api_key (String, nil) (defaults to: nil)


16
17
18
# File 'lib/mindee/v2/http/mindee_api_v2.rb', line 16

def initialize(api_key: nil)
  @settings = ApiV2Settings.new(api_key: api_key)
end

Instance Attribute Details

#settingsApiV2Settings (readonly)

Returns:



13
14
15
# File 'lib/mindee/v2/http/mindee_api_v2.rb', line 13

def settings
  @settings
end

Instance Method Details

#req_get_job(job_id) ⇒ Mindee::V2::Parsing::JobResponse

Retrieves a queued job.

Parameters:

  • job_id (String)

    ID of the job or URL to the job.

Returns:



54
55
56
57
58
# File 'lib/mindee/v2/http/mindee_api_v2.rb', line 54

def req_get_job(job_id)
  @settings.check_api_key
  response = poll("#{@settings.base_url}/v2/jobs/#{job_id}")
  Mindee::V2::Parsing::JobResponse.new(process_response(response))
end

#req_get_result(product, resource) ⇒ Mindee::V2::Parsing::BaseResponse

Retrieves a result from a given queue.

Parameters:

Returns:



39
40
41
42
43
44
45
46
47
48
# File 'lib/mindee/v2/http/mindee_api_v2.rb', line 39

def req_get_result(product, resource)
  return req_get_result_url(product.response_type, resource) if uri?(resource)

  @settings.check_api_key
  response = result_req_get(
    resource,
    product
  )
  product.response_type.new(process_response(response))
end

#req_post_enqueue(input_source, params) ⇒ Mindee::V2::Parsing::JobResponse

Sends a file to the queue.

Parameters:

Returns:

Raises:

  • (Mindee::Error::MindeeHttpErrorV2)


26
27
28
29
30
31
32
33
# File 'lib/mindee/v2/http/mindee_api_v2.rb', line 26

def req_post_enqueue(input_source, params)
  @settings.check_api_key
  response = enqueue(
    input_source,
    params
  )
  Mindee::V2::Parsing::JobResponse.new(process_response(response))
end

#search_models(model_name, model_type) ⇒ Mindee::V2::Parsing::Search::SearchResponse

Retrieves a list of models.

Parameters:

  • model_name (String, nil)
  • model_type (String, nil)

Returns:



64
65
66
67
# File 'lib/mindee/v2/http/mindee_api_v2.rb', line 64

def search_models(model_name, model_type)
  Mindee::V2::Parsing::Search::SearchResponse.new(process_response(req_get_search_models(model_name,
                                                                                         model_type)))
end