{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/TrainingJob",
  "title": "TrainingJob",
  "type": "object",
  "properties": {
    "TrainingJobName": {
      "type": "string",
      "description": "The name of the training job."
    },
    "TrainingJobArn": {
      "type": "string",
      "description": "The Amazon Resource Name (ARN) of the training job."
    },
    "TrainingJobStatus": {
      "type": "string",
      "description": "The status of the training job.",
      "enum": [
        "InProgress",
        "Completed",
        "Failed",
        "Stopping",
        "Stopped"
      ]
    },
    "SecondaryStatus": {
      "type": "string",
      "description": "Provides detailed information about the state of the training job."
    },
    "AlgorithmSpecification": {
      "type": "object",
      "properties": {
        "TrainingImage": {
          "type": "string"
        },
        "TrainingInputMode": {
          "type": "string"
        },
        "AlgorithmName": {
          "type": "string"
        }
      }
    },
    "RoleArn": {
      "type": "string",
      "description": "The ARN of the IAM role."
    },
    "InputDataConfig": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "ChannelName": {
            "type": "string"
          },
          "DataSource": {
            "type": "object"
          }
        }
      }
    },
    "OutputDataConfig": {
      "type": "object",
      "properties": {
        "S3OutputPath": {
          "type": "string"
        },
        "KmsKeyId": {
          "type": "string"
        }
      }
    },
    "ResourceConfig": {
      "type": "object",
      "properties": {
        "InstanceType": {
          "type": "string"
        },
        "InstanceCount": {
          "type": "integer"
        },
        "VolumeSizeInGB": {
          "type": "integer"
        }
      }
    },
    "StoppingCondition": {
      "type": "object",
      "properties": {
        "MaxRuntimeInSeconds": {
          "type": "integer"
        },
        "MaxWaitTimeInSeconds": {
          "type": "integer"
        }
      }
    },
    "HyperParameters": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "ModelArtifacts": {
      "type": "object",
      "properties": {
        "S3ModelArtifacts": {
          "type": "string"
        }
      }
    },
    "TrainingStartTime": {
      "type": "string",
      "format": "date-time"
    },
    "TrainingEndTime": {
      "type": "string",
      "format": "date-time"
    },
    "CreationTime": {
      "type": "string",
      "format": "date-time"
    },
    "LastModifiedTime": {
      "type": "string",
      "format": "date-time"
    },
    "BillableTimeInSeconds": {
      "type": "integer"
    },
    "FailureReason": {
      "type": "string"
    }
  }
}