Coverage for fingerprint_server_sdk/models/tampering_confidence.py: 90%

21 statements  

« prev     ^ index     » next       coverage.py v7.14.3, created at 2026-07-14 10:45 +0000

1""" 

2Server API 

3Fingerprint Server API allows you to get, search, and update Events in a server environment. It can be used for data exports, decision-making, and data analysis scenarios. 

4Server API is intended for server-side usage, it's not intended to be used from the client side, whether it's a browser or a mobile device. 

5The API also supports collection of Automation Intelligence for requests to your server in edge, pre-origin, or middleware contexts. 

6 

7The version of the OpenAPI document: 4 

8Contact: support@fingerprint.com 

9Generated by OpenAPI Generator (https://openapi-generator.tech) 

10 

11Do not edit the class manually. 

12""" # noqa: E501 

13 

14from __future__ import annotations 

15 

16import json 

17from enum import Enum 

18 

19from typing_extensions import Self 

20 

21 

22class TamperingConfidence(str, Enum): 

23 """ 

24 The confidence level indicates how certain Fingerprint is that the current request involves browser tampering. This confidence level is determined by evaluating multiple factors, such as heuristic rules, probabilistic anomaly detection, an anti detect browser ml model, and other relevant methods. It is conveyed as a string with possible values such as high, medium, or low In case of tampering: `true` * **High confidence**: heuristic anti detect browser signals and the ml model are triggered, or all of the methods are triggered. * **Medium confidence**: either the ml model triggers alone, the anomaly score triggers alone with or without the heuristic anti detect browser methods trigger. * **Low confidence**: only the heuristic anti detect methods are triggered. In case of tampering: `false` * **High confidence:** Strong signals suggest the user is not tampering with their request. 

25 """ 

26 

27 """ 

28 allowed enum values 

29 """ 

30 LOW = 'low' 

31 MEDIUM = 'medium' 

32 HIGH = 'high' 

33 

34 @classmethod 

35 def from_json(cls, json_str: str) -> Self: 

36 """Create an instance of TamperingConfidence from a JSON string""" 

37 return cls(json.loads(json_str)) 

38 

39 @classmethod 

40 def _missing_(cls, value: object) -> Self: 

41 """Accept unknown enum values gracefully.""" 

42 if not isinstance(value, str): 

43 raise ValueError(f'{value!r} is not a valid {cls.__name__}') 

44 obj = str.__new__(cls, value) 

45 obj._name_ = str(value) 

46 obj._value_ = value 

47 # cache it so the same value won't trigger `_missing_` again 

48 cls._value2member_map_[value] = obj 

49 return obj