# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: grr/proto/api/hunt.proto

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
from google.protobuf import descriptor_pb2
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from google.protobuf import any_pb2 as google_dot_protobuf_dot_any__pb2
from grr.proto.api import flow_pb2 as grr_dot_proto_dot_api_dot_flow__pb2
from grr.proto.api import output_plugin_pb2 as grr_dot_proto_dot_api_dot_output__plugin__pb2
from grr.proto import analysis_pb2 as grr_dot_proto_dot_analysis__pb2
from grr.proto import api_utils_pb2 as grr_dot_proto_dot_api__utils__pb2
from grr.proto import jobs_pb2 as grr_dot_proto_dot_jobs__pb2
from grr.proto import flows_pb2 as grr_dot_proto_dot_flows__pb2
from grr.proto import output_plugin_pb2 as grr_dot_proto_dot_output__plugin__pb2
from grr.proto import semantic_pb2 as grr_dot_proto_dot_semantic__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='grr/proto/api/hunt.proto',
  package='',
  syntax='proto2',
  serialized_pb=_b('\n\x18grr/proto/api/hunt.proto\x1a\x19google/protobuf/any.proto\x1a\x18grr/proto/api/flow.proto\x1a!grr/proto/api/output_plugin.proto\x1a\x18grr/proto/analysis.proto\x1a\x19grr/proto/api_utils.proto\x1a\x14grr/proto/jobs.proto\x1a\x15grr/proto/flows.proto\x1a\x1dgrr/proto/output_plugin.proto\x1a\x18grr/proto/semantic.proto\"\xf1\r\n\x07\x41piHunt\x12)\n\x03urn\x18\x01 \x01(\tB\x1c\xe2\xfc\xe3\xc4\x01\x16\n\tSessionID\x12\tHunt URN.\x12\x30\n\x07hunt_id\x18\x19 \x01(\tB\x1f\xe2\xfc\xe3\xc4\x01\x19\n\tApiHuntId\x12\x0cThe hunt id.\x12 \n\x04name\x18\x02 \x01(\tB\x12\xe2\xfc\xe3\xc4\x01\x0c\x12\nHunt name.\x12:\n\x05state\x18\x04 \x01(\x0e\x32\x0e.ApiHunt.StateB\x1b\xe2\xfc\xe3\xc4\x01\x15\x12\x13\x43urrent hunt state.\x12*\n\tflow_name\x18\x14 \x01(\tB\x17\xe2\xfc\xe3\xc4\x01\x11\x12\x0f\x43ron flow name.\x12W\n\tflow_args\x18\x15 \x01(\x0b\x32\x14.google.protobuf.AnyB.\xe2\xfc\xe3\xc4\x01(\x12\x14\x43ron flow arguments.*\x10GetFlowArgsClass\x12I\n\x10hunt_runner_args\x18\x06 \x01(\x0b\x32\x0f.HuntRunnerArgsB\x1e\xe2\xfc\xe3\xc4\x01\x18\x12\x16Hunt runner arguments.\x12\x38\n\x11\x61ll_clients_count\x18\x07 \x01(\x03\x42\x1d\xe2\xfc\xe3\xc4\x01\x17\x12\x15\x43ount of all clients.\x12\x44\n\x17remaining_clients_count\x18\x08 \x01(\x03\x42#\xe2\xfc\xe3\xc4\x01\x1d\x12\x1b\x43ount of remaining clients.\x12\x44\n\x17\x63ompleted_clients_count\x18\t \x01(\x03\x42#\xe2\xfc\xe3\xc4\x01\x1d\x12\x1b\x43ount of completed clients.\x12)\n\x0b\x63rash_limit\x18\x16 \x01(\x03\x42\x14\xe2\xfc\xe3\xc4\x01\x0e\x12\x0c\x43rash limit.\x12+\n\x0c\x63lient_limit\x18\n \x01(\x03\x42\x15\xe2\xfc\xe3\xc4\x01\x0f\x12\rClient limit.\x12)\n\x0b\x63lient_rate\x18\x0b \x01(\x02\x42\x14\xe2\xfc\xe3\xc4\x01\x0e\x12\x0c\x43lient rate.\x12@\n\x07\x63reated\x18\x0c \x01(\x04\x42/\xe2\xfc\xe3\xc4\x01)\n\x0bRDFDatetime\x12\x1a\x43reation time of the hunt.\x12\x42\n\x07\x65xpires\x18\r \x01(\x04\x42\x31\xe2\xfc\xe3\xc4\x01+\n\x0bRDFDatetime\x12\x1c\x45xpiration time of the hunt.\x12?\n\x07\x63reator\x18\x0e \x01(\tB.\xe2\xfc\xe3\xc4\x01(\x12&Name of the user who created the hunt.\x12.\n\x0b\x64\x65scription\x18\x0f \x01(\tB\x19\xe2\xfc\xe3\xc4\x01\x13\x12\x11Hunt description.\x12\x45\n\x0f\x63lient_rule_set\x18\x10 \x01(\x0b\x32\x15.ForemanClientRuleSetB\x15\xe2\xfc\xe3\xc4\x01\x0f\x12\rClient rules.\x12\x46\n\x08is_robot\x18\x11 \x01(\x08\x42\x34\xe2\xfc\xe3\xc4\x01.\x12,Whether the hunt was created by a GRRWorker.\x12>\n\x0ftotal_cpu_usage\x18\x12 \x01(\x02\x42%\xe2\xfc\xe3\xc4\x01\x1f\x12\x1dTotal CPU usage (in seconds).\x12@\n\x0ftotal_net_usage\x18\x13 \x01(\x03\x42\'\xe2\xfc\xe3\xc4\x01!\x12\x1fTotal network usage (in bytes).\x12\x61\n\x1a\x63lients_with_results_count\x18\x17 \x01(\x03\x42=\xe2\xfc\xe3\xc4\x01\x37\x12\x35Number of clients that returned at least one result. \x12\x44\n\rresults_count\x18\x18 \x01(\x03\x42-\xe2\xfc\xe3\xc4\x01\'\x12%Total number of results in this hunt.\x12\x86\x01\n\x0foriginal_object\x18\x1a \x01(\x0b\x32\x1b.ApiFlowLikeObjectReferenceBP\xe2\xfc\xe3\xc4\x01J\x12HIf this hunt was copied from another object, a reference to that object.\x12\x99\x01\n\x0einternal_error\x18\x1b \x01(\tB\x80\x01\xe2\xfc\xe3\xc4\x01z\x12xAn error that happened while reading the hunt. This is not an error while executing the hunt but an internal data issue.\"<\n\x05State\x12\n\n\x06PAUSED\x10\x00\x12\x0b\n\x07STARTED\x10\x01\x12\x0b\n\x07STOPPED\x10\x02\x12\r\n\tCOMPLETED\x10\x03\"@\n\x10\x41piHuntReference\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\"\x87\x02\n\x1a\x41piFlowLikeObjectReference\x12;\n\x0bobject_type\x18\x01 \x01(\x0e\x32&.ApiFlowLikeObjectReference.ObjectType\x12)\n\x0e\x66low_reference\x18\x02 \x01(\x0b\x32\x11.ApiFlowReference\x12)\n\x0ehunt_reference\x18\x03 \x01(\x0b\x32\x11.ApiHuntReference\"A\n\nObjectType\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x12\n\x0e\x46LOW_REFERENCE\x10\x01\x12\x12\n\x0eHUNT_REFERENCE\x10\x02:\x13\xda\xfc\xe3\xc4\x01\r\x12\x0bobject_type\"\xb1\x02\n\rApiHuntResult\x12\x32\n\tclient_id\x18\x02 \x01(\tB\x1f\xe2\xfc\xe3\xc4\x01\x19\n\x0b\x41piClientId\x12\nClient id.\x12O\n\x07payload\x18\x03 \x01(\x0b\x32\x14.google.protobuf.AnyB(\xe2\xfc\xe3\xc4\x01\"\x12\x0fResult payload.*\x0fGetPayloadClass\x12\x32\n\x0cpayload_type\x18\x04 \x01(\tB\x1c\xe2\xfc\xe3\xc4\x01\x16\x12\x14Type of the payload.\x12g\n\ttimestamp\x18\x05 \x01(\x04\x42T\xe2\xfc\xe3\xc4\x01N\n\x0bRDFDatetime\x12?Timestamp indicating when result was written to the data store.\"\xde\x06\n\x10\x41piListHuntsArgs\x12(\n\x06offset\x18\x01 \x01(\x03\x42\x18\xe2\xfc\xe3\xc4\x01\x12\x12\x10Starting offset.\x12\x34\n\x05\x63ount\x18\x02 \x01(\x03\x42%\xe2\xfc\xe3\xc4\x01\x1f\x12\x1dMax number of items to fetch.\x12\xa6\x02\n\ncreated_by\x18\x03 \x01(\tB\x91\x02\xe2\xfc\xe3\xc4\x01\x8a\x02\x12\x87\x02Only return hunts created by a given user. If approved_by or/and description_contains are also supplied, then logical AND is applied to all the criterias. NOTE: this filter can only be used in conjunction with \'active_within\' filter (to prevent queries of death).\x12\xd7\x02\n\x14\x64\x65scription_contains\x18\x04 \x01(\tB\xb8\x02\xe2\xfc\xe3\xc4\x01\xb1\x02\x12\xae\x02Only return hunts where description contains given substring (matching is case-insensitive).If created_by or/and approved_by are also supplied, then logical AND is applied to all the criterias. NOTE: this filter can only be used in conjunction with \'active_within\' filter (to prevent queries of death).\x12g\n\ractive_within\x18\x05 \x01(\x04\x42P\xe2\xfc\xe3\xc4\x01J\n\x08\x44uration\x12>Only return hunts that were active within given time duration.\"z\n\x12\x41piListHuntsResult\x12/\n\x05items\x18\x01 \x03(\x0b\x32\x08.ApiHuntB\x16\xe2\xfc\xe3\xc4\x01\x10\x12\x0eList of hunts.\x12\x33\n\x0btotal_count\x18\x02 \x01(\x03\x42\x1e\xe2\xfc\xe3\xc4\x01\x18\x12\x16Total number of items.\">\n\x0e\x41piGetHuntArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\"\x8e\x01\n#ApiGetHuntClientCompletionStatsArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\x12\x39\n\x04size\x18\x02 \x01(\x03\x42+\xe2\xfc\xe3\xc4\x01%\x12#Max number of data points to fetch.\"\xd7\x01\n%ApiGetHuntClientCompletionStatsResult\x12R\n\x0cstart_points\x18\x01 \x03(\x0b\x32\x0c.SampleFloatB.\xe2\xfc\xe3\xc4\x01(\x12&The list of samples for client starts.\x12Z\n\x0f\x63omplete_points\x18\x02 \x03(\x0b\x32\x0c.SampleFloatB3\xe2\xfc\xe3\xc4\x01-\x12+The list of samples for client completions.\"\x94\x02\n\x13\x41piListHuntLogsArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\x12\x32\n\x06offset\x18\x02 \x01(\x03\x42\"\xe2\xfc\xe3\xc4\x01\x1c\x12\x1aLog items starting offset.\x12\x38\n\x05\x63ount\x18\x03 \x01(\x03\x42)\xe2\xfc\xe3\xc4\x01#\x12!Max number of log items to fetch.\x12\x61\n\x06\x66ilter\x18\x04 \x01(\tBQ\xe2\xfc\xe3\xc4\x01K\x12IReturn only results whose string representation contains given substring.\"}\n\x15\x41piListHuntLogsResult\x12\x30\n\x05items\x18\x01 \x03(\x0b\x32\x08.FlowLogB\x17\xe2\xfc\xe3\xc4\x01\x11\x12\x0fThe hunt errors\x12\x32\n\x0btotal_count\x18\x02 \x01(\x03\x42\x1d\xe2\xfc\xe3\xc4\x01\x17\x12\x15Total count of items.\"\x95\x02\n\x15\x41piListHuntErrorsArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\x12\x34\n\x06offset\x18\x02 \x01(\x03\x42$\xe2\xfc\xe3\xc4\x01\x1e\x12\x1cHunt errors starting offset.\x12\x35\n\x05\x63ount\x18\x03 \x01(\x03\x42&\xe2\xfc\xe3\xc4\x01 \x12\x1eMax number of errors to fetch.\x12\x61\n\x06\x66ilter\x18\x04 \x01(\tBQ\xe2\xfc\xe3\xc4\x01K\x12IReturn only results whose string representation contains given substring.\"\x81\x01\n\x17\x41piListHuntErrorsResult\x12\x32\n\x05items\x18\x01 \x03(\x0b\x32\n.HuntErrorB\x17\xe2\xfc\xe3\xc4\x01\x11\x12\x0fThe hunt errors\x12\x32\n\x0btotal_count\x18\x02 \x01(\x03\x42\x1d\xe2\xfc\xe3\xc4\x01\x17\x12\x15Total count of items.\"\x98\x02\n\x16\x41piListHuntCrashesArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\x12\x35\n\x06offset\x18\x02 \x01(\x03\x42%\xe2\xfc\xe3\xc4\x01\x1f\x12\x1dHunt crashes starting offset.\x12\x36\n\x05\x63ount\x18\x03 \x01(\x03\x42\'\xe2\xfc\xe3\xc4\x01!\x12\x1fMax number of crashes to fetch.\x12\x61\n\x06\x66ilter\x18\x04 \x01(\tBQ\xe2\xfc\xe3\xc4\x01K\x12IReturn only results whose string representation contains given substring.\"\x87\x01\n\x18\x41piListHuntCrashesResult\x12\x37\n\x05items\x18\x01 \x03(\x0b\x32\x0c.ClientCrashB\x1a\xe2\xfc\xe3\xc4\x01\x14\x12\x12The client crashes\x12\x32\n\x0btotal_count\x18\x02 \x01(\x03\x42\x1d\xe2\xfc\xe3\xc4\x01\x17\x12\x15Total count of items.\"\x98\x02\n\x16\x41piListHuntResultsArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\x12\x35\n\x06offset\x18\x02 \x01(\x03\x42%\xe2\xfc\xe3\xc4\x01\x1f\x12\x1dHunt results starting offset.\x12\x36\n\x05\x63ount\x18\x03 \x01(\x03\x42\'\xe2\xfc\xe3\xc4\x01!\x12\x1fMax number of results to fetch.\x12\x61\n\x06\x66ilter\x18\x04 \x01(\tBQ\xe2\xfc\xe3\xc4\x01K\x12IReturn only results whose string representation contains given substring.\"\x84\x01\n\x18\x41piListHuntResultsResult\x12\x34\n\x05items\x18\x01 \x03(\x0b\x32\x0e.ApiHuntResultB\x15\xe2\xfc\xe3\xc4\x01\x0f\x12\rHunt results.\x12\x32\n\x0btotal_count\x18\x02 \x01(\x03\x42\x1d\xe2\xfc\xe3\xc4\x01\x17\x12\x15Total count of items.\"R\n\"ApiGetHuntResultsExportCommandArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\"q\n$ApiGetHuntResultsExportCommandResult\x12I\n\x07\x63ommand\x18\x01 \x01(\tB8\xe2\xfc\xe3\xc4\x01\x32\x12\x30\x43ommand that may be used to export hunt results.\"L\n\x1c\x41piListHuntOutputPluginsArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\"u\n\x1e\x41piListHuntOutputPluginsResult\x12\x1f\n\x05items\x18\x01 \x03(\x0b\x32\x10.ApiOutputPlugin\x12\x32\n\x0btotal_count\x18\x02 \x01(\x03\x42\x1d\xe2\xfc\xe3\xc4\x01\x17\x12\x15Total count of items.\"\xe3\x01\n\x1f\x41piListHuntOutputPluginLogsArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\x12%\n\tplugin_id\x18\x02 \x01(\tB\x12\xe2\xfc\xe3\xc4\x01\x0c\x12\nPlugin id.\x12/\n\x06offset\x18\x03 \x01(\x03\x42\x1f\xe2\xfc\xe3\xc4\x01\x19\x12\x17Status messages offset.\x12:\n\x05\x63ount\x18\x04 \x01(\x03\x42+\xe2\xfc\xe3\xc4\x01%\x12#Number of status messages to fetch.\"\xa0\x01\n!ApiListHuntOutputPluginLogsResult\x12G\n\x05items\x18\x01 \x03(\x0b\x32\".OutputPluginBatchProcessingStatusB\x14\xe2\xfc\xe3\xc4\x01\x0e\x12\x0cLog entries.\x12\x32\n\x0btotal_count\x18\x02 \x01(\x03\x42\x1d\xe2\xfc\xe3\xc4\x01\x17\x12\x15Total count of items.\"\xdc\x01\n!ApiListHuntOutputPluginErrorsArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\x12%\n\tplugin_id\x18\x02 \x01(\tB\x12\xe2\xfc\xe3\xc4\x01\x0c\x12\nPlugin id.\x12&\n\x06offset\x18\x03 \x01(\x03\x42\x16\xe2\xfc\xe3\xc4\x01\x10\x12\x0e\x45rrors offset.\x12:\n\x05\x63ount\x18\x04 \x01(\x03\x42+\xe2\xfc\xe3\xc4\x01%\x12#Number of errors messages to fetch.\"\xa5\x01\n#ApiListHuntOutputPluginErrorsResult\x12J\n\x05items\x18\x01 \x03(\x0b\x32\".OutputPluginBatchProcessingStatusB\x17\xe2\xfc\xe3\xc4\x01\x11\x12\x0f\x45rrors entries.\x12\x32\n\x0btotal_count\x18\x02 \x01(\x03\x42\x1d\xe2\xfc\xe3\xc4\x01\x17\x12\x15Total count of items.\"\xb3\x01\n\x1a\x41piGetHuntFilesArchiveArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\x12\x41\n\x0e\x61rchive_format\x18\x03 \x01(\x0e\x32).ApiGetHuntFilesArchiveArgs.ArchiveFormat\"$\n\rArchiveFormat\x12\x07\n\x03ZIP\x10\x00\x12\n\n\x06TAR_GZ\x10\x01\"\x8c\x02\n\x12\x41piGetHuntFileArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\x12\x32\n\tclient_id\x18\x02 \x01(\tB\x1f\xe2\xfc\xe3\xc4\x01\x19\n\x0b\x41piClientId\x12\nClient id.\x12R\n\ttimestamp\x18\x03 \x01(\x04\x42?\xe2\xfc\xe3\xc4\x01\x39\n\x0bRDFDatetime\x12*Timestamp of the result in the collection.\x12@\n\x08vfs_path\x18\x04 \x01(\tB.\xe2\xfc\xe3\xc4\x01(\x12&AFF4 path to the file to be downloaded\"C\n\x13\x41piGetHuntStatsArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\"Q\n\x15\x41piGetHuntStatsResult\x12\x38\n\x05stats\x18\x01 \x01(\x0b\x32\x15.ClientResourcesStatsB\x12\xe2\xfc\xe3\xc4\x01\x0c\x12\nThe stats.\"\xc8\x02\n\x16\x41piListHuntClientsArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\x12(\n\x06offset\x18\x02 \x01(\x03\x42\x18\xe2\xfc\xe3\xc4\x01\x12\x12\x10Starting offset.\x12\x34\n\x05\x63ount\x18\x03 \x01(\x03\x42%\xe2\xfc\xe3\xc4\x01\x1f\x12\x1dMax number of items to fetch.\x12\x63\n\rclient_status\x18\x04 \x01(\x0e\x32$.ApiListHuntClientsArgs.ClientStatusB&\xe2\xfc\xe3\xc4\x01 \x12\x1eThe types of clients to fetch.\";\n\x0c\x43lientStatus\x12\x0b\n\x07STARTED\x10\x00\x12\x0f\n\x0bOUTSTANDING\x10\x01\x12\r\n\tCOMPLETED\x10\x02\"\x98\x01\n\rApiHuntClient\x12\x36\n\tclient_id\x18\x01 \x01(\tB#\xe2\xfc\xe3\xc4\x01\x1d\n\x0b\x41piClientId\x12\x0eThe client id.\x12O\n\x07\x66low_id\x18\r \x01(\tB>\xe2\xfc\xe3\xc4\x01\x38\n\tApiFlowId\x12+Id of the hunt flow started on this client.\"\x97\x01\n\x18\x41piListHuntClientsResult\x12G\n\x05items\x18\x01 \x03(\x0b\x32\x0e.ApiHuntClientB(\xe2\xfc\xe3\xc4\x01\"\x12 The list of outstanding clients.\x12\x32\n\x0btotal_count\x18\x02 \x01(\x03\x42\x1d\xe2\xfc\xe3\xc4\x01\x17\x12\x15Total count of items.\"E\n\x15\x41piGetHuntContextArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\"\x8b\x01\n\x17\x41piGetHuntContextResult\x12\x38\n\x07\x63ontext\x18\x01 \x01(\x0b\x32\x0c.HuntContextB\x19\xe2\xfc\xe3\xc4\x01\x13\x12\x11The hunt context.\x12\x36\n\x05state\x18\x02 \x01(\x0b\x32\x0e.ApiDataObjectB\x17\xe2\xfc\xe3\xc4\x01\x11\x12\x0fThe hunt state.\"\xd7\x03\n\x11\x41piCreateHuntArgs\x12*\n\tflow_name\x18\x03 \x01(\tB\x17\xe2\xfc\xe3\xc4\x01\x11\x12\x0f\x43ron flow name.\x12W\n\tflow_args\x18\x04 \x01(\x0b\x32\x14.google.protobuf.AnyB.\xe2\xfc\xe3\xc4\x01(\x12\x14\x43ron flow arguments.*\x10GetFlowArgsClass\x12I\n\x10hunt_runner_args\x18\x01 \x01(\x0b\x32\x0f.HuntRunnerArgsB\x1e\xe2\xfc\xe3\xc4\x01\x18\x12\x16Hunt runner arguments.\x12x\n\roriginal_flow\x18\x06 \x01(\x0b\x32\x11.ApiFlowReferenceBN\xe2\xfc\xe3\xc4\x01H\x12\x44If this hunt was copied from a flow, a reference to the source flow.\x18\x02\x12x\n\roriginal_hunt\x18\x07 \x01(\x0b\x32\x11.ApiHuntReferenceBN\xe2\xfc\xe3\xc4\x01H\x12\x44If this hunt was copied from a hunt, a reference to the source hunt.\x18\x02\"\x91\x02\n\x11\x41piModifyHuntArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\x12\x32\n\x05state\x18\x02 \x01(\x0e\x32\x0e.ApiHunt.StateB\x13\xe2\xfc\xe3\xc4\x01\r\x12\x0bHunt state.\x12+\n\x0c\x63lient_limit\x18\x03 \x01(\x03\x42\x15\xe2\xfc\xe3\xc4\x01\x0f\x12\rClient limit.\x12)\n\x0b\x63lient_rate\x18\x04 \x01(\x03\x42\x14\xe2\xfc\xe3\xc4\x01\x0e\x12\x0c\x43lient rate.\x12\x42\n\x07\x65xpires\x18\x05 \x01(\x04\x42\x31\xe2\xfc\xe3\xc4\x01+\n\x0bRDFDatetime\x12\x1cWhen the hunt should expire.\"A\n\x11\x41piDeleteHuntArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\"\x87\x01\n\x1d\x41piGetExportedHuntResultsArgs\x12,\n\x07hunt_id\x18\x01 \x01(\tB\x1b\xe2\xfc\xe3\xc4\x01\x15\n\tApiHuntId\x12\x08Hunt id.\x12\x38\n\x0bplugin_name\x18\x02 \x01(\tB#\xe2\xfc\xe3\xc4\x01\x1d\x12\x1bInstant output plugin name.')
  ,
  dependencies=[google_dot_protobuf_dot_any__pb2.DESCRIPTOR,grr_dot_proto_dot_api_dot_flow__pb2.DESCRIPTOR,grr_dot_proto_dot_api_dot_output__plugin__pb2.DESCRIPTOR,grr_dot_proto_dot_analysis__pb2.DESCRIPTOR,grr_dot_proto_dot_api__utils__pb2.DESCRIPTOR,grr_dot_proto_dot_jobs__pb2.DESCRIPTOR,grr_dot_proto_dot_flows__pb2.DESCRIPTOR,grr_dot_proto_dot_output__plugin__pb2.DESCRIPTOR,grr_dot_proto_dot_semantic__pb2.DESCRIPTOR,])



_APIHUNT_STATE = _descriptor.EnumDescriptor(
  name='State',
  full_name='ApiHunt.State',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='PAUSED', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='STARTED', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='STOPPED', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='COMPLETED', index=3, number=3,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=1989,
  serialized_end=2049,
)
_sym_db.RegisterEnumDescriptor(_APIHUNT_STATE)

_APIFLOWLIKEOBJECTREFERENCE_OBJECTTYPE = _descriptor.EnumDescriptor(
  name='ObjectType',
  full_name='ApiFlowLikeObjectReference.ObjectType',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='FLOW_REFERENCE', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='HUNT_REFERENCE', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=2295,
  serialized_end=2360,
)
_sym_db.RegisterEnumDescriptor(_APIFLOWLIKEOBJECTREFERENCE_OBJECTTYPE)

_APIGETHUNTFILESARCHIVEARGS_ARCHIVEFORMAT = _descriptor.EnumDescriptor(
  name='ArchiveFormat',
  full_name='ApiGetHuntFilesArchiveArgs.ArchiveFormat',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='ZIP', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='TAR_GZ', index=1, number=1,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=7088,
  serialized_end=7124,
)
_sym_db.RegisterEnumDescriptor(_APIGETHUNTFILESARCHIVEARGS_ARCHIVEFORMAT)

_APILISTHUNTCLIENTSARGS_CLIENTSTATUS = _descriptor.EnumDescriptor(
  name='ClientStatus',
  full_name='ApiListHuntClientsArgs.ClientStatus',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='STARTED', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OUTSTANDING', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='COMPLETED', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=7819,
  serialized_end=7878,
)
_sym_db.RegisterEnumDescriptor(_APILISTHUNTCLIENTSARGS_CLIENTSTATUS)


_APIHUNT = _descriptor.Descriptor(
  name='ApiHunt',
  full_name='ApiHunt',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='urn', full_name='ApiHunt.urn', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\026\n\tSessionID\022\tHunt URN.'))),
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiHunt.hunt_id', index=1,
      number=25, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\031\n\tApiHuntId\022\014The hunt id.'))),
    _descriptor.FieldDescriptor(
      name='name', full_name='ApiHunt.name', index=2,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\014\022\nHunt name.'))),
    _descriptor.FieldDescriptor(
      name='state', full_name='ApiHunt.state', index=3,
      number=4, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\022\023Current hunt state.'))),
    _descriptor.FieldDescriptor(
      name='flow_name', full_name='ApiHunt.flow_name', index=4,
      number=20, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\021\022\017Cron flow name.'))),
    _descriptor.FieldDescriptor(
      name='flow_args', full_name='ApiHunt.flow_args', index=5,
      number=21, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001(\022\024Cron flow arguments.*\020GetFlowArgsClass'))),
    _descriptor.FieldDescriptor(
      name='hunt_runner_args', full_name='ApiHunt.hunt_runner_args', index=6,
      number=6, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\030\022\026Hunt runner arguments.'))),
    _descriptor.FieldDescriptor(
      name='all_clients_count', full_name='ApiHunt.all_clients_count', index=7,
      number=7, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Count of all clients.'))),
    _descriptor.FieldDescriptor(
      name='remaining_clients_count', full_name='ApiHunt.remaining_clients_count', index=8,
      number=8, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\035\022\033Count of remaining clients.'))),
    _descriptor.FieldDescriptor(
      name='completed_clients_count', full_name='ApiHunt.completed_clients_count', index=9,
      number=9, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\035\022\033Count of completed clients.'))),
    _descriptor.FieldDescriptor(
      name='crash_limit', full_name='ApiHunt.crash_limit', index=10,
      number=22, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\016\022\014Crash limit.'))),
    _descriptor.FieldDescriptor(
      name='client_limit', full_name='ApiHunt.client_limit', index=11,
      number=10, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\017\022\rClient limit.'))),
    _descriptor.FieldDescriptor(
      name='client_rate', full_name='ApiHunt.client_rate', index=12,
      number=11, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\016\022\014Client rate.'))),
    _descriptor.FieldDescriptor(
      name='created', full_name='ApiHunt.created', index=13,
      number=12, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001)\n\013RDFDatetime\022\032Creation time of the hunt.'))),
    _descriptor.FieldDescriptor(
      name='expires', full_name='ApiHunt.expires', index=14,
      number=13, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001+\n\013RDFDatetime\022\034Expiration time of the hunt.'))),
    _descriptor.FieldDescriptor(
      name='creator', full_name='ApiHunt.creator', index=15,
      number=14, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001(\022&Name of the user who created the hunt.'))),
    _descriptor.FieldDescriptor(
      name='description', full_name='ApiHunt.description', index=16,
      number=15, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\023\022\021Hunt description.'))),
    _descriptor.FieldDescriptor(
      name='client_rule_set', full_name='ApiHunt.client_rule_set', index=17,
      number=16, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\017\022\rClient rules.'))),
    _descriptor.FieldDescriptor(
      name='is_robot', full_name='ApiHunt.is_robot', index=18,
      number=17, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001.\022,Whether the hunt was created by a GRRWorker.'))),
    _descriptor.FieldDescriptor(
      name='total_cpu_usage', full_name='ApiHunt.total_cpu_usage', index=19,
      number=18, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\037\022\035Total CPU usage (in seconds).'))),
    _descriptor.FieldDescriptor(
      name='total_net_usage', full_name='ApiHunt.total_net_usage', index=20,
      number=19, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001!\022\037Total network usage (in bytes).'))),
    _descriptor.FieldDescriptor(
      name='clients_with_results_count', full_name='ApiHunt.clients_with_results_count', index=21,
      number=23, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\0017\0225Number of clients that returned at least one result. '))),
    _descriptor.FieldDescriptor(
      name='results_count', full_name='ApiHunt.results_count', index=22,
      number=24, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\'\022%Total number of results in this hunt.'))),
    _descriptor.FieldDescriptor(
      name='original_object', full_name='ApiHunt.original_object', index=23,
      number=26, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001J\022HIf this hunt was copied from another object, a reference to that object.'))),
    _descriptor.FieldDescriptor(
      name='internal_error', full_name='ApiHunt.internal_error', index=24,
      number=27, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001z\022xAn error that happened while reading the hunt. This is not an error while executing the hunt but an internal data issue.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _APIHUNT_STATE,
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=272,
  serialized_end=2049,
)


_APIHUNTREFERENCE = _descriptor.Descriptor(
  name='ApiHuntReference',
  full_name='ApiHuntReference',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiHuntReference.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2051,
  serialized_end=2115,
)


_APIFLOWLIKEOBJECTREFERENCE = _descriptor.Descriptor(
  name='ApiFlowLikeObjectReference',
  full_name='ApiFlowLikeObjectReference',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='object_type', full_name='ApiFlowLikeObjectReference.object_type', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='flow_reference', full_name='ApiFlowLikeObjectReference.flow_reference', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='hunt_reference', full_name='ApiFlowLikeObjectReference.hunt_reference', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _APIFLOWLIKEOBJECTREFERENCE_OBJECTTYPE,
  ],
  options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('\332\374\343\304\001\r\022\013object_type')),
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2118,
  serialized_end=2381,
)


_APIHUNTRESULT = _descriptor.Descriptor(
  name='ApiHuntResult',
  full_name='ApiHuntResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='client_id', full_name='ApiHuntResult.client_id', index=0,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\031\n\013ApiClientId\022\nClient id.'))),
    _descriptor.FieldDescriptor(
      name='payload', full_name='ApiHuntResult.payload', index=1,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\"\022\017Result payload.*\017GetPayloadClass'))),
    _descriptor.FieldDescriptor(
      name='payload_type', full_name='ApiHuntResult.payload_type', index=2,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\026\022\024Type of the payload.'))),
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='ApiHuntResult.timestamp', index=3,
      number=5, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001N\n\013RDFDatetime\022?Timestamp indicating when result was written to the data store.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2384,
  serialized_end=2689,
)


_APILISTHUNTSARGS = _descriptor.Descriptor(
  name='ApiListHuntsArgs',
  full_name='ApiListHuntsArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='offset', full_name='ApiListHuntsArgs.offset', index=0,
      number=1, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\022\022\020Starting offset.'))),
    _descriptor.FieldDescriptor(
      name='count', full_name='ApiListHuntsArgs.count', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\037\022\035Max number of items to fetch.'))),
    _descriptor.FieldDescriptor(
      name='created_by', full_name='ApiListHuntsArgs.created_by', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\212\002\022\207\002Only return hunts created by a given user. If approved_by or/and description_contains are also supplied, then logical AND is applied to all the criterias. NOTE: this filter can only be used in conjunction with \'active_within\' filter (to prevent queries of death).'))),
    _descriptor.FieldDescriptor(
      name='description_contains', full_name='ApiListHuntsArgs.description_contains', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\261\002\022\256\002Only return hunts where description contains given substring (matching is case-insensitive).If created_by or/and approved_by are also supplied, then logical AND is applied to all the criterias. NOTE: this filter can only be used in conjunction with \'active_within\' filter (to prevent queries of death).'))),
    _descriptor.FieldDescriptor(
      name='active_within', full_name='ApiListHuntsArgs.active_within', index=4,
      number=5, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001J\n\010Duration\022>Only return hunts that were active within given time duration.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2692,
  serialized_end=3554,
)


_APILISTHUNTSRESULT = _descriptor.Descriptor(
  name='ApiListHuntsResult',
  full_name='ApiListHuntsResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='items', full_name='ApiListHuntsResult.items', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\020\022\016List of hunts.'))),
    _descriptor.FieldDescriptor(
      name='total_count', full_name='ApiListHuntsResult.total_count', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\030\022\026Total number of items.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3556,
  serialized_end=3678,
)


_APIGETHUNTARGS = _descriptor.Descriptor(
  name='ApiGetHuntArgs',
  full_name='ApiGetHuntArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiGetHuntArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3680,
  serialized_end=3742,
)


_APIGETHUNTCLIENTCOMPLETIONSTATSARGS = _descriptor.Descriptor(
  name='ApiGetHuntClientCompletionStatsArgs',
  full_name='ApiGetHuntClientCompletionStatsArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiGetHuntClientCompletionStatsArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
    _descriptor.FieldDescriptor(
      name='size', full_name='ApiGetHuntClientCompletionStatsArgs.size', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001%\022#Max number of data points to fetch.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3745,
  serialized_end=3887,
)


_APIGETHUNTCLIENTCOMPLETIONSTATSRESULT = _descriptor.Descriptor(
  name='ApiGetHuntClientCompletionStatsResult',
  full_name='ApiGetHuntClientCompletionStatsResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='start_points', full_name='ApiGetHuntClientCompletionStatsResult.start_points', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001(\022&The list of samples for client starts.'))),
    _descriptor.FieldDescriptor(
      name='complete_points', full_name='ApiGetHuntClientCompletionStatsResult.complete_points', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001-\022+The list of samples for client completions.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3890,
  serialized_end=4105,
)


_APILISTHUNTLOGSARGS = _descriptor.Descriptor(
  name='ApiListHuntLogsArgs',
  full_name='ApiListHuntLogsArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiListHuntLogsArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
    _descriptor.FieldDescriptor(
      name='offset', full_name='ApiListHuntLogsArgs.offset', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\034\022\032Log items starting offset.'))),
    _descriptor.FieldDescriptor(
      name='count', full_name='ApiListHuntLogsArgs.count', index=2,
      number=3, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001#\022!Max number of log items to fetch.'))),
    _descriptor.FieldDescriptor(
      name='filter', full_name='ApiListHuntLogsArgs.filter', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001K\022IReturn only results whose string representation contains given substring.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4108,
  serialized_end=4384,
)


_APILISTHUNTLOGSRESULT = _descriptor.Descriptor(
  name='ApiListHuntLogsResult',
  full_name='ApiListHuntLogsResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='items', full_name='ApiListHuntLogsResult.items', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\021\022\017The hunt errors'))),
    _descriptor.FieldDescriptor(
      name='total_count', full_name='ApiListHuntLogsResult.total_count', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4386,
  serialized_end=4511,
)


_APILISTHUNTERRORSARGS = _descriptor.Descriptor(
  name='ApiListHuntErrorsArgs',
  full_name='ApiListHuntErrorsArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiListHuntErrorsArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
    _descriptor.FieldDescriptor(
      name='offset', full_name='ApiListHuntErrorsArgs.offset', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\036\022\034Hunt errors starting offset.'))),
    _descriptor.FieldDescriptor(
      name='count', full_name='ApiListHuntErrorsArgs.count', index=2,
      number=3, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001 \022\036Max number of errors to fetch.'))),
    _descriptor.FieldDescriptor(
      name='filter', full_name='ApiListHuntErrorsArgs.filter', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001K\022IReturn only results whose string representation contains given substring.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4514,
  serialized_end=4791,
)


_APILISTHUNTERRORSRESULT = _descriptor.Descriptor(
  name='ApiListHuntErrorsResult',
  full_name='ApiListHuntErrorsResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='items', full_name='ApiListHuntErrorsResult.items', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\021\022\017The hunt errors'))),
    _descriptor.FieldDescriptor(
      name='total_count', full_name='ApiListHuntErrorsResult.total_count', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4794,
  serialized_end=4923,
)


_APILISTHUNTCRASHESARGS = _descriptor.Descriptor(
  name='ApiListHuntCrashesArgs',
  full_name='ApiListHuntCrashesArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiListHuntCrashesArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
    _descriptor.FieldDescriptor(
      name='offset', full_name='ApiListHuntCrashesArgs.offset', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\037\022\035Hunt crashes starting offset.'))),
    _descriptor.FieldDescriptor(
      name='count', full_name='ApiListHuntCrashesArgs.count', index=2,
      number=3, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001!\022\037Max number of crashes to fetch.'))),
    _descriptor.FieldDescriptor(
      name='filter', full_name='ApiListHuntCrashesArgs.filter', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001K\022IReturn only results whose string representation contains given substring.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4926,
  serialized_end=5206,
)


_APILISTHUNTCRASHESRESULT = _descriptor.Descriptor(
  name='ApiListHuntCrashesResult',
  full_name='ApiListHuntCrashesResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='items', full_name='ApiListHuntCrashesResult.items', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\024\022\022The client crashes'))),
    _descriptor.FieldDescriptor(
      name='total_count', full_name='ApiListHuntCrashesResult.total_count', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5209,
  serialized_end=5344,
)


_APILISTHUNTRESULTSARGS = _descriptor.Descriptor(
  name='ApiListHuntResultsArgs',
  full_name='ApiListHuntResultsArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiListHuntResultsArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
    _descriptor.FieldDescriptor(
      name='offset', full_name='ApiListHuntResultsArgs.offset', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\037\022\035Hunt results starting offset.'))),
    _descriptor.FieldDescriptor(
      name='count', full_name='ApiListHuntResultsArgs.count', index=2,
      number=3, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001!\022\037Max number of results to fetch.'))),
    _descriptor.FieldDescriptor(
      name='filter', full_name='ApiListHuntResultsArgs.filter', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001K\022IReturn only results whose string representation contains given substring.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5347,
  serialized_end=5627,
)


_APILISTHUNTRESULTSRESULT = _descriptor.Descriptor(
  name='ApiListHuntResultsResult',
  full_name='ApiListHuntResultsResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='items', full_name='ApiListHuntResultsResult.items', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\017\022\rHunt results.'))),
    _descriptor.FieldDescriptor(
      name='total_count', full_name='ApiListHuntResultsResult.total_count', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5630,
  serialized_end=5762,
)


_APIGETHUNTRESULTSEXPORTCOMMANDARGS = _descriptor.Descriptor(
  name='ApiGetHuntResultsExportCommandArgs',
  full_name='ApiGetHuntResultsExportCommandArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiGetHuntResultsExportCommandArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5764,
  serialized_end=5846,
)


_APIGETHUNTRESULTSEXPORTCOMMANDRESULT = _descriptor.Descriptor(
  name='ApiGetHuntResultsExportCommandResult',
  full_name='ApiGetHuntResultsExportCommandResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='command', full_name='ApiGetHuntResultsExportCommandResult.command', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\0012\0220Command that may be used to export hunt results.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5848,
  serialized_end=5961,
)


_APILISTHUNTOUTPUTPLUGINSARGS = _descriptor.Descriptor(
  name='ApiListHuntOutputPluginsArgs',
  full_name='ApiListHuntOutputPluginsArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiListHuntOutputPluginsArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5963,
  serialized_end=6039,
)


_APILISTHUNTOUTPUTPLUGINSRESULT = _descriptor.Descriptor(
  name='ApiListHuntOutputPluginsResult',
  full_name='ApiListHuntOutputPluginsResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='items', full_name='ApiListHuntOutputPluginsResult.items', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='total_count', full_name='ApiListHuntOutputPluginsResult.total_count', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6041,
  serialized_end=6158,
)


_APILISTHUNTOUTPUTPLUGINLOGSARGS = _descriptor.Descriptor(
  name='ApiListHuntOutputPluginLogsArgs',
  full_name='ApiListHuntOutputPluginLogsArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiListHuntOutputPluginLogsArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
    _descriptor.FieldDescriptor(
      name='plugin_id', full_name='ApiListHuntOutputPluginLogsArgs.plugin_id', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\014\022\nPlugin id.'))),
    _descriptor.FieldDescriptor(
      name='offset', full_name='ApiListHuntOutputPluginLogsArgs.offset', index=2,
      number=3, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\031\022\027Status messages offset.'))),
    _descriptor.FieldDescriptor(
      name='count', full_name='ApiListHuntOutputPluginLogsArgs.count', index=3,
      number=4, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001%\022#Number of status messages to fetch.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6161,
  serialized_end=6388,
)


_APILISTHUNTOUTPUTPLUGINLOGSRESULT = _descriptor.Descriptor(
  name='ApiListHuntOutputPluginLogsResult',
  full_name='ApiListHuntOutputPluginLogsResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='items', full_name='ApiListHuntOutputPluginLogsResult.items', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\016\022\014Log entries.'))),
    _descriptor.FieldDescriptor(
      name='total_count', full_name='ApiListHuntOutputPluginLogsResult.total_count', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6391,
  serialized_end=6551,
)


_APILISTHUNTOUTPUTPLUGINERRORSARGS = _descriptor.Descriptor(
  name='ApiListHuntOutputPluginErrorsArgs',
  full_name='ApiListHuntOutputPluginErrorsArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiListHuntOutputPluginErrorsArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
    _descriptor.FieldDescriptor(
      name='plugin_id', full_name='ApiListHuntOutputPluginErrorsArgs.plugin_id', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\014\022\nPlugin id.'))),
    _descriptor.FieldDescriptor(
      name='offset', full_name='ApiListHuntOutputPluginErrorsArgs.offset', index=2,
      number=3, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\020\022\016Errors offset.'))),
    _descriptor.FieldDescriptor(
      name='count', full_name='ApiListHuntOutputPluginErrorsArgs.count', index=3,
      number=4, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001%\022#Number of errors messages to fetch.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6554,
  serialized_end=6774,
)


_APILISTHUNTOUTPUTPLUGINERRORSRESULT = _descriptor.Descriptor(
  name='ApiListHuntOutputPluginErrorsResult',
  full_name='ApiListHuntOutputPluginErrorsResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='items', full_name='ApiListHuntOutputPluginErrorsResult.items', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\021\022\017Errors entries.'))),
    _descriptor.FieldDescriptor(
      name='total_count', full_name='ApiListHuntOutputPluginErrorsResult.total_count', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6777,
  serialized_end=6942,
)


_APIGETHUNTFILESARCHIVEARGS = _descriptor.Descriptor(
  name='ApiGetHuntFilesArchiveArgs',
  full_name='ApiGetHuntFilesArchiveArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiGetHuntFilesArchiveArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
    _descriptor.FieldDescriptor(
      name='archive_format', full_name='ApiGetHuntFilesArchiveArgs.archive_format', index=1,
      number=3, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _APIGETHUNTFILESARCHIVEARGS_ARCHIVEFORMAT,
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6945,
  serialized_end=7124,
)


_APIGETHUNTFILEARGS = _descriptor.Descriptor(
  name='ApiGetHuntFileArgs',
  full_name='ApiGetHuntFileArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiGetHuntFileArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
    _descriptor.FieldDescriptor(
      name='client_id', full_name='ApiGetHuntFileArgs.client_id', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\031\n\013ApiClientId\022\nClient id.'))),
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='ApiGetHuntFileArgs.timestamp', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\0019\n\013RDFDatetime\022*Timestamp of the result in the collection.'))),
    _descriptor.FieldDescriptor(
      name='vfs_path', full_name='ApiGetHuntFileArgs.vfs_path', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001(\022&AFF4 path to the file to be downloaded'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7127,
  serialized_end=7395,
)


_APIGETHUNTSTATSARGS = _descriptor.Descriptor(
  name='ApiGetHuntStatsArgs',
  full_name='ApiGetHuntStatsArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiGetHuntStatsArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7397,
  serialized_end=7464,
)


_APIGETHUNTSTATSRESULT = _descriptor.Descriptor(
  name='ApiGetHuntStatsResult',
  full_name='ApiGetHuntStatsResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='stats', full_name='ApiGetHuntStatsResult.stats', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\014\022\nThe stats.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7466,
  serialized_end=7547,
)


_APILISTHUNTCLIENTSARGS = _descriptor.Descriptor(
  name='ApiListHuntClientsArgs',
  full_name='ApiListHuntClientsArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiListHuntClientsArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
    _descriptor.FieldDescriptor(
      name='offset', full_name='ApiListHuntClientsArgs.offset', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\022\022\020Starting offset.'))),
    _descriptor.FieldDescriptor(
      name='count', full_name='ApiListHuntClientsArgs.count', index=2,
      number=3, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\037\022\035Max number of items to fetch.'))),
    _descriptor.FieldDescriptor(
      name='client_status', full_name='ApiListHuntClientsArgs.client_status', index=3,
      number=4, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001 \022\036The types of clients to fetch.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _APILISTHUNTCLIENTSARGS_CLIENTSTATUS,
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7550,
  serialized_end=7878,
)


_APIHUNTCLIENT = _descriptor.Descriptor(
  name='ApiHuntClient',
  full_name='ApiHuntClient',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='client_id', full_name='ApiHuntClient.client_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\035\n\013ApiClientId\022\016The client id.'))),
    _descriptor.FieldDescriptor(
      name='flow_id', full_name='ApiHuntClient.flow_id', index=1,
      number=13, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\0018\n\tApiFlowId\022+Id of the hunt flow started on this client.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7881,
  serialized_end=8033,
)


_APILISTHUNTCLIENTSRESULT = _descriptor.Descriptor(
  name='ApiListHuntClientsResult',
  full_name='ApiListHuntClientsResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='items', full_name='ApiListHuntClientsResult.items', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\"\022 The list of outstanding clients.'))),
    _descriptor.FieldDescriptor(
      name='total_count', full_name='ApiListHuntClientsResult.total_count', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=8036,
  serialized_end=8187,
)


_APIGETHUNTCONTEXTARGS = _descriptor.Descriptor(
  name='ApiGetHuntContextArgs',
  full_name='ApiGetHuntContextArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiGetHuntContextArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=8189,
  serialized_end=8258,
)


_APIGETHUNTCONTEXTRESULT = _descriptor.Descriptor(
  name='ApiGetHuntContextResult',
  full_name='ApiGetHuntContextResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='context', full_name='ApiGetHuntContextResult.context', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\023\022\021The hunt context.'))),
    _descriptor.FieldDescriptor(
      name='state', full_name='ApiGetHuntContextResult.state', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\021\022\017The hunt state.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=8261,
  serialized_end=8400,
)


_APICREATEHUNTARGS = _descriptor.Descriptor(
  name='ApiCreateHuntArgs',
  full_name='ApiCreateHuntArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='flow_name', full_name='ApiCreateHuntArgs.flow_name', index=0,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\021\022\017Cron flow name.'))),
    _descriptor.FieldDescriptor(
      name='flow_args', full_name='ApiCreateHuntArgs.flow_args', index=1,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001(\022\024Cron flow arguments.*\020GetFlowArgsClass'))),
    _descriptor.FieldDescriptor(
      name='hunt_runner_args', full_name='ApiCreateHuntArgs.hunt_runner_args', index=2,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\030\022\026Hunt runner arguments.'))),
    _descriptor.FieldDescriptor(
      name='original_flow', full_name='ApiCreateHuntArgs.original_flow', index=3,
      number=6, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001H\022DIf this hunt was copied from a flow, a reference to the source flow.\030\002'))),
    _descriptor.FieldDescriptor(
      name='original_hunt', full_name='ApiCreateHuntArgs.original_hunt', index=4,
      number=7, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001H\022DIf this hunt was copied from a hunt, a reference to the source hunt.\030\002'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=8403,
  serialized_end=8874,
)


_APIMODIFYHUNTARGS = _descriptor.Descriptor(
  name='ApiModifyHuntArgs',
  full_name='ApiModifyHuntArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiModifyHuntArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
    _descriptor.FieldDescriptor(
      name='state', full_name='ApiModifyHuntArgs.state', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\r\022\013Hunt state.'))),
    _descriptor.FieldDescriptor(
      name='client_limit', full_name='ApiModifyHuntArgs.client_limit', index=2,
      number=3, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\017\022\rClient limit.'))),
    _descriptor.FieldDescriptor(
      name='client_rate', full_name='ApiModifyHuntArgs.client_rate', index=3,
      number=4, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\016\022\014Client rate.'))),
    _descriptor.FieldDescriptor(
      name='expires', full_name='ApiModifyHuntArgs.expires', index=4,
      number=5, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001+\n\013RDFDatetime\022\034When the hunt should expire.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=8877,
  serialized_end=9150,
)


_APIDELETEHUNTARGS = _descriptor.Descriptor(
  name='ApiDeleteHuntArgs',
  full_name='ApiDeleteHuntArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiDeleteHuntArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=9152,
  serialized_end=9217,
)


_APIGETEXPORTEDHUNTRESULTSARGS = _descriptor.Descriptor(
  name='ApiGetExportedHuntResultsArgs',
  full_name='ApiGetExportedHuntResultsArgs',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hunt_id', full_name='ApiGetExportedHuntResultsArgs.hunt_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))),
    _descriptor.FieldDescriptor(
      name='plugin_name', full_name='ApiGetExportedHuntResultsArgs.plugin_name', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\035\022\033Instant output plugin name.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=9220,
  serialized_end=9355,
)

_APIHUNT.fields_by_name['state'].enum_type = _APIHUNT_STATE
_APIHUNT.fields_by_name['flow_args'].message_type = google_dot_protobuf_dot_any__pb2._ANY
_APIHUNT.fields_by_name['hunt_runner_args'].message_type = grr_dot_proto_dot_flows__pb2._HUNTRUNNERARGS
_APIHUNT.fields_by_name['client_rule_set'].message_type = grr_dot_proto_dot_jobs__pb2._FOREMANCLIENTRULESET
_APIHUNT.fields_by_name['original_object'].message_type = _APIFLOWLIKEOBJECTREFERENCE
_APIHUNT_STATE.containing_type = _APIHUNT
_APIFLOWLIKEOBJECTREFERENCE.fields_by_name['object_type'].enum_type = _APIFLOWLIKEOBJECTREFERENCE_OBJECTTYPE
_APIFLOWLIKEOBJECTREFERENCE.fields_by_name['flow_reference'].message_type = grr_dot_proto_dot_api_dot_flow__pb2._APIFLOWREFERENCE
_APIFLOWLIKEOBJECTREFERENCE.fields_by_name['hunt_reference'].message_type = _APIHUNTREFERENCE
_APIFLOWLIKEOBJECTREFERENCE_OBJECTTYPE.containing_type = _APIFLOWLIKEOBJECTREFERENCE
_APIHUNTRESULT.fields_by_name['payload'].message_type = google_dot_protobuf_dot_any__pb2._ANY
_APILISTHUNTSRESULT.fields_by_name['items'].message_type = _APIHUNT
_APIGETHUNTCLIENTCOMPLETIONSTATSRESULT.fields_by_name['start_points'].message_type = grr_dot_proto_dot_analysis__pb2._SAMPLEFLOAT
_APIGETHUNTCLIENTCOMPLETIONSTATSRESULT.fields_by_name['complete_points'].message_type = grr_dot_proto_dot_analysis__pb2._SAMPLEFLOAT
_APILISTHUNTLOGSRESULT.fields_by_name['items'].message_type = grr_dot_proto_dot_jobs__pb2._FLOWLOG
_APILISTHUNTERRORSRESULT.fields_by_name['items'].message_type = grr_dot_proto_dot_jobs__pb2._HUNTERROR
_APILISTHUNTCRASHESRESULT.fields_by_name['items'].message_type = grr_dot_proto_dot_jobs__pb2._CLIENTCRASH
_APILISTHUNTRESULTSRESULT.fields_by_name['items'].message_type = _APIHUNTRESULT
_APILISTHUNTOUTPUTPLUGINSRESULT.fields_by_name['items'].message_type = grr_dot_proto_dot_api_dot_output__plugin__pb2._APIOUTPUTPLUGIN
_APILISTHUNTOUTPUTPLUGINLOGSRESULT.fields_by_name['items'].message_type = grr_dot_proto_dot_output__plugin__pb2._OUTPUTPLUGINBATCHPROCESSINGSTATUS
_APILISTHUNTOUTPUTPLUGINERRORSRESULT.fields_by_name['items'].message_type = grr_dot_proto_dot_output__plugin__pb2._OUTPUTPLUGINBATCHPROCESSINGSTATUS
_APIGETHUNTFILESARCHIVEARGS.fields_by_name['archive_format'].enum_type = _APIGETHUNTFILESARCHIVEARGS_ARCHIVEFORMAT
_APIGETHUNTFILESARCHIVEARGS_ARCHIVEFORMAT.containing_type = _APIGETHUNTFILESARCHIVEARGS
_APIGETHUNTSTATSRESULT.fields_by_name['stats'].message_type = grr_dot_proto_dot_jobs__pb2._CLIENTRESOURCESSTATS
_APILISTHUNTCLIENTSARGS.fields_by_name['client_status'].enum_type = _APILISTHUNTCLIENTSARGS_CLIENTSTATUS
_APILISTHUNTCLIENTSARGS_CLIENTSTATUS.containing_type = _APILISTHUNTCLIENTSARGS
_APILISTHUNTCLIENTSRESULT.fields_by_name['items'].message_type = _APIHUNTCLIENT
_APIGETHUNTCONTEXTRESULT.fields_by_name['context'].message_type = grr_dot_proto_dot_flows__pb2._HUNTCONTEXT
_APIGETHUNTCONTEXTRESULT.fields_by_name['state'].message_type = grr_dot_proto_dot_api__utils__pb2._APIDATAOBJECT
_APICREATEHUNTARGS.fields_by_name['flow_args'].message_type = google_dot_protobuf_dot_any__pb2._ANY
_APICREATEHUNTARGS.fields_by_name['hunt_runner_args'].message_type = grr_dot_proto_dot_flows__pb2._HUNTRUNNERARGS
_APICREATEHUNTARGS.fields_by_name['original_flow'].message_type = grr_dot_proto_dot_api_dot_flow__pb2._APIFLOWREFERENCE
_APICREATEHUNTARGS.fields_by_name['original_hunt'].message_type = _APIHUNTREFERENCE
_APIMODIFYHUNTARGS.fields_by_name['state'].enum_type = _APIHUNT_STATE
DESCRIPTOR.message_types_by_name['ApiHunt'] = _APIHUNT
DESCRIPTOR.message_types_by_name['ApiHuntReference'] = _APIHUNTREFERENCE
DESCRIPTOR.message_types_by_name['ApiFlowLikeObjectReference'] = _APIFLOWLIKEOBJECTREFERENCE
DESCRIPTOR.message_types_by_name['ApiHuntResult'] = _APIHUNTRESULT
DESCRIPTOR.message_types_by_name['ApiListHuntsArgs'] = _APILISTHUNTSARGS
DESCRIPTOR.message_types_by_name['ApiListHuntsResult'] = _APILISTHUNTSRESULT
DESCRIPTOR.message_types_by_name['ApiGetHuntArgs'] = _APIGETHUNTARGS
DESCRIPTOR.message_types_by_name['ApiGetHuntClientCompletionStatsArgs'] = _APIGETHUNTCLIENTCOMPLETIONSTATSARGS
DESCRIPTOR.message_types_by_name['ApiGetHuntClientCompletionStatsResult'] = _APIGETHUNTCLIENTCOMPLETIONSTATSRESULT
DESCRIPTOR.message_types_by_name['ApiListHuntLogsArgs'] = _APILISTHUNTLOGSARGS
DESCRIPTOR.message_types_by_name['ApiListHuntLogsResult'] = _APILISTHUNTLOGSRESULT
DESCRIPTOR.message_types_by_name['ApiListHuntErrorsArgs'] = _APILISTHUNTERRORSARGS
DESCRIPTOR.message_types_by_name['ApiListHuntErrorsResult'] = _APILISTHUNTERRORSRESULT
DESCRIPTOR.message_types_by_name['ApiListHuntCrashesArgs'] = _APILISTHUNTCRASHESARGS
DESCRIPTOR.message_types_by_name['ApiListHuntCrashesResult'] = _APILISTHUNTCRASHESRESULT
DESCRIPTOR.message_types_by_name['ApiListHuntResultsArgs'] = _APILISTHUNTRESULTSARGS
DESCRIPTOR.message_types_by_name['ApiListHuntResultsResult'] = _APILISTHUNTRESULTSRESULT
DESCRIPTOR.message_types_by_name['ApiGetHuntResultsExportCommandArgs'] = _APIGETHUNTRESULTSEXPORTCOMMANDARGS
DESCRIPTOR.message_types_by_name['ApiGetHuntResultsExportCommandResult'] = _APIGETHUNTRESULTSEXPORTCOMMANDRESULT
DESCRIPTOR.message_types_by_name['ApiListHuntOutputPluginsArgs'] = _APILISTHUNTOUTPUTPLUGINSARGS
DESCRIPTOR.message_types_by_name['ApiListHuntOutputPluginsResult'] = _APILISTHUNTOUTPUTPLUGINSRESULT
DESCRIPTOR.message_types_by_name['ApiListHuntOutputPluginLogsArgs'] = _APILISTHUNTOUTPUTPLUGINLOGSARGS
DESCRIPTOR.message_types_by_name['ApiListHuntOutputPluginLogsResult'] = _APILISTHUNTOUTPUTPLUGINLOGSRESULT
DESCRIPTOR.message_types_by_name['ApiListHuntOutputPluginErrorsArgs'] = _APILISTHUNTOUTPUTPLUGINERRORSARGS
DESCRIPTOR.message_types_by_name['ApiListHuntOutputPluginErrorsResult'] = _APILISTHUNTOUTPUTPLUGINERRORSRESULT
DESCRIPTOR.message_types_by_name['ApiGetHuntFilesArchiveArgs'] = _APIGETHUNTFILESARCHIVEARGS
DESCRIPTOR.message_types_by_name['ApiGetHuntFileArgs'] = _APIGETHUNTFILEARGS
DESCRIPTOR.message_types_by_name['ApiGetHuntStatsArgs'] = _APIGETHUNTSTATSARGS
DESCRIPTOR.message_types_by_name['ApiGetHuntStatsResult'] = _APIGETHUNTSTATSRESULT
DESCRIPTOR.message_types_by_name['ApiListHuntClientsArgs'] = _APILISTHUNTCLIENTSARGS
DESCRIPTOR.message_types_by_name['ApiHuntClient'] = _APIHUNTCLIENT
DESCRIPTOR.message_types_by_name['ApiListHuntClientsResult'] = _APILISTHUNTCLIENTSRESULT
DESCRIPTOR.message_types_by_name['ApiGetHuntContextArgs'] = _APIGETHUNTCONTEXTARGS
DESCRIPTOR.message_types_by_name['ApiGetHuntContextResult'] = _APIGETHUNTCONTEXTRESULT
DESCRIPTOR.message_types_by_name['ApiCreateHuntArgs'] = _APICREATEHUNTARGS
DESCRIPTOR.message_types_by_name['ApiModifyHuntArgs'] = _APIMODIFYHUNTARGS
DESCRIPTOR.message_types_by_name['ApiDeleteHuntArgs'] = _APIDELETEHUNTARGS
DESCRIPTOR.message_types_by_name['ApiGetExportedHuntResultsArgs'] = _APIGETEXPORTEDHUNTRESULTSARGS
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

ApiHunt = _reflection.GeneratedProtocolMessageType('ApiHunt', (_message.Message,), dict(
  DESCRIPTOR = _APIHUNT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiHunt)
  ))
_sym_db.RegisterMessage(ApiHunt)

ApiHuntReference = _reflection.GeneratedProtocolMessageType('ApiHuntReference', (_message.Message,), dict(
  DESCRIPTOR = _APIHUNTREFERENCE,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiHuntReference)
  ))
_sym_db.RegisterMessage(ApiHuntReference)

ApiFlowLikeObjectReference = _reflection.GeneratedProtocolMessageType('ApiFlowLikeObjectReference', (_message.Message,), dict(
  DESCRIPTOR = _APIFLOWLIKEOBJECTREFERENCE,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiFlowLikeObjectReference)
  ))
_sym_db.RegisterMessage(ApiFlowLikeObjectReference)

ApiHuntResult = _reflection.GeneratedProtocolMessageType('ApiHuntResult', (_message.Message,), dict(
  DESCRIPTOR = _APIHUNTRESULT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiHuntResult)
  ))
_sym_db.RegisterMessage(ApiHuntResult)

ApiListHuntsArgs = _reflection.GeneratedProtocolMessageType('ApiListHuntsArgs', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTSARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntsArgs)
  ))
_sym_db.RegisterMessage(ApiListHuntsArgs)

ApiListHuntsResult = _reflection.GeneratedProtocolMessageType('ApiListHuntsResult', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTSRESULT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntsResult)
  ))
_sym_db.RegisterMessage(ApiListHuntsResult)

ApiGetHuntArgs = _reflection.GeneratedProtocolMessageType('ApiGetHuntArgs', (_message.Message,), dict(
  DESCRIPTOR = _APIGETHUNTARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiGetHuntArgs)
  ))
_sym_db.RegisterMessage(ApiGetHuntArgs)

ApiGetHuntClientCompletionStatsArgs = _reflection.GeneratedProtocolMessageType('ApiGetHuntClientCompletionStatsArgs', (_message.Message,), dict(
  DESCRIPTOR = _APIGETHUNTCLIENTCOMPLETIONSTATSARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiGetHuntClientCompletionStatsArgs)
  ))
_sym_db.RegisterMessage(ApiGetHuntClientCompletionStatsArgs)

ApiGetHuntClientCompletionStatsResult = _reflection.GeneratedProtocolMessageType('ApiGetHuntClientCompletionStatsResult', (_message.Message,), dict(
  DESCRIPTOR = _APIGETHUNTCLIENTCOMPLETIONSTATSRESULT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiGetHuntClientCompletionStatsResult)
  ))
_sym_db.RegisterMessage(ApiGetHuntClientCompletionStatsResult)

ApiListHuntLogsArgs = _reflection.GeneratedProtocolMessageType('ApiListHuntLogsArgs', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTLOGSARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntLogsArgs)
  ))
_sym_db.RegisterMessage(ApiListHuntLogsArgs)

ApiListHuntLogsResult = _reflection.GeneratedProtocolMessageType('ApiListHuntLogsResult', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTLOGSRESULT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntLogsResult)
  ))
_sym_db.RegisterMessage(ApiListHuntLogsResult)

ApiListHuntErrorsArgs = _reflection.GeneratedProtocolMessageType('ApiListHuntErrorsArgs', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTERRORSARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntErrorsArgs)
  ))
_sym_db.RegisterMessage(ApiListHuntErrorsArgs)

ApiListHuntErrorsResult = _reflection.GeneratedProtocolMessageType('ApiListHuntErrorsResult', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTERRORSRESULT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntErrorsResult)
  ))
_sym_db.RegisterMessage(ApiListHuntErrorsResult)

ApiListHuntCrashesArgs = _reflection.GeneratedProtocolMessageType('ApiListHuntCrashesArgs', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTCRASHESARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntCrashesArgs)
  ))
_sym_db.RegisterMessage(ApiListHuntCrashesArgs)

ApiListHuntCrashesResult = _reflection.GeneratedProtocolMessageType('ApiListHuntCrashesResult', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTCRASHESRESULT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntCrashesResult)
  ))
_sym_db.RegisterMessage(ApiListHuntCrashesResult)

ApiListHuntResultsArgs = _reflection.GeneratedProtocolMessageType('ApiListHuntResultsArgs', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTRESULTSARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntResultsArgs)
  ))
_sym_db.RegisterMessage(ApiListHuntResultsArgs)

ApiListHuntResultsResult = _reflection.GeneratedProtocolMessageType('ApiListHuntResultsResult', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTRESULTSRESULT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntResultsResult)
  ))
_sym_db.RegisterMessage(ApiListHuntResultsResult)

ApiGetHuntResultsExportCommandArgs = _reflection.GeneratedProtocolMessageType('ApiGetHuntResultsExportCommandArgs', (_message.Message,), dict(
  DESCRIPTOR = _APIGETHUNTRESULTSEXPORTCOMMANDARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiGetHuntResultsExportCommandArgs)
  ))
_sym_db.RegisterMessage(ApiGetHuntResultsExportCommandArgs)

ApiGetHuntResultsExportCommandResult = _reflection.GeneratedProtocolMessageType('ApiGetHuntResultsExportCommandResult', (_message.Message,), dict(
  DESCRIPTOR = _APIGETHUNTRESULTSEXPORTCOMMANDRESULT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiGetHuntResultsExportCommandResult)
  ))
_sym_db.RegisterMessage(ApiGetHuntResultsExportCommandResult)

ApiListHuntOutputPluginsArgs = _reflection.GeneratedProtocolMessageType('ApiListHuntOutputPluginsArgs', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTOUTPUTPLUGINSARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntOutputPluginsArgs)
  ))
_sym_db.RegisterMessage(ApiListHuntOutputPluginsArgs)

ApiListHuntOutputPluginsResult = _reflection.GeneratedProtocolMessageType('ApiListHuntOutputPluginsResult', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTOUTPUTPLUGINSRESULT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntOutputPluginsResult)
  ))
_sym_db.RegisterMessage(ApiListHuntOutputPluginsResult)

ApiListHuntOutputPluginLogsArgs = _reflection.GeneratedProtocolMessageType('ApiListHuntOutputPluginLogsArgs', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTOUTPUTPLUGINLOGSARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntOutputPluginLogsArgs)
  ))
_sym_db.RegisterMessage(ApiListHuntOutputPluginLogsArgs)

ApiListHuntOutputPluginLogsResult = _reflection.GeneratedProtocolMessageType('ApiListHuntOutputPluginLogsResult', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTOUTPUTPLUGINLOGSRESULT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntOutputPluginLogsResult)
  ))
_sym_db.RegisterMessage(ApiListHuntOutputPluginLogsResult)

ApiListHuntOutputPluginErrorsArgs = _reflection.GeneratedProtocolMessageType('ApiListHuntOutputPluginErrorsArgs', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTOUTPUTPLUGINERRORSARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntOutputPluginErrorsArgs)
  ))
_sym_db.RegisterMessage(ApiListHuntOutputPluginErrorsArgs)

ApiListHuntOutputPluginErrorsResult = _reflection.GeneratedProtocolMessageType('ApiListHuntOutputPluginErrorsResult', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTOUTPUTPLUGINERRORSRESULT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntOutputPluginErrorsResult)
  ))
_sym_db.RegisterMessage(ApiListHuntOutputPluginErrorsResult)

ApiGetHuntFilesArchiveArgs = _reflection.GeneratedProtocolMessageType('ApiGetHuntFilesArchiveArgs', (_message.Message,), dict(
  DESCRIPTOR = _APIGETHUNTFILESARCHIVEARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiGetHuntFilesArchiveArgs)
  ))
_sym_db.RegisterMessage(ApiGetHuntFilesArchiveArgs)

ApiGetHuntFileArgs = _reflection.GeneratedProtocolMessageType('ApiGetHuntFileArgs', (_message.Message,), dict(
  DESCRIPTOR = _APIGETHUNTFILEARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiGetHuntFileArgs)
  ))
_sym_db.RegisterMessage(ApiGetHuntFileArgs)

ApiGetHuntStatsArgs = _reflection.GeneratedProtocolMessageType('ApiGetHuntStatsArgs', (_message.Message,), dict(
  DESCRIPTOR = _APIGETHUNTSTATSARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiGetHuntStatsArgs)
  ))
_sym_db.RegisterMessage(ApiGetHuntStatsArgs)

ApiGetHuntStatsResult = _reflection.GeneratedProtocolMessageType('ApiGetHuntStatsResult', (_message.Message,), dict(
  DESCRIPTOR = _APIGETHUNTSTATSRESULT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiGetHuntStatsResult)
  ))
_sym_db.RegisterMessage(ApiGetHuntStatsResult)

ApiListHuntClientsArgs = _reflection.GeneratedProtocolMessageType('ApiListHuntClientsArgs', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTCLIENTSARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntClientsArgs)
  ))
_sym_db.RegisterMessage(ApiListHuntClientsArgs)

ApiHuntClient = _reflection.GeneratedProtocolMessageType('ApiHuntClient', (_message.Message,), dict(
  DESCRIPTOR = _APIHUNTCLIENT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiHuntClient)
  ))
_sym_db.RegisterMessage(ApiHuntClient)

ApiListHuntClientsResult = _reflection.GeneratedProtocolMessageType('ApiListHuntClientsResult', (_message.Message,), dict(
  DESCRIPTOR = _APILISTHUNTCLIENTSRESULT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiListHuntClientsResult)
  ))
_sym_db.RegisterMessage(ApiListHuntClientsResult)

ApiGetHuntContextArgs = _reflection.GeneratedProtocolMessageType('ApiGetHuntContextArgs', (_message.Message,), dict(
  DESCRIPTOR = _APIGETHUNTCONTEXTARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiGetHuntContextArgs)
  ))
_sym_db.RegisterMessage(ApiGetHuntContextArgs)

ApiGetHuntContextResult = _reflection.GeneratedProtocolMessageType('ApiGetHuntContextResult', (_message.Message,), dict(
  DESCRIPTOR = _APIGETHUNTCONTEXTRESULT,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiGetHuntContextResult)
  ))
_sym_db.RegisterMessage(ApiGetHuntContextResult)

ApiCreateHuntArgs = _reflection.GeneratedProtocolMessageType('ApiCreateHuntArgs', (_message.Message,), dict(
  DESCRIPTOR = _APICREATEHUNTARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiCreateHuntArgs)
  ))
_sym_db.RegisterMessage(ApiCreateHuntArgs)

ApiModifyHuntArgs = _reflection.GeneratedProtocolMessageType('ApiModifyHuntArgs', (_message.Message,), dict(
  DESCRIPTOR = _APIMODIFYHUNTARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiModifyHuntArgs)
  ))
_sym_db.RegisterMessage(ApiModifyHuntArgs)

ApiDeleteHuntArgs = _reflection.GeneratedProtocolMessageType('ApiDeleteHuntArgs', (_message.Message,), dict(
  DESCRIPTOR = _APIDELETEHUNTARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiDeleteHuntArgs)
  ))
_sym_db.RegisterMessage(ApiDeleteHuntArgs)

ApiGetExportedHuntResultsArgs = _reflection.GeneratedProtocolMessageType('ApiGetExportedHuntResultsArgs', (_message.Message,), dict(
  DESCRIPTOR = _APIGETEXPORTEDHUNTRESULTSARGS,
  __module__ = 'grr.proto.api.hunt_pb2'
  # @@protoc_insertion_point(class_scope:ApiGetExportedHuntResultsArgs)
  ))
_sym_db.RegisterMessage(ApiGetExportedHuntResultsArgs)


_APIHUNT.fields_by_name['urn'].has_options = True
_APIHUNT.fields_by_name['urn']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\026\n\tSessionID\022\tHunt URN.'))
_APIHUNT.fields_by_name['hunt_id'].has_options = True
_APIHUNT.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\031\n\tApiHuntId\022\014The hunt id.'))
_APIHUNT.fields_by_name['name'].has_options = True
_APIHUNT.fields_by_name['name']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\014\022\nHunt name.'))
_APIHUNT.fields_by_name['state'].has_options = True
_APIHUNT.fields_by_name['state']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\022\023Current hunt state.'))
_APIHUNT.fields_by_name['flow_name'].has_options = True
_APIHUNT.fields_by_name['flow_name']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\021\022\017Cron flow name.'))
_APIHUNT.fields_by_name['flow_args'].has_options = True
_APIHUNT.fields_by_name['flow_args']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001(\022\024Cron flow arguments.*\020GetFlowArgsClass'))
_APIHUNT.fields_by_name['hunt_runner_args'].has_options = True
_APIHUNT.fields_by_name['hunt_runner_args']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\030\022\026Hunt runner arguments.'))
_APIHUNT.fields_by_name['all_clients_count'].has_options = True
_APIHUNT.fields_by_name['all_clients_count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Count of all clients.'))
_APIHUNT.fields_by_name['remaining_clients_count'].has_options = True
_APIHUNT.fields_by_name['remaining_clients_count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\035\022\033Count of remaining clients.'))
_APIHUNT.fields_by_name['completed_clients_count'].has_options = True
_APIHUNT.fields_by_name['completed_clients_count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\035\022\033Count of completed clients.'))
_APIHUNT.fields_by_name['crash_limit'].has_options = True
_APIHUNT.fields_by_name['crash_limit']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\016\022\014Crash limit.'))
_APIHUNT.fields_by_name['client_limit'].has_options = True
_APIHUNT.fields_by_name['client_limit']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\017\022\rClient limit.'))
_APIHUNT.fields_by_name['client_rate'].has_options = True
_APIHUNT.fields_by_name['client_rate']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\016\022\014Client rate.'))
_APIHUNT.fields_by_name['created'].has_options = True
_APIHUNT.fields_by_name['created']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001)\n\013RDFDatetime\022\032Creation time of the hunt.'))
_APIHUNT.fields_by_name['expires'].has_options = True
_APIHUNT.fields_by_name['expires']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001+\n\013RDFDatetime\022\034Expiration time of the hunt.'))
_APIHUNT.fields_by_name['creator'].has_options = True
_APIHUNT.fields_by_name['creator']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001(\022&Name of the user who created the hunt.'))
_APIHUNT.fields_by_name['description'].has_options = True
_APIHUNT.fields_by_name['description']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\023\022\021Hunt description.'))
_APIHUNT.fields_by_name['client_rule_set'].has_options = True
_APIHUNT.fields_by_name['client_rule_set']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\017\022\rClient rules.'))
_APIHUNT.fields_by_name['is_robot'].has_options = True
_APIHUNT.fields_by_name['is_robot']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001.\022,Whether the hunt was created by a GRRWorker.'))
_APIHUNT.fields_by_name['total_cpu_usage'].has_options = True
_APIHUNT.fields_by_name['total_cpu_usage']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\037\022\035Total CPU usage (in seconds).'))
_APIHUNT.fields_by_name['total_net_usage'].has_options = True
_APIHUNT.fields_by_name['total_net_usage']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001!\022\037Total network usage (in bytes).'))
_APIHUNT.fields_by_name['clients_with_results_count'].has_options = True
_APIHUNT.fields_by_name['clients_with_results_count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\0017\0225Number of clients that returned at least one result. '))
_APIHUNT.fields_by_name['results_count'].has_options = True
_APIHUNT.fields_by_name['results_count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\'\022%Total number of results in this hunt.'))
_APIHUNT.fields_by_name['original_object'].has_options = True
_APIHUNT.fields_by_name['original_object']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001J\022HIf this hunt was copied from another object, a reference to that object.'))
_APIHUNT.fields_by_name['internal_error'].has_options = True
_APIHUNT.fields_by_name['internal_error']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001z\022xAn error that happened while reading the hunt. This is not an error while executing the hunt but an internal data issue.'))
_APIHUNTREFERENCE.fields_by_name['hunt_id'].has_options = True
_APIHUNTREFERENCE.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APIFLOWLIKEOBJECTREFERENCE.has_options = True
_APIFLOWLIKEOBJECTREFERENCE._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('\332\374\343\304\001\r\022\013object_type'))
_APIHUNTRESULT.fields_by_name['client_id'].has_options = True
_APIHUNTRESULT.fields_by_name['client_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\031\n\013ApiClientId\022\nClient id.'))
_APIHUNTRESULT.fields_by_name['payload'].has_options = True
_APIHUNTRESULT.fields_by_name['payload']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\"\022\017Result payload.*\017GetPayloadClass'))
_APIHUNTRESULT.fields_by_name['payload_type'].has_options = True
_APIHUNTRESULT.fields_by_name['payload_type']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\026\022\024Type of the payload.'))
_APIHUNTRESULT.fields_by_name['timestamp'].has_options = True
_APIHUNTRESULT.fields_by_name['timestamp']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001N\n\013RDFDatetime\022?Timestamp indicating when result was written to the data store.'))
_APILISTHUNTSARGS.fields_by_name['offset'].has_options = True
_APILISTHUNTSARGS.fields_by_name['offset']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\022\022\020Starting offset.'))
_APILISTHUNTSARGS.fields_by_name['count'].has_options = True
_APILISTHUNTSARGS.fields_by_name['count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\037\022\035Max number of items to fetch.'))
_APILISTHUNTSARGS.fields_by_name['created_by'].has_options = True
_APILISTHUNTSARGS.fields_by_name['created_by']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\212\002\022\207\002Only return hunts created by a given user. If approved_by or/and description_contains are also supplied, then logical AND is applied to all the criterias. NOTE: this filter can only be used in conjunction with \'active_within\' filter (to prevent queries of death).'))
_APILISTHUNTSARGS.fields_by_name['description_contains'].has_options = True
_APILISTHUNTSARGS.fields_by_name['description_contains']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\261\002\022\256\002Only return hunts where description contains given substring (matching is case-insensitive).If created_by or/and approved_by are also supplied, then logical AND is applied to all the criterias. NOTE: this filter can only be used in conjunction with \'active_within\' filter (to prevent queries of death).'))
_APILISTHUNTSARGS.fields_by_name['active_within'].has_options = True
_APILISTHUNTSARGS.fields_by_name['active_within']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001J\n\010Duration\022>Only return hunts that were active within given time duration.'))
_APILISTHUNTSRESULT.fields_by_name['items'].has_options = True
_APILISTHUNTSRESULT.fields_by_name['items']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\020\022\016List of hunts.'))
_APILISTHUNTSRESULT.fields_by_name['total_count'].has_options = True
_APILISTHUNTSRESULT.fields_by_name['total_count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\030\022\026Total number of items.'))
_APIGETHUNTARGS.fields_by_name['hunt_id'].has_options = True
_APIGETHUNTARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APIGETHUNTCLIENTCOMPLETIONSTATSARGS.fields_by_name['hunt_id'].has_options = True
_APIGETHUNTCLIENTCOMPLETIONSTATSARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APIGETHUNTCLIENTCOMPLETIONSTATSARGS.fields_by_name['size'].has_options = True
_APIGETHUNTCLIENTCOMPLETIONSTATSARGS.fields_by_name['size']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001%\022#Max number of data points to fetch.'))
_APIGETHUNTCLIENTCOMPLETIONSTATSRESULT.fields_by_name['start_points'].has_options = True
_APIGETHUNTCLIENTCOMPLETIONSTATSRESULT.fields_by_name['start_points']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001(\022&The list of samples for client starts.'))
_APIGETHUNTCLIENTCOMPLETIONSTATSRESULT.fields_by_name['complete_points'].has_options = True
_APIGETHUNTCLIENTCOMPLETIONSTATSRESULT.fields_by_name['complete_points']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001-\022+The list of samples for client completions.'))
_APILISTHUNTLOGSARGS.fields_by_name['hunt_id'].has_options = True
_APILISTHUNTLOGSARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APILISTHUNTLOGSARGS.fields_by_name['offset'].has_options = True
_APILISTHUNTLOGSARGS.fields_by_name['offset']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\034\022\032Log items starting offset.'))
_APILISTHUNTLOGSARGS.fields_by_name['count'].has_options = True
_APILISTHUNTLOGSARGS.fields_by_name['count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001#\022!Max number of log items to fetch.'))
_APILISTHUNTLOGSARGS.fields_by_name['filter'].has_options = True
_APILISTHUNTLOGSARGS.fields_by_name['filter']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001K\022IReturn only results whose string representation contains given substring.'))
_APILISTHUNTLOGSRESULT.fields_by_name['items'].has_options = True
_APILISTHUNTLOGSRESULT.fields_by_name['items']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\021\022\017The hunt errors'))
_APILISTHUNTLOGSRESULT.fields_by_name['total_count'].has_options = True
_APILISTHUNTLOGSRESULT.fields_by_name['total_count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))
_APILISTHUNTERRORSARGS.fields_by_name['hunt_id'].has_options = True
_APILISTHUNTERRORSARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APILISTHUNTERRORSARGS.fields_by_name['offset'].has_options = True
_APILISTHUNTERRORSARGS.fields_by_name['offset']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\036\022\034Hunt errors starting offset.'))
_APILISTHUNTERRORSARGS.fields_by_name['count'].has_options = True
_APILISTHUNTERRORSARGS.fields_by_name['count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001 \022\036Max number of errors to fetch.'))
_APILISTHUNTERRORSARGS.fields_by_name['filter'].has_options = True
_APILISTHUNTERRORSARGS.fields_by_name['filter']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001K\022IReturn only results whose string representation contains given substring.'))
_APILISTHUNTERRORSRESULT.fields_by_name['items'].has_options = True
_APILISTHUNTERRORSRESULT.fields_by_name['items']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\021\022\017The hunt errors'))
_APILISTHUNTERRORSRESULT.fields_by_name['total_count'].has_options = True
_APILISTHUNTERRORSRESULT.fields_by_name['total_count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))
_APILISTHUNTCRASHESARGS.fields_by_name['hunt_id'].has_options = True
_APILISTHUNTCRASHESARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APILISTHUNTCRASHESARGS.fields_by_name['offset'].has_options = True
_APILISTHUNTCRASHESARGS.fields_by_name['offset']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\037\022\035Hunt crashes starting offset.'))
_APILISTHUNTCRASHESARGS.fields_by_name['count'].has_options = True
_APILISTHUNTCRASHESARGS.fields_by_name['count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001!\022\037Max number of crashes to fetch.'))
_APILISTHUNTCRASHESARGS.fields_by_name['filter'].has_options = True
_APILISTHUNTCRASHESARGS.fields_by_name['filter']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001K\022IReturn only results whose string representation contains given substring.'))
_APILISTHUNTCRASHESRESULT.fields_by_name['items'].has_options = True
_APILISTHUNTCRASHESRESULT.fields_by_name['items']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\024\022\022The client crashes'))
_APILISTHUNTCRASHESRESULT.fields_by_name['total_count'].has_options = True
_APILISTHUNTCRASHESRESULT.fields_by_name['total_count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))
_APILISTHUNTRESULTSARGS.fields_by_name['hunt_id'].has_options = True
_APILISTHUNTRESULTSARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APILISTHUNTRESULTSARGS.fields_by_name['offset'].has_options = True
_APILISTHUNTRESULTSARGS.fields_by_name['offset']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\037\022\035Hunt results starting offset.'))
_APILISTHUNTRESULTSARGS.fields_by_name['count'].has_options = True
_APILISTHUNTRESULTSARGS.fields_by_name['count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001!\022\037Max number of results to fetch.'))
_APILISTHUNTRESULTSARGS.fields_by_name['filter'].has_options = True
_APILISTHUNTRESULTSARGS.fields_by_name['filter']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001K\022IReturn only results whose string representation contains given substring.'))
_APILISTHUNTRESULTSRESULT.fields_by_name['items'].has_options = True
_APILISTHUNTRESULTSRESULT.fields_by_name['items']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\017\022\rHunt results.'))
_APILISTHUNTRESULTSRESULT.fields_by_name['total_count'].has_options = True
_APILISTHUNTRESULTSRESULT.fields_by_name['total_count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))
_APIGETHUNTRESULTSEXPORTCOMMANDARGS.fields_by_name['hunt_id'].has_options = True
_APIGETHUNTRESULTSEXPORTCOMMANDARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APIGETHUNTRESULTSEXPORTCOMMANDRESULT.fields_by_name['command'].has_options = True
_APIGETHUNTRESULTSEXPORTCOMMANDRESULT.fields_by_name['command']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\0012\0220Command that may be used to export hunt results.'))
_APILISTHUNTOUTPUTPLUGINSARGS.fields_by_name['hunt_id'].has_options = True
_APILISTHUNTOUTPUTPLUGINSARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APILISTHUNTOUTPUTPLUGINSRESULT.fields_by_name['total_count'].has_options = True
_APILISTHUNTOUTPUTPLUGINSRESULT.fields_by_name['total_count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))
_APILISTHUNTOUTPUTPLUGINLOGSARGS.fields_by_name['hunt_id'].has_options = True
_APILISTHUNTOUTPUTPLUGINLOGSARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APILISTHUNTOUTPUTPLUGINLOGSARGS.fields_by_name['plugin_id'].has_options = True
_APILISTHUNTOUTPUTPLUGINLOGSARGS.fields_by_name['plugin_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\014\022\nPlugin id.'))
_APILISTHUNTOUTPUTPLUGINLOGSARGS.fields_by_name['offset'].has_options = True
_APILISTHUNTOUTPUTPLUGINLOGSARGS.fields_by_name['offset']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\031\022\027Status messages offset.'))
_APILISTHUNTOUTPUTPLUGINLOGSARGS.fields_by_name['count'].has_options = True
_APILISTHUNTOUTPUTPLUGINLOGSARGS.fields_by_name['count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001%\022#Number of status messages to fetch.'))
_APILISTHUNTOUTPUTPLUGINLOGSRESULT.fields_by_name['items'].has_options = True
_APILISTHUNTOUTPUTPLUGINLOGSRESULT.fields_by_name['items']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\016\022\014Log entries.'))
_APILISTHUNTOUTPUTPLUGINLOGSRESULT.fields_by_name['total_count'].has_options = True
_APILISTHUNTOUTPUTPLUGINLOGSRESULT.fields_by_name['total_count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))
_APILISTHUNTOUTPUTPLUGINERRORSARGS.fields_by_name['hunt_id'].has_options = True
_APILISTHUNTOUTPUTPLUGINERRORSARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APILISTHUNTOUTPUTPLUGINERRORSARGS.fields_by_name['plugin_id'].has_options = True
_APILISTHUNTOUTPUTPLUGINERRORSARGS.fields_by_name['plugin_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\014\022\nPlugin id.'))
_APILISTHUNTOUTPUTPLUGINERRORSARGS.fields_by_name['offset'].has_options = True
_APILISTHUNTOUTPUTPLUGINERRORSARGS.fields_by_name['offset']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\020\022\016Errors offset.'))
_APILISTHUNTOUTPUTPLUGINERRORSARGS.fields_by_name['count'].has_options = True
_APILISTHUNTOUTPUTPLUGINERRORSARGS.fields_by_name['count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001%\022#Number of errors messages to fetch.'))
_APILISTHUNTOUTPUTPLUGINERRORSRESULT.fields_by_name['items'].has_options = True
_APILISTHUNTOUTPUTPLUGINERRORSRESULT.fields_by_name['items']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\021\022\017Errors entries.'))
_APILISTHUNTOUTPUTPLUGINERRORSRESULT.fields_by_name['total_count'].has_options = True
_APILISTHUNTOUTPUTPLUGINERRORSRESULT.fields_by_name['total_count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))
_APIGETHUNTFILESARCHIVEARGS.fields_by_name['hunt_id'].has_options = True
_APIGETHUNTFILESARCHIVEARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APIGETHUNTFILEARGS.fields_by_name['hunt_id'].has_options = True
_APIGETHUNTFILEARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APIGETHUNTFILEARGS.fields_by_name['client_id'].has_options = True
_APIGETHUNTFILEARGS.fields_by_name['client_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\031\n\013ApiClientId\022\nClient id.'))
_APIGETHUNTFILEARGS.fields_by_name['timestamp'].has_options = True
_APIGETHUNTFILEARGS.fields_by_name['timestamp']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\0019\n\013RDFDatetime\022*Timestamp of the result in the collection.'))
_APIGETHUNTFILEARGS.fields_by_name['vfs_path'].has_options = True
_APIGETHUNTFILEARGS.fields_by_name['vfs_path']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001(\022&AFF4 path to the file to be downloaded'))
_APIGETHUNTSTATSARGS.fields_by_name['hunt_id'].has_options = True
_APIGETHUNTSTATSARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APIGETHUNTSTATSRESULT.fields_by_name['stats'].has_options = True
_APIGETHUNTSTATSRESULT.fields_by_name['stats']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\014\022\nThe stats.'))
_APILISTHUNTCLIENTSARGS.fields_by_name['hunt_id'].has_options = True
_APILISTHUNTCLIENTSARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APILISTHUNTCLIENTSARGS.fields_by_name['offset'].has_options = True
_APILISTHUNTCLIENTSARGS.fields_by_name['offset']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\022\022\020Starting offset.'))
_APILISTHUNTCLIENTSARGS.fields_by_name['count'].has_options = True
_APILISTHUNTCLIENTSARGS.fields_by_name['count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\037\022\035Max number of items to fetch.'))
_APILISTHUNTCLIENTSARGS.fields_by_name['client_status'].has_options = True
_APILISTHUNTCLIENTSARGS.fields_by_name['client_status']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001 \022\036The types of clients to fetch.'))
_APIHUNTCLIENT.fields_by_name['client_id'].has_options = True
_APIHUNTCLIENT.fields_by_name['client_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\035\n\013ApiClientId\022\016The client id.'))
_APIHUNTCLIENT.fields_by_name['flow_id'].has_options = True
_APIHUNTCLIENT.fields_by_name['flow_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\0018\n\tApiFlowId\022+Id of the hunt flow started on this client.'))
_APILISTHUNTCLIENTSRESULT.fields_by_name['items'].has_options = True
_APILISTHUNTCLIENTSRESULT.fields_by_name['items']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\"\022 The list of outstanding clients.'))
_APILISTHUNTCLIENTSRESULT.fields_by_name['total_count'].has_options = True
_APILISTHUNTCLIENTSRESULT.fields_by_name['total_count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\027\022\025Total count of items.'))
_APIGETHUNTCONTEXTARGS.fields_by_name['hunt_id'].has_options = True
_APIGETHUNTCONTEXTARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APIGETHUNTCONTEXTRESULT.fields_by_name['context'].has_options = True
_APIGETHUNTCONTEXTRESULT.fields_by_name['context']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\023\022\021The hunt context.'))
_APIGETHUNTCONTEXTRESULT.fields_by_name['state'].has_options = True
_APIGETHUNTCONTEXTRESULT.fields_by_name['state']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\021\022\017The hunt state.'))
_APICREATEHUNTARGS.fields_by_name['flow_name'].has_options = True
_APICREATEHUNTARGS.fields_by_name['flow_name']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\021\022\017Cron flow name.'))
_APICREATEHUNTARGS.fields_by_name['flow_args'].has_options = True
_APICREATEHUNTARGS.fields_by_name['flow_args']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001(\022\024Cron flow arguments.*\020GetFlowArgsClass'))
_APICREATEHUNTARGS.fields_by_name['hunt_runner_args'].has_options = True
_APICREATEHUNTARGS.fields_by_name['hunt_runner_args']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\030\022\026Hunt runner arguments.'))
_APICREATEHUNTARGS.fields_by_name['original_flow'].has_options = True
_APICREATEHUNTARGS.fields_by_name['original_flow']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001H\022DIf this hunt was copied from a flow, a reference to the source flow.\030\002'))
_APICREATEHUNTARGS.fields_by_name['original_hunt'].has_options = True
_APICREATEHUNTARGS.fields_by_name['original_hunt']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001H\022DIf this hunt was copied from a hunt, a reference to the source hunt.\030\002'))
_APIMODIFYHUNTARGS.fields_by_name['hunt_id'].has_options = True
_APIMODIFYHUNTARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APIMODIFYHUNTARGS.fields_by_name['state'].has_options = True
_APIMODIFYHUNTARGS.fields_by_name['state']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\r\022\013Hunt state.'))
_APIMODIFYHUNTARGS.fields_by_name['client_limit'].has_options = True
_APIMODIFYHUNTARGS.fields_by_name['client_limit']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\017\022\rClient limit.'))
_APIMODIFYHUNTARGS.fields_by_name['client_rate'].has_options = True
_APIMODIFYHUNTARGS.fields_by_name['client_rate']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\016\022\014Client rate.'))
_APIMODIFYHUNTARGS.fields_by_name['expires'].has_options = True
_APIMODIFYHUNTARGS.fields_by_name['expires']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001+\n\013RDFDatetime\022\034When the hunt should expire.'))
_APIDELETEHUNTARGS.fields_by_name['hunt_id'].has_options = True
_APIDELETEHUNTARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APIGETEXPORTEDHUNTRESULTSARGS.fields_by_name['hunt_id'].has_options = True
_APIGETEXPORTEDHUNTRESULTSARGS.fields_by_name['hunt_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\025\n\tApiHuntId\022\010Hunt id.'))
_APIGETEXPORTEDHUNTRESULTSARGS.fields_by_name['plugin_name'].has_options = True
_APIGETEXPORTEDHUNTRESULTSARGS.fields_by_name['plugin_name']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001\035\022\033Instant output plugin name.'))
# @@protoc_insertion_point(module_scope)
