Website Analysis API
Analyze websites for security, risk, and legitimacy using our comprehensive website analysis endpoint
The Website Analysis API provides comprehensive security assessment, risk analysis, and legitimacy verification for any website. This endpoint analyzes multiple aspects including SSL certificates, domain information, content analysis, and visual indicators to provide a complete picture of website safety and legitimacy.
Endpoint
POST https://api.beltic.com/v1/websitesRequest
Headers
| Header | Required | Description |
|---|---|---|
X-API-Key | Yes | Your API key for authentication |
Content-Type | Yes | Must be application/json |
Request Body
{
"url": "https://example.com"
}| Parameter | Type | Required | Description |
|---|---|---|---|
url | string | Yes | The website URL to analyze (must include protocol: http:// or https://) |
Example Request
curl --location 'https://api.beltic.com/v1/websites' \
--header 'X-Api-Key: <your-api-key>' \
--header 'Content-Type: application/json' \
--data '{
"url": "https://example.com"
}'Response
The API returns a comprehensive analysis object containing multiple assessment categories:
Response Structure
{
"id": "wa_01HXYZABCD123",
"attributes": {
"target_url": "https://example.com",
"security_assessment": { /* Security analysis */ },
"ssl_check": { /* SSL certificate details */ },
"risk": { /* Risk scoring and indicators */ },
"keywords": { /* Monitored keyword analysis */ },
"domain_information": { /* Domain and hosting details */ },
"performance": { /* Website performance metrics */ },
"visual_analysis": { /* Visual and brand analysis */ },
"content_analysis": { /* Content and business classification */ },
"records": { /* DNS records */ }
}
}Security Assessment
{
"security_assessment": {
"verdict": "legitimate",
"explanation": "Website appears to be legitimate and safe. No clear signs of fraud.",
"ssl_certificate_present": true
}
}| Field | Type | Description |
|---|---|---|
verdict | string | Overall security verdict: "legitimate", "suspicious", "fraudulent" |
explanation | string | Human-readable explanation of the security assessment |
ssl_certificate_present | boolean | Whether a valid SSL certificate is present |
SSL Check
{
"ssl_check": {
"version": "1.0",
"app": "ssl-checker-api",
"host": "example.com",
"response_time_sec": 0.45,
"status": "ok",
"result": {
"host": "example.com",
"resolved_ip": "23.192.228.84",
"issued_to": "*.example.com",
"issued_o": "Internet Corporation for Assigned Names and Numbers",
"issuer_c": "US",
"issuer_o": "DigiCert Inc",
"cert_sn": "14416812407440461216471976375640436634",
"cert_sha1": "31:0D:B7:AF:4B:2B:C9:04:0C:83:44:70:1A:CA:08:D0:C6:93:81:E3",
"cert_alg": "ecdsa-with-SHA384",
"cert_ver": 2,
"cert_sans": "DNS:*.example.com; DNS:example.com",
"cert_exp": false,
"cert_valid": true,
"valid_from": "2025-01-15",
"valid_till": "2026-01-15",
"validity_days": 365,
"days_left": 88,
"hsts_header_enabled": false
}
}
}Risk Analysis
The risk analysis provides comprehensive scoring and indicators:
{
"risk": {
"overall_score": 4,
"fraud_score": 0,
"recent_abuse": false,
"suspect": false,
"disposable": false,
"leaked": false,
"risky_tld": false,
"spam_trap_score": "none",
"frequent_complainer": false,
"visual_indicators": [
{
"title": "Absence of traditional trust indicators",
"description": "Security badges (e.g., SSL) not visibly displayed.",
"severity": "medium"
}
],
"domain_brand_mismatch": false,
"typosquatting_score": 0,
"punycode_in_domain": false,
"whois_privacy_enabled": false,
"whois_org_country_mismatch": false,
"past_blacklist_hits": 0
}
}Risk Scoring
- overall_score: Overall risk score (0-100, lower is better)
- fraud_score: Fraud-specific risk score (0-100)
- recent_abuse: Whether the domain has been recently flagged for abuse
- suspect: Whether the domain is considered suspicious
- disposable: Whether the domain appears to be disposable/temporary
- leaked: Whether the domain has been involved in data breaches
- risky_tld: Whether the top-level domain is considered risky
- spam_trap_score: Spam trap likelihood (
"none","low","medium","high")
Visual Indicators
Visual indicators highlight potential trust and legitimacy issues:
| Severity | Description |
|---|---|
info | Informational notice |
low | Minor concern |
medium | Moderate concern |
high | Significant concern |
critical | Critical security issue |
Domain Information
{
"domain_information": {
"whois": {
"registrar": "porkbun llc",
"created_at": "2017-09-15T00:00:00Z",
"expires_at": "2027-09-15T00:00:00Z",
"domain_age_days": "342"
},
"hosting": {
"ip_address": "8.8.8.8",
"is_ip_valid": true,
"isp": "Available for premium subscribers only.",
"geolocation": {
"country": "United States",
"country_code": "US",
"region": "Virginia",
"region_code": "VA",
"city": "city of virginia",
"postal_code": "23220",
"latitude": "37.5792",
"longitude": "-77.4756",
"timezone": "America/New_York"
}
},
"search_results": [
{
"title": "Beltic | Global Financial Compliance Infrastructure built for AI",
"url": "https://example.com/result-1",
"source": "google",
"snippet": "Beltic helps companies fight financial crime..."
}
]
}
}Performance Metrics
{
"performance": {
"performance_score": 89,
"accessibility_score": 86,
"seo_score": 92,
"best_practices_score": 100,
"core_web_vitals": {
"first_contentful_paint_seconds": 0.6,
"largest_contentful_paint_seconds": 1.0,
"cumulative_layout_shift": 0.002,
"speed_index_seconds": 1.7
}
}
}Visual Analysis
{
"visual_analysis": {
"screenshot_url": "https://cdn.example.com/screenshots/wa_01HXYZABCD123.png",
"description": "Landing page describing a global compliance layer with client logos and email form.",
"brand_elements": {
"logo_present": true,
"consistent_color_scheme": true,
"professional_typography": true,
"purpose_messaging_clear": true,
"client_or_partner_logos_present": true
}
}
}Content Analysis
{
"content_analysis": {
"summary": "Company offers global financial compliance infrastructure built for AI...",
"industry_classification": {
"categories": ["Finance"],
"naics_codes": [
{
"code": "522320",
"label": "Financial Transactions Processing, Reserve, and Clearinghouse Activities"
}
],
"sic_codes": [
{
"code": "7389",
"label": "Business Services, Not Elsewhere Classified"
}
]
},
"company": {
"name": "Beltic"
},
"business": {
"legal_name": "Acme Inc.",
"address": {
"line1": "123 Main St",
"line2": null,
"sublocality": "SoMa",
"locality": "San Francisco",
"administrative_area": "California",
"postal_code": "94111",
"country_code": "US"
},
"online_presence": {
"social_profiles": {
"github_url": null,
"linkedin_url": null,
"instagram_url": null,
"facebook_url": null,
"tiktok_url": null,
"x_url": null,
"youtube_url": null,
"other_profiles": []
},
"legal_links": {
"privacy_policy_url": null,
"terms_of_service_url": null,
"cookie_policy_url": null,
"acceptable_use_policy_url": null,
"security_page_url": null,
"legal_center_url": null
}
}
}
}
}DNS Records
{
"records": {
"mx_records": ["alt4.gmail-smtp-in.l.google.com", "alt2.gmail-smtp-in.l.google.com"],
"a_records": ["142.250.73.69", "142.250.69.165"]
}
}Error Responses
400 Bad Request
{
"error": "Invalid URL format",
"message": "URL must include protocol (http:// or https://)"
}401 Unauthorized
{
"error": "Unauthorized",
"message": "Invalid or missing API key"
}429 Too Many Requests
{
"error": "Rate limit exceeded",
"message": "Too many requests. Please try again later."
}500 Internal Server Error
{
"error": "Internal server error",
"message": "An unexpected error occurred. Please try again."
}Complete Response Example
Here's a complete example of the full API response:
{
"id": "wa_01HXYZABCD123",
"attributes": {
"target_url": "https://example.com",
"security_assessment": {
"verdict": "legitimate",
"explanation": "Website appears to be legitimate and safe. No clear signs of fraud.",
"ssl_certificate_present": true
},
"ssl_check": {
"version": "1.0",
"app": "ssl-checker-api",
"host": "example.com",
"response_time_sec": 0.45,
"status": "ok",
"result": {
"host": "example.com",
"resolved_ip": "23.192.228.84",
"issued_to": "*.example.com",
"issued_o": "Internet Corporation for Assigned Names and Numbers",
"issuer_c": "US",
"issuer_o": "DigiCert Inc",
"issuer_ou": null,
"issuer_cn": "DigiCert Global G3 TLS ECC SHA384 2020 CA1",
"cert_sn": "14416812407440461216471976375640436634",
"cert_sha1": "31:0D:B7:AF:4B:2B:C9:04:0C:83:44:70:1A:CA:08:D0:C6:93:81:E3",
"cert_alg": "ecdsa-with-SHA384",
"cert_ver": 2,
"cert_sans": "DNS:*.example.com; DNS:example.com",
"cert_exp": false,
"cert_valid": true,
"valid_from": "2025-01-15",
"valid_till": "2026-01-15",
"validity_days": 365,
"days_left": 88,
"valid_days_to_expire": 87,
"hsts_header_enabled": false
}
},
"risk": {
"overall_score": 4,
"fraud_score": 0,
"recent_abuse": false,
"suspect": false,
"disposable": false,
"leaked": false,
"risky_tld": false,
"spam_trap_score": "none",
"frequent_complainer": false,
"visual_indicators": [
{
"title": "Absence of traditional trust indicators",
"description": "Security badges (e.g., SSL) not visibly displayed.",
"severity": "medium"
},
{
"title": "Limited visible contact information",
"description": "Phone/physical address not immediately visible.",
"severity": "low"
},
{
"title": "Client logos used as trust indicators",
"description": "Logos should be independently verified.",
"severity": "low"
},
{
"title": "Stylistic footer phrase",
"description": "\"Built with :heart: in San Francisco\" may feel informal.",
"severity": "info"
},
{
"title": "Bold industry claim",
"description": "Claim about next 10 years requires substantiation.",
"severity": "medium"
}
],
"domain_brand_mismatch": false,
"typosquatting_score": 0,
"punycode_in_domain": false,
"whois_privacy_enabled": false,
"whois_org_country_mismatch": false,
"past_blacklist_hits": 0,
"certificate_self_signed": false,
"certificate_expires_in_days": 365,
"hsts_enabled": true,
"mixed_content_detected": false,
"hosting_asn_reputation": "unknown",
"geo_hosting_country_mismatch": false,
"third_party_scripts_count": 0,
"risky_script_sources": [],
"sri_missing_on_third_party_scripts": false,
"full_page_iframe_embedding": false,
"url_shortener_used": false,
"brand_impersonation_score": 0,
"fake_badge_likelihood": 0,
"grammar_error_count": 0,
"stock_photo_likelihood": 0,
"too_good_to_be_true_claims": false,
"hidden_text_or_links_detected": false,
"right_click_disabled": false,
"copy_paste_disabled": false,
"aggressive_popup_count": 0,
"forced_download_prompts": false,
"unsigned_binary_download_present": false,
"forms_collect_sensitive_data": false,
"captcha_present_on_forms": false,
"email_only_contact": false,
"contact_channels_count": 0,
"crypto_only_payments": false,
"refund_policy_missing": false,
"privacy_policy_missing": false,
"terms_of_service_missing": false,
"company_registration_missing": false,
"cookie_banner_missing_with_trackers": false,
"schema_org_business_profile_missing": false,
"verified_social_profiles_count": 0,
"broken_links_ratio": 0,
"review_widget_without_link": false
},
"keywords": {
"monitored": [
{
"keyword": "san francisco",
"match_score": 10,
"risk_level": "low",
"context_snippet": "Re-Imagining Compliance. Built with :heart: in San Francisco",
"found_in": "content"
}
]
},
"domain_information": {
"whois": {
"registrar": "porkbun llc",
"created_at": "2017-09-15T00:00:00Z",
"expires_at": "2027-09-15T00:00:00Z",
"domain_age_days": "342"
},
"hosting": {
"ip_address": "8.8.8.8",
"is_ip_valid": true,
"isp": "Available for premium subscribers only.",
"geolocation": {
"country": "United States",
"country_code": "US",
"region": "Virginia",
"region_code": "VA",
"city": "city of virginia",
"postal_code": "23220",
"latitude": "37.5792",
"longitude": "-77.4756",
"timezone": "America/New_York"
}
},
"search_results": [
{
"title": "Beltic | Global Financial Compliance Infrastructure built for AI",
"url": "https://example.com/result-1",
"source": "google",
"snippet": "Beltic helps companies fight financial crime..."
},
{
"title": "Beltic | LinkedIn",
"url": "https://linkedin.com/company/beltic",
"source": "google",
"snippet": "Beltic is building the AML compliance infrastructure..."
},
{
"title": "Beltic Company Profile",
"url": "https://example.com/result-3",
"source": "google",
"snippet": "Developer of an AI‑powered compliance platform..."
}
]
},
"performance": {
"performance_score": 89,
"accessibility_score": 86,
"seo_score": 92,
"best_practices_score": 100,
"core_web_vitals": {
"first_contentful_paint_seconds": 0.6,
"largest_contentful_paint_seconds": 1.0,
"cumulative_layout_shift": 0.002,
"speed_index_seconds": 1.7
}
},
"visual_analysis": {
"screenshot_url": "https://cdn.example.com/screenshots/wa_01HXYZABCD123.png",
"description": "Landing page describing a global compliance layer with client logos and email form.",
"brand_elements": {
"logo_present": true,
"consistent_color_scheme": true,
"professional_typography": true,
"purpose_messaging_clear": true,
"client_or_partner_logos_present": true
}
},
"content_analysis": {
"summary": "Company offers global financial compliance infrastructure built for AI...",
"industry_classification": {
"categories": ["Finance"],
"naics_codes": [
{
"code": "522320",
"label": "Financial Transactions Processing, Reserve, and Clearinghouse Activities"
}
],
"sic_codes": [
{
"code": "7389",
"label": "Business Services, Not Elsewhere Classified"
}
]
},
"company": {
"name": "Beltic"
},
"business": {
"legal_name": "Acme Inc.",
"address": {
"line1": "123 Main St",
"line2": null,
"sublocality": "SoMa",
"locality": "San Francisco",
"administrative_area": "California",
"postal_code": "94111",
"country_code": "US"
},
"online_presence": {
"social_profiles": {
"github_url": null,
"linkedin_url": null,
"instagram_url": null,
"facebook_url": null,
"tiktok_url": null,
"x_url": null,
"youtube_url": null,
"other_profiles": []
},
"legal_links": {
"privacy_policy_url": null,
"terms_of_service_url": null,
"cookie_policy_url": null,
"acceptable_use_policy_url": null,
"security_page_url": null,
"legal_center_url": null
}
}
},
"raw_text_content": ""
},
"records": {
"mx_records": ["alt4.gmail-smtp-in.l.google.com", "alt2.gmail-smtp-in.l.google.com"],
"a_records": ["142.250.73.69", "142.250.69.165"]
}
}
}Support
For questions about the Website Analysis API, contact the engineering team or refer to our internal documentation.