Useful Links
Getting Started
What is FACEIO?
- TLDR; FACEIO is a facial authentication framework that can be implemented on any website via simple JavaScript snippet (just like disqus or Google Tag) to easily authenticate users via Face Recognition instead of the traditional login/password pair or OTP code.
- FACEIO is a cross-browser, cloud & on-premise deployable, facial authentication framework, with a client-side JavaScript library (
fio.js
) that integrates seamlessly with any website or web application desiring to offer secure facial recognition experience to their users.. - Put it simply, FACEIO is the easiest way to add passwordless authentication to websites or web applications. Simply implement
fio.js
on your website, and you will be able to instantly authenticate your existing users, and enroll new ones via Face Recognition using their computer Webcam or smartphone frontal camera on their favorite browser. - Once
fio.js
implemented on your website, you'll be able to instantly recognize your existing users, on-board new members securely with maximum convenience, and at real-time thanks to passwordless experience powered by face recognition. - FACEIO works with regular Webcams or smartphones frontal camera on all modern browsers, does not require biometric sensors to be available on the client side, and works seemingly with all websites and web applications regardless of the underlying front-end JavaScript framework (eg React, Vue, jQuery, Vanilla Javascript, static HTML, etc.) or server-side language or technology (eg PHP, Python, Node.js, Rust, Elixir, etc.).
Why should I offer Facial Authentication to my users?
The idea of using facial recognition as an authentication mechanism was around for decades, largely popularized by science fiction. Thanks to the huge leap in Machine Learning advance in the last few years, such technology, proved to be plausible to implement.
Facial recognition, as a contactless, passwordless method of authentication, proven to be superior to standard password based logins, multi factor traditional authentication (MFA), one-time codes (OTF), authentication scheme. In order to strike the perfect balance between security, privacy and user experience, the underlying technology must address a few key issues: vulnerability to spoofing attacks, recognition speed & efficiency, but most importantly, privacy and civil liberty concerns.
If you'd like to learn more about our data compliance program, and our privacy practices in general, please visit the FACEIO Trust Center for additional information.
How do I get started with FACEIO?
It’s super quick to implement FACEIO, and get it up & running on your website or web application. The following tutorials, and guides should help you get started with FACEIO:
- Getting Started Tutorial: Learn the fundamentals. Your first steps with FACEIO...
- Integration Guide: Learn how to implement
fio.js
, our facial recognition library on your website before rolling facial authentication to your audience... - Developer Center: Code samples, documentation, support channels, and all the resources you need to implement FACEIO on your website...
- Trust Center: Learn how we handle your data securely and in compliance with privacy and legal requirements.
How do I create my first FACEIO application?
Creating your first FACEIO application is straightforward. All you have to do is:
- Connect to the FACEIO Console first with your email address or create a new account if you don't have one yet.
- Select New Application on the Dashboard main view.
- Follow the application Wizard to create your first application. The wizard should automate the creation process for you. Usually, this involve choosing an application name, selecting a facial Recognition engine, reviewing security options, customizing the Widget look & feel, and so forth..
- Congratulations 👏. You have created your first FACEIO application. Now, it's time to implement
fio.js
on your Website before rolling facial authentication to your audience...
How do I implement Facial Recognition on my website?
Implementing facial recognition on your website or web application to authenticate & identify your users is straightforward as shown in the steps below:
- Create a new FACEIO application first: Follow the Application Wizard on the FACEIO Console to create your first application and link it to your website or web application...
- Select a Facial Recognition Engine: Review Security & Privacy settings, Cloud or On-Premise deployment and customize the Widget look & feel, all done via the Application Wizard .
- Add the
fio.js
library to your Website: Implementfio.js
, our facial recognition library on your website before rolling facial authentication to your audience... - Roll facial authentication to your users: Congratulations 👏, you have FACEIO Up & Running. Now, it's time to
enroll()
andauthenticate()
your first user...
The following tutorials, and guides should help you get started with FACEIO:
- Getting Started Tutorial: Learn the fundamentals. Your first steps with FACEIO...
- Integration Guide: Learn how to implement
fio.js
, our facial recognition library on your website before rolling facial authentication to your audience... - Developer Center: Code samples, documentation, support channels, and all the resources you need to implement FACEIO on your website...
- Trust Center: Learn how we handle your data securely and in compliance with privacy and legal requirements.
Where Can I Find Community Contributed Tutorials?
The following, community contributed articles should help you implement fio.js
on your website or webapp using your favorite JavaScript framework whether it is React, Vue, Angular, Next or Vanilla JavaScript:
- Implement a Facial Recognition Authentication System Using React.js & Tailwind.
- Face Recognition in Vue.JS powered by FaceIO.
- Modern Web Applications Authentication Using Face Recognition.
- Ultimate Guide to FaceIO.
- FACEIO - New Age Face Authentication.
- Make your First Facial Authentication Web Application with FaceIO.
- Authenticate Users with Face Recognition in React.js.
- Vue.js Face Authentication System backed by FaceIO.
- Authenticate Users via Face Recognition in your React.js Web Application.
- Enhance user Experience with Face Recognition.
- React-Typescript user sign-up form using FaceIO for face authentication.
- Implement a Facial Recognition Authentication System Using Next.js & Tailwind CSS.
General Information
Who built & maintain FACEIO?
FACEIO is a product fully developed by PixLab, a Machine Vision & Media Processing APIs cloud vendor, which is a subsidiary of Symisc Systems, an embedded software maker with a catalog of open source software, used by thousand of developers worldwide, and already embedded in hundreds of millions of IoT devices, home routers, set-top boxes, etc.
If you'd like to learn more about our data compliance program, and our privacy practices in general, please visit the FACEIO Trust Center for additional information.
What pricing plans are available?
Based on experience with our customers, we drafted five pricing plans (Freemium, Starter, Business, Enterprise & On-Premises) to define the level of your pay, available features, and the scope of their usage. Learn more about our pricing plans by visiting our Pricing Page.
Do you offer free plans?
Yes! Our Starter Plan is for MVP or Personal projects to get started with. If you are interested in experimenting or using the most essential features of FACEIO for your small (less than 1K) users base, this plan is for you! Find out more information about our pricing plans by visiting our Pricing Page
Can anyone use FACEIO?
Yes! Anyone with a website desiring to offer secure facial recognition experience to its audience, can implement FACEIO. Head to the FACEIO Console, create your first application, integrate fio.js
on your website, and roll facial authentication to your users today!
How's FACEIO support?
We have a professional, highly dedicated support team for our customers. We generally respond to any queries within 48 hours and aim to resolve issues within 3 working days. We also have a growing users community on social media.
Features & Product Integration
Which JavaScript frameworks do you support?
- JavaScript frameworks power much of the impressive software on the modern web, including your website or websites you likely use every day.
- FACEIO works with regular Webcams or smartphones frontal camera on all modern browsers, does not require biometric sensors to be available on the client side, and works seemingly with all websites and web applications regardless of the underlying front-end JavaScript framework (eg React, Vue, jQuery, Vanilla Javascript, static HTML, etc.) or server-side language or technology (eg PHP, Python, Node.js, Rust, Elixir, etc.).
Once fio.js
implemented on your website, you'll be able to instantly authenticate your existing users, enroll new ones securely with maximum convenience, and at real-time thanks to passwordless experience powered by face recognition. The following tutorials, and guides should help you get started with FACEIO:
- Getting Started Tutorial: Learn the fundamentals. Your first steps with FACEIO...
- Integration Guide: Learn how to implement
fio.js
, our facial recognition library on your website before rolling facial authentication to your audience... - Developer Center: Code samples, documentation, support channels, and all the resources you need to implement FACEIO on your website...
- Trust Center: Learn how we handle your data securely and in compliance with privacy and legal requirements.
Which Facial Recognition Engine to choose for my FACEIO Application?
- The facial recognition engine is the critical key component that is responsible for mapping each enrolled user’s face at real-time into a mathematical feature vector, better known as biometrics hash, which is in turn stored in a sand-boxed binary index..
- When you create a new application, FACEIO gives you the choice between two production hardened facial recognition engine: PixLab Insight and AWS Rekognition. Insight is the default engine developed by PixLab exclusively for FACEIO. Insight is optimized for accuracy and real-time performance for live video feed, and is architected to instantly detect and match millions of faces in near real time, even under challenging conditions where faces are in motion, at different angles, under poor lighting conditions, or partially obscured with face covers. Both engines (Insight and AWS Rekognition) are able to search and match potentially millions of faces from images or video feed at near real-time. You can freely test the accuracy of the engines by creating a new application on the FACEIO Console.
You can find out more information on Facial Recognition Engines used by FACEIO, Facial ID, etc. on their dedicated page.
Can FACEIO be deployed On-Premises?
Yes, FACEIO On-Premises allows organizations with restrictive IT policies or requirements for tighter integration to run the entire FACEIO stack on their own infrastructure, giving them complete control over biometrics hashes and users data which never leaves the deployment server(s). Find out more information about on-premises deployment on the dedicated page.
How do I notify my backend when a new user enroll/authenticate?
You have to enable webhooks, and setup an endpoint URL from the Application Manager on the FACEIO Console to receive event notifications whenever a new user perform facial enrollment or authentication on your FACEIO application.
To learn how to setup webhooks, and register your endpoint URL, please refer to the bullet below or visit the dedicated Webhooks documentation.
How do I setup Webhooks & Event Notifications?
When an event occurs, FACEIO makes an HTTP POST request to the URL you configured for the Webhook. FACEIO’s request includes details of the ongoing event such as the Unique Facial ID of the user being enrolled or authenticated, its gender & age in case of new enrollment, timestamps, event type, IP information and many others details.
Setting up FACEIO Webhooks for your application is straightforward. Follow the steps below to register your first webhook endpoint URL:
- Connect to your account via the FACEIO Console first.
- On the console main view, visit the Application Manager .
- Select the target application for which you want to setup webhooks for.
- Navigate to the WEBHOOKS tab from the manager main view.
- Once the target application selected. Enter your Webhook Endpoint URL for receiving events and save your modification.
- You're all set. Upon an event is triggered, FACEIO shall make an HTTP POST request to your Webhook endpoint URL with the details listed here.
How do I make API Calls to the FACEIO REST API Server?
Each FACEIO application gets automatically assigned an API key. You can retrieve this key from the Application Manager on the FACEIO Console. The API key let you programmatically manage your application from your private backend environment and using your favorite programming language as long as it supports HTTPS. The FACEIO API is built on HTTP/TLS. Our API is RESTful and it:
- Uses built-in HTTP capabilities for passing parameters and authentication.
- Responds with standard HTTP response codes to indicate errors.
- Always returns
JSON
for each request whether successful or not.
Please note that API calls (REST HTTP Endpoints) and Widget instantiation (via the fio.js
JavaScript library) are totally unrelated. Widget instantiation (ie facial enrollment & authentication) occurs on the client side (user’s browser), is unmetered and unrestricted for all users while API calls must originate from your private application backend and is subject to quota & throttling (mostly Freemium plan).
To learn how to retrieve your API key, the list of exposed API endpoints, and perform RESTful API calls to the FACEIO API servers, please take a look at the dedicated RESTful API documentation.
How do I retrieve my application's REST API Key?
When you create a new FACEIO application, you are given automatically an API key. Retrieving this API key is straightforward. Follow the steps below to fetch and manage your HTTP API key:
- Connect to your account via the FACEIO Console first.
- On the console main view, visit the Application Manager .
- Select the target application for which you want to retrieve your API key and/or gather analytics on your HTTP API calls.
- Navigate to the API key tab from the manager main view.
- You're all set. You can now copy your API key, make HTTP API calls, gather analytics, request quota increase, and so forth...
To learn how to manage your API key, the list of exposed API endpoints, and perform RESTful API calls to the FACEIO API servers, please take a look at the dedicated RESTful API documentation.
Can I customize the Widget User Interface?
Yes! You can customize the FACEIO Widget Layout to match your company's needs. You can change the Widget background color, text color, upload your company logo, set a Privacy Policy or Terms of Use URL, and more from the Application Manager. To do that, simply:
- Connect to your account via the FACEIO Console first.
- On the console main view, visit the Application Manager .
- Select the target application you want to customize the widget for.
- Navigate to the customization tab from the manager main view.
- You're all set. You can now customize the Widget UI to match your company's needs by changing the background & text color, upload your company logo, set a Terms of Use URL, and so forth. Please note that the default dark colors of the Widget offer the best experience across the spectrum of devices.
How do I programmatically remove a Facial ID?
The Facial ID is a Unique Identifier (UUID) assigned anonymously by the underlying Facial Recognition Engine to each enrolled user on your FACEIO application, after its explicit consent. You can learn more about the Facial ID on its dedicated page.
Each enrolled user on your FACEIO application gets automatically & anonymously assigned an unique Facial ID by the underlying Facial Recognition Engine, after its explicit consent during enrollment. This design is especially directed to facilitating GDPR compliance through strong data protection and pseudo-anonymized data handling.
Facial enrollment occurs via a single call to the enroll()
method of the fio.js
, facial recognition JavaScript library you already implemented on your website.
To delete a Facial ID from a given FACEIO application, simply:
- Make an API Call on your private backend to the
DELETEFACIALID
API endpoint. Effective call to this Rest API endpoint, shall completely purge the given Facial ID, associated payload data, and biometrics hash from your FACEIO application. You can learn more about this endpoint on its official documentation. - A Python code sample showcasing how to perform Facial ID deletion on your backend is available to consult via this Github Gist.
If you'd like to learn more about our data compliance program, and our privacy practices in general, please visit the FACEIO Trust Center for additional information.
How do I enable/disable a security option?
Enabling or disabling a security option such as PIN Code Requirements, Weak PIN Code Rejection, etc. on your FACEIO application is a straightforward operation as highlighted below. Make sure to understand each security option in details as documented in our security best practices guide before enabling/disabling such option:
- Connect to your account via the FACEIO Console first.
- On the console main view, visit the Application Manager .
- Select the target application for which you want to enable/disable a security option.
- Navigate to the SECURITY tab from the manager main view.
- You're all set. You can toggle the security option you want, restrict widget instantiation to certain domain names, and so on.
If you'd like to learn more about our security options and practices, including recommendation for securing users data, please take a look at our security best practices for FACEIO applications for additional information.
How do I restrict facial authentication to specific domain names only?
If you want to restrict fio.js
Widget instantiation to specific domain names you define, you can do so via the Application Manager. Once you enable domain whitelisting, no other domain names except the white listed ones will be able to instantiate the FACEIO Widget and perform facial Authentication & Enrollment. To remove or add a domain name to your white list, simply do:
- Connect to your account via the FACEIO Console first.
- On the console main view, visit the Application Manager .
- Select the target application for which you want to update the authorized domain names.
- Navigate to the SECURITY tab from the manager main view.
- Scroll down til the Domain Origin Restriction section.
- You're all set. You can now add or remove at request the domain names you authorize to instantiate the
fio.js
facial authentication library.
If you'd like to learn more about our security options and practices, including recommendation for securing users data, please take a look at our security best practices for FACEIO applications for additional information.
How do I restrict facial authentication to specific countries only?
If you want to restrict fio.js
Widget instantiation to specific countries you define, you can do so via the Application Manager as highlighted below. Once enabled, this option shall restrict fio.js
instantiation on your website to the authorized countries only via their ISO-3166-1 code using the Cloudflare API. That is, no other IP addresses except those belonging to the authorized countries will be able to invoke the FACEIO Widget and perform facial Authentication & Enrollment:
- Connect to your account via the FACEIO Console first.
- On the console main view, visit the Application Manager .
- Select the target application for which you want to update the list of authorized countries.
- Navigate to the SECURITY tab from the manager main view.
- Scroll down til the ISO-3166-1 Country Code Restriction section.
- You're all set. You can now add or remove at request the country codes you authorize to instantiate the
fio.js
facial authentication library on your website.
If you'd like to learn more about our security options and practices, including recommendation for securing users data, please take a look at our security best practices for FACEIO applications for additional information.
Account Management
How do I create a new FACEIO account?
Creating a new FACEIO account is a straightforward operation, as shown below:
- Head to the FACEIO Console first.
- On the login page, select, the SIGN-UP section.
- Enter your email address and your company/personal name.
- Accept the Terms & Conditions set out by FACEIO.
- Congratulations! you have created a new FACEIO account. It's time to create your first application and implement facial recognition on your website.
How do I activate my new FACEIO account?
New FACCEIO accounts are automatically activated upon creation. No further action are required on your side. Verification code are automatically triggered once you create your first FACEIO application. Idle accounts (those with zero applications created) are not subject to email verification, but rather subject to automatic closure after three weeks of inactivity.
How do I change or reset my Password?
Your personal password is what allows you to log into the FACEIO Console and keeps your account secure. In the event that you forget your password, you can reset this from the login section on the FACEIO Console, and if you ever need to change your password, this is possible from your account Profile Manager.
How do I verify my email address?
When you’re setting up a new FACEIO account, we'll send a verification code to the email address you used to create the account. Verification code are automatically triggered once you create your first FACEIO application. Idle accounts (those with zero applications created) are not subject to email verification, but rather subject to automatic closure after three weeks of inactivity.
How do I change the email address linked to my account?
The email address used to activate your FACEIO account is your username to log into the FACEIO Console. The selected email address is also used for resetting your password and sending you notifications from the FACEIO team. The email address linked to your account, thus cannot be changed nor modified from the Console. This is a security measure to prevent account takeover. if you want to change the email address linked to your account, please submit a support ticket on the FACEIO Console.
How do I delete/close my FACEIO account?
If you no longer need to use FACEIO, you can cancel your account. Canceling will permanently delete your account and all associated data. Please note that idle accounts (those with zero applications created) are subject to automatic closure after three weeks of inactivity. Once you delete your account, this action cannot be reversed. Please be certain! Prior to your account deletion, you must remove all your FACEIO applications first and clear any active subscription if any...
To close your FACEIO account, simply do:
- Connect to the FACEIO Console first.
- Once logged in, navigate to the Profile Manager from the main dashboard.
- Scroll down to the Account Deletion section on the Account Overview tab.
- Confirm your deletion choice. This action cannot be reversed. Please be certain!
If you'd like to learn more about our data compliance program, and our privacy practices in general, please visit the FACEIO Trust Center for additional information.
Where do you store my billing information?
We do not store your credit card details or even know anything about them, and we do support PayPal transactions if you feel uncomfortable. Subscription is handled by our merchant of record Paddle which is PCI compliant and a platform of trust. Paddle is the Merchant of Record for all our orders, provides all customer service inquiries and handles returns.
Privacy & Security
Is FACEIO GDPR compliant?
Yes! We've built GDPR compliance directly into our product.
What is GDPR?
Adopted in 2018, the General Data Protection Regulation (GDPR for short) is a legal framework that requires businesses to protect the personal data and privacy of European Union (EU) citizens.
FACEIO and GDPR?
We take privacy very seriously here at FACEIO, and PixLab at larger scale. We only process your data based on your agreement and in accordance with the strict policies and procedures that we have contractually agreed to. We do not share your data with advertiser-supported services, nor do we mine it for any purposes like marketing research or advertising.
If you'd like to learn more about our GDPR compliance program, and our privacy practices in general, please visit the FACEIO Trust Center.
Is FACEIO CCPA compliant?
Yes! We’ve built CCPA compliance directly into our product.
What is CCPA?
Enacted in 2018, and enforceable starting in 2020, the California Consumer Protection Act (CCPA for short), is a legal framework that gives California residents more control over their personal data.
FACEIO and CCPA?
We take privacy very seriously here at FACEIO, and PixLab at larger scale. We only process your data based on your agreement and in accordance with the strict policies and procedures that we have contractually agreed to. We do not share your data with advertiser-supported services, nor do we mine it for any purposes like marketing research or advertising.
If you'd like to learn more about our CCPA compliance program, and our privacy practices in general, please visit the FACEIO Trust Center.
Does FACEIO store biometrics hashes without my consent?
- Never. At FACEIO, we have baked privacy and security directly into our infrastructure. We collect and store the minimum amount of personal information needed to authenticate users, and we back that up with intelligence-backed security monitoring. The underlying Facial Recognition Engines that FACEIO rely on such as PixLab Insight or AWS Rekognition only stores hash signatures of your facial features, a flow of meaningless floating point numbers that cannot be reverse engineered, and after your full explicit consent, and/or until you submits a removal request.
- FACEIO itself (the service) including this Website, the
fio.js
facial authentication library, the Embedded Widget, the Rest API, the Console) does not store or handle biometrics nor even know anything about them. It is the responsibility of the selected facial recognition engine by the application owner (eg website or web application you use) to choose a cloud storage region or opt for on-premises deployment for storing biometrics hashes. - Facial vectors (hence biometrics hash) are stored as an array of floating point numbers. The data is meaningless on its own, effectively acting as a hash, and cannot be reverse engineered.
- FACEIO is not a surveillance tool. There is no centralized biometrics hash database, and any data is collected after your explicit consent, and subject to deletion at anytime. Each FACEIO application is in fact, a sand-boxed binary index. Only the application owner with its encryption key have access to the currently built index. You can manage, download, grab your encryption key as well as collect analytics on this index via the Application Manager on the FACEIO Console.
- We incorporate privacy tools into FACEIO by design so that it’s easy for application owners to protect user data, and enable users to opt-out, and be forgotten. Our Terms & Conditions require customers to comply with all applicable privacy laws; we encourage practices beyond the legal minimum.
- If you'd like to learn more about our data compliance program, and our privacy practices in general, please visit the FACEIO Trust Center for additional information.
Where your Services Terms & Policies located?
If you'd like to learn more about our data compliance program, and our privacy practices in general, please visit the FACEIO Trust Center for additional information.
What can I tell my users about privacy and security?
- We take privacy very seriously here at FACEIO, and PixLab at larger scale. We only process your data based on your agreement and in accordance with the strict policies and procedures that we have contractually agreed to. We do not share your data with advertiser-supported services, nor do we mine it for any purposes like marketing research or advertising.
- Your data is your business, and you can access, modify, or delete it at any time. FACEIO will not use your data without your agreement, and when we have your agreement, we use your data to provide only the services you have chosen.
- We only process your data based on your agreement and in accordance with the strict policies and procedures that we have contractually agreed to. We do not share your data with advertiser-supported services, nor do we mine it for any purposes like marketing research or advertising.
- If you'd like to learn more about our data compliance program, and our privacy practices in general, please visit the FACEIO Trust Center for additional information.
What security reports and certifications do you have?
Symisc Systems (our parent company) is working with security partners on SOC 2 reporting and full ISO 27001 certification.
We take security very seriously. In fact, we built FACEIO as a way to own and secure users' personal data as detailed in our Trust Center. As we expand, that means we're building security directly into our products with certifications and outside audits.
What is SOC 2?
SOC 2 is an auditing procedure developed by the American Institute of CPA's. A SOC 2 report ensures that organizations have security procedures in place.
What is ISO 27001?
ISO 207001 is a security standard created by the International Organization for Standardization and International Electrotechnical Commission. Certification requires an audit, demonstrating comprehensive security standards...
If you'd like to learn more about our data compliance program, and our security practices in general, please visit the FACEIO Trust Center for additional information.
What security measures/best practices do you recommend?
Our security best practices guide for applications is located here. That guideline presents several best practices that have a significant, positive impact on your FACEIO application's security practices, including recommendation for securing users data.
If you'd like to learn more about our data compliance program, and our privacy practices in general, please visit the FACEIO Trust Center for additional information.
What privacy measures/best practices do you recommend?
Our privacy best practices guide for applications is located here. That guideline presents several best practices that have a significant, positive impact on your FACEIO application's privacy practices, including recommendation for safeguarding users data, instant opt-out, Facial ID removal, and so forth.
If you'd like to learn more about our data compliance program, and our privacy practices in general, please visit the FACEIO Trust Center for additional information.