Skip to content

Commit 8f77ca1

Browse files
authored
feat(dom): add filter to endpoint listContacts (#269)
1 parent f89bf79 commit 8f77ca1

File tree

6 files changed

+60
-0
lines changed

6 files changed

+60
-0
lines changed

scaleway-async/scaleway_async/domain/v2beta1/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
from .types import DomainStatus
1515
from .types import HostStatus
1616
from .types import LanguageCode
17+
from .types import ListContactsRequestRole
1718
from .types import ListDNSZoneRecordsRequestOrderBy
1819
from .types import ListDNSZonesRequestOrderBy
1920
from .types import ListDomainsRequestOrderBy
@@ -129,6 +130,7 @@
129130
"DomainStatus",
130131
"HostStatus",
131132
"LanguageCode",
133+
"ListContactsRequestRole",
132134
"ListDNSZoneRecordsRequestOrderBy",
133135
"ListDNSZonesRequestOrderBy",
134136
"ListDomainsRequestOrderBy",

scaleway-async/scaleway_async/domain/v2beta1/api.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,11 @@
1515
wait_for_resource_async,
1616
)
1717
from .types import (
18+
ContactEmailStatus,
1819
DomainRecordType,
1920
DomainStatus,
2021
LanguageCode,
22+
ListContactsRequestRole,
2123
ListDNSZoneRecordsRequestOrderBy,
2224
ListDNSZonesRequestOrderBy,
2325
ListDomainsRequestOrderBy,
@@ -1724,6 +1726,8 @@ async def list_contacts(
17241726
domain: Optional[str] = None,
17251727
project_id: Optional[str] = None,
17261728
organization_id: Optional[str] = None,
1729+
role: ListContactsRequestRole = ListContactsRequestRole.UNKNOWN_ROLE,
1730+
email_status: ContactEmailStatus = ContactEmailStatus.EMAIL_STATUS_UNKNOWN,
17271731
) -> ListContactsResponse:
17281732
"""
17291733
List contacts.
@@ -1734,6 +1738,8 @@ async def list_contacts(
17341738
:param domain:
17351739
:param project_id:
17361740
:param organization_id:
1741+
:param role:
1742+
:param email_status:
17371743
:return: :class:`ListContactsResponse <ListContactsResponse>`
17381744
17391745
Usage:
@@ -1747,11 +1753,13 @@ async def list_contacts(
17471753
f"/domain/v2beta1/contacts",
17481754
params={
17491755
"domain": domain,
1756+
"email_status": email_status,
17501757
"organization_id": organization_id
17511758
or self.client.default_organization_id,
17521759
"page": page,
17531760
"page_size": page_size or self.client.default_page_size,
17541761
"project_id": project_id or self.client.default_project_id,
1762+
"role": role,
17551763
},
17561764
)
17571765

@@ -1766,6 +1774,8 @@ async def list_contacts_all(
17661774
domain: Optional[str] = None,
17671775
project_id: Optional[str] = None,
17681776
organization_id: Optional[str] = None,
1777+
role: Optional[ListContactsRequestRole] = None,
1778+
email_status: Optional[ContactEmailStatus] = None,
17691779
) -> List[ContactRoles]:
17701780
"""
17711781
List contacts.
@@ -1776,6 +1786,8 @@ async def list_contacts_all(
17761786
:param domain:
17771787
:param project_id:
17781788
:param organization_id:
1789+
:param role:
1790+
:param email_status:
17791791
:return: :class:`List[ListContactsResponse] <List[ListContactsResponse]>`
17801792
17811793
Usage:
@@ -1794,6 +1806,8 @@ async def list_contacts_all(
17941806
"domain": domain,
17951807
"project_id": project_id,
17961808
"organization_id": organization_id,
1809+
"role": role,
1810+
"email_status": email_status,
17971811
},
17981812
)
17991813

scaleway-async/scaleway_async/domain/v2beta1/types.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,16 @@ def __str__(self) -> str:
213213
return str(self.value)
214214

215215

216+
class ListContactsRequestRole(str, Enum):
217+
UNKNOWN_ROLE = "unknown_role"
218+
OWNER = "owner"
219+
ADMINISTRATIVE = "administrative"
220+
TECHNICAL = "technical"
221+
222+
def __str__(self) -> str:
223+
return str(self.value)
224+
225+
216226
class ListDNSZoneRecordsRequestOrderBy(str, Enum):
217227
NAME_ASC = "name_asc"
218228
NAME_DESC = "name_desc"
@@ -1894,6 +1904,10 @@ class RegistrarApiListContactsRequest:
18941904

18951905
organization_id: Optional[str]
18961906

1907+
role: Optional[ListContactsRequestRole]
1908+
1909+
email_status: Optional[ContactEmailStatus]
1910+
18971911

18981912
@dataclass
18991913
class RegistrarApiGetContactRequest:

scaleway/scaleway/domain/v2beta1/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
from .types import DomainStatus
1515
from .types import HostStatus
1616
from .types import LanguageCode
17+
from .types import ListContactsRequestRole
1718
from .types import ListDNSZoneRecordsRequestOrderBy
1819
from .types import ListDNSZonesRequestOrderBy
1920
from .types import ListDomainsRequestOrderBy
@@ -129,6 +130,7 @@
129130
"DomainStatus",
130131
"HostStatus",
131132
"LanguageCode",
133+
"ListContactsRequestRole",
132134
"ListDNSZoneRecordsRequestOrderBy",
133135
"ListDNSZonesRequestOrderBy",
134136
"ListDomainsRequestOrderBy",

scaleway/scaleway/domain/v2beta1/api.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,11 @@
1515
wait_for_resource,
1616
)
1717
from .types import (
18+
ContactEmailStatus,
1819
DomainRecordType,
1920
DomainStatus,
2021
LanguageCode,
22+
ListContactsRequestRole,
2123
ListDNSZoneRecordsRequestOrderBy,
2224
ListDNSZonesRequestOrderBy,
2325
ListDomainsRequestOrderBy,
@@ -1722,6 +1724,8 @@ def list_contacts(
17221724
domain: Optional[str] = None,
17231725
project_id: Optional[str] = None,
17241726
organization_id: Optional[str] = None,
1727+
role: ListContactsRequestRole = ListContactsRequestRole.UNKNOWN_ROLE,
1728+
email_status: ContactEmailStatus = ContactEmailStatus.EMAIL_STATUS_UNKNOWN,
17251729
) -> ListContactsResponse:
17261730
"""
17271731
List contacts.
@@ -1732,6 +1736,8 @@ def list_contacts(
17321736
:param domain:
17331737
:param project_id:
17341738
:param organization_id:
1739+
:param role:
1740+
:param email_status:
17351741
:return: :class:`ListContactsResponse <ListContactsResponse>`
17361742
17371743
Usage:
@@ -1745,11 +1751,13 @@ def list_contacts(
17451751
f"/domain/v2beta1/contacts",
17461752
params={
17471753
"domain": domain,
1754+
"email_status": email_status,
17481755
"organization_id": organization_id
17491756
or self.client.default_organization_id,
17501757
"page": page,
17511758
"page_size": page_size or self.client.default_page_size,
17521759
"project_id": project_id or self.client.default_project_id,
1760+
"role": role,
17531761
},
17541762
)
17551763

@@ -1764,6 +1772,8 @@ def list_contacts_all(
17641772
domain: Optional[str] = None,
17651773
project_id: Optional[str] = None,
17661774
organization_id: Optional[str] = None,
1775+
role: Optional[ListContactsRequestRole] = None,
1776+
email_status: Optional[ContactEmailStatus] = None,
17671777
) -> List[ContactRoles]:
17681778
"""
17691779
List contacts.
@@ -1774,6 +1784,8 @@ def list_contacts_all(
17741784
:param domain:
17751785
:param project_id:
17761786
:param organization_id:
1787+
:param role:
1788+
:param email_status:
17771789
:return: :class:`List[ListContactsResponse] <List[ListContactsResponse]>`
17781790
17791791
Usage:
@@ -1792,6 +1804,8 @@ def list_contacts_all(
17921804
"domain": domain,
17931805
"project_id": project_id,
17941806
"organization_id": organization_id,
1807+
"role": role,
1808+
"email_status": email_status,
17951809
},
17961810
)
17971811

scaleway/scaleway/domain/v2beta1/types.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,16 @@ def __str__(self) -> str:
213213
return str(self.value)
214214

215215

216+
class ListContactsRequestRole(str, Enum):
217+
UNKNOWN_ROLE = "unknown_role"
218+
OWNER = "owner"
219+
ADMINISTRATIVE = "administrative"
220+
TECHNICAL = "technical"
221+
222+
def __str__(self) -> str:
223+
return str(self.value)
224+
225+
216226
class ListDNSZoneRecordsRequestOrderBy(str, Enum):
217227
NAME_ASC = "name_asc"
218228
NAME_DESC = "name_desc"
@@ -1894,6 +1904,10 @@ class RegistrarApiListContactsRequest:
18941904

18951905
organization_id: Optional[str]
18961906

1907+
role: Optional[ListContactsRequestRole]
1908+
1909+
email_status: Optional[ContactEmailStatus]
1910+
18971911

18981912
@dataclass
18991913
class RegistrarApiGetContactRequest:

0 commit comments

Comments
 (0)