Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 198
0.00% covered (danger)
0.00%
0 / 99
CRAP
0.00% covered (danger)
0.00%
0 / 1
Webhook
0.00% covered (danger)
0.00%
0 / 198
0.00% covered (danger)
0.00%
0 / 99
22052
0.00% covered (danger)
0.00%
0 / 1
 __construct
0.00% covered (danger)
0.00%
0 / 42
0.00% covered (danger)
0.00%
0 / 1
1892
 __toString
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 swaggerTypes
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 swaggerFormats
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 attributeMap
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setters
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getters
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getModelName
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 listInvalidProperties
0.00% covered (danger)
0.00%
0 / 12
0.00% covered (danger)
0.00%
0 / 1
42
 valid
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getRequestId
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setRequestId
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getUrl
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setUrl
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getIp
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setIp
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getEnvironmentId
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setEnvironmentId
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getTag
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setTag
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getTime
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setTime
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getTimestamp
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setTimestamp
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getIpLocation
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setIpLocation
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getLinkedId
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setLinkedId
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getVisitorId
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setVisitorId
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getVisitorFound
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setVisitorFound
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getConfidence
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setConfidence
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getFirstSeenAt
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setFirstSeenAt
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getLastSeenAt
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setLastSeenAt
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getBrowserDetails
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setBrowserDetails
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getIncognito
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setIncognito
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getClientReferrer
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setClientReferrer
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getComponents
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setComponents
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getBot
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setBot
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getUserAgent
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setUserAgent
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getRootApps
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setRootApps
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getEmulator
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setEmulator
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getIpInfo
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setIpInfo
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getIpBlocklist
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setIpBlocklist
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getTor
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setTor
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getVpn
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setVpn
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getProxy
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setProxy
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getTampering
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setTampering
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getClonedApp
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setClonedApp
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getFactoryReset
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setFactoryReset
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getJailbroken
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setJailbroken
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getFrida
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setFrida
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getPrivacySettings
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setPrivacySettings
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getVirtualMachine
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setVirtualMachine
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getRawDeviceAttributes
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setRawDeviceAttributes
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getHighActivity
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setHighActivity
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getLocationSpoofing
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setLocationSpoofing
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getSuspectScore
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setSuspectScore
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getRemoteControl
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setRemoteControl
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getVelocity
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setVelocity
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getDeveloperTools
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setDeveloperTools
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 getMitmAttack
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setMitmAttack
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 offsetExists
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 offsetGet
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
6
 offsetSet
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
6
 offsetUnset
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 toPrettyString
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2/**
3 * Webhook.
4 *
5 * @category Class
6 *
7 * @author   Swagger Codegen team
8 *
9 * @see     https://github.com/swagger-api/swagger-codegen
10 */
11
12/**
13 * Fingerprint Server API.
14 *
15 * Fingerprint Server API allows you to search, update, and delete identification events in a server environment. It can be used for data exports, decision-making, and data analysis scenarios. Server 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.
16 *
17 * OpenAPI spec version: 3
18 * Contact: support@fingerprint.com
19 * Generated by: https://github.com/swagger-api/swagger-codegen.git
20 * Swagger Codegen version: 3.0.34
21 */
22/**
23 * NOTE: This class is auto generated by the swagger code generator program.
24 * https://github.com/swagger-api/swagger-codegen
25 * Do not edit the class manually.
26 */
27
28namespace Fingerprint\ServerAPI\Model;
29
30use Fingerprint\ServerAPI\ObjectSerializer;
31
32/**
33 * Webhook Class Doc Comment.
34 *
35 * @category Class
36 *
37 * @author   Swagger Codegen team
38 *
39 * @see     https://github.com/swagger-api/swagger-codegen
40 */
41class Webhook implements ModelInterface, \ArrayAccess
42{
43    /**
44     * The original name of the model.
45     *
46     */
47    protected static string $swaggerModelName = 'Webhook';
48
49    /**
50     * Array of property to type mappings. Used for (de)serialization.
51     *
52     * @var string[]
53     */
54    protected static array $swaggerTypes = [
55        'request_id' => 'string',
56        'url' => 'string',
57        'ip' => 'string',
58        'environment_id' => 'string',
59        'tag' => 'array',
60        'time' => '\DateTime',
61        'timestamp' => 'int',
62        'ip_location' => '\Fingerprint\ServerAPI\Model\DeprecatedGeolocation',
63        'linked_id' => 'string',
64        'visitor_id' => 'string',
65        'visitor_found' => 'bool',
66        'confidence' => '\Fingerprint\ServerAPI\Model\IdentificationConfidence',
67        'first_seen_at' => '\Fingerprint\ServerAPI\Model\IdentificationSeenAt',
68        'last_seen_at' => '\Fingerprint\ServerAPI\Model\IdentificationSeenAt',
69        'browser_details' => '\Fingerprint\ServerAPI\Model\BrowserDetails',
70        'incognito' => 'bool',
71        'client_referrer' => 'string',
72        'components' => 'array',
73        'bot' => '\Fingerprint\ServerAPI\Model\BotdBot',
74        'user_agent' => 'string',
75        'root_apps' => '\Fingerprint\ServerAPI\Model\WebhookRootApps',
76        'emulator' => '\Fingerprint\ServerAPI\Model\WebhookEmulator',
77        'ip_info' => '\Fingerprint\ServerAPI\Model\WebhookIPInfo',
78        'ip_blocklist' => '\Fingerprint\ServerAPI\Model\WebhookIPBlocklist',
79        'tor' => '\Fingerprint\ServerAPI\Model\WebhookTor',
80        'vpn' => '\Fingerprint\ServerAPI\Model\WebhookVPN',
81        'proxy' => '\Fingerprint\ServerAPI\Model\WebhookProxy',
82        'tampering' => '\Fingerprint\ServerAPI\Model\WebhookTampering',
83        'cloned_app' => '\Fingerprint\ServerAPI\Model\WebhookClonedApp',
84        'factory_reset' => '\Fingerprint\ServerAPI\Model\WebhookFactoryReset',
85        'jailbroken' => '\Fingerprint\ServerAPI\Model\WebhookJailbroken',
86        'frida' => '\Fingerprint\ServerAPI\Model\WebhookFrida',
87        'privacy_settings' => '\Fingerprint\ServerAPI\Model\WebhookPrivacySettings',
88        'virtual_machine' => '\Fingerprint\ServerAPI\Model\WebhookVirtualMachine',
89        'raw_device_attributes' => 'array',
90        'high_activity' => '\Fingerprint\ServerAPI\Model\WebhookHighActivity',
91        'location_spoofing' => '\Fingerprint\ServerAPI\Model\WebhookLocationSpoofing',
92        'suspect_score' => '\Fingerprint\ServerAPI\Model\WebhookSuspectScore',
93        'remote_control' => '\Fingerprint\ServerAPI\Model\WebhookRemoteControl',
94        'velocity' => '\Fingerprint\ServerAPI\Model\WebhookVelocity',
95        'developer_tools' => '\Fingerprint\ServerAPI\Model\WebhookDeveloperTools',
96        'mitm_attack' => '\Fingerprint\ServerAPI\Model\WebhookMitMAttack'];
97
98    /**
99     * Array of property to format mappings. Used for (de)serialization.
100     *
101     * @var string[]
102     */
103    protected static array $swaggerFormats = [
104        'request_id' => null,
105        'url' => null,
106        'ip' => null,
107        'environment_id' => null,
108        'tag' => null,
109        'time' => 'date-time',
110        'timestamp' => 'int64',
111        'ip_location' => null,
112        'linked_id' => null,
113        'visitor_id' => null,
114        'visitor_found' => null,
115        'confidence' => null,
116        'first_seen_at' => null,
117        'last_seen_at' => null,
118        'browser_details' => null,
119        'incognito' => null,
120        'client_referrer' => null,
121        'components' => null,
122        'bot' => null,
123        'user_agent' => null,
124        'root_apps' => null,
125        'emulator' => null,
126        'ip_info' => null,
127        'ip_blocklist' => null,
128        'tor' => null,
129        'vpn' => null,
130        'proxy' => null,
131        'tampering' => null,
132        'cloned_app' => null,
133        'factory_reset' => null,
134        'jailbroken' => null,
135        'frida' => null,
136        'privacy_settings' => null,
137        'virtual_machine' => null,
138        'raw_device_attributes' => null,
139        'high_activity' => null,
140        'location_spoofing' => null,
141        'suspect_score' => null,
142        'remote_control' => null,
143        'velocity' => null,
144        'developer_tools' => null,
145        'mitm_attack' => null];
146
147    /**
148     * Array of attributes where the key is the local name,
149     * and the value is the original name.
150     *
151     * @var string[]
152     */
153    protected static array $attributeMap = [
154        'request_id' => 'requestId',
155        'url' => 'url',
156        'ip' => 'ip',
157        'environment_id' => 'environmentId',
158        'tag' => 'tag',
159        'time' => 'time',
160        'timestamp' => 'timestamp',
161        'ip_location' => 'ipLocation',
162        'linked_id' => 'linkedId',
163        'visitor_id' => 'visitorId',
164        'visitor_found' => 'visitorFound',
165        'confidence' => 'confidence',
166        'first_seen_at' => 'firstSeenAt',
167        'last_seen_at' => 'lastSeenAt',
168        'browser_details' => 'browserDetails',
169        'incognito' => 'incognito',
170        'client_referrer' => 'clientReferrer',
171        'components' => 'components',
172        'bot' => 'bot',
173        'user_agent' => 'userAgent',
174        'root_apps' => 'rootApps',
175        'emulator' => 'emulator',
176        'ip_info' => 'ipInfo',
177        'ip_blocklist' => 'ipBlocklist',
178        'tor' => 'tor',
179        'vpn' => 'vpn',
180        'proxy' => 'proxy',
181        'tampering' => 'tampering',
182        'cloned_app' => 'clonedApp',
183        'factory_reset' => 'factoryReset',
184        'jailbroken' => 'jailbroken',
185        'frida' => 'frida',
186        'privacy_settings' => 'privacySettings',
187        'virtual_machine' => 'virtualMachine',
188        'raw_device_attributes' => 'rawDeviceAttributes',
189        'high_activity' => 'highActivity',
190        'location_spoofing' => 'locationSpoofing',
191        'suspect_score' => 'suspectScore',
192        'remote_control' => 'remoteControl',
193        'velocity' => 'velocity',
194        'developer_tools' => 'developerTools',
195        'mitm_attack' => 'mitmAttack'];
196
197    /**
198     * Array of attributes to setter functions (for deserialization of responses).
199     *
200     * @var string[]
201     */
202    protected static array $setters = [
203        'request_id' => 'setRequestId',
204        'url' => 'setUrl',
205        'ip' => 'setIp',
206        'environment_id' => 'setEnvironmentId',
207        'tag' => 'setTag',
208        'time' => 'setTime',
209        'timestamp' => 'setTimestamp',
210        'ip_location' => 'setIpLocation',
211        'linked_id' => 'setLinkedId',
212        'visitor_id' => 'setVisitorId',
213        'visitor_found' => 'setVisitorFound',
214        'confidence' => 'setConfidence',
215        'first_seen_at' => 'setFirstSeenAt',
216        'last_seen_at' => 'setLastSeenAt',
217        'browser_details' => 'setBrowserDetails',
218        'incognito' => 'setIncognito',
219        'client_referrer' => 'setClientReferrer',
220        'components' => 'setComponents',
221        'bot' => 'setBot',
222        'user_agent' => 'setUserAgent',
223        'root_apps' => 'setRootApps',
224        'emulator' => 'setEmulator',
225        'ip_info' => 'setIpInfo',
226        'ip_blocklist' => 'setIpBlocklist',
227        'tor' => 'setTor',
228        'vpn' => 'setVpn',
229        'proxy' => 'setProxy',
230        'tampering' => 'setTampering',
231        'cloned_app' => 'setClonedApp',
232        'factory_reset' => 'setFactoryReset',
233        'jailbroken' => 'setJailbroken',
234        'frida' => 'setFrida',
235        'privacy_settings' => 'setPrivacySettings',
236        'virtual_machine' => 'setVirtualMachine',
237        'raw_device_attributes' => 'setRawDeviceAttributes',
238        'high_activity' => 'setHighActivity',
239        'location_spoofing' => 'setLocationSpoofing',
240        'suspect_score' => 'setSuspectScore',
241        'remote_control' => 'setRemoteControl',
242        'velocity' => 'setVelocity',
243        'developer_tools' => 'setDeveloperTools',
244        'mitm_attack' => 'setMitmAttack'];
245
246    /**
247     * Array of attributes to getter functions (for serialization of requests).
248     *
249     * @var string[]
250     */
251    protected static array $getters = [
252        'request_id' => 'getRequestId',
253        'url' => 'getUrl',
254        'ip' => 'getIp',
255        'environment_id' => 'getEnvironmentId',
256        'tag' => 'getTag',
257        'time' => 'getTime',
258        'timestamp' => 'getTimestamp',
259        'ip_location' => 'getIpLocation',
260        'linked_id' => 'getLinkedId',
261        'visitor_id' => 'getVisitorId',
262        'visitor_found' => 'getVisitorFound',
263        'confidence' => 'getConfidence',
264        'first_seen_at' => 'getFirstSeenAt',
265        'last_seen_at' => 'getLastSeenAt',
266        'browser_details' => 'getBrowserDetails',
267        'incognito' => 'getIncognito',
268        'client_referrer' => 'getClientReferrer',
269        'components' => 'getComponents',
270        'bot' => 'getBot',
271        'user_agent' => 'getUserAgent',
272        'root_apps' => 'getRootApps',
273        'emulator' => 'getEmulator',
274        'ip_info' => 'getIpInfo',
275        'ip_blocklist' => 'getIpBlocklist',
276        'tor' => 'getTor',
277        'vpn' => 'getVpn',
278        'proxy' => 'getProxy',
279        'tampering' => 'getTampering',
280        'cloned_app' => 'getClonedApp',
281        'factory_reset' => 'getFactoryReset',
282        'jailbroken' => 'getJailbroken',
283        'frida' => 'getFrida',
284        'privacy_settings' => 'getPrivacySettings',
285        'virtual_machine' => 'getVirtualMachine',
286        'raw_device_attributes' => 'getRawDeviceAttributes',
287        'high_activity' => 'getHighActivity',
288        'location_spoofing' => 'getLocationSpoofing',
289        'suspect_score' => 'getSuspectScore',
290        'remote_control' => 'getRemoteControl',
291        'velocity' => 'getVelocity',
292        'developer_tools' => 'getDeveloperTools',
293        'mitm_attack' => 'getMitmAttack'];
294
295    /**
296     * Associative array for storing property values.
297     *
298     * @var mixed[]
299     */
300    protected array $container = [];
301
302    /**
303     * Constructor.
304     *
305     * @param mixed[] $data Associated array of property values
306     *                      initializing the model
307     */
308    public function __construct(?array $data = null)
309    {
310        $this->container['request_id'] = isset($data['request_id']) ? $data['request_id'] : null;
311        $this->container['url'] = isset($data['url']) ? $data['url'] : null;
312        $this->container['ip'] = isset($data['ip']) ? $data['ip'] : null;
313        $this->container['environment_id'] = isset($data['environment_id']) ? $data['environment_id'] : null;
314        $this->container['tag'] = isset($data['tag']) ? $data['tag'] : null;
315        $this->container['time'] = isset($data['time']) ? $data['time'] : null;
316        $this->container['timestamp'] = isset($data['timestamp']) ? $data['timestamp'] : null;
317        $this->container['ip_location'] = isset($data['ip_location']) ? $data['ip_location'] : null;
318        $this->container['linked_id'] = isset($data['linked_id']) ? $data['linked_id'] : null;
319        $this->container['visitor_id'] = isset($data['visitor_id']) ? $data['visitor_id'] : null;
320        $this->container['visitor_found'] = isset($data['visitor_found']) ? $data['visitor_found'] : null;
321        $this->container['confidence'] = isset($data['confidence']) ? $data['confidence'] : null;
322        $this->container['first_seen_at'] = isset($data['first_seen_at']) ? $data['first_seen_at'] : null;
323        $this->container['last_seen_at'] = isset($data['last_seen_at']) ? $data['last_seen_at'] : null;
324        $this->container['browser_details'] = isset($data['browser_details']) ? $data['browser_details'] : null;
325        $this->container['incognito'] = isset($data['incognito']) ? $data['incognito'] : null;
326        $this->container['client_referrer'] = isset($data['client_referrer']) ? $data['client_referrer'] : null;
327        $this->container['components'] = isset($data['components']) ? $data['components'] : null;
328        $this->container['bot'] = isset($data['bot']) ? $data['bot'] : null;
329        $this->container['user_agent'] = isset($data['user_agent']) ? $data['user_agent'] : null;
330        $this->container['root_apps'] = isset($data['root_apps']) ? $data['root_apps'] : null;
331        $this->container['emulator'] = isset($data['emulator']) ? $data['emulator'] : null;
332        $this->container['ip_info'] = isset($data['ip_info']) ? $data['ip_info'] : null;
333        $this->container['ip_blocklist'] = isset($data['ip_blocklist']) ? $data['ip_blocklist'] : null;
334        $this->container['tor'] = isset($data['tor']) ? $data['tor'] : null;
335        $this->container['vpn'] = isset($data['vpn']) ? $data['vpn'] : null;
336        $this->container['proxy'] = isset($data['proxy']) ? $data['proxy'] : null;
337        $this->container['tampering'] = isset($data['tampering']) ? $data['tampering'] : null;
338        $this->container['cloned_app'] = isset($data['cloned_app']) ? $data['cloned_app'] : null;
339        $this->container['factory_reset'] = isset($data['factory_reset']) ? $data['factory_reset'] : null;
340        $this->container['jailbroken'] = isset($data['jailbroken']) ? $data['jailbroken'] : null;
341        $this->container['frida'] = isset($data['frida']) ? $data['frida'] : null;
342        $this->container['privacy_settings'] = isset($data['privacy_settings']) ? $data['privacy_settings'] : null;
343        $this->container['virtual_machine'] = isset($data['virtual_machine']) ? $data['virtual_machine'] : null;
344        $this->container['raw_device_attributes'] = isset($data['raw_device_attributes']) ? $data['raw_device_attributes'] : null;
345        $this->container['high_activity'] = isset($data['high_activity']) ? $data['high_activity'] : null;
346        $this->container['location_spoofing'] = isset($data['location_spoofing']) ? $data['location_spoofing'] : null;
347        $this->container['suspect_score'] = isset($data['suspect_score']) ? $data['suspect_score'] : null;
348        $this->container['remote_control'] = isset($data['remote_control']) ? $data['remote_control'] : null;
349        $this->container['velocity'] = isset($data['velocity']) ? $data['velocity'] : null;
350        $this->container['developer_tools'] = isset($data['developer_tools']) ? $data['developer_tools'] : null;
351        $this->container['mitm_attack'] = isset($data['mitm_attack']) ? $data['mitm_attack'] : null;
352    }
353
354    /**
355     * Gets the string presentation of the object.
356     *
357     */
358    public function __toString(): string
359    {
360        return json_encode(ObjectSerializer::sanitizeForSerialization($this));
361    }
362
363    /**
364     * Array of property to type mappings. Used for (de)serialization.
365     */
366    public static function swaggerTypes(): array
367    {
368        return self::$swaggerTypes;
369    }
370
371    /**
372     * Array of property to format mappings. Used for (de)serialization.
373     */
374    public static function swaggerFormats(): array
375    {
376        return self::$swaggerFormats;
377    }
378
379    /**
380     * Array of attributes where the key is the local name,
381     * and the value is the original name.
382     */
383    public static function attributeMap(): array
384    {
385        return self::$attributeMap;
386    }
387
388    /**
389     * Array of attributes to setter functions (for deserialization of responses).
390     */
391    public static function setters(): array
392    {
393        return self::$setters;
394    }
395
396    /**
397     * Array of attributes to getter functions (for serialization of requests).
398     */
399    public static function getters(): array
400    {
401        return self::$getters;
402    }
403
404    /**
405     * The original name of the model.
406     */
407    public function getModelName(): string
408    {
409        return self::$swaggerModelName;
410    }
411
412    /**
413     * Show all the invalid properties with reasons.
414     *
415     * @return array invalid properties with reasons
416     */
417    public function listInvalidProperties(): array
418    {
419        $invalidProperties = [];
420
421        if (null === $this->container['request_id']) {
422            $invalidProperties[] = "'request_id' can't be null";
423        }
424        if (null === $this->container['url']) {
425            $invalidProperties[] = "'url' can't be null";
426        }
427        if (null === $this->container['ip']) {
428            $invalidProperties[] = "'ip' can't be null";
429        }
430        if (null === $this->container['time']) {
431            $invalidProperties[] = "'time' can't be null";
432        }
433        if (null === $this->container['timestamp']) {
434            $invalidProperties[] = "'timestamp' can't be null";
435        }
436
437        return $invalidProperties;
438    }
439
440    /**
441     * Validate all the properties in the model
442     * return true if all passed.
443     *
444     * @return bool True if all properties are valid
445     */
446    public function valid(): bool
447    {
448        return 0 === count($this->listInvalidProperties());
449    }
450
451    /**
452     * Gets request_id.
453     */
454    public function getRequestId(): string
455    {
456        return $this->container['request_id'];
457    }
458
459    /**
460     * Sets request_id.
461     *
462     * @param string $request_id unique identifier of the user's request
463     *
464     * @return $this
465     */
466    public function setRequestId(string $request_id): self
467    {
468        $this->container['request_id'] = $request_id;
469
470        return $this;
471    }
472
473    /**
474     * Gets url.
475     */
476    public function getUrl(): string
477    {
478        return $this->container['url'];
479    }
480
481    /**
482     * Sets url.
483     *
484     * @param string $url page URL from which the request was sent
485     *
486     * @return $this
487     */
488    public function setUrl(string $url): self
489    {
490        $this->container['url'] = $url;
491
492        return $this;
493    }
494
495    /**
496     * Gets ip.
497     */
498    public function getIp(): string
499    {
500        return $this->container['ip'];
501    }
502
503    /**
504     * Sets ip.
505     *
506     * @param string $ip IP address of the requesting browser or bot
507     *
508     * @return $this
509     */
510    public function setIp(string $ip): self
511    {
512        $this->container['ip'] = $ip;
513
514        return $this;
515    }
516
517    /**
518     * Gets environment_id.
519     */
520    public function getEnvironmentId(): ?string
521    {
522        return $this->container['environment_id'];
523    }
524
525    /**
526     * Sets environment_id.
527     *
528     * @param ?string $environment_id environment ID of the event
529     *
530     * @return $this
531     */
532    public function setEnvironmentId(?string $environment_id): self
533    {
534        $this->container['environment_id'] = $environment_id;
535
536        return $this;
537    }
538
539    /**
540     * Gets tag.
541     */
542    public function getTag(): ?array
543    {
544        return $this->container['tag'];
545    }
546
547    /**
548     * Sets tag.
549     *
550     * @param ?array $tag tag
551     *
552     * @return $this
553     */
554    public function setTag(?array $tag): self
555    {
556        $this->container['tag'] = $tag;
557
558        return $this;
559    }
560
561    /**
562     * Gets time.
563     */
564    public function getTime(): \DateTime
565    {
566        return $this->container['time'];
567    }
568
569    /**
570     * Sets time.
571     *
572     * @param \DateTime $time Time expressed according to ISO 8601 in UTC format, when the request from the JS agent was made. We recommend to treat requests that are older than 2 minutes as malicious. Otherwise, request replay attacks are possible.
573     *
574     * @return $this
575     */
576    public function setTime(\DateTime $time): self
577    {
578        $this->container['time'] = $time;
579
580        return $this;
581    }
582
583    /**
584     * Gets timestamp.
585     */
586    public function getTimestamp(): int
587    {
588        return $this->container['timestamp'];
589    }
590
591    /**
592     * Sets timestamp.
593     *
594     * @param int $timestamp timestamp of the event with millisecond precision in Unix time
595     *
596     * @return $this
597     */
598    public function setTimestamp(int $timestamp): self
599    {
600        $this->container['timestamp'] = $timestamp;
601
602        return $this;
603    }
604
605    /**
606     * Gets ip_location.
607     */
608    public function getIpLocation(): ?DeprecatedGeolocation
609    {
610        return $this->container['ip_location'];
611    }
612
613    /**
614     * Sets ip_location.
615     *
616     * @param ?\Fingerprint\ServerAPI\Model\DeprecatedGeolocation $ip_location ip_location
617     *
618     * @return $this
619     */
620    public function setIpLocation(?DeprecatedGeolocation $ip_location): self
621    {
622        $this->container['ip_location'] = $ip_location;
623
624        return $this;
625    }
626
627    /**
628     * Gets linked_id.
629     */
630    public function getLinkedId(): ?string
631    {
632        return $this->container['linked_id'];
633    }
634
635    /**
636     * Sets linked_id.
637     *
638     * @param ?string $linked_id a customer-provided id that was sent with the request
639     *
640     * @return $this
641     */
642    public function setLinkedId(?string $linked_id): self
643    {
644        $this->container['linked_id'] = $linked_id;
645
646        return $this;
647    }
648
649    /**
650     * Gets visitor_id.
651     */
652    public function getVisitorId(): ?string
653    {
654        return $this->container['visitor_id'];
655    }
656
657    /**
658     * Sets visitor_id.
659     *
660     * @param ?string $visitor_id string of 20 characters that uniquely identifies the visitor's browser
661     *
662     * @return $this
663     */
664    public function setVisitorId(?string $visitor_id): self
665    {
666        $this->container['visitor_id'] = $visitor_id;
667
668        return $this;
669    }
670
671    /**
672     * Gets visitor_found.
673     */
674    public function getVisitorFound(): ?bool
675    {
676        return $this->container['visitor_found'];
677    }
678
679    /**
680     * Sets visitor_found.
681     *
682     * @param ?bool $visitor_found attribute represents if a visitor had been identified before
683     *
684     * @return $this
685     */
686    public function setVisitorFound(?bool $visitor_found): self
687    {
688        $this->container['visitor_found'] = $visitor_found;
689
690        return $this;
691    }
692
693    /**
694     * Gets confidence.
695     */
696    public function getConfidence(): ?IdentificationConfidence
697    {
698        return $this->container['confidence'];
699    }
700
701    /**
702     * Sets confidence.
703     *
704     * @param ?\Fingerprint\ServerAPI\Model\IdentificationConfidence $confidence confidence
705     *
706     * @return $this
707     */
708    public function setConfidence(?IdentificationConfidence $confidence): self
709    {
710        $this->container['confidence'] = $confidence;
711
712        return $this;
713    }
714
715    /**
716     * Gets first_seen_at.
717     */
718    public function getFirstSeenAt(): ?IdentificationSeenAt
719    {
720        return $this->container['first_seen_at'];
721    }
722
723    /**
724     * Sets first_seen_at.
725     *
726     * @param ?\Fingerprint\ServerAPI\Model\IdentificationSeenAt $first_seen_at first_seen_at
727     *
728     * @return $this
729     */
730    public function setFirstSeenAt(?IdentificationSeenAt $first_seen_at): self
731    {
732        $this->container['first_seen_at'] = $first_seen_at;
733
734        return $this;
735    }
736
737    /**
738     * Gets last_seen_at.
739     */
740    public function getLastSeenAt(): ?IdentificationSeenAt
741    {
742        return $this->container['last_seen_at'];
743    }
744
745    /**
746     * Sets last_seen_at.
747     *
748     * @param ?\Fingerprint\ServerAPI\Model\IdentificationSeenAt $last_seen_at last_seen_at
749     *
750     * @return $this
751     */
752    public function setLastSeenAt(?IdentificationSeenAt $last_seen_at): self
753    {
754        $this->container['last_seen_at'] = $last_seen_at;
755
756        return $this;
757    }
758
759    /**
760     * Gets browser_details.
761     */
762    public function getBrowserDetails(): ?BrowserDetails
763    {
764        return $this->container['browser_details'];
765    }
766
767    /**
768     * Sets browser_details.
769     *
770     * @param ?\Fingerprint\ServerAPI\Model\BrowserDetails $browser_details browser_details
771     *
772     * @return $this
773     */
774    public function setBrowserDetails(?BrowserDetails $browser_details): self
775    {
776        $this->container['browser_details'] = $browser_details;
777
778        return $this;
779    }
780
781    /**
782     * Gets incognito.
783     */
784    public function getIncognito(): ?bool
785    {
786        return $this->container['incognito'];
787    }
788
789    /**
790     * Sets incognito.
791     *
792     * @param ?bool $incognito flag if user used incognito session
793     *
794     * @return $this
795     */
796    public function setIncognito(?bool $incognito): self
797    {
798        $this->container['incognito'] = $incognito;
799
800        return $this;
801    }
802
803    /**
804     * Gets client_referrer.
805     */
806    public function getClientReferrer(): ?string
807    {
808        return $this->container['client_referrer'];
809    }
810
811    /**
812     * Sets client_referrer.
813     *
814     * @param ?string $client_referrer client_referrer
815     *
816     * @return $this
817     */
818    public function setClientReferrer(?string $client_referrer): self
819    {
820        $this->container['client_referrer'] = $client_referrer;
821
822        return $this;
823    }
824
825    /**
826     * Gets components.
827     */
828    public function getComponents(): ?array
829    {
830        return $this->container['components'];
831    }
832
833    /**
834     * Sets components.
835     *
836     * @param ?array $components components
837     *
838     * @return $this
839     */
840    public function setComponents(?array $components): self
841    {
842        $this->container['components'] = $components;
843
844        return $this;
845    }
846
847    /**
848     * Gets bot.
849     */
850    public function getBot(): ?BotdBot
851    {
852        return $this->container['bot'];
853    }
854
855    /**
856     * Sets bot.
857     *
858     * @param ?\Fingerprint\ServerAPI\Model\BotdBot $bot bot
859     *
860     * @return $this
861     */
862    public function setBot(?BotdBot $bot): self
863    {
864        $this->container['bot'] = $bot;
865
866        return $this;
867    }
868
869    /**
870     * Gets user_agent.
871     */
872    public function getUserAgent(): ?string
873    {
874        return $this->container['user_agent'];
875    }
876
877    /**
878     * Sets user_agent.
879     *
880     * @param ?string $user_agent user_agent
881     *
882     * @return $this
883     */
884    public function setUserAgent(?string $user_agent): self
885    {
886        $this->container['user_agent'] = $user_agent;
887
888        return $this;
889    }
890
891    /**
892     * Gets root_apps.
893     */
894    public function getRootApps(): ?WebhookRootApps
895    {
896        return $this->container['root_apps'];
897    }
898
899    /**
900     * Sets root_apps.
901     *
902     * @param ?\Fingerprint\ServerAPI\Model\WebhookRootApps $root_apps root_apps
903     *
904     * @return $this
905     */
906    public function setRootApps(?WebhookRootApps $root_apps): self
907    {
908        $this->container['root_apps'] = $root_apps;
909
910        return $this;
911    }
912
913    /**
914     * Gets emulator.
915     */
916    public function getEmulator(): ?WebhookEmulator
917    {
918        return $this->container['emulator'];
919    }
920
921    /**
922     * Sets emulator.
923     *
924     * @param ?\Fingerprint\ServerAPI\Model\WebhookEmulator $emulator emulator
925     *
926     * @return $this
927     */
928    public function setEmulator(?WebhookEmulator $emulator): self
929    {
930        $this->container['emulator'] = $emulator;
931
932        return $this;
933    }
934
935    /**
936     * Gets ip_info.
937     */
938    public function getIpInfo(): ?WebhookIPInfo
939    {
940        return $this->container['ip_info'];
941    }
942
943    /**
944     * Sets ip_info.
945     *
946     * @param ?\Fingerprint\ServerAPI\Model\WebhookIPInfo $ip_info ip_info
947     *
948     * @return $this
949     */
950    public function setIpInfo(?WebhookIPInfo $ip_info): self
951    {
952        $this->container['ip_info'] = $ip_info;
953
954        return $this;
955    }
956
957    /**
958     * Gets ip_blocklist.
959     */
960    public function getIpBlocklist(): ?WebhookIPBlocklist
961    {
962        return $this->container['ip_blocklist'];
963    }
964
965    /**
966     * Sets ip_blocklist.
967     *
968     * @param ?\Fingerprint\ServerAPI\Model\WebhookIPBlocklist $ip_blocklist ip_blocklist
969     *
970     * @return $this
971     */
972    public function setIpBlocklist(?WebhookIPBlocklist $ip_blocklist): self
973    {
974        $this->container['ip_blocklist'] = $ip_blocklist;
975
976        return $this;
977    }
978
979    /**
980     * Gets tor.
981     */
982    public function getTor(): ?WebhookTor
983    {
984        return $this->container['tor'];
985    }
986
987    /**
988     * Sets tor.
989     *
990     * @param ?\Fingerprint\ServerAPI\Model\WebhookTor $tor tor
991     *
992     * @return $this
993     */
994    public function setTor(?WebhookTor $tor): self
995    {
996        $this->container['tor'] = $tor;
997
998        return $this;
999    }
1000
1001    /**
1002     * Gets vpn.
1003     */
1004    public function getVpn(): ?WebhookVPN
1005    {
1006        return $this->container['vpn'];
1007    }
1008
1009    /**
1010     * Sets vpn.
1011     *
1012     * @param ?\Fingerprint\ServerAPI\Model\WebhookVPN $vpn vpn
1013     *
1014     * @return $this
1015     */
1016    public function setVpn(?WebhookVPN $vpn): self
1017    {
1018        $this->container['vpn'] = $vpn;
1019
1020        return $this;
1021    }
1022
1023    /**
1024     * Gets proxy.
1025     */
1026    public function getProxy(): ?WebhookProxy
1027    {
1028        return $this->container['proxy'];
1029    }
1030
1031    /**
1032     * Sets proxy.
1033     *
1034     * @param ?\Fingerprint\ServerAPI\Model\WebhookProxy $proxy proxy
1035     *
1036     * @return $this
1037     */
1038    public function setProxy(?WebhookProxy $proxy): self
1039    {
1040        $this->container['proxy'] = $proxy;
1041
1042        return $this;
1043    }
1044
1045    /**
1046     * Gets tampering.
1047     */
1048    public function getTampering(): ?WebhookTampering
1049    {
1050        return $this->container['tampering'];
1051    }
1052
1053    /**
1054     * Sets tampering.
1055     *
1056     * @param ?\Fingerprint\ServerAPI\Model\WebhookTampering $tampering tampering
1057     *
1058     * @return $this
1059     */
1060    public function setTampering(?WebhookTampering $tampering): self
1061    {
1062        $this->container['tampering'] = $tampering;
1063
1064        return $this;
1065    }
1066
1067    /**
1068     * Gets cloned_app.
1069     */
1070    public function getClonedApp(): ?WebhookClonedApp
1071    {
1072        return $this->container['cloned_app'];
1073    }
1074
1075    /**
1076     * Sets cloned_app.
1077     *
1078     * @param ?\Fingerprint\ServerAPI\Model\WebhookClonedApp $cloned_app cloned_app
1079     *
1080     * @return $this
1081     */
1082    public function setClonedApp(?WebhookClonedApp $cloned_app): self
1083    {
1084        $this->container['cloned_app'] = $cloned_app;
1085
1086        return $this;
1087    }
1088
1089    /**
1090     * Gets factory_reset.
1091     */
1092    public function getFactoryReset(): ?WebhookFactoryReset
1093    {
1094        return $this->container['factory_reset'];
1095    }
1096
1097    /**
1098     * Sets factory_reset.
1099     *
1100     * @param ?\Fingerprint\ServerAPI\Model\WebhookFactoryReset $factory_reset factory_reset
1101     *
1102     * @return $this
1103     */
1104    public function setFactoryReset(?WebhookFactoryReset $factory_reset): self
1105    {
1106        $this->container['factory_reset'] = $factory_reset;
1107
1108        return $this;
1109    }
1110
1111    /**
1112     * Gets jailbroken.
1113     */
1114    public function getJailbroken(): ?WebhookJailbroken
1115    {
1116        return $this->container['jailbroken'];
1117    }
1118
1119    /**
1120     * Sets jailbroken.
1121     *
1122     * @param ?\Fingerprint\ServerAPI\Model\WebhookJailbroken $jailbroken jailbroken
1123     *
1124     * @return $this
1125     */
1126    public function setJailbroken(?WebhookJailbroken $jailbroken): self
1127    {
1128        $this->container['jailbroken'] = $jailbroken;
1129
1130        return $this;
1131    }
1132
1133    /**
1134     * Gets frida.
1135     */
1136    public function getFrida(): ?WebhookFrida
1137    {
1138        return $this->container['frida'];
1139    }
1140
1141    /**
1142     * Sets frida.
1143     *
1144     * @param ?\Fingerprint\ServerAPI\Model\WebhookFrida $frida frida
1145     *
1146     * @return $this
1147     */
1148    public function setFrida(?WebhookFrida $frida): self
1149    {
1150        $this->container['frida'] = $frida;
1151
1152        return $this;
1153    }
1154
1155    /**
1156     * Gets privacy_settings.
1157     */
1158    public function getPrivacySettings(): ?WebhookPrivacySettings
1159    {
1160        return $this->container['privacy_settings'];
1161    }
1162
1163    /**
1164     * Sets privacy_settings.
1165     *
1166     * @param ?\Fingerprint\ServerAPI\Model\WebhookPrivacySettings $privacy_settings privacy_settings
1167     *
1168     * @return $this
1169     */
1170    public function setPrivacySettings(?WebhookPrivacySettings $privacy_settings): self
1171    {
1172        $this->container['privacy_settings'] = $privacy_settings;
1173
1174        return $this;
1175    }
1176
1177    /**
1178     * Gets virtual_machine.
1179     */
1180    public function getVirtualMachine(): ?WebhookVirtualMachine
1181    {
1182        return $this->container['virtual_machine'];
1183    }
1184
1185    /**
1186     * Sets virtual_machine.
1187     *
1188     * @param ?\Fingerprint\ServerAPI\Model\WebhookVirtualMachine $virtual_machine virtual_machine
1189     *
1190     * @return $this
1191     */
1192    public function setVirtualMachine(?WebhookVirtualMachine $virtual_machine): self
1193    {
1194        $this->container['virtual_machine'] = $virtual_machine;
1195
1196        return $this;
1197    }
1198
1199    /**
1200     * Gets raw_device_attributes.
1201     */
1202    public function getRawDeviceAttributes(): ?array
1203    {
1204        return $this->container['raw_device_attributes'];
1205    }
1206
1207    /**
1208     * Sets raw_device_attributes.
1209     *
1210     * @param ?array $raw_device_attributes raw_device_attributes
1211     *
1212     * @return $this
1213     */
1214    public function setRawDeviceAttributes(?array $raw_device_attributes): self
1215    {
1216        $this->container['raw_device_attributes'] = $raw_device_attributes;
1217
1218        return $this;
1219    }
1220
1221    /**
1222     * Gets high_activity.
1223     */
1224    public function getHighActivity(): ?WebhookHighActivity
1225    {
1226        return $this->container['high_activity'];
1227    }
1228
1229    /**
1230     * Sets high_activity.
1231     *
1232     * @param ?\Fingerprint\ServerAPI\Model\WebhookHighActivity $high_activity high_activity
1233     *
1234     * @return $this
1235     */
1236    public function setHighActivity(?WebhookHighActivity $high_activity): self
1237    {
1238        $this->container['high_activity'] = $high_activity;
1239
1240        return $this;
1241    }
1242
1243    /**
1244     * Gets location_spoofing.
1245     */
1246    public function getLocationSpoofing(): ?WebhookLocationSpoofing
1247    {
1248        return $this->container['location_spoofing'];
1249    }
1250
1251    /**
1252     * Sets location_spoofing.
1253     *
1254     * @param ?\Fingerprint\ServerAPI\Model\WebhookLocationSpoofing $location_spoofing location_spoofing
1255     *
1256     * @return $this
1257     */
1258    public function setLocationSpoofing(?WebhookLocationSpoofing $location_spoofing): self
1259    {
1260        $this->container['location_spoofing'] = $location_spoofing;
1261
1262        return $this;
1263    }
1264
1265    /**
1266     * Gets suspect_score.
1267     */
1268    public function getSuspectScore(): ?WebhookSuspectScore
1269    {
1270        return $this->container['suspect_score'];
1271    }
1272
1273    /**
1274     * Sets suspect_score.
1275     *
1276     * @param ?\Fingerprint\ServerAPI\Model\WebhookSuspectScore $suspect_score suspect_score
1277     *
1278     * @return $this
1279     */
1280    public function setSuspectScore(?WebhookSuspectScore $suspect_score): self
1281    {
1282        $this->container['suspect_score'] = $suspect_score;
1283
1284        return $this;
1285    }
1286
1287    /**
1288     * Gets remote_control.
1289     */
1290    public function getRemoteControl(): ?WebhookRemoteControl
1291    {
1292        return $this->container['remote_control'];
1293    }
1294
1295    /**
1296     * Sets remote_control.
1297     *
1298     * @param ?\Fingerprint\ServerAPI\Model\WebhookRemoteControl $remote_control remote_control
1299     *
1300     * @return $this
1301     */
1302    public function setRemoteControl(?WebhookRemoteControl $remote_control): self
1303    {
1304        $this->container['remote_control'] = $remote_control;
1305
1306        return $this;
1307    }
1308
1309    /**
1310     * Gets velocity.
1311     */
1312    public function getVelocity(): ?WebhookVelocity
1313    {
1314        return $this->container['velocity'];
1315    }
1316
1317    /**
1318     * Sets velocity.
1319     *
1320     * @param ?\Fingerprint\ServerAPI\Model\WebhookVelocity $velocity velocity
1321     *
1322     * @return $this
1323     */
1324    public function setVelocity(?WebhookVelocity $velocity): self
1325    {
1326        $this->container['velocity'] = $velocity;
1327
1328        return $this;
1329    }
1330
1331    /**
1332     * Gets developer_tools.
1333     */
1334    public function getDeveloperTools(): ?WebhookDeveloperTools
1335    {
1336        return $this->container['developer_tools'];
1337    }
1338
1339    /**
1340     * Sets developer_tools.
1341     *
1342     * @param ?\Fingerprint\ServerAPI\Model\WebhookDeveloperTools $developer_tools developer_tools
1343     *
1344     * @return $this
1345     */
1346    public function setDeveloperTools(?WebhookDeveloperTools $developer_tools): self
1347    {
1348        $this->container['developer_tools'] = $developer_tools;
1349
1350        return $this;
1351    }
1352
1353    /**
1354     * Gets mitm_attack.
1355     */
1356    public function getMitmAttack(): ?WebhookMitMAttack
1357    {
1358        return $this->container['mitm_attack'];
1359    }
1360
1361    /**
1362     * Sets mitm_attack.
1363     *
1364     * @param ?\Fingerprint\ServerAPI\Model\WebhookMitMAttack $mitm_attack mitm_attack
1365     *
1366     * @return $this
1367     */
1368    public function setMitmAttack(?WebhookMitMAttack $mitm_attack): self
1369    {
1370        $this->container['mitm_attack'] = $mitm_attack;
1371
1372        return $this;
1373    }
1374
1375    /**
1376     * Returns true if offset exists. False otherwise.
1377     *
1378     * @param int $offset Offset
1379     */
1380    public function offsetExists($offset): bool
1381    {
1382        return isset($this->container[$offset]);
1383    }
1384
1385    /**
1386     * Gets offset.
1387     *
1388     * @param int $offset Offset
1389     */
1390    public function offsetGet($offset): mixed
1391    {
1392        return isset($this->container[$offset]) ? $this->container[$offset] : null;
1393    }
1394
1395    /**
1396     * Sets value based on offset.
1397     *
1398     * @param int   $offset Offset
1399     * @param mixed $value  Value to be set
1400     */
1401    public function offsetSet($offset, mixed $value): void
1402    {
1403        if (is_null($offset)) {
1404            $this->container[] = $value;
1405        } else {
1406            $this->container[$offset] = $value;
1407        }
1408    }
1409
1410    /**
1411     * Unsets offset.
1412     *
1413     * @param int $offset Offset
1414     */
1415    public function offsetUnset($offset): void
1416    {
1417        unset($this->container[$offset]);
1418    }
1419
1420    /**
1421     * Gets the string presentation of the object in a pretty JSON format.
1422     *
1423     */
1424    public function toPrettyString(): string
1425    {
1426        return json_encode(
1427            ObjectSerializer::sanitizeForSerialization($this),
1428            JSON_PRETTY_PRINT
1429        );
1430    }
1431}