Octopoes Models

octopoes.models.ooi.service

pydantic model octopoes.models.ooi.service.IPService[source]

Show JSON schema
{
   "title": "IPService",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "IPService",
         "default": "IPService",
         "enum": [
            "IPService"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "ip_port": {
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": 0,
         "object_type": "IPPort",
         "title": "Ip Port",
         "type": "string"
      },
      "service": {
         "max_inherit_scan_level": 0,
         "max_issue_scan_level": 1,
         "object_type": "Service",
         "title": "Service",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "ip_port",
      "service"
   ]
}

Fields:
field ip_port: Reference [Required]
field object_type: Literal['IPService'] = 'IPService'
field service: Reference [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.service.Service[source]

Show JSON schema
{
   "title": "Service",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "Service",
         "default": "Service",
         "enum": [
            "Service"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "name": {
         "title": "Name",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "name"
   ]
}

Fields:
field name: str [Required]
field object_type: Literal['Service'] = 'Service'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.service.TLSCipher[source]

Show JSON schema
{
   "title": "TLSCipher",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "TLSCipher",
         "default": "TLSCipher",
         "enum": [
            "TLSCipher"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "ip_service": {
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": 0,
         "object_type": "IPService",
         "title": "Ip Service",
         "type": "string"
      },
      "suites": {
         "title": "Suites",
         "type": "object"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "ip_service",
      "suites"
   ]
}

Fields:
field ip_service: Reference [Required]
field object_type: Literal['TLSCipher'] = 'TLSCipher'
field suites: dict [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

octopoes.models.ooi.findings

pydantic model octopoes.models.ooi.findings.ADRFindingType[source]

Show JSON schema
{
   "title": "ADRFindingType",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "ADRFindingType",
         "default": "ADRFindingType",
         "enum": [
            "ADRFindingType"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "id": {
         "title": "Id",
         "type": "string"
      },
      "description": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Description"
      },
      "source": {
         "anyOf": [
            {
               "format": "uri",
               "minLength": 1,
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Source"
      },
      "impact": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Impact"
      },
      "recommendation": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Recommendation"
      },
      "risk_score": {
         "anyOf": [
            {
               "type": "number"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Risk Score"
      },
      "risk_severity": {
         "anyOf": [
            {
               "$ref": "#/$defs/RiskLevelSeverity"
            },
            {
               "type": "null"
            }
         ],
         "default": null
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "RiskLevelSeverity": {
         "enum": [
            "critical",
            "high",
            "medium",
            "low",
            "recommendation",
            "pending",
            "unknown"
         ],
         "title": "RiskLevelSeverity",
         "type": "string"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "id"
   ]
}

Fields:
field object_type: Literal['ADRFindingType'] = 'ADRFindingType'
pydantic model octopoes.models.ooi.findings.CAPECFindingType[source]

Show JSON schema
{
   "title": "CAPECFindingType",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "CAPECFindingType",
         "default": "CAPECFindingType",
         "enum": [
            "CAPECFindingType"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "id": {
         "title": "Id",
         "type": "string"
      },
      "description": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Description"
      },
      "source": {
         "anyOf": [
            {
               "format": "uri",
               "minLength": 1,
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Source"
      },
      "impact": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Impact"
      },
      "recommendation": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Recommendation"
      },
      "risk_score": {
         "anyOf": [
            {
               "type": "number"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Risk Score"
      },
      "risk_severity": {
         "anyOf": [
            {
               "$ref": "#/$defs/RiskLevelSeverity"
            },
            {
               "type": "null"
            }
         ],
         "default": null
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "RiskLevelSeverity": {
         "enum": [
            "critical",
            "high",
            "medium",
            "low",
            "recommendation",
            "pending",
            "unknown"
         ],
         "title": "RiskLevelSeverity",
         "type": "string"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "id"
   ]
}

Fields:
field object_type: Literal['CAPECFindingType'] = 'CAPECFindingType'
pydantic model octopoes.models.ooi.findings.CVEFindingType[source]

Show JSON schema
{
   "title": "CVEFindingType",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "CVEFindingType",
         "default": "CVEFindingType",
         "enum": [
            "CVEFindingType"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "id": {
         "title": "Id",
         "type": "string"
      },
      "description": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Description"
      },
      "source": {
         "anyOf": [
            {
               "format": "uri",
               "minLength": 1,
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Source"
      },
      "impact": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Impact"
      },
      "recommendation": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Recommendation"
      },
      "risk_score": {
         "anyOf": [
            {
               "type": "number"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Risk Score"
      },
      "risk_severity": {
         "anyOf": [
            {
               "$ref": "#/$defs/RiskLevelSeverity"
            },
            {
               "type": "null"
            }
         ],
         "default": null
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "RiskLevelSeverity": {
         "enum": [
            "critical",
            "high",
            "medium",
            "low",
            "recommendation",
            "pending",
            "unknown"
         ],
         "title": "RiskLevelSeverity",
         "type": "string"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "id"
   ]
}

Fields:
field object_type: Literal['CVEFindingType'] = 'CVEFindingType'
pydantic model octopoes.models.ooi.findings.CWEFindingType[source]

Show JSON schema
{
   "title": "CWEFindingType",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "CWEFindingType",
         "default": "CWEFindingType",
         "enum": [
            "CWEFindingType"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "id": {
         "title": "Id",
         "type": "string"
      },
      "description": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Description"
      },
      "source": {
         "anyOf": [
            {
               "format": "uri",
               "minLength": 1,
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Source"
      },
      "impact": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Impact"
      },
      "recommendation": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Recommendation"
      },
      "risk_score": {
         "anyOf": [
            {
               "type": "number"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Risk Score"
      },
      "risk_severity": {
         "anyOf": [
            {
               "$ref": "#/$defs/RiskLevelSeverity"
            },
            {
               "type": "null"
            }
         ],
         "default": null
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "RiskLevelSeverity": {
         "enum": [
            "critical",
            "high",
            "medium",
            "low",
            "recommendation",
            "pending",
            "unknown"
         ],
         "title": "RiskLevelSeverity",
         "type": "string"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "id"
   ]
}

Fields:
field object_type: Literal['CWEFindingType'] = 'CWEFindingType'
pydantic model octopoes.models.ooi.findings.Finding[source]

Show JSON schema
{
   "title": "Finding",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "Finding",
         "default": "Finding",
         "enum": [
            "Finding"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "finding_type": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "FindingType",
         "title": "Finding Type",
         "type": "string"
      },
      "ooi": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "OOI",
         "title": "Ooi",
         "type": "string"
      },
      "proof": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Proof"
      },
      "description": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Description"
      },
      "reproduce": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Reproduce"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "finding_type",
      "ooi"
   ]
}

Fields:
field description: str | None = None
field finding_type: Reference [Required]
field object_type: Literal['Finding'] = 'Finding'
field ooi: Reference [Required]
field proof: str | None = None
field reproduce: str | None = None
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

property natural_key: str
pydantic model octopoes.models.ooi.findings.FindingType[source]

Show JSON schema
{
   "title": "FindingType",
   "type": "object",
   "properties": {
      "object_type": {
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "id": {
         "title": "Id",
         "type": "string"
      },
      "description": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Description"
      },
      "source": {
         "anyOf": [
            {
               "format": "uri",
               "minLength": 1,
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Source"
      },
      "impact": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Impact"
      },
      "recommendation": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Recommendation"
      },
      "risk_score": {
         "anyOf": [
            {
               "type": "number"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Risk Score"
      },
      "risk_severity": {
         "anyOf": [
            {
               "$ref": "#/$defs/RiskLevelSeverity"
            },
            {
               "type": "null"
            }
         ],
         "default": null
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "RiskLevelSeverity": {
         "enum": [
            "critical",
            "high",
            "medium",
            "low",
            "recommendation",
            "pending",
            "unknown"
         ],
         "title": "RiskLevelSeverity",
         "type": "string"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "object_type",
      "id"
   ]
}

Fields:
field description: str | None = None
field id: str [Required]
field impact: str | None = None
field recommendation: str | None = None
field risk_score: float | None = None
field risk_severity: RiskLevelSeverity | None = None
field source: Url | None = None
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.findings.KATFindingType[source]

Show JSON schema
{
   "title": "KATFindingType",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "KATFindingType",
         "default": "KATFindingType",
         "enum": [
            "KATFindingType"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "id": {
         "title": "Id",
         "type": "string"
      },
      "description": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Description"
      },
      "source": {
         "anyOf": [
            {
               "format": "uri",
               "minLength": 1,
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Source"
      },
      "impact": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Impact"
      },
      "recommendation": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Recommendation"
      },
      "risk_score": {
         "anyOf": [
            {
               "type": "number"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Risk Score"
      },
      "risk_severity": {
         "anyOf": [
            {
               "$ref": "#/$defs/RiskLevelSeverity"
            },
            {
               "type": "null"
            }
         ],
         "default": null
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "RiskLevelSeverity": {
         "enum": [
            "critical",
            "high",
            "medium",
            "low",
            "recommendation",
            "pending",
            "unknown"
         ],
         "title": "RiskLevelSeverity",
         "type": "string"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "id"
   ]
}

Fields:
field object_type: Literal['KATFindingType'] = 'KATFindingType'
pydantic model octopoes.models.ooi.findings.MutedFinding[source]

Show JSON schema
{
   "title": "MutedFinding",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "MutedFinding",
         "default": "MutedFinding",
         "enum": [
            "MutedFinding"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "finding": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Finding",
         "title": "Finding",
         "type": "string"
      },
      "reason": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Reason"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "finding"
   ]
}

Fields:
field finding: Reference [Required]
field object_type: Literal['MutedFinding'] = 'MutedFinding'
field reason: str | None = None
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.findings.RetireJSFindingType[source]

Show JSON schema
{
   "title": "RetireJSFindingType",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "RetireJSFindingType",
         "default": "RetireJSFindingType",
         "enum": [
            "RetireJSFindingType"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "id": {
         "title": "Id",
         "type": "string"
      },
      "description": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Description"
      },
      "source": {
         "anyOf": [
            {
               "format": "uri",
               "minLength": 1,
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Source"
      },
      "impact": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Impact"
      },
      "recommendation": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Recommendation"
      },
      "risk_score": {
         "anyOf": [
            {
               "type": "number"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Risk Score"
      },
      "risk_severity": {
         "anyOf": [
            {
               "$ref": "#/$defs/RiskLevelSeverity"
            },
            {
               "type": "null"
            }
         ],
         "default": null
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "RiskLevelSeverity": {
         "enum": [
            "critical",
            "high",
            "medium",
            "low",
            "recommendation",
            "pending",
            "unknown"
         ],
         "title": "RiskLevelSeverity",
         "type": "string"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "id"
   ]
}

Fields:
field object_type: Literal['RetireJSFindingType'] = 'RetireJSFindingType'
class octopoes.models.ooi.findings.RiskLevelSeverity(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]
pydantic model octopoes.models.ooi.findings.SnykFindingType[source]

Show JSON schema
{
   "title": "SnykFindingType",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "SnykFindingType",
         "default": "SnykFindingType",
         "enum": [
            "SnykFindingType"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "id": {
         "title": "Id",
         "type": "string"
      },
      "description": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Description"
      },
      "source": {
         "anyOf": [
            {
               "format": "uri",
               "minLength": 1,
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Source"
      },
      "impact": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Impact"
      },
      "recommendation": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Recommendation"
      },
      "risk_score": {
         "anyOf": [
            {
               "type": "number"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Risk Score"
      },
      "risk_severity": {
         "anyOf": [
            {
               "$ref": "#/$defs/RiskLevelSeverity"
            },
            {
               "type": "null"
            }
         ],
         "default": null
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "RiskLevelSeverity": {
         "enum": [
            "critical",
            "high",
            "medium",
            "low",
            "recommendation",
            "pending",
            "unknown"
         ],
         "title": "RiskLevelSeverity",
         "type": "string"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "id"
   ]
}

Fields:
field object_type: Literal['SnykFindingType'] = 'SnykFindingType'

octopoes.models.ooi.email_security

pydantic model octopoes.models.ooi.email_security.DKIMExists[source]

Show JSON schema
{
   "title": "DKIMExists",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DKIMExists",
         "default": "DKIMExists",
         "enum": [
            "DKIMExists"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "hostname"
   ]
}

Fields:
field hostname: Reference [Required]
field object_type: Literal['DKIMExists'] = 'DKIMExists'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.email_security.DKIMKey[source]

Show JSON schema
{
   "title": "DKIMKey",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DKIMKey",
         "default": "DKIMKey",
         "enum": [
            "DKIMKey"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "key": {
         "title": "Key",
         "type": "string"
      },
      "dkim_selector": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "DKIMSelector",
         "title": "Dkim Selector",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "key",
      "dkim_selector"
   ]
}

Fields:
field dkim_selector: Reference [Required]
field key: str [Required]
field object_type: Literal['DKIMKey'] = 'DKIMKey'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.email_security.DKIMSelector[source]

Show JSON schema
{
   "title": "DKIMSelector",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DKIMSelector",
         "default": "DKIMSelector",
         "enum": [
            "DKIMSelector"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "selector": {
         "title": "Selector",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "selector",
      "hostname"
   ]
}

Fields:
field hostname: Reference [Required]
field object_type: Literal['DKIMSelector'] = 'DKIMSelector'
field selector: str [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.email_security.DMARCTXTRecord[source]

Show JSON schema
{
   "title": "DMARCTXTRecord",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DMARCTXTRecord",
         "default": "DMARCTXTRecord",
         "enum": [
            "DMARCTXTRecord"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "value": {
         "title": "Value",
         "type": "string"
      },
      "ttl": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "title": "Ttl"
      },
      "hostname": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "value",
      "ttl",
      "hostname"
   ]
}

Fields:
field hostname: Reference [Required]
field object_type: Literal['DMARCTXTRecord'] = 'DMARCTXTRecord'
field ttl: int | None [Required]
field value: str [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.email_security.DNSSPFMechanism[source]

Show JSON schema
{
   "title": "DNSSPFMechanism",
   "type": "object",
   "properties": {
      "object_type": {
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "spf_record": {
         "max_inherit_scan_level": 1,
         "max_issue_scan_level": null,
         "object_type": "DNSSPFRecord",
         "title": "Spf Record",
         "type": "string"
      },
      "mechanism": {
         "title": "Mechanism",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "object_type",
      "spf_record",
      "mechanism"
   ]
}

Fields:
field mechanism: str [Required]
field spf_record: Reference [Required]
pydantic model octopoes.models.ooi.email_security.DNSSPFMechanismHostname[source]

Show JSON schema
{
   "title": "DNSSPFMechanismHostname",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DNSSPFMechanismHostname",
         "default": "DNSSPFMechanismHostname",
         "enum": [
            "DNSSPFMechanismHostname"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "spf_record": {
         "max_inherit_scan_level": 1,
         "max_issue_scan_level": null,
         "object_type": "DNSSPFRecord",
         "title": "Spf Record",
         "type": "string"
      },
      "mechanism": {
         "title": "Mechanism",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "spf_record",
      "mechanism",
      "hostname"
   ]
}

Fields:
field hostname: Reference [Required]
field object_type: Literal['DNSSPFMechanismHostname'] = 'DNSSPFMechanismHostname'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.email_security.DNSSPFMechanismIP[source]

Show JSON schema
{
   "title": "DNSSPFMechanismIP",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DNSSPFMechanismIP",
         "default": "DNSSPFMechanismIP",
         "enum": [
            "DNSSPFMechanismIP"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "spf_record": {
         "max_inherit_scan_level": 1,
         "max_issue_scan_level": null,
         "object_type": "DNSSPFRecord",
         "title": "Spf Record",
         "type": "string"
      },
      "mechanism": {
         "title": "Mechanism",
         "type": "string"
      },
      "ip": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "IPAddress",
         "title": "Ip",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "spf_record",
      "mechanism",
      "ip"
   ]
}

Fields:
field ip: Reference [Required]
field object_type: Literal['DNSSPFMechanismIP'] = 'DNSSPFMechanismIP'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.email_security.DNSSPFMechanismNetBlock[source]

Show JSON schema
{
   "title": "DNSSPFMechanismNetBlock",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DNSSPFMechanismNetBlock",
         "default": "DNSSPFMechanismNetBlock",
         "enum": [
            "DNSSPFMechanismNetBlock"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "spf_record": {
         "max_inherit_scan_level": 1,
         "max_issue_scan_level": null,
         "object_type": "DNSSPFRecord",
         "title": "Spf Record",
         "type": "string"
      },
      "mechanism": {
         "title": "Mechanism",
         "type": "string"
      },
      "netblock": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "NetBlock",
         "title": "Netblock",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "spf_record",
      "mechanism",
      "netblock"
   ]
}

Fields:
field netblock: Reference [Required]
field object_type: Literal['DNSSPFMechanismNetBlock'] = 'DNSSPFMechanismNetBlock'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.email_security.DNSSPFRecord[source]

Show JSON schema
{
   "title": "DNSSPFRecord",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DNSSPFRecord",
         "default": "DNSSPFRecord",
         "enum": [
            "DNSSPFRecord"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "value": {
         "title": "Value",
         "type": "string"
      },
      "ttl": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Ttl"
      },
      "all": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "All"
      },
      "exp": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Exp"
      },
      "dns_txt_record": {
         "max_inherit_scan_level": 1,
         "max_issue_scan_level": null,
         "object_type": "DNSTXTRecord",
         "title": "Dns Txt Record",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "value",
      "dns_txt_record"
   ]
}

Fields:
field all: str | None = None
field dns_txt_record: Reference [Required]
field exp: str | None = None
field object_type: Literal['DNSSPFRecord'] = 'DNSSPFRecord'
field ttl: int | None = None
field value: str [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

property natural_key: str

octopoes.models.ooi.web

pydantic model octopoes.models.ooi.web.APIDesignRule[source]

Show JSON schema
{
   "title": "APIDesignRule",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "APIDesignRule",
         "default": "APIDesignRule",
         "enum": [
            "APIDesignRule"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "name": {
         "title": "Name",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "name"
   ]
}

Fields:
field name: str [Required]
field object_type: Literal['APIDesignRule'] = 'APIDesignRule'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.web.APIDesignRuleResult[source]

Show JSON schema
{
   "title": "APIDesignRuleResult",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "APIDesignRuleResult",
         "default": "APIDesignRuleResult",
         "enum": [
            "APIDesignRuleResult"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "rest_api": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "RESTAPI",
         "title": "Rest Api",
         "type": "string"
      },
      "rule": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "APIDesignRule",
         "title": "Rule",
         "type": "string"
      },
      "passed": {
         "title": "Passed",
         "type": "boolean"
      },
      "message": {
         "title": "Message",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "rest_api",
      "rule",
      "passed",
      "message"
   ]
}

Fields:
field message: str [Required]
field object_type: Literal['APIDesignRuleResult'] = 'APIDesignRuleResult'
field passed: bool [Required]
field rest_api: Reference [Required]
field rule: Reference [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.web.HTTPHeader[source]

Show JSON schema
{
   "title": "HTTPHeader",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "HTTPHeader",
         "default": "HTTPHeader",
         "enum": [
            "HTTPHeader"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "resource": {
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": 0,
         "object_type": "HTTPResource",
         "title": "Resource",
         "type": "string"
      },
      "key": {
         "title": "Key",
         "type": "string"
      },
      "value": {
         "title": "Value",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "resource",
      "key",
      "value"
   ]
}

Fields:
field key: str [Required]
field object_type: Literal['HTTPHeader'] = 'HTTPHeader'
field resource: Reference [Required]
field value: str [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.web.HTTPHeaderHostname[source]

Show JSON schema
{
   "title": "HTTPHeaderHostname",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "HTTPHeaderHostname",
         "default": "HTTPHeaderHostname",
         "enum": [
            "HTTPHeaderHostname"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "header": {
         "max_inherit_scan_level": 1,
         "max_issue_scan_level": 0,
         "object_type": "HTTPHeader",
         "title": "Header",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": 0,
         "max_issue_scan_level": 1,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "header",
      "hostname"
   ]
}

Fields:
field header: Reference [Required]
field hostname: Reference [Required]
field object_type: Literal['HTTPHeaderHostname'] = 'HTTPHeaderHostname'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.web.HTTPHeaderURL[source]

Show JSON schema
{
   "title": "HTTPHeaderURL",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "HTTPHeaderURL",
         "default": "HTTPHeaderURL",
         "enum": [
            "HTTPHeaderURL"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "header": {
         "max_inherit_scan_level": 1,
         "max_issue_scan_level": 0,
         "object_type": "HTTPHeader",
         "title": "Header",
         "type": "string"
      },
      "url": {
         "max_inherit_scan_level": 0,
         "max_issue_scan_level": 1,
         "object_type": "URL",
         "title": "Url",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "header",
      "url"
   ]
}

Fields:
field header: Reference [Required]
field object_type: Literal['HTTPHeaderURL'] = 'HTTPHeaderURL'
field url: Reference [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.web.HTTPResource[source]

Show JSON schema
{
   "title": "HTTPResource",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "HTTPResource",
         "default": "HTTPResource",
         "enum": [
            "HTTPResource"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "website": {
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": 0,
         "object_type": "Website",
         "title": "Website",
         "type": "string"
      },
      "web_url": {
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": 1,
         "object_type": "WebURL",
         "title": "Web Url",
         "type": "string"
      },
      "redirects_to": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "WebURL",
         "title": "Redirects To"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "website",
      "web_url"
   ]
}

Fields:
field object_type: Literal['HTTPResource'] = 'HTTPResource'
field redirects_to: Reference | None = None
field web_url: Reference [Required]
field website: Reference [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.web.HostnameHTTPURL[source]

Show JSON schema
{
   "title": "HostnameHTTPURL",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "HostnameHTTPURL",
         "default": "HostnameHTTPURL",
         "enum": [
            "HostnameHTTPURL"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "network": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Network",
         "title": "Network",
         "type": "string"
      },
      "scheme": {
         "$ref": "#/$defs/WebScheme"
      },
      "port": {
         "title": "Port",
         "type": "integer"
      },
      "path": {
         "title": "Path",
         "type": "string"
      },
      "netloc": {
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": 2,
         "object_type": "Hostname",
         "title": "Netloc",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      },
      "WebScheme": {
         "enum": [
            "http",
            "https"
         ],
         "title": "WebScheme",
         "type": "string"
      }
   },
   "required": [
      "network",
      "scheme",
      "port",
      "path",
      "netloc"
   ]
}

Fields:
field netloc: Reference [Required]
field object_type: Literal['HostnameHTTPURL'] = 'HostnameHTTPURL'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.web.IPAddressHTTPURL[source]

Show JSON schema
{
   "title": "IPAddressHTTPURL",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "IPAddressHTTPURL",
         "default": "IPAddressHTTPURL",
         "enum": [
            "IPAddressHTTPURL"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "network": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Network",
         "title": "Network",
         "type": "string"
      },
      "scheme": {
         "$ref": "#/$defs/WebScheme"
      },
      "port": {
         "title": "Port",
         "type": "integer"
      },
      "path": {
         "title": "Path",
         "type": "string"
      },
      "netloc": {
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": 1,
         "object_type": "IPAddress",
         "title": "Netloc",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      },
      "WebScheme": {
         "enum": [
            "http",
            "https"
         ],
         "title": "WebScheme",
         "type": "string"
      }
   },
   "required": [
      "network",
      "scheme",
      "port",
      "path",
      "netloc"
   ]
}

Fields:
field netloc: Reference [Required]
field object_type: Literal['IPAddressHTTPURL'] = 'IPAddressHTTPURL'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.web.ImageMetadata[source]

Show JSON schema
{
   "title": "ImageMetadata",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "ImageMetadata",
         "default": "ImageMetadata",
         "enum": [
            "ImageMetadata"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "resource": {
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": 0,
         "object_type": "HTTPResource",
         "title": "Resource",
         "type": "string"
      },
      "image_info": {
         "title": "Image Info",
         "type": "object"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "resource",
      "image_info"
   ]
}

Fields:
field image_info: dict [Required]
field object_type: Literal['ImageMetadata'] = 'ImageMetadata'
field resource: Reference [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.web.RESTAPI[source]

Show JSON schema
{
   "title": "RESTAPI",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "RESTAPI",
         "default": "RESTAPI",
         "enum": [
            "RESTAPI"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "api_url": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "WebURL",
         "title": "Api Url",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "api_url"
   ]
}

Fields:
field api_url: Reference [Required]
field object_type: Literal['RESTAPI'] = 'RESTAPI'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.web.SecurityTXT[source]

Show JSON schema
{
   "title": "SecurityTXT",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "SecurityTXT",
         "default": "SecurityTXT",
         "enum": [
            "SecurityTXT"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "website": {
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": 0,
         "object_type": "Website",
         "title": "Website",
         "type": "string"
      },
      "url": {
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": 0,
         "object_type": "URL",
         "title": "Url",
         "type": "string"
      },
      "redirects_to": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": 0,
         "max_issue_scan_level": 2,
         "object_type": "SecurityTXT",
         "title": "Redirects To"
      },
      "security_txt": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Security Txt"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "website",
      "url"
   ]
}

Fields:
field object_type: Literal['SecurityTXT'] = 'SecurityTXT'
field redirects_to: Reference | None = None
field security_txt: str | None = None
field url: Reference [Required]
field website: Reference [Required]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.web.URL[source]

Show JSON schema
{
   "title": "URL",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "URL",
         "default": "URL",
         "enum": [
            "URL"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "network": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Network",
         "title": "Network",
         "type": "string"
      },
      "raw": {
         "format": "uri",
         "minLength": 1,
         "title": "Raw",
         "type": "string"
      },
      "web_url": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": null,
         "max_issue_scan_level": 2,
         "object_type": "WebURL",
         "title": "Web Url"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "network",
      "raw"
   ]
}

Fields:
field network: Reference [Required]
field object_type: Literal['URL'] = 'URL'
field raw: Url [Required]
field web_url: Reference | None = None
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

class octopoes.models.ooi.web.WebScheme(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]
pydantic model octopoes.models.ooi.web.WebURL[source]

Show JSON schema
{
   "title": "WebURL",
   "type": "object",
   "properties": {
      "object_type": {
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "network": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Network",
         "title": "Network",
         "type": "string"
      },
      "scheme": {
         "$ref": "#/$defs/WebScheme"
      },
      "port": {
         "title": "Port",
         "type": "integer"
      },
      "path": {
         "title": "Path",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      },
      "WebScheme": {
         "enum": [
            "http",
            "https"
         ],
         "title": "WebScheme",
         "type": "string"
      }
   },
   "required": [
      "object_type",
      "network",
      "scheme",
      "port",
      "path"
   ]
}

Fields:
field network: Reference [Required]
field path: str [Required]
field port: int [Required]
field scheme: WebScheme [Required]
pydantic model octopoes.models.ooi.web.Website[source]

Show JSON schema
{
   "title": "Website",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "Website",
         "default": "Website",
         "enum": [
            "Website"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "ip_service": {
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": 0,
         "object_type": "IPService",
         "title": "Ip Service",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": null,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      },
      "certificate": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": null,
         "max_issue_scan_level": 1,
         "object_type": "X509Certificate",
         "title": "Certificate"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "ip_service",
      "hostname"
   ]
}

Fields:
field certificate: Reference | None = None
field hostname: Reference [Required]
field ip_service: Reference [Required]
field object_type: Literal['Website'] = 'Website'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

octopoes.models.ooi.config

pydantic model octopoes.models.ooi.config.Config[source]

Show JSON schema
{
   "title": "Config",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "Config",
         "default": "Config",
         "enum": [
            "Config"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "ooi": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "OOI",
         "title": "Ooi",
         "type": "string"
      },
      "bit_id": {
         "title": "Bit Id",
         "type": "string"
      },
      "config": {
         "title": "Config",
         "type": "object"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "ooi",
      "bit_id",
      "config"
   ]
}

Fields:
field bit_id: str [Required]
field config: dict[str, Any] [Required]
field object_type: Literal['Config'] = 'Config'
field ooi: Reference [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

octopoes.models.ooi.certificate

class octopoes.models.ooi.certificate.AlgorithmType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]
pydantic model octopoes.models.ooi.certificate.SubjectAlternativeName[source]

Show JSON schema
{
   "title": "SubjectAlternativeName",
   "type": "object",
   "properties": {
      "object_type": {
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "certificate": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "X509Certificate",
         "title": "Certificate",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "object_type",
      "certificate"
   ]
}

Fields:
field certificate: Reference [Required]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.certificate.SubjectAlternativeNameHostname[source]

Show JSON schema
{
   "title": "SubjectAlternativeNameHostname",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "SubjectAlternativeNameHostname",
         "default": "SubjectAlternativeNameHostname",
         "enum": [
            "SubjectAlternativeNameHostname"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "certificate": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "X509Certificate",
         "title": "Certificate",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": 0,
         "max_issue_scan_level": 1,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "certificate",
      "hostname"
   ]
}

Fields:
field hostname: Reference [Required]
field object_type: Literal['SubjectAlternativeNameHostname'] = 'SubjectAlternativeNameHostname'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.certificate.SubjectAlternativeNameIP[source]

Show JSON schema
{
   "title": "SubjectAlternativeNameIP",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "SubjectAlternativeNameIP",
         "default": "SubjectAlternativeNameIP",
         "enum": [
            "SubjectAlternativeNameIP"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "certificate": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "X509Certificate",
         "title": "Certificate",
         "type": "string"
      },
      "address": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "IPAddress",
         "title": "Address",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "certificate",
      "address"
   ]
}

Fields:
field address: Reference [Required]
field object_type: Literal['SubjectAlternativeNameIP'] = 'SubjectAlternativeNameIP'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.certificate.SubjectAlternativeNameQualifier[source]

Show JSON schema
{
   "title": "SubjectAlternativeNameQualifier",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "SubjectAlternativeNameQualifier",
         "default": "SubjectAlternativeNameQualifier",
         "enum": [
            "SubjectAlternativeNameQualifier"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "certificate": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "X509Certificate",
         "title": "Certificate",
         "type": "string"
      },
      "name": {
         "title": "Name",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "certificate",
      "name"
   ]
}

Fields:
field name: str [Required]
field object_type: Literal['SubjectAlternativeNameQualifier'] = 'SubjectAlternativeNameQualifier'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.certificate.X509Certificate[source]

Show JSON schema
{
   "title": "X509Certificate",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "X509Certificate",
         "default": "X509Certificate",
         "enum": [
            "X509Certificate"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "subject": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Subject"
      },
      "issuer": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Issuer"
      },
      "valid_from": {
         "title": "Valid From",
         "type": "string"
      },
      "valid_until": {
         "title": "Valid Until",
         "type": "string"
      },
      "pk_algorithm": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Pk Algorithm"
      },
      "pk_size": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Pk Size"
      },
      "pk_number": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Pk Number"
      },
      "signed_by": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": 0,
         "max_issue_scan_level": 1,
         "object_type": "X509Certificate",
         "title": "Signed By"
      },
      "serial_number": {
         "title": "Serial Number",
         "type": "string"
      },
      "expires_in": {
         "anyOf": [
            {
               "format": "duration",
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Expires In"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "valid_from",
      "valid_until",
      "serial_number"
   ]
}

Fields:
field expires_in: timedelta | None = None
field issuer: str | None = None
field object_type: Literal['X509Certificate'] = 'X509Certificate'
field pk_algorithm: str | None = None
field pk_number: str | None = None
field pk_size: int | None = None
field serial_number: str [Required]
field signed_by: Reference | None = None
field subject: str | None = None
field valid_from: str [Required]
field valid_until: str [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

property expired

octopoes.models.ooi.monitoring

pydantic model octopoes.models.ooi.monitoring.Application[source]

Show JSON schema
{
   "title": "Application",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "Application",
         "default": "Application",
         "enum": [
            "Application"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "name": {
         "title": "Name",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "name"
   ]
}

Fields:
field name: str [Required]
field object_type: Literal['Application'] = 'Application'
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.monitoring.Incident[source]

Show JSON schema
{
   "title": "Incident",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "Incident",
         "default": "Incident",
         "enum": [
            "Incident"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "application": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Application",
         "title": "Application",
         "type": "string"
      },
      "event_id": {
         "title": "Event Id",
         "type": "string"
      },
      "event_type": {
         "title": "Event Type",
         "type": "string"
      },
      "event_title": {
         "title": "Event Title",
         "type": "string"
      },
      "severity": {
         "title": "Severity",
         "type": "string"
      },
      "meta_data": {
         "title": "Meta Data",
         "type": "object"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "application",
      "event_id",
      "event_type",
      "event_title",
      "severity",
      "meta_data"
   ]
}

Fields:
field application: Reference [Required]
field event_id: str [Required]
field event_title: str [Required]
field event_type: str [Required]
field meta_data: dict[str, Any] [Required]
field object_type: Literal['Incident'] = 'Incident'
field severity: str [Required]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

octopoes.models.ooi.question

octopoes.models.ooi.network

pydantic model octopoes.models.ooi.network.AutonomousSystem[source]

Show JSON schema
{
   "title": "AutonomousSystem",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "AutonomousSystem",
         "default": "AutonomousSystem",
         "enum": [
            "AutonomousSystem"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "number": {
         "title": "Number",
         "type": "string"
      },
      "name": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "title": "Name"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "number",
      "name"
   ]
}

Fields:
field name: str | None [Required]
field number: str [Required]
field object_type: Literal['AutonomousSystem'] = 'AutonomousSystem'
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.network.IPAddress[source]

Show JSON schema
{
   "title": "IPAddress",
   "type": "object",
   "properties": {
      "object_type": {
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "address": {
         "anyOf": [
            {
               "format": "ipv4",
               "type": "string"
            },
            {
               "format": "ipv6",
               "type": "string"
            }
         ],
         "title": "Address"
      },
      "network": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Network",
         "title": "Network",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "object_type",
      "address",
      "network"
   ]
}

Fields:
field address: IPv4Address | IPv6Address [Required]
field network: Reference [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.network.IPAddressV4[source]

Show JSON schema
{
   "title": "IPAddressV4",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "IPAddressV4",
         "default": "IPAddressV4",
         "enum": [
            "IPAddressV4"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "address": {
         "format": "ipv4",
         "title": "Address",
         "type": "string"
      },
      "network": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Network",
         "title": "Network",
         "type": "string"
      },
      "netblock": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": 0,
         "object_type": "IPV4NetBlock",
         "optional": true,
         "title": "Netblock"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "address",
      "network"
   ]
}

Fields:
field address: IPv4Address [Required]
field netblock: Reference | None = None
field object_type: Literal['IPAddressV4'] = 'IPAddressV4'
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.network.IPAddressV6[source]

Show JSON schema
{
   "title": "IPAddressV6",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "IPAddressV6",
         "default": "IPAddressV6",
         "enum": [
            "IPAddressV6"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "address": {
         "format": "ipv6",
         "title": "Address",
         "type": "string"
      },
      "network": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Network",
         "title": "Network",
         "type": "string"
      },
      "netblock": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": 0,
         "object_type": "IPV6NetBlock",
         "optional": true,
         "title": "Netblock"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "address",
      "network"
   ]
}

Fields:
field address: IPv6Address [Required]
field netblock: Reference | None = None
field object_type: Literal['IPAddressV6'] = 'IPAddressV6'
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.network.IPPort[source]

Show JSON schema
{
   "title": "IPPort",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "IPPort",
         "default": "IPPort",
         "enum": [
            "IPPort"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "address": {
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": 0,
         "object_type": "IPAddress",
         "title": "Address",
         "type": "string"
      },
      "protocol": {
         "$ref": "#/$defs/Protocol"
      },
      "port": {
         "exclusiveMaximum": 65536,
         "exclusiveMinimum": 0,
         "title": "Port",
         "type": "integer"
      },
      "state": {
         "anyOf": [
            {
               "$ref": "#/$defs/PortState"
            },
            {
               "type": "null"
            }
         ],
         "default": null
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "PortState": {
         "enum": [
            "open",
            "closed",
            "filtered",
            "unfiltered",
            "open|filtered",
            "closed|filtered"
         ],
         "title": "PortState",
         "type": "string"
      },
      "Protocol": {
         "enum": [
            "tcp",
            "udp"
         ],
         "title": "Protocol",
         "type": "string"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "address",
      "protocol",
      "port"
   ]
}

Fields:
field address: Reference [Required]
field object_type: Literal['IPPort'] = 'IPPort'
field port: Annotated[int, Field(gt=0, lt=2 ** 16)] [Required]
Constraints:
  • gt = 0

  • lt = 65536

field protocol: Protocol [Required]
field state: PortState | None = None
classmethod format_reference_human_readable(reference: Reference)[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.network.IPV4NetBlock[source]

Show JSON schema
{
   "title": "IPV4NetBlock",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "IPV4NetBlock",
         "default": "IPV4NetBlock",
         "enum": [
            "IPV4NetBlock"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "network": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Network",
         "title": "Network",
         "type": "string"
      },
      "name": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Name"
      },
      "description": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Description"
      },
      "announced_by": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "AutonomousSystem",
         "title": "Announced By"
      },
      "parent": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "IPV4NetBlock",
         "title": "Parent"
      },
      "start_ip": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": 4,
         "object_type": "IPAddressV4",
         "title": "Start Ip",
         "type": "string"
      },
      "mask": {
         "exclusiveMaximum": 32,
         "minimum": 0,
         "title": "Mask",
         "type": "integer"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "network",
      "start_ip",
      "mask"
   ]
}

Fields:
field mask: Annotated[int, Field(ge=0, lt=32)] [Required]
Constraints:
  • ge = 0

  • lt = 32

field object_type: Literal['IPV4NetBlock'] = 'IPV4NetBlock'
field parent: Reference | None = None
field start_ip: Reference [Required]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.network.IPV6NetBlock[source]

Show JSON schema
{
   "title": "IPV6NetBlock",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "IPV6NetBlock",
         "default": "IPV6NetBlock",
         "enum": [
            "IPV6NetBlock"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "network": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Network",
         "title": "Network",
         "type": "string"
      },
      "name": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Name"
      },
      "description": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Description"
      },
      "announced_by": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "AutonomousSystem",
         "title": "Announced By"
      },
      "parent": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "IPV6NetBlock",
         "title": "Parent"
      },
      "start_ip": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": 4,
         "object_type": "IPAddressV6",
         "title": "Start Ip",
         "type": "string"
      },
      "mask": {
         "exclusiveMaximum": 128,
         "minimum": 0,
         "title": "Mask",
         "type": "integer"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "network",
      "start_ip",
      "mask"
   ]
}

Fields:
field mask: Annotated[int, Field(ge=0, lt=128)] [Required]
Constraints:
  • ge = 0

  • lt = 128

field object_type: Literal['IPV6NetBlock'] = 'IPV6NetBlock'
field parent: Reference | None = None
field start_ip: Reference [Required]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.network.NetBlock[source]

Show JSON schema
{
   "title": "NetBlock",
   "type": "object",
   "properties": {
      "object_type": {
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "network": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Network",
         "title": "Network",
         "type": "string"
      },
      "name": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Name"
      },
      "description": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Description"
      },
      "announced_by": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "AutonomousSystem",
         "title": "Announced By"
      },
      "parent": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "NetBlock",
         "title": "Parent"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "object_type",
      "network"
   ]
}

Fields:
field announced_by: Reference | None = None
field description: str | None = None
field name: str | None = None
field network: Reference [Required]
field parent: Reference | None = None
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.network.Network[source]

Show JSON schema
{
   "title": "Network",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "Network",
         "default": "Network",
         "enum": [
            "Network"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "name": {
         "title": "Name",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "name"
   ]
}

Fields:
field name: str [Required]
field object_type: Literal['Network'] = 'Network'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

class octopoes.models.ooi.network.PortState(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]
class octopoes.models.ooi.network.Protocol(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]

octopoes.models.ooi.reports

pydantic model octopoes.models.ooi.reports.ReportData[source]

Show JSON schema
{
   "title": "ReportData",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "ReportData",
         "default": "ReportData",
         "enum": [
            "ReportData"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "organization_code": {
         "title": "Organization Code",
         "type": "string"
      },
      "organization_name": {
         "title": "Organization Name",
         "type": "string"
      },
      "organization_tags": {
         "items": {
            "type": "string"
         },
         "title": "Organization Tags",
         "type": "array"
      },
      "data": {
         "title": "Data",
         "type": "object"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "organization_code",
      "organization_name",
      "organization_tags",
      "data"
   ]
}

Fields:
field data: dict [Required]
field object_type: Literal['ReportData'] = 'ReportData'
field organization_code: str [Required]
field organization_name: str [Required]
field organization_tags: list[str] [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

octopoes.models.ooi.dns.records

class octopoes.models.ooi.dns.records.CAATAGS(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]
pydantic model octopoes.models.ooi.dns.records.DNSAAAARecord[source]

Show JSON schema
{
   "title": "DNSAAAARecord",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DNSAAAARecord",
         "default": "DNSAAAARecord",
         "enum": [
            "DNSAAAARecord"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": 2,
         "max_issue_scan_level": 0,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      },
      "dns_record_type": {
         "const": "AAAA",
         "default": "AAAA",
         "enum": [
            "AAAA"
         ],
         "title": "Dns Record Type",
         "type": "string"
      },
      "value": {
         "title": "Value",
         "type": "string"
      },
      "ttl": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Ttl"
      },
      "address": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "IPAddressV6",
         "title": "Address",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "hostname",
      "value",
      "address"
   ]
}

Fields:
field address: Reference [Required]
field dns_record_type: Literal['AAAA'] = 'AAAA'
field object_type: Literal['DNSAAAARecord'] = 'DNSAAAARecord'
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.dns.records.DNSARecord[source]

Show JSON schema
{
   "title": "DNSARecord",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DNSARecord",
         "default": "DNSARecord",
         "enum": [
            "DNSARecord"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": 2,
         "max_issue_scan_level": 0,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      },
      "dns_record_type": {
         "const": "A",
         "default": "A",
         "enum": [
            "A"
         ],
         "title": "Dns Record Type",
         "type": "string"
      },
      "value": {
         "title": "Value",
         "type": "string"
      },
      "ttl": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Ttl"
      },
      "address": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "IPAddressV4",
         "title": "Address",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "hostname",
      "value",
      "address"
   ]
}

Fields:
field address: Reference [Required]
field dns_record_type: Literal['A'] = 'A'
field object_type: Literal['DNSARecord'] = 'DNSARecord'
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.dns.records.DNSCAARecord[source]

Show JSON schema
{
   "title": "DNSCAARecord",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DNSCAARecord",
         "default": "DNSCAARecord",
         "enum": [
            "DNSCAARecord"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": 2,
         "max_issue_scan_level": 0,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      },
      "dns_record_type": {
         "const": "CAA",
         "default": "CAA",
         "enum": [
            "CAA"
         ],
         "title": "Dns Record Type",
         "type": "string"
      },
      "value": {
         "title": "Value",
         "type": "string"
      },
      "ttl": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Ttl"
      },
      "flags": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Flags"
      },
      "tag": {
         "$ref": "#/$defs/CAATAGS"
      }
   },
   "$defs": {
      "CAATAGS": {
         "enum": [
            "issue",
            "issuewild",
            "iodef",
            "contactemail",
            "contactphone",
            "issuevmc",
            "issuemail"
         ],
         "title": "CAATAGS",
         "type": "string"
      },
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "hostname",
      "value",
      "tag"
   ]
}

Fields:
field dns_record_type: Literal['CAA'] = 'CAA'
field flags: int | None = None
field object_type: Literal['DNSCAARecord'] = 'DNSCAARecord'
field tag: CAATAGS [Required]
field value: str [Required]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.dns.records.DNSCNAMERecord[source]

Show JSON schema
{
   "title": "DNSCNAMERecord",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DNSCNAMERecord",
         "default": "DNSCNAMERecord",
         "enum": [
            "DNSCNAMERecord"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": 2,
         "max_issue_scan_level": 0,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      },
      "dns_record_type": {
         "const": "CNAME",
         "default": "CNAME",
         "enum": [
            "CNAME"
         ],
         "title": "Dns Record Type",
         "type": "string"
      },
      "value": {
         "title": "Value",
         "type": "string"
      },
      "ttl": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Ttl"
      },
      "target_hostname": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Hostname",
         "title": "Target Hostname",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "hostname",
      "value",
      "target_hostname"
   ]
}

Fields:
field dns_record_type: Literal['CNAME'] = 'CNAME'
field object_type: Literal['DNSCNAMERecord'] = 'DNSCNAMERecord'
field target_hostname: Reference [Required]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.dns.records.DNSMXRecord[source]

Show JSON schema
{
   "title": "DNSMXRecord",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DNSMXRecord",
         "default": "DNSMXRecord",
         "enum": [
            "DNSMXRecord"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": 2,
         "max_issue_scan_level": 0,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      },
      "dns_record_type": {
         "const": "MX",
         "default": "MX",
         "enum": [
            "MX"
         ],
         "title": "Dns Record Type",
         "type": "string"
      },
      "value": {
         "title": "Value",
         "type": "string"
      },
      "ttl": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Ttl"
      },
      "mail_hostname": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Hostname",
         "title": "Mail Hostname"
      },
      "preference": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Preference"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "hostname",
      "value"
   ]
}

Fields:
field dns_record_type: Literal['MX'] = 'MX'
field mail_hostname: Reference | None = None
field object_type: Literal['DNSMXRecord'] = 'DNSMXRecord'
field preference: int | None = None
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.dns.records.DNSNSRecord[source]

Show JSON schema
{
   "title": "DNSNSRecord",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DNSNSRecord",
         "default": "DNSNSRecord",
         "enum": [
            "DNSNSRecord"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": 2,
         "max_issue_scan_level": 0,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      },
      "dns_record_type": {
         "const": "NS",
         "default": "NS",
         "enum": [
            "NS"
         ],
         "title": "Dns Record Type",
         "type": "string"
      },
      "value": {
         "title": "Value",
         "type": "string"
      },
      "ttl": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Ttl"
      },
      "name_server_hostname": {
         "max_inherit_scan_level": 0,
         "max_issue_scan_level": 1,
         "object_type": "Hostname",
         "title": "Name Server Hostname",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "hostname",
      "value",
      "name_server_hostname"
   ]
}

Fields:
field dns_record_type: Literal['NS'] = 'NS'
field name_server_hostname: Reference [Required]
field object_type: Literal['DNSNSRecord'] = 'DNSNSRecord'
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.dns.records.DNSPTRRecord[source]

Show JSON schema
{
   "title": "DNSPTRRecord",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DNSPTRRecord",
         "default": "DNSPTRRecord",
         "enum": [
            "DNSPTRRecord"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": 2,
         "max_issue_scan_level": 0,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      },
      "dns_record_type": {
         "const": "PTR",
         "default": "PTR",
         "enum": [
            "PTR"
         ],
         "title": "Dns Record Type",
         "type": "string"
      },
      "value": {
         "title": "Value",
         "type": "string"
      },
      "ttl": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Ttl"
      },
      "address": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "IPAddress",
         "title": "Address"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "hostname",
      "value",
      "address"
   ]
}

Fields:
field address: Reference | None [Required]
field dns_record_type: Literal['PTR'] = 'PTR'
field object_type: Literal['DNSPTRRecord'] = 'DNSPTRRecord'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.dns.records.DNSRecord[source]

Show JSON schema
{
   "title": "DNSRecord",
   "type": "object",
   "properties": {
      "object_type": {
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": 2,
         "max_issue_scan_level": 0,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      },
      "dns_record_type": {
         "enum": [
            "A",
            "AAAA",
            "CAA",
            "CNAME",
            "MX",
            "NS",
            "PTR",
            "SOA",
            "SRV",
            "TXT"
         ],
         "title": "Dns Record Type",
         "type": "string"
      },
      "value": {
         "title": "Value",
         "type": "string"
      },
      "ttl": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Ttl"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "object_type",
      "hostname",
      "dns_record_type",
      "value"
   ]
}

Fields:
field dns_record_type: Literal['A', 'AAAA', 'CAA', 'CNAME', 'MX', 'NS', 'PTR', 'SOA', 'SRV', 'TXT'] [Required]
field hostname: Reference [Required]
field ttl: int | None = None
field value: str [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.dns.records.DNSSOARecord[source]

Show JSON schema
{
   "title": "DNSSOARecord",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DNSSOARecord",
         "default": "DNSSOARecord",
         "enum": [
            "DNSSOARecord"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": 2,
         "max_issue_scan_level": 0,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      },
      "dns_record_type": {
         "const": "SOA",
         "default": "SOA",
         "enum": [
            "SOA"
         ],
         "title": "Dns Record Type",
         "type": "string"
      },
      "value": {
         "title": "Value",
         "type": "string"
      },
      "ttl": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Ttl"
      },
      "soa_hostname": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Hostname",
         "title": "Soa Hostname",
         "type": "string"
      },
      "serial": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Serial"
      },
      "retry": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Retry"
      },
      "refresh": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Refresh"
      },
      "expire": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Expire"
      },
      "minimum": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Minimum"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "hostname",
      "value",
      "soa_hostname"
   ]
}

Fields:
field dns_record_type: Literal['SOA'] = 'SOA'
field expire: int | None = None
field minimum: int | None = None
field object_type: Literal['DNSSOARecord'] = 'DNSSOARecord'
field refresh: int | None = None
field retry: int | None = None
field serial: int | None = None
field soa_hostname: Reference [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.dns.records.DNSTXTRecord[source]

Show JSON schema
{
   "title": "DNSTXTRecord",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DNSTXTRecord",
         "default": "DNSTXTRecord",
         "enum": [
            "DNSTXTRecord"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": 2,
         "max_issue_scan_level": 0,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      },
      "dns_record_type": {
         "const": "TXT",
         "default": "TXT",
         "enum": [
            "TXT"
         ],
         "title": "Dns Record Type",
         "type": "string"
      },
      "value": {
         "title": "Value",
         "type": "string"
      },
      "ttl": {
         "anyOf": [
            {
               "type": "integer"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Ttl"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "hostname",
      "value"
   ]
}

Fields:
field dns_record_type: Literal['TXT'] = 'TXT'
field object_type: Literal['DNSTXTRecord'] = 'DNSTXTRecord'
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

property natural_key: str
pydantic model octopoes.models.ooi.dns.records.NXDOMAIN[source]

Show JSON schema
{
   "title": "NXDOMAIN",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "NXDOMAIN",
         "default": "NXDOMAIN",
         "enum": [
            "NXDOMAIN"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "hostname"
   ]
}

Fields:
field hostname: Reference [Required]
field object_type: Literal['NXDOMAIN'] = 'NXDOMAIN'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

octopoes.models.ooi.dns.zone

pydantic model octopoes.models.ooi.dns.zone.DNSZone[source]

Show JSON schema
{
   "title": "DNSZone",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "DNSZone",
         "default": "DNSZone",
         "enum": [
            "DNSZone"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": 1,
         "max_issue_scan_level": 2,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      },
      "parent": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": 1,
         "max_issue_scan_level": 0,
         "object_type": "DNSZone",
         "title": "Parent"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "hostname"
   ]
}

Fields:
field hostname: Reference [Required]
field object_type: Literal['DNSZone'] = 'DNSZone'
field parent: Reference | None = None
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.dns.zone.Hostname[source]

Show JSON schema
{
   "title": "Hostname",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "Hostname",
         "default": "Hostname",
         "enum": [
            "Hostname"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "network": {
         "max_inherit_scan_level": null,
         "max_issue_scan_level": null,
         "object_type": "Network",
         "title": "Network",
         "type": "string"
      },
      "name": {
         "title": "Name",
         "type": "string"
      },
      "dns_zone": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": 2,
         "max_issue_scan_level": 1,
         "object_type": "DNSZone",
         "title": "Dns Zone"
      },
      "registered_domain": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "max_inherit_scan_level": 2,
         "max_issue_scan_level": 1,
         "object_type": "Hostname",
         "title": "Registered Domain"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "network",
      "name"
   ]
}

Fields:
Validators:
field dns_zone: Reference | None = None
field name: Annotated[str, StringConstraints(to_lower=True)] [Required]
Constraints:
  • to_lower = True

Validated by:
field network: Reference [Required]
field object_type: Literal['Hostname'] = 'Hostname'
field registered_domain: Reference | None = None
classmethod format_reference_human_readable(reference: Reference) str[source]
validator hostname_valid  »  name[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.dns.zone.ResolvedHostname[source]

Show JSON schema
{
   "title": "ResolvedHostname",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "ResolvedHostname",
         "default": "ResolvedHostname",
         "enum": [
            "ResolvedHostname"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "hostname": {
         "max_inherit_scan_level": 4,
         "max_issue_scan_level": 0,
         "object_type": "Hostname",
         "title": "Hostname",
         "type": "string"
      },
      "address": {
         "max_inherit_scan_level": 0,
         "max_issue_scan_level": 4,
         "object_type": "IPAddress",
         "title": "Address",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "hostname",
      "address"
   ]
}

Fields:
field address: Reference [Required]
field hostname: Reference [Required]
field object_type: Literal['ResolvedHostname'] = 'ResolvedHostname'
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

octopoes.models.ooi.software

pydantic model octopoes.models.ooi.software.Software[source]

Show JSON schema
{
   "title": "Software",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "Software",
         "default": "Software",
         "enum": [
            "Software"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "name": {
         "title": "Name",
         "type": "string"
      },
      "version": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Version"
      },
      "cpe": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Cpe"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "name"
   ]
}

Fields:
field cpe: str | None = None
field name: str [Required]
field object_type: Literal['Software'] = 'Software'
field version: str | None = None
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

pydantic model octopoes.models.ooi.software.SoftwareInstance[source]

Show JSON schema
{
   "title": "SoftwareInstance",
   "type": "object",
   "properties": {
      "object_type": {
         "const": "SoftwareInstance",
         "default": "SoftwareInstance",
         "enum": [
            "SoftwareInstance"
         ],
         "title": "Object Type",
         "type": "string"
      },
      "scan_profile": {
         "anyOf": [
            {
               "$ref": "#/$defs/EmptyScanProfile"
            },
            {
               "$ref": "#/$defs/InheritedScanProfile"
            },
            {
               "$ref": "#/$defs/DeclaredScanProfile"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Scan Profile"
      },
      "primary_key": {
         "default": "",
         "title": "Primary Key",
         "type": "string"
      },
      "ooi": {
         "max_inherit_scan_level": 1,
         "max_issue_scan_level": 0,
         "object_type": "OOI",
         "title": "Ooi",
         "type": "string"
      },
      "software": {
         "max_inherit_scan_level": 0,
         "max_issue_scan_level": 1,
         "object_type": "Software",
         "title": "Software",
         "type": "string"
      }
   },
   "$defs": {
      "DeclaredScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "declared",
               "default": "declared",
               "enum": [
                  "declared"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "DeclaredScanProfile",
         "type": "object"
      },
      "EmptyScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "empty",
               "default": "empty",
               "enum": [
                  "empty"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "allOf": [
                  {
                     "$ref": "#/$defs/ScanLevel"
                  }
               ],
               "default": 0
            }
         },
         "required": [
            "reference"
         ],
         "title": "EmptyScanProfile",
         "type": "object"
      },
      "InheritedScanProfile": {
         "properties": {
            "scan_profile_type": {
               "const": "inherited",
               "default": "inherited",
               "enum": [
                  "inherited"
               ],
               "title": "Scan Profile Type",
               "type": "string"
            },
            "reference": {
               "title": "Reference",
               "type": "string"
            },
            "level": {
               "$ref": "#/$defs/ScanLevel"
            }
         },
         "required": [
            "reference",
            "level"
         ],
         "title": "InheritedScanProfile",
         "type": "object"
      },
      "ScanLevel": {
         "enum": [
            0,
            1,
            2,
            3,
            4
         ],
         "title": "ScanLevel",
         "type": "integer"
      }
   },
   "required": [
      "ooi",
      "software"
   ]
}

Fields:
field object_type: Literal['SoftwareInstance'] = 'SoftwareInstance'
field ooi: Reference [Required]
field software: Reference [Required]
classmethod format_reference_human_readable(reference: Reference) str[source]
model_post_init(_ModelMetaclass__context: Any) None

We need to both initialize private attributes and call the user-defined model_post_init method.

property natural_key: str