{
  "@context": {
    "@vocab": "https://firstsales.io/schema#",
    "schema": "https://schema.org/",
    "xsd": "http://www.w3.org/2001/XMLSchema#",
    "dcterms": "http://purl.org/dc/terms/",
    "firstsales": "https://firstsales.io/schema#",
    "Error": "firstsales:Error",
    "error": {
      "@id": "firstsales:error",
      "@type": "xsd:string"
    },
    "message": {
      "@id": "firstsales:message",
      "@type": "xsd:string"
    },
    "hint": {
      "@id": "firstsales:hint",
      "@type": "xsd:string"
    },
    "MailTesterError": "firstsales:MailTesterError",
    "success": {
      "@id": "firstsales:success",
      "@type": "xsd:boolean"
    },
    "HealthResponse": "firstsales:HealthResponse",
    "status": {
      "@id": "firstsales:status",
      "@type": "xsd:string"
    },
    "timestamp": {
      "@id": "firstsales:timestamp",
      "@type": "xsd:dateTime"
    },
    "uptime": {
      "@id": "firstsales:uptime",
      "@type": "xsd:decimal"
    },
    "PublicTutorial": "firstsales:PublicTutorial",
    "slug": {
      "@id": "firstsales:slug",
      "@type": "xsd:string"
    },
    "title": {
      "@id": "firstsales:title",
      "@type": "xsd:string"
    },
    "summary": {
      "@id": "firstsales:summary",
      "@type": "xsd:string"
    },
    "category": {
      "@id": "firstsales:category",
      "@type": "xsd:string"
    },
    "industry": {
      "@id": "firstsales:industry",
      "@type": "xsd:string"
    },
    "difficulty": {
      "@id": "firstsales:difficulty",
      "@type": "xsd:string"
    },
    "estMinutes": {
      "@id": "firstsales:estMinutes",
      "@type": "xsd:decimal"
    },
    "steps": {
      "@id": "firstsales:steps",
      "@container": "@list"
    },
    "proTips": {
      "@id": "firstsales:proTips",
      "@container": "@list"
    },
    "faqs": {
      "@id": "firstsales:faqs",
      "@container": "@list"
    },
    "CursorPageInfo": "firstsales:CursorPageInfo",
    "nextCursor": {
      "@id": "firstsales:nextCursor",
      "@type": "xsd:string"
    },
    "prevCursor": {
      "@id": "firstsales:prevCursor",
      "@type": "xsd:string"
    },
    "hasMore": {
      "@id": "firstsales:hasMore",
      "@type": "xsd:boolean"
    },
    "total": {
      "@id": "firstsales:total",
      "@type": "xsd:decimal"
    },
    "MxRecord": "firstsales:MxRecord",
    "exchange": {
      "@id": "firstsales:exchange",
      "@type": "xsd:string"
    },
    "priority": {
      "@id": "firstsales:priority",
      "@type": "xsd:decimal"
    },
    "EmailValidationResult": "firstsales:EmailValidationResult",
    "valid": {
      "@id": "firstsales:valid",
      "@type": "xsd:boolean"
    },
    "domain": {
      "@id": "firstsales:domain",
      "@type": "xsd:string"
    },
    "domainExists": {
      "@id": "firstsales:domainExists",
      "@type": "xsd:boolean"
    },
    "hasMx": {
      "@id": "firstsales:hasMx",
      "@type": "xsd:boolean"
    },
    "isReserved": {
      "@id": "firstsales:isReserved",
      "@type": "xsd:boolean"
    },
    "isDisposable": {
      "@id": "firstsales:isDisposable",
      "@type": "xsd:boolean"
    },
    "isFreeProvider": {
      "@id": "firstsales:isFreeProvider",
      "@type": "xsd:boolean"
    },
    "mxRecords": {
      "@id": "firstsales:mxRecords",
      "@container": "@list"
    },
    "DisposableCheckResult": "firstsales:DisposableCheckResult",
    "score": {
      "@id": "firstsales:score",
      "@type": "xsd:decimal"
    },
    "classification": {
      "@id": "firstsales:classification",
      "@type": "xsd:string"
    },
    "checks": {
      "@id": "firstsales:checks",
      "@container": "@list"
    },
    "details": {
      "@id": "firstsales:details"
    },
    "CatchAllResult": "firstsales:CatchAllResult",
    "isCatchAll": {
      "@id": "firstsales:isCatchAll",
      "@type": "xsd:boolean"
    },
    "confidence": {
      "@id": "firstsales:confidence",
      "@type": "xsd:string"
    },
    "DnsCheckResult": "firstsales:DnsCheckResult",
    "exists": {
      "@id": "firstsales:exists",
      "@type": "xsd:boolean"
    },
    "records": {
      "@id": "firstsales:records",
      "@container": "@list"
    },
    "DkimResult": "firstsales:DkimResult",
    "selector": {
      "@id": "firstsales:selector",
      "@type": "xsd:string"
    },
    "recordFound": {
      "@id": "firstsales:recordFound",
      "@type": "xsd:boolean"
    },
    "validStructure": {
      "@id": "firstsales:validStructure",
      "@type": "xsd:boolean"
    },
    "publicKeyPresent": {
      "@id": "firstsales:publicKeyPresent",
      "@type": "xsd:boolean"
    },
    "rawRecord": {
      "@id": "firstsales:rawRecord",
      "@type": "xsd:string"
    },
    "DnsValidateResult": "firstsales:DnsValidateResult",
    "spf": {
      "@id": "firstsales:spf"
    },
    "dkim": {
      "@id": "firstsales:dkim"
    },
    "dmarc": {
      "@id": "firstsales:dmarc"
    },
    "mx": {
      "@id": "firstsales:mx"
    },
    "confidence_score": {
      "@id": "firstsales:confidence_score",
      "@type": "xsd:decimal"
    },
    "metadata": {
      "@id": "firstsales:metadata"
    },
    "ReverseDnsResult": "firstsales:ReverseDnsResult",
    "ip": {
      "@id": "firstsales:ip",
      "@type": "xsd:string"
    },
    "hostnames": {
      "@id": "firstsales:hostnames",
      "@container": "@list"
    },
    "forwardResults": {
      "@id": "firstsales:forwardResults",
      "@container": "@list"
    },
    "ptrError": {
      "@id": "firstsales:ptrError",
      "@type": "xsd:string"
    },
    "ipClass": {
      "@id": "firstsales:ipClass"
    },
    "networkType": {
      "@id": "firstsales:networkType",
      "@type": "xsd:string"
    },
    "DomainAgeResult": "firstsales:DomainAgeResult",
    "registrationDate": {
      "@id": "firstsales:registrationDate",
      "@type": "xsd:string"
    },
    "expirationDate": {
      "@id": "firstsales:expirationDate",
      "@type": "xsd:string"
    },
    "lastUpdated": {
      "@id": "firstsales:lastUpdated",
      "@type": "xsd:string"
    },
    "ageInDays": {
      "@id": "firstsales:ageInDays",
      "@type": "xsd:decimal"
    },
    "ageInMonths": {
      "@id": "firstsales:ageInMonths",
      "@type": "xsd:decimal"
    },
    "ageInYears": {
      "@id": "firstsales:ageInYears",
      "@type": "xsd:decimal"
    },
    "registrar": {
      "@id": "firstsales:registrar",
      "@type": "xsd:string"
    },
    "name": {
      "@id": "firstsales:name",
      "@type": "xsd:string"
    },
    "DnsRecordsResult": "firstsales:DnsRecordsResult",
    "totalRecords": {
      "@id": "firstsales:totalRecords",
      "@type": "xsd:decimal"
    },
    "SubdomainsResult": "firstsales:SubdomainsResult",
    "subdomains": {
      "@id": "firstsales:subdomains",
      "@container": "@list"
    },
    "count": {
      "@id": "firstsales:count",
      "@type": "xsd:decimal"
    },
    "source": {
      "@id": "firstsales:source",
      "@type": "xsd:string"
    },
    "SpamAnalysisResult": "firstsales:SpamAnalysisResult",
    "triggerWords": {
      "@id": "firstsales:triggerWords",
      "@container": "@list"
    },
    "suggestions": {
      "@id": "firstsales:suggestions",
      "@container": "@list"
    },
    "ContentAnalysisResult": "firstsales:ContentAnalysisResult",
    "issues": {
      "@id": "firstsales:issues",
      "@container": "@list"
    },
    "strengths": {
      "@id": "firstsales:strengths",
      "@container": "@list"
    },
    "improvedVersion": {
      "@id": "firstsales:improvedVersion",
      "@type": "xsd:string"
    },
    "ColdEmailAnalysisResult": "firstsales:ColdEmailAnalysisResult",
    "grade": {
      "@id": "firstsales:grade",
      "@type": "xsd:string"
    },
    "weaknesses": {
      "@id": "firstsales:weaknesses",
      "@container": "@list"
    },
    "improvements": {
      "@id": "firstsales:improvements",
      "@container": "@list"
    },
    "metrics": {
      "@id": "firstsales:metrics"
    },
    "PersonalizationAnalysisResult": "firstsales:PersonalizationAnalysisResult",
    "personalization": {
      "@id": "firstsales:personalization"
    }
  },
  "@type": "schema:Dataset",
  "schema:name": "FirstSales API JSON-LD context",
  "schema:description": "A JSON-LD @context for the objects FirstSales's own API contract declares: one class per component schema, one property per declared field, typed from the contract. Derived by script (derive-json-ld.py, 2026-11-08) from openapi/firstsales-io-openapi.json, openapi/openapi.json.",
  "dcterms:created": "2026-11-08",
  "dcterms:source": [
    "openapi/firstsales-io-openapi.json",
    "openapi/openapi.json"
  ]
}