{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/hostinger/main/json-schema/hostinger-dns-v1-snapshot-snapshot-with-content-resource-schema.json",
  "title": "DNS.V1.Snapshot.SnapshotWithContentResource",
  "x-generated": "2026-10-26",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/hostinger-dns-snapshot-api-openapi.yml#/components/schemas/DNS.V1.Snapshot.SnapshotWithContentResource",
  "properties": {
    "id": {
      "description": "Snapshot ID",
      "type": "integer"
    },
    "reason": {
      "description": "Reason of the update",
      "type": "string"
    },
    "snapshot": {
      "$ref": "#/$defs/DNS.V1.Zone.RecordCollection"
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    }
  },
  "type": "object",
  "$defs": {
    "DNS.V1.Zone.NameRecordCollection": {
      "description": "Array of [`DNS.V1.Zone.NameRecordResource`](#model/dnsv1zonenamerecordresource)",
      "type": "array",
      "items": {
        "$ref": "#/$defs/DNS.V1.Zone.NameRecordResource"
      }
    },
    "DNS.V1.Zone.NameRecordResource": {
      "properties": {
        "content": {
          "description": "Content of the name record",
          "type": "string"
        },
        "is_disabled": {
          "description": "Flag to mark name record as disabled",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "DNS.V1.Zone.RecordCollection": {
      "description": "Array of [`DNS.V1.Zone.RecordResource`](#model/dnsv1zonerecordresource)",
      "type": "array",
      "items": {
        "$ref": "#/$defs/DNS.V1.Zone.RecordResource"
      }
    },
    "DNS.V1.Zone.RecordResource": {
      "properties": {
        "name": {
          "description": "Name of the record (use `@` for wildcard name)",
          "type": "string"
        },
        "records": {
          "$ref": "#/$defs/DNS.V1.Zone.NameRecordCollection"
        },
        "ttl": {
          "description": "TTL (Time-To-Live) of the record",
          "type": "integer"
        },
        "type": {
          "description": "Type of the record",
          "type": "string",
          "enum": [
            "A",
            "AAAA",
            "CNAME",
            "ALIAS",
            "MX",
            "TXT",
            "NS",
            "SOA",
            "SRV",
            "CAA"
          ]
        }
      },
      "type": "object"
    }
  }
}