Brand Studio docs
Engineering manualSchema reference

Brand Studio normalized social content record

Declared schema: schemas/social-content-record.schema.json

Source: schemas/social-content-record.schema.json. This is the complete declaration, including nested definitions and constraints. Its presence is not evidence that a runtime producer or consumer validates against it.

All schemas · Data structures and lineage

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://brand.mirrorfactory.ai/schemas/social-content-record.schema.json",
  "title": "Brand Studio normalized social content record",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "schema_version",
    "platform",
    "content_type",
    "identity",
    "author",
    "publication",
    "text",
    "media",
    "engagement",
    "conversation",
    "ownership",
    "coverage",
    "provenance"
  ],
  "properties": {
    "schema_version": {
      "const": "brand-studio-social-content/v2"
    },
    "platform": {
      "enum": [
        "linkedin",
        "facebook",
        "instagram",
        "x",
        "tiktok",
        "youtube"
      ]
    },
    "content_type": {
      "type": "string",
      "minLength": 1
    },
    "identity": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "platform_item_id",
        "canonical_url",
        "source_profile_url"
      ],
      "properties": {
        "platform_item_id": {
          "type": "string",
          "minLength": 1
        },
        "canonical_url": {
          "type": "string",
          "minLength": 1
        },
        "source_profile_url": {
          "type": "string",
          "minLength": 1
        },
        "parent_item_id": {
          "type": [
            "string",
            "null"
          ]
        },
        "thread_position": {
          "type": [
            "integer",
            "null"
          ],
          "minimum": 0
        }
      }
    },
    "author": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "name",
        "handle",
        "profile_url",
        "platform_actor_id"
      ],
      "properties": {
        "name": {
          "type": [
            "string",
            "null"
          ]
        },
        "handle": {
          "type": [
            "string",
            "null"
          ]
        },
        "profile_url": {
          "type": [
            "string",
            "null"
          ]
        },
        "platform_actor_id": {
          "type": [
            "string",
            "null"
          ]
        },
        "collaborators": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/actor"
          }
        }
      }
    },
    "publication": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "published_at",
        "published_label",
        "captured_at",
        "date_precision"
      ],
      "properties": {
        "published_at": {
          "type": [
            "string",
            "null"
          ]
        },
        "published_label": {
          "type": [
            "string",
            "null"
          ]
        },
        "captured_at": {
          "type": "string",
          "minLength": 1
        },
        "date_precision": {
          "enum": [
            "exact",
            "date",
            "relative",
            "unknown"
          ]
        },
        "edited": {
          "type": [
            "boolean",
            "null"
          ]
        }
      }
    },
    "text": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "title",
        "caption",
        "description",
        "hashtags",
        "mentions",
        "links",
        "language"
      ],
      "properties": {
        "title": {
          "type": [
            "string",
            "null"
          ]
        },
        "caption": {
          "type": [
            "string",
            "null"
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "hashtags": {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1
          },
          "uniqueItems": true
        },
        "mentions": {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1
          },
          "uniqueItems": true
        },
        "links": {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1
          },
          "uniqueItems": true
        },
        "language": {
          "type": [
            "string",
            "null"
          ]
        },
        "alt_text": {
          "type": [
            "string",
            "null"
          ]
        }
      }
    },
    "media": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/media"
      }
    },
    "engagement": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "captured_at",
        "metrics"
      ],
      "properties": {
        "captured_at": {
          "type": "string",
          "minLength": 1
        },
        "metrics": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "name",
              "value",
              "visible_label",
              "precision"
            ],
            "properties": {
              "name": {
                "enum": [
                  "views",
                  "likes",
                  "reactions",
                  "comments",
                  "shares",
                  "reposts",
                  "saves"
                ]
              },
              "value": {
                "type": [
                  "number",
                  "null"
                ],
                "minimum": 0
              },
              "visible_label": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "precision": {
                "enum": [
                  "exact",
                  "abbreviated",
                  "hidden",
                  "unknown"
                ]
              }
            }
          }
        }
      }
    },
    "conversation": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "status",
        "capture_limit",
        "captured_count",
        "records"
      ],
      "properties": {
        "status": {
          "enum": [
            "not_requested",
            "captured",
            "partial",
            "unavailable",
            "auth_required"
          ]
        },
        "capture_limit": {
          "type": "integer",
          "minimum": 0
        },
        "captured_count": {
          "type": "integer",
          "minimum": 0
        },
        "records": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/comment"
          }
        }
      }
    },
    "ownership": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "status",
        "evidence",
        "authored_brand_voice"
      ],
      "properties": {
        "status": {
          "enum": [
            "matched",
            "collaboration_observed",
            "repost_observed",
            "unverified",
            "rejected"
          ]
        },
        "evidence": {
          "type": "array",
          "minItems": 1,
          "items": {
            "type": "string",
            "minLength": 1
          }
        },
        "authored_brand_voice": {
          "type": "boolean"
        }
      }
    },
    "coverage": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "status",
        "required_fields",
        "missing_fields",
        "content_type_gate"
      ],
      "properties": {
        "status": {
          "enum": [
            "complete",
            "partial",
            "rejected"
          ]
        },
        "required_fields": {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1
          },
          "uniqueItems": true
        },
        "missing_fields": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "field",
              "reason"
            ],
            "properties": {
              "field": {
                "type": "string",
                "minLength": 1
              },
              "reason": {
                "enum": [
                  "not_exposed",
                  "not_applicable",
                  "auth_required",
                  "challenge_detected",
                  "capture_limit",
                  "unsupported_variant",
                  "fetch_failed"
                ]
              },
              "detail": {
                "type": "string"
              }
            }
          }
        },
        "content_type_gate": {
          "type": "string",
          "minLength": 1
        }
      }
    },
    "provenance": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "capture_id",
        "source_node_ids",
        "field_provenance",
        "detail_capture_status"
      ],
      "properties": {
        "capture_id": {
          "type": "string",
          "minLength": 1
        },
        "source_node_ids": {
          "type": "array",
          "minItems": 1,
          "items": {
            "type": "string",
            "minLength": 1
          }
        },
        "field_provenance": {
          "type": "object"
        },
        "detail_capture_status": {
          "enum": [
            "passed",
            "partial",
            "not_requested",
            "failed",
            "auth_required"
          ]
        },
        "screenshot_proof": {
          "type": [
            "string",
            "null"
          ]
        }
      }
    }
  },
  "$defs": {
    "actor": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "name",
        "handle",
        "profile_url"
      ],
      "properties": {
        "name": {
          "type": [
            "string",
            "null"
          ]
        },
        "handle": {
          "type": [
            "string",
            "null"
          ]
        },
        "profile_url": {
          "type": [
            "string",
            "null"
          ]
        }
      }
    },
    "media": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "index",
        "kind",
        "source_url",
        "local_path",
        "mime_type",
        "width",
        "height",
        "duration_seconds",
        "poster_url",
        "alt_text",
        "transcript",
        "capture_status"
      ],
      "properties": {
        "index": {
          "type": "integer",
          "minimum": 0
        },
        "kind": {
          "enum": [
            "image",
            "video",
            "carousel_slide",
            "document_page",
            "gif",
            "audio",
            "thumbnail",
            "live"
          ]
        },
        "source_url": {
          "type": [
            "string",
            "null"
          ]
        },
        "local_path": {
          "type": [
            "string",
            "null"
          ]
        },
        "mime_type": {
          "type": [
            "string",
            "null"
          ]
        },
        "width": {
          "type": [
            "integer",
            "null"
          ],
          "minimum": 1
        },
        "height": {
          "type": [
            "integer",
            "null"
          ],
          "minimum": 1
        },
        "duration_seconds": {
          "type": [
            "number",
            "null"
          ],
          "minimum": 0
        },
        "poster_url": {
          "type": [
            "string",
            "null"
          ]
        },
        "alt_text": {
          "type": [
            "string",
            "null"
          ]
        },
        "transcript": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "status",
            "source",
            "language",
            "path"
          ],
          "properties": {
            "status": {
              "enum": [
                "available",
                "partial",
                "unavailable",
                "not_applicable",
                "not_requested"
              ]
            },
            "source": {
              "enum": [
                "platform_caption",
                "creator_caption",
                "generated_asr",
                "none"
              ]
            },
            "language": {
              "type": [
                "string",
                "null"
              ]
            },
            "path": {
              "type": [
                "string",
                "null"
              ]
            }
          }
        },
        "sampled_frames": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "timestamp_seconds",
              "path"
            ],
            "properties": {
              "timestamp_seconds": {
                "type": "number",
                "minimum": 0
              },
              "path": {
                "type": "string",
                "minLength": 1
              }
            }
          }
        },
        "capture_status": {
          "enum": [
            "downloaded",
            "referenced",
            "sampled",
            "unavailable",
            "rights_restricted",
            "fetch_failed"
          ]
        },
        "sha256": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[a-f0-9]{64}$"
        },
        "link_first": {
          "$ref": "https://brand.mirrorfactory.ai/schemas/media-link-state.schema.json"
        }
      }
    },
    "comment": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "platform_comment_id",
        "author",
        "text",
        "published_at",
        "parent_comment_id",
        "thread_position"
      ],
      "properties": {
        "platform_comment_id": {
          "type": [
            "string",
            "null"
          ]
        },
        "author": {
          "$ref": "#/$defs/actor"
        },
        "text": {
          "type": "string"
        },
        "published_at": {
          "type": [
            "string",
            "null"
          ]
        },
        "parent_comment_id": {
          "type": [
            "string",
            "null"
          ]
        },
        "thread_position": {
          "type": "integer",
          "minimum": 0
        }
      }
    }
  }
}