Sha256: 51c50823aca590cd140730d53ff27d9182d598c511f8eae15d58821a4aa0b0c3
Contents?: true
Size: 1.39 KB
Versions: 5
Compression:
Stored size: 1.39 KB
Contents
# frozen_string_literal: true module Mihari module Entities class Artifact < Grape::Entity expose :id, documentation: { type: Integer, required: true } expose :data, documentation: { type: String, required: true } expose :data_type, documentation: { type: String, required: true }, as: :dataType expose :source, documentation: { type: String, required: true } expose :tags, documentation: { type: String, is_array: true } expose :autonomous_system, using: Entities::AutonomousSystem, documentation: { type: Entities::AutonomousSystem, required: false }, as: :autonomousSystem expose :geolocation, using: Entities::Geolocation, documentation: { type: Entities::Geolocation, required: false } expose :whois_record, using: Entities::WhoisRecord, documentation: { type: Entities::WhoisRecord, required: false }, as: :whoisRecord expose :reverse_dns_names, using: Entities::ReverseDnsName, documentation: { type: Entities::ReverseDnsName, is_array: true, required: false }, as: :reverseDnsNames do |status, _options| status.reverse_dns_names.length > 0 ? status.reverse_dns_names : nil end expose :dns_records, using: Entities::DnsRecord, documentation: { type: Entities::DnsRecord, is_array: true, required: false }, as: :dnsRecords do |status, _options| status.dns_records.length > 0 ? status.dns_records : nil end end end end
Version data entries
5 entries across 5 versions & 1 rubygems