diff --git a/modoboa/admin/api/v1/serializers.py b/modoboa/admin/api/v1/serializers.py index b1769ccc8..0ba2c6b3c 100644 --- a/modoboa/admin/api/v1/serializers.py +++ b/modoboa/admin/api/v1/serializers.py @@ -471,8 +471,10 @@ class AliasSerializer(serializers.ModelSerializer): try: local_part, self.domain = admin_models.validate_alias_address( value, self.context["request"].user, instance=self.instance) - except (AliasExists, ValidationError) as err: + except ValidationError as err: raise serializers.ValidationError(err) + except AliasExists: + raise serializers.ValidationError(_("This alias already exists")) return value.lower() def create(self, validated_data): diff --git a/modoboa/admin/api/v2/tests.py b/modoboa/admin/api/v2/tests.py index 0f09ae935..db5881cbb 100644 --- a/modoboa/admin/api/v2/tests.py +++ b/modoboa/admin/api/v2/tests.py @@ -535,7 +535,7 @@ class AliasViewSetTestCase(ModoAPITestCase): data = {"address": "alias@test.com"} resp = self.client.post(url, data, format="json") - self.assertEqual(resp.status_code, 409) + self.assertEqual(resp.status_code, 400) al_id = models.Alias.objects.get(address="alias@test.com").pk self.assertEqual(resp.json()["id"], al_id)