changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "properties": {
+ "discoverability": {
+ "properties": {
+ "cache_age_seconds": {
+ "description": "Age of the result; 0 means it was scanned just now",
+ "type": "integer"
+ },
+ "capped": {
+ "type": "boolean"
+ },
+ "components": {
+ "items": {
+ "description": "One scored area of the domain",
+ "properties": {
+ "enabled": {
+ "type": "boolean"
+ },
+ "key": {
+ "type": "string"
+ },
+ "max": {
+ "type": "integer"
+ },
+ "name": {
+ "type": "string"
+ },
+ "points": {
+ "type": "integer"
+ },
+ "summary": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "key",
+ "name",
+ "points",
+ "max"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "domain": {
+ "type": "string"
+ },
+ "grade": {
+ "description": "A+ to F",
+ "type": "string"
+ },
+ "open_fixes": {
+ "description": "Findings above info level",
+ "type": "integer"
+ },
+ "raw": {
+ "description": "Before the cap rules that hold the headline back while a fix is open",
+ "type": "integer"
+ },
+ "recommendations": {
+ "items": {
+ "properties": {
+ "component": {
+ "type": "string"
+ },
+ "fix": {
+ "description": "The exact change to publish: a DNS record (name, type, value) or a file or tag (kind, label, value, where)",
+ "properties": {
+ "kind": {
+ "type": "string"
+ },
+ "label": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "note": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ },
+ "where": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "id": {
+ "type": "string"
+ },
+ "scan": {
+ "enum": [
+ "email",
+ "discoverability"
+ ],
+ "type": "string"
+ },
+ "severity": {
+ "enum": [
+ "critical",
+ "important",
+ "info"
+ ],
+ "type": "string"
+ },
+ "tags": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "title": {
+ "type": "string"
+ },
+ "why": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "severity",
+ "title"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "report_url": {
+ "description": "The report page for this domain on astraverify.com",
+ "type": "string"
+ },
+ "score": {
+ "description": "Out of 100, exactly as astraverify.com shows it",
+ "type": "integer"
+ },
+ "verdict": {
+ "type": "string"
+ }
+ },
+ "type": [
+ "object",
+ "null"
+ ]
+ },
+ "discoverability_cache_age_seconds": {
+ "type": [
+ "integer",
+ "null"
+ ]
+ },
+ "discoverability_error": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "domain": {
+ "type": "string"
+ },
+ "email_cache_age_seconds": {
+ "type": "integer"
+ },
+ "email_security": {
+ "properties": {
+ "cache_age_seconds": {
+ "description": "Age of the result; 0 means it was scanned just now",
+ "type": "integer"
+ },
+ "capped": {
+ "type": "boolean"
+ },
+ "components": {
+ "items": {
+ "description": "One scored area of the domain",
+ "properties": {
+ "enabled": {
+ "type": "boolean"
+ },
+ "key": {
+ "type": "string"
+ },
+ "max": {
+ "type": "integer"
+ },
+ "name": {
+ "type": "string"
+ },
+ "points": {
+ "type": "integer"
+ },
+ "summary": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "key",
+ "name",
+ "points",
+ "max"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "domain": {
+ "type": "string"
+ },
+ "grade": {
+ "description": "A+ to F",
+ "type": "string"
+ },
+ "open_fixes": {
+ "description": "Findings above info level",
+ "type": "integer"
+ },
+ "raw": {
+ "description": "Before the cap rules that hold the headline back while a fix is open",
+ "type": "integer"
+ },
+ "recommendations": {
+ "items": {
+ "properties": {
+ "component": {
+ "type": "string"
+ },
+ "fix": {
+ "description": "The exact change to publish: a DNS record (name, type, value) or a file or tag (kind, label, value, where)",
+ "properties": {
+ "kind": {
+ "type": "string"
+ },
+ "label": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "note": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ },
+ "where": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "id": {
+ "type": "string"
+ },
+ "scan": {
+ "enum": [
+ "email",
+ "discoverability"
+ ],
+ "type": "string"
+ },
+ "severity": {
+ "enum": [
+ "critical",
+ "important",
+ "info"
+ ],
+ "type": "string"
+ },
+ "tags": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "title": {
+ "type": "string"
+ },
+ "why": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "severity",
+ "title"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "report_url": {
+ "description": "The report page for this domain on astraverify.com",
+ "type": "string"
+ },
+ "score": {
+ "description": "Out of 100, exactly as astraverify.com shows it",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "live_url": {
+ "description": "The live page, which rescans when the result is stale",
+ "type": "string"
+ },
+ "recommendations": {
+ "description": "Both scans, ranked by severity",
+ "items": {
+ "properties": {
+ "component": {
+ "type": "string"
+ },
+ "fix": {
+ "description": "The exact change to publish: a DNS record (name, type, value) or a file or tag (kind, label, value, where)",
+ "properties": {
+ "kind": {
+ "type": "string"
+ },
+ "label": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "note": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ },
+ "where": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "id": {
+ "type": "string"
+ },
+ "scan": {
+ "enum": [
+ "email",
+ "discoverability"
+ ],
+ "type": "string"
+ },
+ "severity": {
+ "enum": [
+ "critical",
+ "important",
+ "info"
+ ],
+ "type": "string"
+ },
+ "tags": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "title": {
+ "type": "string"
+ },
+ "why": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "severity",
+ "title"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "report_url": {
+ "description": "Saved snapshot (/r/<id>) that opens without a rescan; safe to share",
+ "type": "string"
+ }
+ },
+ "required": [
+ "domain",
+ "email_security"
+ ],
+ "type": "object"
+}