Skip to content

Commit e513e7f

Browse files
authored
Merge pull request #235 from fingerprintjs/sync-openapi-12301
Sync OpenAPI Schema (12301) - Proxy details
2 parents aaba9d4 + b67306e commit e513e7f

File tree

8 files changed

+58
-9
lines changed

8 files changed

+58
-9
lines changed

.changeset/thick-toys-visit.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"fingerprint-pro-server-api-openapi": minor
3+
---
4+
5+
Add `details` object to the `proxy` signal. This field includes the `type` of the detected proxy (`residential` or `data_center`) and the `lastSeenAt` timestamp of when an IP was last observed to show proxy-like behavior.

schemas/components/schemas/Proxy.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,6 @@ properties:
99
description: |
1010
IP address was used by a public proxy provider or belonged to a known recent residential proxy
1111
confidence:
12-
$ref: ProxyConfidence.yaml
12+
$ref: ProxyConfidence.yaml
13+
details:
14+
$ref: ProxyDetails.yaml
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
type: object
2+
# can be nullable when proxy is not detected
3+
nullable: true
4+
additionalProperties: false
5+
description: Proxy detection details (present if proxy is detected)
6+
required:
7+
- proxyType
8+
properties:
9+
proxyType:
10+
type: string
11+
enum:
12+
- residential
13+
- data_center
14+
description: |
15+
Residential proxies use real user IP addresses to appear as legitimate traffic,
16+
while data center proxies are public proxies hosted in data centers
17+
lastSeenAt:
18+
type: string
19+
format: date-time
20+
x-ogen-time-format: 2006-01-02T15:00:00Z
21+
description: |
22+
ISO 8601 formatted timestamp in UTC with hourly resolution
23+
of when this IP was last seen as a proxy when available.
24+

schemas/components/schemas/WebhookProxy.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,6 @@ properties:
66
description: |
77
IP address was used by a public proxy provider or belonged to a known recent residential proxy
88
confidence:
9-
$ref: ProxyConfidence.yaml
9+
$ref: ProxyConfidence.yaml
10+
details:
11+
$ref: ProxyDetails.yaml

schemas/paths/examples/get_event_200.json

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -192,8 +192,12 @@
192192
},
193193
"proxy": {
194194
"data": {
195-
"result": false,
196-
"confidence": "high"
195+
"result": true,
196+
"confidence": "high",
197+
"details": {
198+
"proxyType": "residential",
199+
"lastSeenAt": "2025-08-12T13:00:00Z"
200+
}
197201
}
198202
},
199203
"incognito": {

schemas/paths/examples/get_event_200_with_broken_format.json

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -187,8 +187,12 @@
187187
},
188188
"proxy": {
189189
"data": {
190-
"result": false,
191-
"confidence": "high"
190+
"result": true,
191+
"confidence": "high",
192+
"details": {
193+
"proxyType": "residential",
194+
"lastSeenAt": "2025-08-12T13:00:00Z"
195+
}
192196
}
193197
},
194198
"incognito": {

schemas/paths/examples/get_event_search_200.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -191,7 +191,11 @@
191191
"proxy": {
192192
"data": {
193193
"result": false,
194-
"confidence": "high"
194+
"confidence": "high",
195+
"details": {
196+
"proxyType": "residential",
197+
"lastSeenAt": "2025-08-12T13:00:00Z"
198+
}
195199
}
196200
},
197201
"incognito": {

schemas/paths/examples/webhook.json

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -130,8 +130,12 @@
130130
}
131131
},
132132
"proxy": {
133-
"result": false,
134-
"confidence": "high"
133+
"result": true,
134+
"confidence": "high",
135+
"details": {
136+
"proxyType": "residential",
137+
"lastSeenAt": "2025-08-12T13:00:00Z"
138+
}
135139
},
136140
"tampering": {
137141
"result": false,

0 commit comments

Comments
 (0)