social.coves.aggregator.register

coves.social

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Register an existing aggregator DID with this Coves instance. Aggregators must first create their own DID via PLC directory, then call this endpoint to register. Domain ownership is verified via .well-known/atproto-did file.",
      "errors": [
        {
          "description": "DID format is invalid or not did:plc or did:web format",
          "name": "InvalidDID"
        },
        {
          "description": "Could not verify domain ownership via .well-known/atproto-did or DID mismatch",
          "name": "DomainVerificationFailed"
        },
        {
          "description": "This aggregator DID is already registered with this instance",
          "name": "AlreadyRegistered"
        },
        {
          "description": "Could not resolve DID document to extract handle and PDS URL",
          "name": "DIDResolutionFailed"
        },
        {
          "description": "Internal server error occurred during registration",
          "name": "RegistrationFailed"
        }
      ],
      "input": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "did": {
              "description": "DID of the aggregator (did:plc or did:web format)",
              "format": "did",
              "type": "string"
            },
            "domain": {
              "description": "Hostname where the aggregator is hosted, without scheme (e.g., 'rss-bot.example.com'). Must serve a .well-known/atproto-did file containing the DID.",
              "maxLength": 253,
              "type": "string"
            }
          },
          "required": [
            "did",
            "domain"
          ],
          "type": "object"
        }
      },
      "output": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "did": {
              "description": "DID of the registered aggregator",
              "format": "did",
              "type": "string"
            },
            "handle": {
              "description": "Handle extracted from DID document",
              "maxLength": 512,
              "type": "string"
            },
            "message": {
              "description": "Success message with next steps",
              "maxLength": 1000,
              "type": "string"
            }
          },
          "required": [
            "did",
            "handle"
          ],
          "type": "object"
        }
      },
      "type": "procedure"
    }
  },
  "id": "social.coves.aggregator.register",
  "lexicon": 1
}

Validate Record

Validate a record against social.coves.aggregator.register

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:web:coves.social
CID
bafyreig77xc55armfcnyily2pp7xvqdkciquthviwfvnxwvuamkmt74ale
Indexed At
2026-07-24 05:18 UTC
AT-URI
at://did:web:coves.social/com.atproto.lexicon.schema/social.coves.aggregator.register

Similar Lexicons

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • Enable an aggregator for a community. Creates an authorization record in the community's repository. Requires moderator permissions.

Lexicon Garden

@