1. Go to this page and download the library: Download sentinelsup/sdk library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
sentinelsup / sdk example snippets
tinel = new \Sentinel\Client(); // reads SENTINEL_KEY from the environment
$result = $sentinel->evaluate([
'token' => $_POST['monocle'],
'fingerprintEventId' => $_POST['sentinel_fp'] ?? '',
]);
if ($result->isBlocked()) {
http_response_code(403);
exit;
}
$result->decision; // 'allow' | 'review' | 'block' — route on this
$result->riskScore; // 0-100
$result->reasons; // ['vpn_detected', 'disposable_email', ...]
$result->network; // ['vpn' => true, 'proxy' => false, 'tor' => false, ...]
$result->device; // populated when fingerprintEventId was sent
$result->country; // 'DE'
$result->raw; // the untouched response body
$result->isBlocked(); // decision === 'block'
$result->isSuspicious(); // decision !== 'allow'
$result->isDisposableEmail(); // burner domain, when an email was supplied
switch ($result->decision) {
case 'block':
return $this->refuse();
case 'review':
return $this->stepUp(); // OTP, card check, manual queue
case 'allow':
return $this->proceed();
default:
return $this->holdForReview(); // defensive fallback, not approval
}
$result = $sentinel->evaluate([
'token' => $_POST['monocle'],
'email' => $_POST['email'], // transient — never stored or logged
]);
if ($result->isBlocked()) {
return $this->reject('Signup unavailable.');
}
// A burner domain escalates allow to review on its own. Step up, don't refuse:
// masked-email relays (iCloud Hide My Email, Firefox Relay) look identical.
if ($result->decision === 'review') {
$this->