Secugen Web Service API
Secugen Web Service API
Secugen Web Service API
Programmer’s Manual
SDK version 1.1
Copyright © 2020 SecuGen Corporation and its licensors. ALL RIGHTS RESERVED. Information in this document is
subject to change without notice. The software described in this document is furnished under a license agreement
or nondisclosure agreement. The software may be used only in accordance with the terms of the agreement.
SecuGen is a registered trademark of SecuGen Corporation. All other brands or product names may be trademarks,
service marks or registered trademarks of their respective owners.
1. Introduction
SecuGen WebAPI is an application programming interface that enables web applications to access
SecuGen fingerprint readers from most modern web browsers. With support for JavaScript access to the
readers, SecuGen WebAPI can be used across different browsers for extremely fast capturing and
matching of fingerprint data for use in a web application.
SecuGen WebAPI makes it very simple to incorporate fingerprint capturing functionality in your browser
based application through JavaScript. Using SecuGen WebAPI eliminates the need for Java runtimes or
browser plug-ins on the client machine, so there are no issues involving applet signing and deployment
related to different JRE versions and browser versions. This document describes the RESTFUL web service
calls that are supported by SecuGen WebAPI.
Main Features
• Easy to integrate fingerprint capture, enrollment, and matching functions
• Works with most modern web browsers
• Supports JavaScript
• Utilizes RESTful web service and JSON objects
• No Java runtimes needed
• No browser plug-ins needed
• Small client software
License Requirements
A license key for each domain that hosts your web application will be needed. If no license key is installed,
the web service will work for a limited period of 60 days. Please contact your SecuGen Representative for
information about licensing and pricing.
Fill in the User Name field along with the appropriate Organization. The User Name field is prepopulated
with the name of the current Window user. Click Next.
3. SGIFPCapture
The SGIFPCapture service returns fingerprint data, details of the fingerprint reader, and the extracted
template to the caller as a JSON object. For HTTP requests, this service can be called as URI
https://localhost:8000/SGIFPCapture. The port number may change depending on the way the service is
configured. The default port for the service is 8000.
Parameters
The following table describes the parameters and their permissible values that can be passed to the
service. All the parameters are optional, and their defaults are described below.
ImageQuality INTEGER Integer value indicating the quality of the image captured. It will
always be equal to or higher than the quality parameter passed as
argument.
NFIQ INTEGER Integer value, NIST Finger Image Quality number from 1 – 5, where
1 is best and 5 is worst
ImageDataBase64 STRING String containing actual raw image data encoded as a base64 string
BMPBase64 STRING String value fingerprint image in .BMP format encoded as a base64
string, useful for display in browser using data element in image
tag
TemplateBase64 STRING String value containing fingerprint template encoded as a base64
format. This value is encrypted if called with session key
parameter.
WSQImageSize INTEGER WSQ Image size returned in bytes
WSQImage STRING String containing encoded Wavelet Scalar Image compressed into
a base64 string
4. SGIEnrollCapture
The SGIEnrollCapture service is useful for capturing multiple fingerprints from the fingerprint reader. The
parameters are the same as those used for SGIFPCapture and can be used to capture one fingerprint as
well. For HTTP requests, this service can be called as URI https://localhost:8000/SGIFPEnroll. The port
number may change depending on the way the service is configured. The default port for the service is
8000.
The first call to this service creates a unique session and returns the session handle in the returned JSON
object. The caller can use this handle for subsequent calls to capture additional fingerprints in the same
session. These are accumulated by the service until the session ends. The session ends when the service
is called with a null session handle or no session handle. Every call returns a JSON object containing all the
templates captured up until that point.
If you wish to capture multiple fingerprints, call this service the first time with the SrvHandle parameter
as null (or do not provide it at all). When the call returns, you will receive a session handle as part of the
JSON object, which you can keep on passing for as long as you wish the fingerprint scans to be
accumulated.
Call this service once for each capture along with the same server handle to accumulate fingerprint scans.
The service also ensures that one fingerprint is present only once in the array, i.e. a local duplicate check
is performed on the client end. The returned JSON object will contain an array of templates and current
scan data.
Parameters
The following table describes the parameters and their permissible values that can be passed to the
service. All the parameters are optional, and their defaults are described below.
Note that the EnrollData object contains an array of all the templates captured in the same session. The
fields in the main object pertain to the current scan and maybe useful for a variety of functions such as
displaying the image or determining the quality of the current scan. The attempts field counts the number
of attempts made to achieve the specified quality. A maximum of 3 attempts is allowed.
5. SGIMatchScore
The SGIMatchScore service takes two templates as input, compares them with each other, and returns a
matching score back to the calling application. For HTTP requests, this service can be called as URI
https://localhost:8000/SGIMatchScore. The port number may change depending on the way the service
is configured. The default port for the service is 8000.
Parameters
The following table describes the parameters and their permissible values that can be passed to the
service. All the parameters are optional, and their defaults are described below.
Error Codes