diff --git a/thehive/app/org/thp/thehive/controllers/v0/TagCtrl.scala b/thehive/app/org/thp/thehive/controllers/v0/TagCtrl.scala index 636bd0e277..45a85f7abf 100644 --- a/thehive/app/org/thp/thehive/controllers/v0/TagCtrl.scala +++ b/thehive/app/org/thp/thehive/controllers/v0/TagCtrl.scala @@ -124,6 +124,7 @@ class PublicTag @Inject() (tagSrv: TagSrv) extends PublicData { override val extraQueries: Seq[ParamQuery[_]] = Seq( Query[Traversal.V[Tag], Traversal.V[Tag]]("fromCase", (tagSteps, _) => tagSteps.fromCase), Query[Traversal.V[Tag], Traversal.V[Tag]]("fromObservable", (tagSteps, _) => tagSteps.fromObservable), + Query[Traversal.V[Tag], Traversal.V[Tag]]("fromAlert", (tagSteps, _) => tagSteps.fromAlert), Query[Traversal.V[Tag], Traversal[String, Vertex, Converter[String, Vertex]]]("text", (tagSteps, _) => tagSteps.displayName), Query.output[String, Traversal[String, Vertex, Converter[String, Vertex]]] ) diff --git a/thehive/app/org/thp/thehive/services/TagSrv.scala b/thehive/app/org/thp/thehive/services/TagSrv.scala index 7b78029f4f..a035558eaa 100644 --- a/thehive/app/org/thp/thehive/services/TagSrv.scala +++ b/thehive/app/org/thp/thehive/services/TagSrv.scala @@ -9,7 +9,7 @@ import org.thp.scalligraph.services.config.{ApplicationConfig, ConfigItem} import org.thp.scalligraph.services.{IntegrityCheckOps, VertexSrv} import org.thp.scalligraph.traversal.TraversalOps._ import org.thp.scalligraph.traversal.{Converter, Traversal} -import org.thp.thehive.models.{CaseTag, ObservableTag, Tag} +import org.thp.thehive.models.{AlertTag, CaseTag, ObservableTag, Tag} import org.thp.thehive.services.TagOps._ import scala.util.{Success, Try} @@ -80,6 +80,8 @@ object TagOps { def fromCase: Traversal.V[Tag] = traversal.filter(_.in[CaseTag]) def fromObservable: Traversal.V[Tag] = traversal.filter(_.in[ObservableTag]) + + def fromAlert: Traversal.V[Tag] = traversal.filter(_.in[AlertTag]) } }