| (ns metabase-enterprise.content-verification.api.moderation-review (:require [metabase.api.common :as api] [metabase.api.macros :as api.macros] [metabase.models.moderation-review :as moderation-review] [metabase.moderation :as moderation] [metabase.util.malli.schema :as ms] [toucan2.core :as t2])) |
(api.macros/defendpoint :post "/" "Create a new `ModerationReview`." [_route-params _query-params {:keys [text moderated_item_id moderated_item_type status]} :- [:map [:text {:optional true} [:maybe :string]] [:moderated_item_id ms/PositiveInt] [:moderated_item_type moderation/moderated-item-types] [:status {:optional true} [:maybe moderation-review/Statuses]]]] (api/check-superuser) (let [review-data {:text text :moderated_item_id moderated_item_id :moderated_item_type moderated_item_type :moderator_id api/*current-user-id* :status status}] (api/check-404 (t2/exists? (get moderation/moderated-item-type->model moderated_item_type) moderated_item_id)) (moderation-review/create-review! review-data))) | |