Examples

Common patterns and real-world use cases. Each example assumes you have a zyfy(path) helper that handles auth and rate limiting — see the client libraries page for that wrapper.

Sign-up fraud prevention

IP

Block Tor, Spamhaus-listed, and high-risk IPs at sign-up. Challenge anonymisers without hard-blocking legitimate VPN users.

JavaScript
// Sign-up fraud check — block Tor, VPN, and Spamhaus at the door
const res = await zyfy('ip/' + userIp);

if (res.shouldBlock) {
  return { allowed: false, reason: 'blocked_ip' };
}
if (res.isAnonymizer) {
  // Tor / VPN / iCloud Relay — challenge but don't hard block
  return { allowed: true, requireChallenge: true };
}
if (res.threatLevel === 'high' || res.threatLevel === 'critical') {
  return { allowed: true, flagForReview: true };
}

Property risk assessment

Postcode

Pull flood risk, crime, radon, and a pre-computed composite score for mortgage underwriting or insurance pricing.

JavaScript
// Property risk assessment — mortgage / insurance underwriting
const res = await zyfy('postcode/' + encodeURIComponent(postcode));

const risk = {
  floodRisk:       res.floodRiskRiversSea,     // "very_low" | "low" | "medium" | "high"
  crimeRateBand:   res.crimeRateBand,           // "very_low" … "very_high"
  propertyRiskScore: res.propertyRiskScore,     // 0.0–1.0
  propertyRiskLevel: res.propertyRiskLevel,     // "low" | "medium" | "high"
  radonPotential:  res.radonPotential,
  isFloodZone:     res.floodRiskRiversSea === 'high' || res.floodRiskRiversSea === 'medium',
};

// For insurance pricing — use propertyRiskScore directly as an input to your model
// For mortgage decisions — insuranceRiskLevel gives a quick three-band signal
console.log(res.insuranceRiskLevel); // "low" | "medium" | "high"

Used car purchase check

Vehicle

Check odometer integrity, MOT risk, outstanding recalls, and ULEZ compliance before buying a used vehicle.

JavaScript
// Used car purchase check — odometer integrity + MOT risk
const res = await zyfy('vehicle/' + reg);

if (res.enrichmentPending) {
  // New plate — retry after Retry-After seconds
  return { status: 'pending' };
}

const warnings = [];
if (res.odometerTrend === 'possible_clocking') {
  warnings.push('Odometer readings are inconsistent — possible clocking');
}
if (res.buyRecommendation === 'avoid') {
  warnings.push('High risk vehicle — avoid purchase');
}
if (res.hasOutstandingRecall) {
  warnings.push('Outstanding safety recall');
}
if (res.motStatus === 'expired') {
  warnings.push('MOT has expired');
}

return {
  registration:   res.registration,
  make:           res.make,
  ulezCompliant:  res.ulezCompliant,
  motRiskLevel:   res.motRiskLevel,
  conditionBand:  res.conditionBand,
  buyRecommendation: res.buyRecommendation,
  warnings,
};

FATF jurisdiction screening

IP

Block or flag connections from FATF blacklisted and grey list jurisdictions for AML / compliance workflows.

JavaScript
// Geo-compliance — block FATF blacklisted jurisdictions
const res = await zyfy('ip/' + userIp);

// isFatfBlacklisted = North Korea, Iran, Myanmar
if (res.isFatfBlacklisted) {
  return { blocked: true, reason: 'sanctions_jurisdiction' };
}

// isHighRiskCountry = FATF grey list
if (res.isHighRiskCountry) {
  return { blocked: false, requireEnhancedDueDiligence: true };
}

Location intelligence

Postcode

Surface liveability, air quality, green space, and local MP data for relocation tools or rental platforms.

JavaScript
// Location intelligence for relocation or lifestyle decisions
const res = await zyfy('postcode/' + encodeURIComponent(postcode));

return {
  liveabilityScore: res.liveabilityScore,      // 0.0–1.0 — higher = more liveable
  liveabilityLevel: res.liveabilityLevel,      // "low" | "medium" | "high"
  airQuality:       res.airQualityBand,        // "very_low" | "low" | "moderate" | "high"
  greenSpace:       res.greenSpaceProximityMetres, // metres to nearest park
  crimeRateBand:    res.crimeRateBand,
  mpName:           res.mpName,
  mpParty:          res.mpParty,
  epcRating:        res.epcAverageRating,      // typical energy efficiency of local homes
};

Fleet compliance check

Vehicle

Check MOT status and ULEZ compliance across a fleet in parallel. Surface vehicles with imminent or expired MOTs.

JavaScript
// Fleet compliance check — MOT and ULEZ status across multiple vehicles
const regs = ['AB12CDE', 'XY23FGH', 'PQ34JKL'];

const results = await Promise.all(
  regs.map(reg => zyfy('vehicle/' + reg))
);

const issues = results.flatMap(v => {
  const flags = [];
  if (v.motStatus === 'expired')  flags.push({ reg: v.registration, issue: 'MOT expired' });
  if (!v.ulezCompliant)           flags.push({ reg: v.registration, issue: 'Not ULEZ compliant' });
  if (v.imminentMot)              flags.push({ reg: v.registration, issue: 'MOT due within 30 days' });
  return flags;
});