Skip to main content

Fingerbank

Fingerbank is a device identification and network intelligence platform that provides comprehensive device fingerprinting capabilities, enabling organizations to identify devices, applications, and network characteristics for enhanced security and network management.

Fingerbank icon

Power end-to-end data operations for your Fingerbank API with Nexla. Our bi-directional Fingerbank connector is purpose-built for Fingerbank, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Fingerbank or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Fingerbank workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

Before creating a Fingerbank credential, you need to obtain an API Key from your Fingerbank account. The API Key is required to authenticate with the Fingerbank API.

To obtain your API Key, you need to have a Fingerbank account with API access enabled. Once you have access to your account, you can find your API Key in your Fingerbank account settings. The API Key is sent as the key query parameter for all API requests to the Fingerbank API. For detailed information about API key setup and authentication, refer to the Fingerbank API documentation.

Authenticate

Credentials required

FieldRequiredSecretDescription
API KeyYesYesFingerbank API key. Your API key can be found in your Fingerbank account.

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

New Credential Overlay – Fingerbank

FingerbankCred.png
  1. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  2. Enter your Fingerbank API Key in the API Key field. This is the API Key you found in your Fingerbank account settings. The API Key is sent as the key query parameter for all API requests to the Fingerbank API.

    Keep your API Key secure and do not share it publicly. The API Key provides access to your Fingerbank account and should be treated as sensitive information. The API Key is sent as the key query parameter for all API requests to the Fingerbank API. Your API Key can be found in your Fingerbank account. For detailed information about obtaining and managing API keys, see the Fingerbank API documentation.

  3. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Fingerbank connector tile, then select the credential that will be used to connect to the Fingerbank instance, and click Next; or, create a new Fingerbank credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Fingerbank endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

Retrieve Full Database Dump

This endpoint fetches all information about all devices in the Fingerbank database. Use this endpoint when you need to access complete device information, device databases, or device identification data from Fingerbank.

  • Enter the fields you want to include in the dump in the Fields field. This should be a comma-delimited list of fields. Allowed fields are: id, name, parent_id, virtual_parent_id, details. The default value is id,name,parent_id,virtual_parent_id,details if not specified.

  • The endpoint uses GET requests to https://api.fingerbank.org/api/v2/devices/base_info?key={api_key}&fields={fields} where {api_key} is your API Key from the credential configuration and {fields} is the Fields you provide. The endpoint URL is automatically constructed based on the Fingerbank API base URL, the API key, and the fields.
  • The endpoint does not use pagination and returns all device information in a single request.
  • The endpoint will return all device information in the Fingerbank database. The response data is extracted from the root-level array in the API response ($[*]), with each device record processed individually.

The Fields parameter should be a comma-delimited list of allowed field names: id, name, parent_id, virtual_parent_id, details. The endpoint uses a static URL (iteration.type: static.url) and does not require pagination. The response data path is $[*], which extracts all items from the root-level array in the API response. For detailed information about retrieving full database dumps, see the Fingerbank API documentation.

Interrogate Fingerbank DB with DHCP info

This endpoint interrogates Fingerbank with DHCP information and obtains the device that matches the most of those attributes. Use this endpoint when you need to identify devices based on DHCP fingerprints or obtain device information from DHCP data.

  • Enter the DHCP fingerprint in the DHCP Fingerprint field. This must be a comma-delimited list of numbers following this standard: 1,2,3,4,5,6,7. The order of the options must be the same as in the DHCP packet and nothing else than commas and numbers are allowed in this field. The default value is 128,229,32,44,52,64,17 if not specified.

  • The endpoint uses GET requests to https://api.fingerbank.org/api/v2/combinations/interrogate?key={api_key}&dhcp_fingerprint={dhcp_fingerprint} where {api_key} is your API Key from the credential configuration and {dhcp_fingerprint} is the DHCP Fingerprint you provide. The endpoint URL is automatically constructed based on the Fingerbank API base URL, the API key, and the DHCP fingerprint.
  • The endpoint does not use pagination and returns the matching device information in a single request.
  • The endpoint will return the device that matches the most of the DHCP attributes. The response data is extracted from the root-level object in the API response ($), and Nexla will process the entire response structure.

The DHCP Fingerprint must be a comma-delimited list of numbers following the standard format. The order of the options must be the same as in the DHCP packet and nothing else than commas and numbers are allowed. The endpoint uses a static URL (iteration.type: static.url) and does not require pagination. The response data path is $, which extracts the entire root-level object from the API response. For detailed information about interrogating with DHCP information, see the Fingerbank API documentation.

Interrogate Fingerbank DB with DHCP info from Lookup

This endpoint interrogates Fingerbank with DHCP information stored in a Nexla lookup and obtains the device that matches the most of those attributes. Use this endpoint when you need to identify devices based on DHCP fingerprints stored in a Nexla lookup table.

  • Select the Nexla lookup that contains DHCP Fingerprints to iterate over from the Lookup for fetching DHCP Fingerprints dropdown menu. This is the Nexla lookup that contains DHCP Fingerprints to iterate over.

  • Enter the DHCP Fingerprint column name in the lookup in the DHCP Fingerprint column name in Lookup field. This is the column name in the lookup that contains the DHCP Fingerprint values.

  • The endpoint uses a two-step process: first, it iterates over the Nexla lookup to retrieve DHCP fingerprints, then it makes GET requests to https://api.fingerbank.org/api/v2/combinations/interrogate?key={api_key}&dhcp_fingerprint={dhcp_fingerprint} for each DHCP fingerprint from the lookup. The endpoint URL is automatically constructed based on the Fingerbank API base URL, the API key, and the DHCP fingerprint from the lookup.
  • The endpoint does not use pagination and returns the matching device information for each DHCP fingerprint in a single request per fingerprint.
  • The endpoint will return the device that matches the most of the DHCP attributes for each DHCP fingerprint in the lookup. The response data is extracted from the root-level object in the API response ($), and Nexla will process the entire response structure for each lookup entry.

This endpoint requires a Nexla lookup table containing DHCP Fingerprints. The endpoint iterates over the lookup table and makes API requests for each DHCP fingerprint found in the lookup. The DHCP Fingerprint column name should match the column name in your lookup table. The endpoint uses a lookup iteration (iteration.type: data.map.key.queue) followed by a static URL (iteration.type: static.url) for each lookup entry. The response data path is $, which extracts the entire root-level object from the API response. For detailed information about interrogating with DHCP information, see the Fingerbank API documentation.

Get Device Information

This endpoint gets the detailed information about a specific device. Use this endpoint when you need to access detailed device information, device details, or device identification data for a specific device ID from Fingerbank.

  • Enter the Device ID for which you want to get information in the Device ID field. This is the unique identifier of the device for which you want to get detailed information.

  • The endpoint uses GET requests to https://api.fingerbank.org/api/v2/devices/{device_id}?key={api_key} where {device_id} is the Device ID you provide and {api_key} is your API Key from the credential configuration. The endpoint URL is automatically constructed based on the Fingerbank API base URL, the device ID, and the API key.
  • The endpoint does not use pagination and returns the complete device information in a single request.
  • The endpoint will return detailed information for the specified device. The response data is extracted from the root-level object in the API response ($), and Nexla will process the entire response structure.

Device IDs can be obtained from other Fingerbank API endpoints, such as the "Retrieve Full Database Dump" endpoint, which returns all devices with their corresponding IDs. The endpoint uses a static URL (iteration.type: static.url) and does not require pagination. The response data path is $, which extracts the entire root-level object from the API response. For detailed information about getting device information, see the Fingerbank API documentation.

Get Device Information from Lookup

This endpoint gets the detailed information about devices stored in a Nexla lookup table. Use this endpoint when you need to access detailed device information for multiple device IDs stored in a Nexla lookup.

  • Select the Nexla lookup that contains Device IDs to iterate over from the Lookup for fetching Device IDs dropdown menu. This is the Nexla lookup that contains Device IDs to iterate over.

  • Enter the Device ID column name in the lookup in the Device ID column name in Lookup field. This is the column name in the lookup that contains the Device ID values.

  • The endpoint uses a two-step process: first, it iterates over the Nexla lookup to retrieve device IDs, then it makes GET requests to https://api.fingerbank.org/api/v2/devices/{device_id}?key={api_key} for each device ID from the lookup. The endpoint URL is automatically constructed based on the Fingerbank API base URL, the device ID from the lookup, and the API key.
  • The endpoint does not use pagination and returns the complete device information for each device ID in a single request per device ID.
  • The endpoint will return detailed information for each device ID in the lookup. The response data is extracted from the root-level object in the API response ($), and Nexla will process the entire response structure for each lookup entry.

This endpoint requires a Nexla lookup table containing Device IDs. The endpoint iterates over the lookup table and makes API requests for each device ID found in the lookup. The Device ID column name should match the column name in your lookup table. The endpoint uses a lookup iteration (iteration.type: data.map.key.queue) followed by a static URL (iteration.type: static.url) for each lookup entry. The response data path is $, which extracts the entire root-level object from the API response. For detailed information about getting device information, see the Fingerbank API documentation.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

Fingerbank data sources can also be manually configured to ingest data from any valid Fingerbank API endpoint, including endpoints not covered by the pre-built templates, chained API calls, or custom authentication headers or request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers. Fingerbank API endpoints typically follow the pattern https://api.fingerbank.org/api/v2/{endpoint_path}.

The API Key is sent automatically as the key query parameter for all API requests based on your credential configuration. Fingerbank API responses may return either a root-level array ($[*]) or a root-level object ($) depending on the endpoint, so use the Test button to verify the correct path to data. For detailed information about available Fingerbank API endpoints, see the Fingerbank API documentation.

Once all of the relevant settings have been configured, click the Save button to save your data source configuration. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.