def delete(self, request, organisation_id, invitation_id, *args, **kwargs): try: invite = Invitation.objects.get(id=invitation_id, organisation=organisation_id) invite.set_user_context(request.user) if not invite.accepted_at: invite.contact.delete() invite.delete() else: raise Invitation.DoesNotExist() return ResponseSuccess( {"result": { "id": str(invitation_id), "deleted": True }}) except Invitation.DoesNotExist: raise NotFoundApiExceptions("Invalid invitation")