👤Users & Registration
On this page you can find all relevant information on how to register new users in FibriCheck.
Register a new user
Most properties are straightforward, the table below explains the specific requirements for some properties:
gender
0 - Unknown
1 - Male
2 - Female
9 - Not applicable
time_zone
Examples: Europe/Brussels, GMT+2:00, UTC+3:00
This string should follow guidelines documented here. A full list of string timezone values can be found here.
country
ISO 3166 Country Code
e.g. BE, NL, GB, ...
birthday
YYYY-MM-DD
Note: FibriCheck is only validated for users >= 18 years old. FibriCheck has not been validated for use on minors.
activation_mode
Add property and set it to manual so avoid activation mails being sent out after account creation.
In integrations, typically, you don't want to share your user's personal information during account creation. If you're creating an account with an email address that does not exist, make sure to add the activation_mode property and set it to manual to avoid activation emails being sent. This switch is currently only available for API calls, but will be implemented in the upcoming SDK releases.
SDK
The following snippet shows how you can register a new user.
import 'package:flutter_fibricheck_sdk/flutter_fibricheck_sdk.dart';
import 'package:flutter_fibricheck_sdk/userdata.dart';
_sdk.register(UserRegisterData(
firstName: "John",
lastName: "Doe",
email: "[email protected]",
password: "Strong!987",
phoneNumber: "000000",
birthday: "1990-07-06",
gender: 0, // 0 = Not known; 1 = Male; 2 = Female; 9 = Not applicable
country: "JO",
language: "AR",
// It has to be a time zone that is compatible w/
// (https://docs.oracle.com/javase/8/docs/api/java/time/ZoneId.html#of-java.lang.String-)
// This library will fetch the correct time zones:
// https://pub.dev/packages/flutter_native_timezone
// The time zone will be used to render the correct times in the measurement reports
timeZone: "Europe/Brussels"
));const user = await sdk.register({
firstName: 'John',
lastName: 'Doe',
email: '[email protected]',
password: 'Strong!987',
phoneNumber: '000000',
birthday: '1970-01-01',
gender: 0, // 0 = Not known; 1 = Male; 2 = Female; 9 = Not applicable
country: 'JO',
language: 'AR',
// It has to be a time zone that is compatible w/
// (https://docs.oracle.com/javase/8/docs/api/java/time/ZoneId.html#of-java.lang.String-)
// This library will fetch the correct time zones:
// https://github.com/zoontek/react-native-localize#gettimezone
// The time zone will be used to render the correct times in the measurement reports
timeZone: "Europe/Brussels"
});REST API
Register a new user
POST https://api.fibricheck.com/users/v1/register
Request Body
first_name*
String
last_name*
String
email*
String
password*
String
phone_number*
String
language*
String
birthday
String
gender
Number
country
String
region
String
time_zone
String
activation_mode
String
Set to manual to avoid sending an activation mail (for anonymous accounts)
{
"id": "63f4c9d9775136300d3eca86",
"first_name": "John",
"last_name": "Doe",
"language": "NL",
"time_zone": "Europe/Brussels",
"email": "[email protected]",
"phone_number": "----",
"activation": false,
"creation_timestamp": 1676986841185,
"update_timestamp": 1676986841185
}In partner integrations, registered users will only be visible in the user listing endpoints after they have been added to a partner group through a prescription. See the prescriptions documentation for more information.
Password Policy
As a password policy, we currently apply the following rules:
{
"minimum_length": 8,
"maximum_length": 128,
"upper_case_required": true,
"lower_case_required": true,
"symbol_required": false,
"number_required": true
}Delete User Data
REST API
If you want to delete a user using the REST API, you need to know the internal FibriCheck userId of the user you want to delete. The userId is available in response of the /tokens endpoint after a successful authentication attempt. Note that you can only remove users that you are entitled to remove.
In the body of the API call you can provide the targeted user id in the targetUserId field.
Please don't forget to include this field, else the authenticated user, often an admin user, will be deleted!
In addition, you can optionally add a reasonType and reasonDescription. The description is a free text input, for the reasonType you can choose between:
"too_expensive",
"too_complicated",
"technical_issues",
"switched_to_different_app",
"no_health_issues_found",
"treated_by_physician",
"physician_recommended_different_app",
"privacy_concerns",
"too_much_spam",
"other"Delete User Profile
POST https://api.fibricheck.com/data/v1/user-deletion-requests/documents
Request Body
targetUserId
String
userId of the profile to remove
reasonType
String
reason for removal
reasonDescription
String
extra context for removal reason
Last updated