{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://schemas-int.api.qa.finra.org/v1/fifc/fifcImposterNotifications.json",
  "$dataVersion": 1,
  "title": "fifcImposterNotifications",
  "description": "External machine-to-machine imposter-website record (FIFC-2849 / FIFC-2846). One record returned by the Query API get-by-id endpoint.",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "id": {
      "type": "string",
      "description": "The record id: the topic UUID (the same id the M2M Change-Detection alert carries as details.id and that get-by-id accepts).",
      "format": "uuid",
      "maxLength": 36
    },
    "refNumber": {
      "type": "string",
      "description": "The topic reference number.",
      "maxLength": 256
    },
    "title": {
      "type": "string",
      "description": "The title (derived from the website).",
      "maxLength": 512
    },
    "version": {
      "type": ["integer", "null"],
      "description": "The optimistic-locking version."
    },
    "website": {
      "type": "string",
      "description": "The fraudulent website url.",
      "maxLength": 512
    },
    "registrar": {
      "type": ["string", "null"],
      "description": "The domain registrar name.",
      "maxLength": 512
    },
    "registrarAbuseEmail": {
      "type": ["string", "null"],
      "description": "The registrar abuse contact email."
    },
    "registrationDate": {
      "type": ["string", "null"],
      "description": "The date the imposter domain was registered (yyyy-MM-dd).",
      "format": "date"
    },
    "publishedDate": {
      "type": ["string", "null"],
      "description": "The date the imposter website was published/observed (yyyy-MM-dd).",
      "format": "date"
    },
    "description": {
      "type": ["string", "null"],
      "description": "The full write-up — the active EXECUTIVE_SUMMARY rich-text content (HTML). Same field and internal source as the fifcIntelligence dataset (FIFC-3012/3013)."
    },
    "intelligenceType": {
      "type": ["string", "null"],
      "description": "The product type name (e.g. \"Imposter Notification\").",
      "maxLength": 256
    },
    "categories": {
      "type": ["string", "null"],
      "description": "Comma-joined classification (topic tag) names."
    },
    "urgency": {
      "type": ["string", "null"],
      "description": "The urgency name.",
      "maxLength": 256
    },
    "sources": {
      "type": ["string", "null"],
      "description": "Comma-joined source names."
    },
    "targetType": {
      "type": ["string", "null"],
      "description": "The target type: FIRM or REP.",
      "maxLength": 4,
      "enum": ["FIRM", "REP", null]
    },
    "repCrdNumber": {
      "type": ["string", "null"],
      "description": "The targeted representative's CRD number — present only when targetType is REP.",
      "maxLength": 64
    },
    "attachments": {
      "type": "array",
      "description": "Downloadable attachment links (no inline content).",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "fileName": {
            "type": ["string", "null"],
            "description": "The attachment file name."
          },
          "url": {
            "type": "string",
            "description": "The FIST download url for the uploaded attachment.",
            "format": "uri"
          }
        },
        "required": ["url"]
      }
    },
    "createdDate": {
      "type": "string",
      "description": "The created date, ISO-8601 date-time with offset in US Eastern, whole seconds (e.g. 2026-09-29T14:17:46-04:00).",
      "format": "date-time"
    },
    "updatedDate": {
      "type": ["string", "null"],
      "description": "The updated date, ISO-8601 date-time with offset in US Eastern, whole seconds (e.g. 2026-09-29T14:17:46-04:00).",
      "format": "date-time"
    },
    "activeFlag": {
      "type": "boolean",
      "description": "Active flag derived from the internal Y/N status."
    }
  },
  "required": [
    "id",
    "refNumber",
    "title",
    "website",
    "createdDate",
    "activeFlag"
  ]
}