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