{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/apache-flink/json-schema/apache-flink-task-manager-details-info-schema.json",
  "title": "TaskManagerDetailsInfo",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/apache-flink-task-managers-api-openapi.yml#/components/schemas/TaskManagerDetailsInfo",
  "type": "object",
  "properties": {
    "allocatedSlots": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/SlotInfo"
      }
    },
    "blocked": {
      "type": "boolean"
    },
    "dataPort": {
      "type": "integer",
      "format": "int32"
    },
    "freeResource": {
      "$ref": "#/$defs/ResourceProfileInfo"
    },
    "freeSlots": {
      "type": "integer",
      "format": "int32"
    },
    "hardware": {
      "$ref": "#/$defs/HardwareDescription"
    },
    "id": {
      "$ref": "#/$defs/ResourceID"
    },
    "jmxPort": {
      "type": "integer",
      "format": "int32"
    },
    "memoryConfiguration": {
      "$ref": "#/$defs/TaskExecutorMemoryConfiguration"
    },
    "metrics": {
      "$ref": "#/$defs/TaskManagerMetricsInfo"
    },
    "path": {
      "type": "string"
    },
    "slotsNumber": {
      "type": "integer",
      "format": "int32"
    },
    "timeSinceLastHeartbeat": {
      "type": "integer",
      "format": "int64"
    },
    "totalResource": {
      "$ref": "#/$defs/ResourceProfileInfo"
    }
  },
  "$defs": {
    "GarbageCollectorInfo": {
      "type": "object",
      "properties": {
        "count": {
          "type": "integer",
          "format": "int64"
        },
        "name": {
          "type": "string"
        },
        "time": {
          "type": "integer",
          "format": "int64"
        }
      }
    },
    "HardwareDescription": {
      "type": "object",
      "properties": {
        "cpuCores": {
          "type": "integer",
          "format": "int32"
        },
        "freeMemory": {
          "type": "integer",
          "format": "int64"
        },
        "managedMemory": {
          "type": "integer",
          "format": "int64"
        },
        "physicalMemory": {
          "type": "integer",
          "format": "int64"
        }
      }
    },
    "JobID": {
      "pattern": "[0-9a-f]{32}",
      "type": "string"
    },
    "ResourceID": {
      "pattern": "[0-9a-f]{32}",
      "type": "string"
    },
    "ResourceProfileInfo": {
      "type": "object",
      "properties": {
        "cpuCores": {
          "type": "number",
          "format": "double"
        },
        "extendedResources": {
          "type": "object",
          "additionalProperties": {
            "type": "number",
            "format": "double"
          }
        },
        "managedMemory": {
          "type": "integer",
          "format": "int32"
        },
        "networkMemory": {
          "type": "integer",
          "format": "int32"
        },
        "taskHeapMemory": {
          "type": "integer",
          "format": "int32"
        },
        "taskOffHeapMemory": {
          "type": "integer",
          "format": "int32"
        }
      }
    },
    "SlotInfo": {
      "type": "object",
      "properties": {
        "jobId": {
          "$ref": "#/$defs/JobID"
        },
        "resource": {
          "$ref": "#/$defs/ResourceProfileInfo"
        }
      }
    },
    "TaskExecutorMemoryConfiguration": {
      "type": "object",
      "properties": {
        "frameworkHeap": {
          "type": "integer",
          "format": "int64"
        },
        "frameworkOffHeap": {
          "type": "integer",
          "format": "int64"
        },
        "jvmMetaspace": {
          "type": "integer",
          "format": "int64"
        },
        "jvmOverhead": {
          "type": "integer",
          "format": "int64"
        },
        "managedMemory": {
          "type": "integer",
          "format": "int64"
        },
        "networkMemory": {
          "type": "integer",
          "format": "int64"
        },
        "taskHeap": {
          "type": "integer",
          "format": "int64"
        },
        "taskOffHeap": {
          "type": "integer",
          "format": "int64"
        },
        "totalFlinkMemory": {
          "type": "integer",
          "format": "int64"
        },
        "totalProcessMemory": {
          "type": "integer",
          "format": "int64"
        }
      }
    },
    "TaskManagerMetricsInfo": {
      "type": "object",
      "properties": {
        "directCount": {
          "type": "integer",
          "format": "int64"
        },
        "directMax": {
          "type": "integer",
          "format": "int64"
        },
        "directUsed": {
          "type": "integer",
          "format": "int64"
        },
        "garbageCollectors": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/GarbageCollectorInfo"
          }
        },
        "heapCommitted": {
          "type": "integer",
          "format": "int64"
        },
        "heapMax": {
          "type": "integer",
          "format": "int64"
        },
        "heapUsed": {
          "type": "integer",
          "format": "int64"
        },
        "mappedCount": {
          "type": "integer",
          "format": "int64"
        },
        "mappedMax": {
          "type": "integer",
          "format": "int64"
        },
        "mappedUsed": {
          "type": "integer",
          "format": "int64"
        },
        "nettyShuffleMemoryAvailable": {
          "type": "integer",
          "format": "int64"
        },
        "nettyShuffleMemorySegmentsAvailable": {
          "type": "integer",
          "format": "int64"
        },
        "nettyShuffleMemorySegmentsTotal": {
          "type": "integer",
          "format": "int64"
        },
        "nettyShuffleMemorySegmentsUsed": {
          "type": "integer",
          "format": "int64"
        },
        "nettyShuffleMemoryTotal": {
          "type": "integer",
          "format": "int64"
        },
        "nettyShuffleMemoryUsed": {
          "type": "integer",
          "format": "int64"
        },
        "nonHeapCommitted": {
          "type": "integer",
          "format": "int64"
        },
        "nonHeapMax": {
          "type": "integer",
          "format": "int64"
        },
        "nonHeapUsed": {
          "type": "integer",
          "format": "int64"
        }
      }
    }
  }
}