disban-io · Schema

Verdict

CompanyEmailDisposable-EmailAPISecurityFraud-Prevention

Properties

Name Type Description
domain string
category string
reason string
status integer
email stringnull Request-only echo; never persisted in history.
normalized_email stringnull Domain normalized; local-part case preserved. Null for domain-only requests and history.
domain_authority numbernull
domain_age_in_days integernull
mx booleannull Fresh explicit non-null MX present. False for Null MX or confirmed absence; null when unverified. False does not exclude implicit SMTP routing.
mx_records arraynull
mx_providers arraynull
spf stringnull
dmarc stringnull
public_domain booleannull
relay_domain booleannull
free_subdomain booleannull
alias booleannull
role_account booleannull
spam booleannull
did_you_mean stringnull
disposable booleannull Null for unresolved classification; never treat null as clean.
cached boolean
historical_disposable boolean Records existing list or reviewed seed history, independently of current classification. Can be true for currently confirmed disposable services; it is not a low-confidence flag and is not proof of cu
mail_routing object
matched_on string
latency_ms number
View JSON Schema on GitHub

JSON Schema

disban-io-verdict-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/disban-io/json-schema/disban-io-verdict-schema.json",
  "title": "Verdict",
  "x-generated": "2026-10-30",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/disban-io-openapi.json#/components/schemas/Verdict",
  "type": "object",
  "properties": {
    "domain": {
      "type": "string"
    },
    "category": {
      "type": "string",
      "enum": [
        "disposable",
        "free",
        "alias",
        "testing",
        "parked",
        "unknown"
      ]
    },
    "reason": {
      "type": "string"
    },
    "status": {
      "type": "integer",
      "const": 200
    },
    "email": {
      "type": [
        "string",
        "null"
      ],
      "description": "Request-only echo; never persisted in history."
    },
    "normalized_email": {
      "type": [
        "string",
        "null"
      ],
      "description": "Domain normalized; local-part case preserved. Null for domain-only requests and history."
    },
    "domain_authority": {
      "type": [
        "number",
        "null"
      ]
    },
    "domain_age_in_days": {
      "type": [
        "integer",
        "null"
      ]
    },
    "mx": {
      "type": [
        "boolean",
        "null"
      ],
      "description": "Fresh explicit non-null MX present. False for Null MX or confirmed absence; null when unverified. False does not exclude implicit SMTP routing."
    },
    "mx_records": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "type": "object",
        "properties": {
          "hostname": {
            "type": "string"
          },
          "priority": {
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "hostname",
          "priority"
        ]
      }
    },
    "mx_providers": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "grade": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "slug",
          "type",
          "grade"
        ]
      }
    },
    "spf": {
      "type": [
        "string",
        "null"
      ]
    },
    "dmarc": {
      "type": [
        "string",
        "null"
      ]
    },
    "public_domain": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "relay_domain": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "free_subdomain": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "alias": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "role_account": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "spam": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "did_you_mean": {
      "type": [
        "string",
        "null"
      ]
    },
    "disposable": {
      "type": [
        "boolean",
        "null"
      ],
      "description": "Null for unresolved classification; never treat null as clean."
    },
    "cached": {
      "type": "boolean"
    },
    "historical_disposable": {
      "type": "boolean",
      "description": "Records existing list or reviewed seed history, independently of current classification. Can be true for currently confirmed disposable services; it is not a low-confidence flag and is not proof of current operation."
    },
    "mail_routing": {
      "type": "object",
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "routable",
            "invalid",
            "unknown"
          ]
        },
        "reason": {
          "type": "string"
        },
        "observed_at": {
          "type": "string",
          "format": "date-time"
        },
        "expires_at": {
          "type": "string",
          "format": "date-time"
        },
        "review_required": {
          "type": "boolean"
        }
      },
      "required": [
        "status",
        "reason"
      ]
    },
    "matched_on": {
      "type": "string"
    },
    "latency_ms": {
      "type": "number"
    }
  },
  "required": [
    "domain",
    "category",
    "reason"
  ]
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/disban-io-verdict"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.