from auth.auth_view import AuthorizedView from shared.validators import validate_UUID from utils.handlers import get_request_model from linkfire.services.linkfire_service import LinkfireService from linkfire.schemas import LinkfireLinkListRequestSchema class LinkfireCampaignView(AuthorizedView): linkfire_service: LinkfireService = LinkfireService() def put(self, project_id: int, campaign_uuid: str): validate_UUID(campaign_uuid) self.permissions.can_edit_campaign(project_id=project_id, campaign_uuid=campaign_uuid) params = get_request_model(LinkfireLinkListRequestSchema) return self.linkfire_service.set_linkfire_links_to_campaign(campaign_uuid, params)