# at.marque.dns

> Published by [marque.at](https://lexicon.garden/identity/did:plc:nckosudltxrtrjkt4zz4jy5y)

✓ This is the authoritative definition for this NSID.

## Description

DNS zone records for a domain where Marque handles the nameservers. Stored in the user's repository.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:nckosudltxrtrjkt4zz4jy5y/at.marque.dns)
- [Documentation](https://lexicon.garden/lexicon/did:plc:nckosudltxrtrjkt4zz4jy5y/at.marque.dns/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:nckosudltxrtrjkt4zz4jy5y/at.marque.dns/examples)

## Definitions

### `at.marque.dns`

**Type**: `record`

Record containing the DNS zone entries for a domain managed by Marque. The record key matches the corresponding at.marque.domain record key (the FQDN).

**Key**: `any`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `domain` | `string` | Yes | Fully qualified domain name this zone belongs to. |
| `records` | `array` | Yes | The DNS resource records in this zone. |
| `createdAt` | `string` (datetime) | Yes | Client-declared timestamp when this record was last written. |

### `at.marque.dns#entry`

**Type**: `object`

A single DNS resource record.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `ttl` | `integer` | Yes | Time-to-live in seconds. |
| `name` | `string` | Yes | Record name relative to the zone apex. Use '@' for the apex itself. |
| `value` | `string` | Yes | Record value / rdata. |
| `priority` | `integer` | No | Priority value for MX and SRV records. |
| `recordType` | `string` | Yes | DNS record type. |

## Raw Schema

```json
{
  "id": "at.marque.dns",
  "defs": {
    "main": {
      "key": "any",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "domain",
          "records",
          "createdAt"
        ],
        "properties": {
          "domain": {
            "type": "string",
            "maxLength": 253,
            "description": "Fully qualified domain name this zone belongs to."
          },
          "records": {
            "type": "array",
            "items": {
              "ref": "#entry",
              "type": "ref"
            },
            "description": "The DNS resource records in this zone."
          },
          "createdAt": {
            "type": "string",
            "format": "datetime",
            "description": "Client-declared timestamp when this record was last written."
          }
        }
      },
      "description": "Record containing the DNS zone entries for a domain managed by Marque. The record key matches the corresponding at.marque.domain record key (the FQDN)."
    },
    "entry": {
      "type": "object",
      "required": [
        "name",
        "recordType",
        "value",
        "ttl"
      ],
      "properties": {
        "ttl": {
          "type": "integer",
          "minimum": 60,
          "description": "Time-to-live in seconds."
        },
        "name": {
          "type": "string",
          "maxLength": 253,
          "description": "Record name relative to the zone apex. Use '@' for the apex itself."
        },
        "value": {
          "type": "string",
          "maxLength": 4096,
          "description": "Record value / rdata."
        },
        "priority": {
          "type": "integer",
          "description": "Priority value for MX and SRV records."
        },
        "recordType": {
          "type": "string",
          "description": "DNS record type.",
          "knownValues": [
            "A",
            "AAAA",
            "CNAME",
            "MX",
            "TXT",
            "SRV",
            "NS",
            "CAA"
          ]
        }
      },
      "description": "A single DNS resource record."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1,
  "description": "DNS zone records for a domain where Marque handles the nameservers. Stored in the user's repository."
}
```
