(domains) allow to run all fetch domain data from dimail

Fetch domain status and expected config from dimail.
This commit is contained in:
Sabrina Demagny
2025-02-16 17:57:58 +01:00
parent 38de864d68
commit cdb766b0e0
4 changed files with 158 additions and 3 deletions

View File

@@ -35,6 +35,9 @@ class MailDomainViewSet(
- name: str
- support_email: str
Return newly created domain
POST /api/<version>/mail-domains/<domain-slug>/fetch/
Fetch domain status and expected config from dimail.
"""
permission_classes = [permissions.AccessPermission]
@@ -61,6 +64,17 @@ class MailDomainViewSet(
}
)
@action(detail=True, methods=["post"], url_path="fetch")
def fetch_from_dimail(self, request, *args, **kwargs):
"""Fetch domain status and expected config from dimail."""
domain = self.get_object()
client = DimailAPIClient()
client.fetch_domain_status(domain)
client.fetch_domain_expected_config(domain)
return Response(
serializers.MailDomainSerializer(domain, context={"request": request}).data
)
# pylint: disable=too-many-ancestors
class MailDomainAccessViewSet(