{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/artashippinginc/json-schema/artashippinginc-address-verification-schema.json",
  "title": "AddressVerification",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/artashippinginc-address-verifications-api-openapi.yml#/components/schemas/AddressVerification",
  "properties": {
    "created_at": {
      "description": "A NaiveDatetime-formatted timestamp describing when the resource was created with microsecond precision",
      "type": "string",
      "x-struct": null,
      "x-validate": null
    },
    "id": {
      "description": "The id of the address verification in UUID format",
      "format": "uuid",
      "type": "string",
      "x-struct": null,
      "x-validate": null
    },
    "input": {
      "description": "The original address as submitted",
      "properties": {
        "address_line_1": {
          "description": "Primary street address line",
          "type": "string",
          "x-struct": null,
          "x-validate": null
        },
        "address_line_2": {
          "description": "Secondary address line (apartment, suite, unit, etc.)",
          "type": [
            "string",
            "null"
          ],
          "x-struct": null,
          "x-validate": null
        },
        "address_line_3": {
          "description": "Tertiary address line. Used for some international formats",
          "type": [
            "string",
            "null"
          ],
          "x-struct": null,
          "x-validate": null
        },
        "city": {
          "description": "City or locality name",
          "type": [
            "string",
            "null"
          ],
          "x-struct": null,
          "x-validate": null
        },
        "country": {
          "description": "ISO 3166-1 alpha-2 country code",
          "type": "string",
          "x-struct": null,
          "x-validate": null
        },
        "postal_code": {
          "description": "Postal or ZIP code",
          "type": [
            "string",
            "null"
          ],
          "x-struct": null,
          "x-validate": null
        },
        "region": {
          "description": "State, province, or region code",
          "type": [
            "string",
            "null"
          ],
          "x-struct": null,
          "x-validate": null
        }
      },
      "type": "object",
      "x-struct": null,
      "x-validate": null
    },
    "match_level": {
      "description": "The granularity of the address match, from most to least precise",
      "enum": [
        "delivery_point",
        "premise",
        "thoroughfare",
        "locality",
        "administrative_area",
        "none"
      ],
      "type": "string",
      "x-struct": null,
      "x-validate": null
    },
    "recommendation": {
      "description": "The verified and corrected address with geocoding data. Fields may be null if verification failed",
      "properties": {
        "address_line_1": {
          "description": "Corrected primary street address",
          "type": [
            "string",
            "null"
          ],
          "x-struct": null,
          "x-validate": null
        },
        "address_line_2": {
          "description": "Corrected secondary address line",
          "type": [
            "string",
            "null"
          ],
          "x-struct": null,
          "x-validate": null
        },
        "address_line_3": {
          "description": "Corrected tertiary address line",
          "type": [
            "string",
            "null"
          ],
          "x-struct": null,
          "x-validate": null
        },
        "city": {
          "description": "Corrected city or locality",
          "type": [
            "string",
            "null"
          ],
          "x-struct": null,
          "x-validate": null
        },
        "country": {
          "description": "ISO 3166-1 alpha-2 country code",
          "type": "string",
          "x-struct": null,
          "x-validate": null
        },
        "is_residential": {
          "description": "Whether the address is classified as residential. US addresses only; null for international or when unknown",
          "type": [
            "boolean",
            "null"
          ],
          "x-struct": null,
          "x-validate": null
        },
        "latitude": {
          "description": "Latitude coordinate of the verified address",
          "format": "float",
          "type": [
            "number",
            "null"
          ],
          "x-struct": null,
          "x-validate": null
        },
        "longitude": {
          "description": "Longitude coordinate of the verified address",
          "format": "float",
          "type": [
            "number",
            "null"
          ],
          "x-struct": null,
          "x-validate": null
        },
        "postal_code": {
          "description": "Corrected postal code. For US addresses, may include the +4 extension (e.g., `10001-1234`)",
          "type": [
            "string",
            "null"
          ],
          "x-struct": null,
          "x-validate": null
        },
        "region": {
          "description": "Corrected state, province, or region",
          "type": [
            "string",
            "null"
          ],
          "x-struct": null,
          "x-validate": null
        }
      },
      "type": "object",
      "x-struct": null,
      "x-validate": null
    },
    "reference": {
      "description": "An optional client-provided reference string for correlating with your own records",
      "type": [
        "string",
        "null"
      ],
      "x-struct": null,
      "x-validate": null
    },
    "shortcode": {
      "description": "A human-readable identifier for the address verification prefixed with the organization's shortcode",
      "type": "string",
      "x-struct": null,
      "x-validate": null
    },
    "status": {
      "description": "The verification outcome",
      "enum": [
        "success",
        "partial",
        "failed"
      ],
      "type": "string",
      "x-struct": null,
      "x-validate": null
    },
    "updated_at": {
      "description": "A NaiveDatetime-formatted timestamp describing when the resource was last updated with microsecond precision",
      "type": "string",
      "x-struct": null,
      "x-validate": null
    }
  },
  "type": "object",
  "x-struct": "Elixir.DocsWeb.Schemas.Response.AddressVerification",
  "x-validate": null
}