{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Distribution and rebroadcast policy.",
      "properties": {
        "allowGenAiTraining": {
          "description": "Whether this content may be used as training data for generative AI models. Absent means undeclared; Streamplace treats undeclared as false and stamps an explicit value into every minted segment. Covers generative AI only — non-generative machine learning (e.g. moderation, accessibility, speech models) is not governed by this flag.",
          "type": "boolean"
        },
        "allowedBroadcasters": {
          "description": "List of did:webs of the broadcasters you want to allow to distribute your content. \"*\" allows anyone. Starting a line with a \"!\" bans that broadcaster.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "deleteAfter": {
          "description": "Duration in seconds after which segments should be deleted. Each segment will expire N seconds after its creation time. -1 to allow indefinite archival.",
          "type": "integer"
        }
      },
      "type": "object"
    }
  },
  "id": "place.stream.metadata.distributionPolicy",
  "lexicon": 1
}
