Gathering detailed insights and metrics for @fingerprintjs/fingerprintjs-pro-server-api
Gathering detailed insights and metrics for @fingerprintjs/fingerprintjs-pro-server-api
Gathering detailed insights and metrics for @fingerprintjs/fingerprintjs-pro-server-api
Gathering detailed insights and metrics for @fingerprintjs/fingerprintjs-pro-server-api
Node.js wrapper for FingerprintJS Server API
npm install @fingerprintjs/fingerprintjs-pro-server-api
Typescript
Module System
Min. Node Version
Node Version
NPM Version
@fingerprintjs/fingerprintjs-pro-server-api@6.7.0
Updated on Jul 09, 2025
@fingerprintjs/fingerprintjs-pro-server-api@6.6.0
Updated on Jun 04, 2025
@fingerprintjs/fingerprintjs-pro-server-api@6.5.0
Updated on May 06, 2025
@fingerprintjs/fingerprintjs-pro-server-api@6.5.0-test.1
Updated on Apr 28, 2025
@fingerprintjs/fingerprintjs-pro-server-api@6.5.0-test.0
Updated on Apr 16, 2025
@fingerprintjs/fingerprintjs-pro-server-api@6.4.0
Updated on Apr 02, 2025
TypeScript (90.6%)
JavaScript (8.4%)
Shell (0.99%)
Total Downloads
0
Last Day
0
Last Week
0
Last Month
0
Last Year
0
MIT License
24 Stars
665 Commits
8 Forks
8 Watchers
6 Branches
12 Contributors
Updated on Jul 10, 2025
Latest Version
6.7.0
Package Id
@fingerprintjs/fingerprintjs-pro-server-api@6.7.0
Unpacked Size
291.34 kB
Size
50.99 kB
File Count
20
NPM Version
10.5.0
Node Version
21.7.3
Published on
Jul 09, 2025
Cumulative downloads
Total Downloads
Last Day
0%
NaN
Compared to previous day
Last Week
0%
NaN
Compared to previous week
Last Month
0%
NaN
Compared to previous month
Last Year
0%
NaN
Compared to previous year
29
Fingerprint is a device intelligence platform offering industry-leading accuracy.
The Fingerprint Server Node SDK is an easy way to interact with the Fingerprint Server API from your Node application. You can search, update, or delete identification events.
TypeScript support:
Supported runtimes:
Node.js 18 LTS or higher (we support all Node LTS releases before end-of-life).
Deno and Bun might work but are not actively tested.
"Edge" runtimes might work with some modifications but are not actively tested.
This SDK can be made compatible with JavaScript "edge" runtimes that do not support all Node APIs, for example, Vercel Edge Runtime, or Cloudflare Workers.
To make it work, replace the SDK's built-in fetch
function (which relies on Node APIs) with the runtime's native fetch
function. Pass the function into the constructor with proper binding:
1const client = new FingerprintJsServerApiClient({
2 region: Region.EU,
3 apiKey: apiKey,
4 fetch: fetch.bind(globalThis),
5})
Install the package using your favorite package manager:
NPM:
1npm i @fingerprintjs/fingerprintjs-pro-server-api
Yarn:
1yarn add @fingerprintjs/fingerprintjs-pro-server-api
pnpm:
1pnpm i @fingerprintjs/fingerprintjs-pro-server-api
Initialize the client instance and use it to make API requests. You need to specify your Fingerprint Secret API key and the region of your Fingerprint workspace.
1import { 2 FingerprintJsServerApiClient, 3 Region, 4} from '@fingerprintjs/fingerprintjs-pro-server-api' 5 6const client = new FingerprintJsServerApiClient({ 7 apiKey: '<SECRET_API_KEY>', 8 region: Region.Global, 9}) 10 11// Get visit history of a specific visitor 12client.getVisits('<visitorId>').then((visitorHistory) => { 13 console.log(visitorHistory) 14}) 15 16// Get a specific identification event 17client.getEvent('<requestId>').then((event) => { 18 console.log(event) 19}) 20 21// Search for identification events 22client 23 .searchEvents({ 24 limit: 10, 25// pagination_key: previousSearchResult.paginationKey, 26 suspect: true, 27 }) 28 .then((events) => { 29 console.log(events) 30 })
See the Examples folder for more detailed examples.
The Server API methods can throw RequestError
.
When handling errors, you can check for it like this:
1import { 2 RequestError, 3 FingerprintJsServerApiClient, 4 TooManyRequestsError, 5} from '@fingerprintjs/fingerprintjs-pro-server-api' 6 7const client = new FingerprintJsServerApiClient({ 8 apiKey: '<SECRET_API_KEY>', 9 region: Region.Global, 10}) 11 12// Handling getEvent errors 13try { 14 const event = await client.getEvent(requestId) 15 console.log(JSON.stringify(event, null, 2)) 16} catch (error) { 17 if (error instanceof RequestError) { 18 console.log(error.responseBody) // Access parsed response body 19 console.log(error.response) // You can also access the raw response 20 console.log(`error ${error.statusCode}: `, error.message) 21 } else { 22 console.log('unknown error: ', error) 23 } 24} 25 26// Handling getVisits errors 27try { 28 const visitorHistory = await client.getVisits(visitorId, { 29 limit: 10, 30 }) 31 console.log(JSON.stringify(visitorHistory, null, 2)) 32} catch (error) { 33 if (error instanceof RequestError) { 34 console.log(error.status, error.error) 35 if (error instanceof TooManyRequestsError) { 36 retryLater(error.retryAfter) // Needs to be implemented on your side 37 } 38 } else { 39 console.error('unknown error: ', error) 40 } 41 42 // You can also check for specific error instance 43 // if(error instanceof VisitorsError403) { 44 // Handle 403 error... 45 // } 46}
When handling Webhooks coming from Fingerprint, you can cast the payload as the built-in VisitWebhook
type:
1import { VisitWebhook } from '@fingerprintjs/fingerprintjs-pro-server-api' 2 3const visit = visitWebhookBody as unknown as VisitWebhook
Customers on the Enterprise plan can enable Webhook signatures to cryptographically verify the authenticity of incoming webhooks. This SDK provides a utility method for verifying the HMAC signature of the incoming webhook request.
To learn more, see example/validateWebhookSignature.mjs or read the API Reference.
Customers on the Enterprise plan can enable Sealed results to receive the full device intelligence result on the client and unseal it on the server. This SDK provides utility methods for decoding sealed results.
To learn more, see example/unsealResult.mjs or the API Reference.
Customers on the Enterprise plan can Delete all data associated with a specific visitor to comply with privacy regulations. See example/deleteVisitor.mjs or the API Reference.
See the full API reference.
To report problems, ask questions, or provide feedback, please use Issues. If you need private support, you can email us at oss-support@fingerprint.com.
This project is licensed under the MIT license.
No vulnerabilities found.
Reason
30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Reason
all changesets reviewed
Reason
no binaries found in the repo
Reason
no dangerous workflow patterns detected
Reason
license file detected
Details
Reason
branch protection is not maximal on development and all release branches
Details
Reason
5 existing vulnerabilities detected
Details
Reason
no effort to earn an OpenSSF best practices badge detected
Reason
security policy file not detected
Details
Reason
dependency not pinned by hash detected -- score normalized to 0
Details
Reason
project is not fuzzed
Details
Reason
detected GitHub workflow tokens with excessive permissions
Details
Reason
SAST tool is not run on all commits -- score normalized to 0
Details
Score
Last Scanned on 2025-07-07
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More