class Hachi::Clients::Artifact
Public Instance Methods
create(case_id, data:, data_type:, message: nil, tlp: nil, tags: nil)
click to toggle source
Create an artifact
@param [String] case_id Artifact
ID @param [String] data @param [String] data_type @param [String, nil] message @param [Integer, nil] tlp @param [Array<String>, nil] tags
@return [Hash]
# File lib/hachi/clients/artifact.rb, line 18 def create(case_id, data:, data_type:, message: nil, tlp: nil, tags: nil) artifact = Models::Artifact.new( data: data, data_type: data_type, message: message, tlp: tlp, tags: tags, ) post("/api/case/#{case_id}/artifact", json: artifact.payload) { |json| json } end
delete_by_id(id)
click to toggle source
Delete an artifact
@param [String] id Artifact
ID
@return [String]
# File lib/hachi/clients/artifact.rb, line 48 def delete_by_id(id) delete("/api/case/artifact/#{id}") { |json| json } end
get_by_id(id)
click to toggle source
Get an artifact
@param [String] id Artifact
ID
@return [Hash]
# File lib/hachi/clients/artifact.rb, line 37 def get_by_id(id) get("/api/case/artifact/#{id}") { |json| json } end
search(query, range: "all")
click to toggle source
Find artifacts
@param [Hash] query @param [String] range
@return [Array]
# File lib/hachi/clients/artifact.rb, line 60 def search(query, range: "all") _search("/api/case/artifact/_search", query: query, range: range) { |json| json } end
similar(id)
click to toggle source
Get list of similar observables
@param [String] id Artifact
ID
@return [Array]
# File lib/hachi/clients/artifact.rb, line 71 def similar(id) get("/api/case/artifact/#{id}/similar") { |json| json } end