{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/leaseweb/main/json-schema/leaseweb-resource-record-set-details-schema.json",
  "title": "resourceRecordSetDetails",
  "x-generated": "2026-10-13",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/leaseweb-dns-openapi.yml#/components/schemas/resourceRecordSetDetails",
  "allOf": [
    {
      "properties": {
        "editable": {
          "$ref": "#/$defs/editable"
        },
        "_links": {
          "$ref": "#/$defs/ldLinks"
        }
      },
      "required": [
        "_links",
        "editable"
      ],
      "title": "resourceRecordSetDetails",
      "type": "object"
    },
    {
      "$ref": "#/$defs/resourceRecordSet"
    }
  ],
  "$defs": {
    "collection": {
      "description": "Link to the resource record sets collection",
      "properties": {
        "href": {
          "description": "Hyperlink to the resource record sets collection location",
          "type": "string"
        }
      },
      "required": [
        "href"
      ],
      "title": "collection",
      "type": "object"
    },
    "editable": {
      "description": "May the set be edited",
      "type": "boolean"
    },
    "ldLinks": {
      "description": "Links to related resource locations",
      "properties": {
        "self": {
          "$ref": "#/$defs/self"
        },
        "collection": {
          "$ref": "#/$defs/collection"
        }
      },
      "required": [
        "collection",
        "self"
      ],
      "title": "ldLinks",
      "type": "object"
    },
    "resourceRecordSet": {
      "properties": {
        "name": {
          "description": "Name of the resource record set",
          "type": "string"
        },
        "type": {
          "$ref": "#/$defs/resourceRecordSetType"
        },
        "content": {
          "description": "Array of resource record set content entries",
          "items": {
            "description": "Content entries for the resource record set",
            "type": "string"
          },
          "title": "resourceRecordSetContent",
          "type": "array"
        },
        "ttl": {
          "$ref": "#/$defs/ttl"
        }
      },
      "required": [
        "content",
        "name",
        "ttl",
        "type"
      ],
      "title": "resourceRecordSet",
      "type": "object"
    },
    "resourceRecordSetType": {
      "description": "Type of the resource record set",
      "enum": [
        "A",
        "AAAA",
        "CAA",
        "CNAME",
        "MX",
        "NS",
        "SRV",
        "TXT",
        "SOA",
        "DS",
        "TLSA"
      ],
      "type": "string"
    },
    "self": {
      "description": "Link to the resource record set resource",
      "properties": {
        "href": {
          "description": "Hyperlink to the resource record set's location",
          "type": "string"
        }
      },
      "required": [
        "href"
      ],
      "title": "self",
      "type": "object"
    },
    "ttl": {
      "description": "Time to live of the resource record set",
      "enum": [
        60,
        300,
        1800,
        3600,
        14400,
        28800,
        43200,
        86400
      ],
      "type": "integer"
    }
  }
}