changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "properties": {
+ "analysis": {
+ "description": "Derived safety analysis based on labels and moderation state.",
+ "properties": {
+ "hasContentWarnings": {
+ "description": "True if any content warnings were detected.",
+ "type": "boolean"
+ },
+ "isNSFW": {
+ "description": "True if NSFW-related labels were found.",
+ "type": "boolean"
+ },
+ "isSpam": {
+ "description": "True if spam labels were found.",
+ "type": "boolean"
+ },
+ "requiresWarning": {
+ "description": "True if a warning should be shown before displaying content.",
+ "type": "boolean"
+ },
+ "safetyLevel": {
+ "description": "\"safe\" = no issues; \"warning\" = minor labels or muted; \"restricted\" = spam/hate; \"blocked\" = mutual or list block.",
+ "enum": [
+ "safe",
+ "warning",
+ "restricted",
+ "blocked"
+ ],
+ "type": "string"
+ }
+ },
+ "required": [
+ "hasContentWarnings",
+ "isNSFW",
+ "isSpam",
+ "requiresWarning",
+ "safetyLevel"
+ ],
+ "type": "object"
+ },
+ "moderation": {
+ "description": "Raw moderation state for the subject.",
+ "properties": {
+ "blocked": {
+ "description": "True if you are blocking this account (user subjects only).",
+ "type": "boolean"
+ },
+ "blockedBy": {
+ "description": "True if this account is blocking you (user subjects only).",
+ "type": "boolean"
+ },
+ "blocking": {
+ "description": "AT-URI of your block record for this account, if any.",
+ "type": "string"
+ },
+ "blockingByList": {
+ "description": "Moderation list that caused the block, if applicable.",
+ "properties": {
+ "name": {
+ "description": "Display name of the list.",
+ "type": "string"
+ },
+ "uri": {
+ "description": "AT-URI of the list.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "uri"
+ ],
+ "type": "object"
+ },
+ "labels": {
+ "description": "Content labels attached to the subject (present when includeLabels=true and labels exist).",
+ "items": {
+ "properties": {
+ "cts": {
+ "description": "ISO-8601 timestamp when the label was created.",
+ "type": "string"
+ },
+ "src": {
+ "description": "DID of the labeler that issued this label.",
+ "type": "string"
+ },
+ "uri": {
+ "description": "AT-URI of the labeled record.",
+ "type": "string"
+ },
+ "val": {
+ "description": "Label value (e.g. \"nsfw\", \"spam\").",
+ "type": "string"
+ }
+ },
+ "required": [
+ "src",
+ "uri",
+ "val",
+ "cts"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "muted": {
+ "description": "True if you have muted this account (user subjects only).",
+ "type": "boolean"
+ },
+ "mutedByList": {
+ "description": "Moderation list that caused the mute, if applicable.",
+ "properties": {
+ "name": {
+ "description": "Display name of the list.",
+ "type": "string"
+ },
+ "uri": {
+ "description": "AT-URI of the list.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "uri"
+ ],
+ "type": "object"
+ }
+ },
+ "type": "object"
+ },
+ "subject": {
+ "description": "The DID or AT-URI that was analyzed.",
+ "type": "string"
+ },
+ "subjectType": {
+ "description": "\"user\" when subject is a DID; \"post\" when subject is an AT-URI.",
+ "enum": [
+ "user",
+ "post"
+ ],
+ "type": "string"
+ },
+ "success": {
+ "description": "Whether the analysis completed successfully.",
+ "type": "boolean"
+ }
+ },
+ "required": [
+ "success",
+ "subject",
+ "subjectType",
+ "moderation",
+ "analysis"
+ ],
+ "type": "object"
+}