|
32 | 32 | v2_create_params, |
33 | 33 | v2_update_params, |
34 | 34 | v2_retrieve_report_params, |
| 35 | + v2_retrieve_features_params, |
35 | 36 | ) |
36 | 37 | from ....types.auth_rules.v2_list_response import V2ListResponse |
37 | 38 | from ....types.auth_rules.v2_apply_response import V2ApplyResponse |
|
42 | 43 | from ....types.auth_rules.v2_promote_response import V2PromoteResponse |
43 | 44 | from ....types.auth_rules.v2_retrieve_response import V2RetrieveResponse |
44 | 45 | from ....types.auth_rules.v2_retrieve_report_response import V2RetrieveReportResponse |
| 46 | +from ....types.auth_rules.v2_retrieve_features_response import V2RetrieveFeaturesResponse |
45 | 47 |
|
46 | 48 | __all__ = ["V2", "AsyncV2"] |
47 | 49 |
|
@@ -909,6 +911,59 @@ def report( |
909 | 911 | cast_to=V2ReportResponse, |
910 | 912 | ) |
911 | 913 |
|
| 914 | + def retrieve_features( |
| 915 | + self, |
| 916 | + auth_rule_token: str, |
| 917 | + *, |
| 918 | + account_token: str | Omit = omit, |
| 919 | + card_token: str | Omit = omit, |
| 920 | + # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. |
| 921 | + # The extra values given here take precedence over values defined on the client or passed to this method. |
| 922 | + extra_headers: Headers | None = None, |
| 923 | + extra_query: Query | None = None, |
| 924 | + extra_body: Body | None = None, |
| 925 | + timeout: float | httpx.Timeout | None | NotGiven = not_given, |
| 926 | + ) -> V2RetrieveFeaturesResponse: |
| 927 | + """ |
| 928 | + Fetches the current calculated Feature values for the given Auth Rule |
| 929 | +
|
| 930 | + This only calculates the features for the active version. |
| 931 | +
|
| 932 | + - VelocityLimit Rules calculates the current Velocity Feature data. This |
| 933 | + requires a `card_token` or `account_token` matching what the rule is Scoped |
| 934 | + to. |
| 935 | + - ConditionalBlock Rules calculates the CARD*TRANSACTION_COUNT*\\** attributes on |
| 936 | + the rule. This requires a `card_token` |
| 937 | +
|
| 938 | + Args: |
| 939 | + extra_headers: Send extra headers |
| 940 | +
|
| 941 | + extra_query: Add additional query parameters to the request |
| 942 | +
|
| 943 | + extra_body: Add additional JSON properties to the request |
| 944 | +
|
| 945 | + timeout: Override the client-level default timeout for this request, in seconds |
| 946 | + """ |
| 947 | + if not auth_rule_token: |
| 948 | + raise ValueError(f"Expected a non-empty value for `auth_rule_token` but received {auth_rule_token!r}") |
| 949 | + return self._get( |
| 950 | + f"/v2/auth_rules/{auth_rule_token}/features", |
| 951 | + options=make_request_options( |
| 952 | + extra_headers=extra_headers, |
| 953 | + extra_query=extra_query, |
| 954 | + extra_body=extra_body, |
| 955 | + timeout=timeout, |
| 956 | + query=maybe_transform( |
| 957 | + { |
| 958 | + "account_token": account_token, |
| 959 | + "card_token": card_token, |
| 960 | + }, |
| 961 | + v2_retrieve_features_params.V2RetrieveFeaturesParams, |
| 962 | + ), |
| 963 | + ), |
| 964 | + cast_to=V2RetrieveFeaturesResponse, |
| 965 | + ) |
| 966 | + |
912 | 967 | def retrieve_report( |
913 | 968 | self, |
914 | 969 | auth_rule_token: str, |
@@ -1834,6 +1889,59 @@ async def report( |
1834 | 1889 | cast_to=V2ReportResponse, |
1835 | 1890 | ) |
1836 | 1891 |
|
| 1892 | + async def retrieve_features( |
| 1893 | + self, |
| 1894 | + auth_rule_token: str, |
| 1895 | + *, |
| 1896 | + account_token: str | Omit = omit, |
| 1897 | + card_token: str | Omit = omit, |
| 1898 | + # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. |
| 1899 | + # The extra values given here take precedence over values defined on the client or passed to this method. |
| 1900 | + extra_headers: Headers | None = None, |
| 1901 | + extra_query: Query | None = None, |
| 1902 | + extra_body: Body | None = None, |
| 1903 | + timeout: float | httpx.Timeout | None | NotGiven = not_given, |
| 1904 | + ) -> V2RetrieveFeaturesResponse: |
| 1905 | + """ |
| 1906 | + Fetches the current calculated Feature values for the given Auth Rule |
| 1907 | +
|
| 1908 | + This only calculates the features for the active version. |
| 1909 | +
|
| 1910 | + - VelocityLimit Rules calculates the current Velocity Feature data. This |
| 1911 | + requires a `card_token` or `account_token` matching what the rule is Scoped |
| 1912 | + to. |
| 1913 | + - ConditionalBlock Rules calculates the CARD*TRANSACTION_COUNT*\\** attributes on |
| 1914 | + the rule. This requires a `card_token` |
| 1915 | +
|
| 1916 | + Args: |
| 1917 | + extra_headers: Send extra headers |
| 1918 | +
|
| 1919 | + extra_query: Add additional query parameters to the request |
| 1920 | +
|
| 1921 | + extra_body: Add additional JSON properties to the request |
| 1922 | +
|
| 1923 | + timeout: Override the client-level default timeout for this request, in seconds |
| 1924 | + """ |
| 1925 | + if not auth_rule_token: |
| 1926 | + raise ValueError(f"Expected a non-empty value for `auth_rule_token` but received {auth_rule_token!r}") |
| 1927 | + return await self._get( |
| 1928 | + f"/v2/auth_rules/{auth_rule_token}/features", |
| 1929 | + options=make_request_options( |
| 1930 | + extra_headers=extra_headers, |
| 1931 | + extra_query=extra_query, |
| 1932 | + extra_body=extra_body, |
| 1933 | + timeout=timeout, |
| 1934 | + query=await async_maybe_transform( |
| 1935 | + { |
| 1936 | + "account_token": account_token, |
| 1937 | + "card_token": card_token, |
| 1938 | + }, |
| 1939 | + v2_retrieve_features_params.V2RetrieveFeaturesParams, |
| 1940 | + ), |
| 1941 | + ), |
| 1942 | + cast_to=V2RetrieveFeaturesResponse, |
| 1943 | + ) |
| 1944 | + |
1837 | 1945 | async def retrieve_report( |
1838 | 1946 | self, |
1839 | 1947 | auth_rule_token: str, |
@@ -1931,6 +2039,9 @@ def __init__(self, v2: V2) -> None: |
1931 | 2039 | v2.report, # pyright: ignore[reportDeprecated], |
1932 | 2040 | ) |
1933 | 2041 | ) |
| 2042 | + self.retrieve_features = _legacy_response.to_raw_response_wrapper( |
| 2043 | + v2.retrieve_features, |
| 2044 | + ) |
1934 | 2045 | self.retrieve_report = _legacy_response.to_raw_response_wrapper( |
1935 | 2046 | v2.retrieve_report, |
1936 | 2047 | ) |
@@ -1975,6 +2086,9 @@ def __init__(self, v2: AsyncV2) -> None: |
1975 | 2086 | v2.report, # pyright: ignore[reportDeprecated], |
1976 | 2087 | ) |
1977 | 2088 | ) |
| 2089 | + self.retrieve_features = _legacy_response.async_to_raw_response_wrapper( |
| 2090 | + v2.retrieve_features, |
| 2091 | + ) |
1978 | 2092 | self.retrieve_report = _legacy_response.async_to_raw_response_wrapper( |
1979 | 2093 | v2.retrieve_report, |
1980 | 2094 | ) |
@@ -2019,6 +2133,9 @@ def __init__(self, v2: V2) -> None: |
2019 | 2133 | v2.report, # pyright: ignore[reportDeprecated], |
2020 | 2134 | ) |
2021 | 2135 | ) |
| 2136 | + self.retrieve_features = to_streamed_response_wrapper( |
| 2137 | + v2.retrieve_features, |
| 2138 | + ) |
2022 | 2139 | self.retrieve_report = to_streamed_response_wrapper( |
2023 | 2140 | v2.retrieve_report, |
2024 | 2141 | ) |
@@ -2063,6 +2180,9 @@ def __init__(self, v2: AsyncV2) -> None: |
2063 | 2180 | v2.report, # pyright: ignore[reportDeprecated], |
2064 | 2181 | ) |
2065 | 2182 | ) |
| 2183 | + self.retrieve_features = async_to_streamed_response_wrapper( |
| 2184 | + v2.retrieve_features, |
| 2185 | + ) |
2066 | 2186 | self.retrieve_report = async_to_streamed_response_wrapper( |
2067 | 2187 | v2.retrieve_report, |
2068 | 2188 | ) |
|
0 commit comments