Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .changeset/event-edge.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
'fingerprint-pro-server-api-openapi': minor
---

**events**: Replace `EdgeResponse` with `EventEdge`. Add `EventDevice`. Model `Event` as a `source` discriminated union of `EventDevice` and `EventEdge` in docs and the Node SDK schema. Other SDK schemas flatten `Event` and leave `source` optional. Get-event copy describes `source` without naming generated types. `POST /edge` returns `EventEdge`.

2 changes: 2 additions & 0 deletions .github/workflows/sync-server-side-sdks-schema.yml
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,7 @@ jobs:
language: python
language-version: '3.12'
generate-command: 'bash ./generate.sh'
schema-source: fingerprint-server-api-v4-flat.yaml
schema-path: res/fingerprint-server-api.yaml
examples-path: test/mocks
app-id: ${{ vars.RUNNER_APP_ID }}
Expand Down Expand Up @@ -152,6 +153,7 @@ jobs:
language: php
language-version: '8.3'
generate-command: 'bash ./scripts/generate.sh'
schema-source: fingerprint-server-api-v4-flat.yaml
schema-path: res/fingerprint-server-api.yaml
examples-path: test/mocks
app-id: ${{ vars.RUNNER_APP_ID }}
Expand Down
13 changes: 12 additions & 1 deletion schemas/components/schemas/EdgeRequest.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,17 @@ type: object
description: |-
HTTP request metadata (including the HTTP method, headers and IP address) sent by you (your server) to the Fingerprint API for IP and bot analysis. To improve accuracy, retain as much of the original semantics of the HTTP request as possible. For example, preserve the order of the request headers and their capitalization.
At least one of `ipv4_address` or `ipv6_address` must be provided; a request with neither is rejected with a `400` error. If both IPv4 and IPv6 are provided, IP intelligence will be provided for each address. If an IPv4-mapped IPv6 address is provided in the `ipv6_address` request property, the IP intelligence will be provided in the `ipv4_address` property of the response.
example:
method: GET
url: https://example.com/login
ipv4_address: 34.162.244.71
headers:
- name: Host
value: example.com
- name: User-Agent
value: Mozilla/5.0
- name: Authorization
value: ''
additionalProperties: false
required:
- headers
Expand All @@ -13,7 +24,7 @@ properties:
description: |
Ordered header entries from the request made to your server. Each entry represents one header line. If one header name appears as multiple lines, send each as a separate item in the array.

Headers that contain authentication or session data must still be included, but with with their value set to an empty string. This includes headers like `Authorization` and `Cookie`, but may contain more depending on your specific project, for instance `Proxy-Authenticate` or `X-Api-Key`. Omitting the headers entirely changes the shape of the request and can affect detection. Never forward the real secret values.
Headers that contain authentication or session data must still be included, but with their value set to an empty string. This includes headers like `Authorization` and `Cookie`, but may contain more depending on your specific project, for instance `Proxy-Authenticate` or `X-Api-Key`. Omitting the headers entirely changes the shape of the request and can affect detection. Never forward the real secret values.

Whenever possible, we recommend preserving header order and capitalization to provide the best accuracy, however it’s not a strict requirement if your runtime does not maintain http header order or canonicalizes header names.
minItems: 1
Expand Down
36 changes: 0 additions & 36 deletions schemas/components/schemas/EdgeResponse.yaml

This file was deleted.

Loading