Class: Copyleaks::AIImageDetectionClient

Inherits:
Object
  • Object
show all
Defined in:
lib/copyleaks/ai_image_detection_client.rb

Instance Method Summary collapse

Constructor Details

#initialize(api_client) ⇒ AIImageDetectionClient

Returns a new instance of AIImageDetectionClient.



27
28
29
# File 'lib/copyleaks/ai_image_detection_client.rb', line 27

def initialize(api_client)
  @api_client = api_client
end

Instance Method Details

#submit_(authToken, scanId, submission) ⇒ Object



31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# File 'lib/copyleaks/ai_image_detection_client.rb', line 31

def submit_(authToken, scanId, submission)
  raise 'scanId is Invalid, must be instance of String' if scanId.nil? || !scanId.instance_of?(String)
  if submission.nil? || !submission.instance_of?(Copyleaks::CopyleaksAiImageDetectionRequestModel)
    raise 'submission is Invalid, must be instance of type Copyleaks::CopyleaksAiImageDetectionRequestModel'
  end

  ClientUtils.verify_auth_token(authToken)

  path = "/v1/ai-image-detector/#{scanId}/check"

  headers = {
    'Content-Type' => 'application/json',
    'User-Agent' => Config.user_agent,
    'Authorization' => "Bearer #{authToken.accessToken}"
  }

  request = Net::HTTP::Post.new(path, headers)
  request.body = submission.to_json

  res = ClientUtils.handle_response(@api_client.request(request), 'submit_image_detection')
  res
end