blob: ff9e74a0150738f732934ebf5880e10c75be39aa [file] [log] [blame]
openapi: 3.0.1
info:
title: Flink JobManager REST API
contact:
email: user@flink.apache.org
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
version: v1/1.16-SNAPSHOT
paths:
/cluster:
delete:
description: Shuts down the cluster
responses:
"200":
description: The request was successful.
/config:
get:
description: Returns the configuration of the WebUI.
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/DashboardConfiguration'
/datasets:
get:
description: Returns all cluster data sets.
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/ClusterDataSetListResponseBody'
/datasets/delete/{triggerid}:
get:
description: Returns the status for the delete operation of a cluster data set.
parameters:
- name: triggerid
in: path
description: 32-character hexadecimal string that identifies an asynchronous
operation trigger ID. The ID was returned then the operation was triggered.
required: true
schema:
$ref: '#/components/schemas/TriggerId'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/AsynchronousOperationResult'
/datasets/{datasetid}:
delete:
description: Triggers the deletion of a cluster data set. This async operation
would return a 'triggerid' for further query identifier.
parameters:
- name: datasetid
in: path
description: 32-character hexadecimal string value that identifies a cluster
data set.
required: true
schema:
$ref: '#/components/schemas/IntermediateDataSetID'
responses:
"202":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/TriggerResponse'
/jars:
get:
description: Returns a list of all jars previously uploaded via '/jars/upload'.
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JarListInfo'
/jars/upload:
post:
description: "Uploads a jar to the cluster. The jar must be sent as multi-part\
\ data. Make sure that the \"Content-Type\" header is set to \"application/x-java-archive\"\
, as some http libraries do not add the header by default.\nUsing 'curl' you\
\ can upload a jar via 'curl -X POST -H \"Expect:\" -F \"jarfile=@path/to/flink-job.jar\"\
\ http://hostname:port/jars/upload'."
requestBody:
content:
application/x-java-archive: {}
required: true
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JarUploadResponseBody'
/jars/{jarid}:
delete:
description: Deletes a jar previously uploaded via '/jars/upload'.
parameters:
- name: jarid
in: path
description: "String value that identifies a jar. When uploading the jar a\
\ path is returned, where the filename is the ID. This value is equivalent\
\ to the `id` field in the list of uploaded jars (/jars)."
required: true
schema:
type: string
responses:
"200":
description: The request was successful.
/jars/{jarid}/plan:
get:
description: Returns the dataflow plan of a job contained in a jar previously
uploaded via '/jars/upload'. Program arguments can be passed both via the
JSON request (recommended) or query parameters.
parameters:
- name: jarid
in: path
description: "String value that identifies a jar. When uploading the jar a\
\ path is returned, where the filename is the ID. This value is equivalent\
\ to the `id` field in the list of uploaded jars (/jars)."
required: true
schema:
type: string
- name: program-args
in: query
description: "Deprecated, please use 'programArg' instead. String value that\
\ specifies the arguments for the program or plan"
required: false
style: form
schema:
type: string
- name: programArg
in: query
description: Comma-separated list of program arguments.
required: false
style: form
schema:
type: string
- name: entry-class
in: query
description: String value that specifies the fully qualified name of the entry
point class. Overrides the class defined in the jar file manifest.
required: false
style: form
schema:
type: string
- name: parallelism
in: query
description: Positive integer value that specifies the desired parallelism
for the job.
required: false
style: form
schema:
type: integer
format: int32
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobPlanInfo'
post:
description: Returns the dataflow plan of a job contained in a jar previously
uploaded via '/jars/upload'. Program arguments can be passed both via the
JSON request (recommended) or query parameters.
parameters:
- name: jarid
in: path
description: "String value that identifies a jar. When uploading the jar a\
\ path is returned, where the filename is the ID. This value is equivalent\
\ to the `id` field in the list of uploaded jars (/jars)."
required: true
schema:
type: string
- name: program-args
in: query
description: "Deprecated, please use 'programArg' instead. String value that\
\ specifies the arguments for the program or plan"
required: false
style: form
schema:
type: string
- name: programArg
in: query
description: Comma-separated list of program arguments.
required: false
style: form
schema:
type: string
- name: entry-class
in: query
description: String value that specifies the fully qualified name of the entry
point class. Overrides the class defined in the jar file manifest.
required: false
style: form
schema:
type: string
- name: parallelism
in: query
description: Positive integer value that specifies the desired parallelism
for the job.
required: false
style: form
schema:
type: integer
format: int32
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/JarPlanRequestBody'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobPlanInfo'
/jars/{jarid}/run:
post:
description: Submits a job by running a jar previously uploaded via '/jars/upload'.
Program arguments can be passed both via the JSON request (recommended) or
query parameters.
parameters:
- name: jarid
in: path
description: "String value that identifies a jar. When uploading the jar a\
\ path is returned, where the filename is the ID. This value is equivalent\
\ to the `id` field in the list of uploaded jars (/jars)."
required: true
schema:
type: string
- name: allowNonRestoredState
in: query
description: Boolean value that specifies whether the job submission should
be rejected if the savepoint contains state that cannot be mapped back to
the job.
required: false
style: form
schema:
type: boolean
- name: savepointPath
in: query
description: String value that specifies the path of the savepoint to restore
the job from.
required: false
style: form
schema:
type: string
- name: program-args
in: query
description: "Deprecated, please use 'programArg' instead. String value that\
\ specifies the arguments for the program or plan"
required: false
style: form
schema:
type: string
- name: programArg
in: query
description: Comma-separated list of program arguments.
required: false
style: form
schema:
type: string
- name: entry-class
in: query
description: String value that specifies the fully qualified name of the entry
point class. Overrides the class defined in the jar file manifest.
required: false
style: form
schema:
type: string
- name: parallelism
in: query
description: Positive integer value that specifies the desired parallelism
for the job.
required: false
style: form
schema:
type: integer
format: int32
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/JarRunRequestBody'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JarRunResponseBody'
/jobmanager/config:
get:
description: Returns the cluster configuration.
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
type: array
properties:
empty:
type: boolean
items:
$ref: '#/components/schemas/ClusterConfigurationInfoEntry'
/jobmanager/logs:
get:
description: Returns the list of log files on the JobManager.
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/LogListInfo'
/jobmanager/metrics:
get:
description: Provides access to job manager metrics.
parameters:
- name: get
in: query
description: Comma-separated list of string values to select specific metrics.
required: false
style: form
schema:
type: string
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/MetricCollectionResponseBody'
/jobmanager/thread-dump:
get:
description: Returns the thread dump of the JobManager.
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadDumpInfo'
/jobs:
get:
description: Returns an overview over all jobs and their current state.
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobIdsWithStatusOverview'
post:
description: "Submits a job. This call is primarily intended to be used by the\
\ Flink client. This call expects a multipart/form-data request that consists\
\ of file uploads for the serialized JobGraph, jars and distributed cache\
\ artifacts and an attribute named \"request\" for the JSON payload."
requestBody:
content:
multipart/form-data:
schema:
properties:
request:
$ref: '#/components/schemas/JobSubmitRequestBody'
filename:
type: array
items:
type: string
format: binary
required: true
responses:
"202":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobSubmitResponseBody'
/jobs/metrics:
get:
description: Provides access to aggregated job metrics.
parameters:
- name: get
in: query
description: Comma-separated list of string values to select specific metrics.
required: false
style: form
schema:
type: string
- name: agg
in: query
description: "Comma-separated list of aggregation modes which should be calculated.\
\ Available aggregations are: \"min, max, sum, avg\"."
required: false
style: form
schema:
$ref: '#/components/schemas/AggregationMode'
- name: jobs
in: query
description: Comma-separated list of 32-character hexadecimal strings to select
specific jobs.
required: false
style: form
schema:
$ref: '#/components/schemas/JobID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/AggregatedMetricsResponseBody'
/jobs/overview:
get:
description: Returns an overview over all jobs.
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/MultipleJobsDetails'
/jobs/{jobid}:
get:
description: Returns details of a job.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobDetailsInfo'
patch:
description: Terminates a job.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: mode
in: query
description: "String value that specifies the termination mode. The only supported\
\ value is: \"cancel\"."
required: false
style: form
schema:
$ref: '#/components/schemas/TerminationMode'
responses:
"202":
description: The request was successful.
/jobs/{jobid}/accumulators:
get:
description: "Returns the accumulators for all tasks of a job, aggregated across\
\ the respective subtasks."
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: includeSerializedValue
in: query
description: Boolean value that specifies whether serialized user task accumulators
should be included in the response.
required: false
style: form
schema:
type: boolean
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobAccumulatorsInfo'
/jobs/{jobid}/checkpoints:
get:
description: Returns checkpointing statistics for a job.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/CheckpointingStatistics'
/jobs/{jobid}/checkpoints/config:
get:
description: Returns the checkpointing configuration.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/CheckpointConfigInfo'
/jobs/{jobid}/checkpoints/details/{checkpointid}:
get:
description: Returns details for a checkpoint.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: checkpointid
in: path
description: Long value that identifies a checkpoint.
required: true
schema:
type: integer
format: int64
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/CheckpointStatistics'
/jobs/{jobid}/checkpoints/details/{checkpointid}/subtasks/{vertexid}:
get:
description: Returns checkpoint statistics for a task and its subtasks.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: checkpointid
in: path
description: Long value that identifies a checkpoint.
required: true
schema:
type: integer
format: int64
- name: vertexid
in: path
description: 32-character hexadecimal string value that identifies a job vertex.
required: true
schema:
$ref: '#/components/schemas/JobVertexID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/TaskCheckpointStatisticsWithSubtaskDetails'
/jobs/{jobid}/config:
get:
description: Returns the configuration of a job.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobConfigInfo'
/jobs/{jobid}/exceptions:
get:
description: "Returns the most recent exceptions that have been handled by Flink\
\ for this job. The 'exceptionHistory.truncated' flag defines whether exceptions\
\ were filtered out through the GET parameter. The backend collects only a\
\ specific amount of most recent exceptions per job. This can be configured\
\ through web.exception-history-size in the Flink configuration. The following\
\ first-level members are deprecated: 'root-exception', 'timestamp', 'all-exceptions',\
\ and 'truncated'. Use the data provided through 'exceptionHistory', instead."
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: maxExceptions
in: query
description: Comma-separated list of integer values that specifies the upper
limit of exceptions to return.
required: false
style: form
schema:
type: integer
format: int32
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobExceptionsInfoWithHistory'
/jobs/{jobid}/execution-result:
get:
description: Returns the result of a job execution. Gives access to the execution
time of the job and to all accumulators created by this job.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobExecutionResultResponseBody'
/jobs/{jobid}/metrics:
get:
description: Provides access to job metrics.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: get
in: query
description: Comma-separated list of string values to select specific metrics.
required: false
style: form
schema:
type: string
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/MetricCollectionResponseBody'
/jobs/{jobid}/plan:
get:
description: Returns the dataflow plan of a job.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobPlanInfo'
/jobs/{jobid}/rescaling:
patch:
description: Triggers the rescaling of a job. This async operation would return
a 'triggerid' for further query identifier.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: parallelism
in: query
description: Positive integer value that specifies the desired parallelism.
required: true
style: form
schema:
type: integer
format: int32
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/TriggerResponse'
/jobs/{jobid}/rescaling/{triggerid}:
get:
description: Returns the status of a rescaling operation.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: triggerid
in: path
description: 32-character hexadecimal string that identifies an asynchronous
operation trigger ID. The ID was returned then the operation was triggered.
required: true
schema:
$ref: '#/components/schemas/TriggerId'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/AsynchronousOperationResult'
/jobs/{jobid}/savepoints:
post:
description: "Triggers a savepoint, and optionally cancels the job afterwards.\
\ This async operation would return a 'triggerid' for further query identifier."
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SavepointTriggerRequestBody'
responses:
"202":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/TriggerResponse'
/jobs/{jobid}/savepoints/{triggerid}:
get:
description: Returns the status of a savepoint operation.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: triggerid
in: path
description: 32-character hexadecimal string that identifies an asynchronous
operation trigger ID. The ID was returned then the operation was triggered.
required: true
schema:
$ref: '#/components/schemas/TriggerId'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/AsynchronousOperationResult'
/jobs/{jobid}/status:
get:
description: Returns the current status of a job execution.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobStatusInfo'
/jobs/{jobid}/stop:
post:
description: "Stops a job with a savepoint. Optionally, it can also emit a MAX_WATERMARK\
\ before taking the savepoint to flush out any state waiting for timers to\
\ fire. This async operation would return a 'triggerid' for further query\
\ identifier."
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/StopWithSavepointRequestBody'
responses:
"202":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/TriggerResponse'
/jobs/{jobid}/vertices/{vertexid}:
get:
description: "Returns details for a task, with a summary for each of its subtasks."
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: vertexid
in: path
description: 32-character hexadecimal string value that identifies a job vertex.
required: true
schema:
$ref: '#/components/schemas/JobVertexID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobVertexDetailsInfo'
/jobs/{jobid}/vertices/{vertexid}/accumulators:
get:
description: "Returns user-defined accumulators of a task, aggregated across\
\ all subtasks."
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: vertexid
in: path
description: 32-character hexadecimal string value that identifies a job vertex.
required: true
schema:
$ref: '#/components/schemas/JobVertexID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobVertexAccumulatorsInfo'
/jobs/{jobid}/vertices/{vertexid}/backpressure:
get:
description: "Returns back-pressure information for a job, and may initiate\
\ back-pressure sampling if necessary."
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: vertexid
in: path
description: 32-character hexadecimal string value that identifies a job vertex.
required: true
schema:
$ref: '#/components/schemas/JobVertexID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobVertexBackPressureInfo'
/jobs/{jobid}/vertices/{vertexid}/flamegraph:
get:
description: "Returns flame graph information for a vertex, and may initiate\
\ flame graph sampling if necessary."
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: vertexid
in: path
description: 32-character hexadecimal string value that identifies a job vertex.
required: true
schema:
$ref: '#/components/schemas/JobVertexID'
- name: type
in: query
description: "String value that specifies the Flame Graph type. Supported\
\ options are: \"[FULL, ON_CPU, OFF_CPU]\"."
required: false
style: form
schema:
$ref: '#/components/schemas/Type'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobVertexFlameGraph'
/jobs/{jobid}/vertices/{vertexid}/metrics:
get:
description: Provides access to task metrics.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: vertexid
in: path
description: 32-character hexadecimal string value that identifies a job vertex.
required: true
schema:
$ref: '#/components/schemas/JobVertexID'
- name: get
in: query
description: Comma-separated list of string values to select specific metrics.
required: false
style: form
schema:
type: string
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/MetricCollectionResponseBody'
/jobs/{jobid}/vertices/{vertexid}/subtasks/accumulators:
get:
description: Returns all user-defined accumulators for all subtasks of a task.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: vertexid
in: path
description: 32-character hexadecimal string value that identifies a job vertex.
required: true
schema:
$ref: '#/components/schemas/JobVertexID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/SubtasksAllAccumulatorsInfo'
/jobs/{jobid}/vertices/{vertexid}/subtasks/metrics:
get:
description: Provides access to aggregated subtask metrics.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: vertexid
in: path
description: 32-character hexadecimal string value that identifies a job vertex.
required: true
schema:
$ref: '#/components/schemas/JobVertexID'
- name: get
in: query
description: Comma-separated list of string values to select specific metrics.
required: false
style: form
schema:
type: string
- name: agg
in: query
description: "Comma-separated list of aggregation modes which should be calculated.\
\ Available aggregations are: \"min, max, sum, avg\"."
required: false
style: form
schema:
$ref: '#/components/schemas/AggregationMode'
- name: subtasks
in: query
description: "Comma-separated list of integer ranges (e.g. \"1,3,5-9\") to\
\ select specific subtasks."
required: false
style: form
schema:
type: string
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/AggregatedMetricsResponseBody'
/jobs/{jobid}/vertices/{vertexid}/subtasks/{subtaskindex}:
get:
description: Returns details of the current or latest execution attempt of a
subtask.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: vertexid
in: path
description: 32-character hexadecimal string value that identifies a job vertex.
required: true
schema:
$ref: '#/components/schemas/JobVertexID'
- name: subtaskindex
in: path
description: Positive integer value that identifies a subtask.
required: true
schema:
type: integer
format: int32
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/SubtaskExecutionAttemptDetailsInfo'
/jobs/{jobid}/vertices/{vertexid}/subtasks/{subtaskindex}/attempts/{attempt}:
get:
description: Returns details of an execution attempt of a subtask. Multiple
execution attempts happen in case of failure/recovery.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: vertexid
in: path
description: 32-character hexadecimal string value that identifies a job vertex.
required: true
schema:
$ref: '#/components/schemas/JobVertexID'
- name: subtaskindex
in: path
description: Positive integer value that identifies a subtask.
required: true
schema:
type: integer
format: int32
- name: attempt
in: path
description: Positive integer value that identifies an execution attempt.
required: true
schema:
type: integer
format: int32
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/SubtaskExecutionAttemptDetailsInfo'
/jobs/{jobid}/vertices/{vertexid}/subtasks/{subtaskindex}/attempts/{attempt}/accumulators:
get:
description: Returns the accumulators of an execution attempt of a subtask.
Multiple execution attempts happen in case of failure/recovery.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: vertexid
in: path
description: 32-character hexadecimal string value that identifies a job vertex.
required: true
schema:
$ref: '#/components/schemas/JobVertexID'
- name: subtaskindex
in: path
description: Positive integer value that identifies a subtask.
required: true
schema:
type: integer
format: int32
- name: attempt
in: path
description: Positive integer value that identifies an execution attempt.
required: true
schema:
type: integer
format: int32
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/SubtaskExecutionAttemptAccumulatorsInfo'
/jobs/{jobid}/vertices/{vertexid}/subtasks/{subtaskindex}/metrics:
get:
description: Provides access to subtask metrics.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: vertexid
in: path
description: 32-character hexadecimal string value that identifies a job vertex.
required: true
schema:
$ref: '#/components/schemas/JobVertexID'
- name: subtaskindex
in: path
description: Positive integer value that identifies a subtask.
required: true
schema:
type: integer
format: int32
- name: get
in: query
description: Comma-separated list of string values to select specific metrics.
required: false
style: form
schema:
type: string
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/MetricCollectionResponseBody'
/jobs/{jobid}/vertices/{vertexid}/subtasktimes:
get:
description: Returns time-related information for all subtasks of a task.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: vertexid
in: path
description: 32-character hexadecimal string value that identifies a job vertex.
required: true
schema:
$ref: '#/components/schemas/JobVertexID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/SubtasksTimesInfo'
/jobs/{jobid}/vertices/{vertexid}/taskmanagers:
get:
description: Returns task information aggregated by task manager.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: vertexid
in: path
description: 32-character hexadecimal string value that identifies a job vertex.
required: true
schema:
$ref: '#/components/schemas/JobVertexID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/JobVertexTaskManagersInfo'
/jobs/{jobid}/vertices/{vertexid}/watermarks:
get:
description: Returns the watermarks for all subtasks of a task.
parameters:
- name: jobid
in: path
description: 32-character hexadecimal string value that identifies a job.
required: true
schema:
$ref: '#/components/schemas/JobID'
- name: vertexid
in: path
description: 32-character hexadecimal string value that identifies a job vertex.
required: true
schema:
$ref: '#/components/schemas/JobVertexID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/MetricCollectionResponseBody'
/overview:
get:
description: Returns an overview over the Flink cluster.
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/ClusterOverviewWithVersion'
/savepoint-disposal:
post:
description: Triggers the desposal of a savepoint. This async operation would
return a 'triggerid' for further query identifier.
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SavepointDisposalRequest'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/TriggerResponse'
/savepoint-disposal/{triggerid}:
get:
description: Returns the status of a savepoint disposal operation.
parameters:
- name: triggerid
in: path
description: 32-character hexadecimal string that identifies an asynchronous
operation trigger ID. The ID was returned then the operation was triggered.
required: true
schema:
$ref: '#/components/schemas/TriggerId'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/AsynchronousOperationResult'
/taskmanagers:
get:
description: Returns an overview over all task managers.
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/TaskManagersInfo'
/taskmanagers/metrics:
get:
description: Provides access to aggregated task manager metrics.
parameters:
- name: get
in: query
description: Comma-separated list of string values to select specific metrics.
required: false
style: form
schema:
type: string
- name: agg
in: query
description: "Comma-separated list of aggregation modes which should be calculated.\
\ Available aggregations are: \"min, max, sum, avg\"."
required: false
style: form
schema:
$ref: '#/components/schemas/AggregationMode'
- name: taskmanagers
in: query
description: Comma-separated list of 32-character hexadecimal strings to select
specific task managers.
required: false
style: form
schema:
$ref: '#/components/schemas/ResourceID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/AggregatedMetricsResponseBody'
/taskmanagers/{taskmanagerid}:
get:
description: Returns details for a task manager. "metrics.memorySegmentsAvailable"
and "metrics.memorySegmentsTotal" are deprecated. Please use "metrics.nettyShuffleMemorySegmentsAvailable"
and "metrics.nettyShuffleMemorySegmentsTotal" instead.
parameters:
- name: taskmanagerid
in: path
description: 32-character hexadecimal string that identifies a task manager.
required: true
schema:
$ref: '#/components/schemas/ResourceID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/TaskManagerDetailsInfo'
/taskmanagers/{taskmanagerid}/logs:
get:
description: Returns the list of log files on a TaskManager.
parameters:
- name: taskmanagerid
in: path
description: 32-character hexadecimal string that identifies a task manager.
required: true
schema:
$ref: '#/components/schemas/ResourceID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/LogListInfo'
/taskmanagers/{taskmanagerid}/metrics:
get:
description: Provides access to task manager metrics.
parameters:
- name: taskmanagerid
in: path
description: 32-character hexadecimal string that identifies a task manager.
required: true
schema:
$ref: '#/components/schemas/ResourceID'
- name: get
in: query
description: Comma-separated list of string values to select specific metrics.
required: false
style: form
schema:
type: string
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/MetricCollectionResponseBody'
/taskmanagers/{taskmanagerid}/thread-dump:
get:
description: Returns the thread dump of the requested TaskManager.
parameters:
- name: taskmanagerid
in: path
description: 32-character hexadecimal string that identifies a task manager.
required: true
schema:
$ref: '#/components/schemas/ResourceID'
responses:
"200":
description: The request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadDumpInfo'
components:
schemas:
JarFileInfo:
type: object
properties:
id:
type: string
name:
type: string
uploaded:
type: integer
format: int64
entry:
type: array
items:
$ref: '#/components/schemas/JarEntryInfo'
Node:
type: object
properties:
name:
type: string
value:
type: integer
format: int32
children:
type: array
items:
$ref: '#/components/schemas/Node'
AggregationMode:
type: string
enum:
- MIN
- MAX
- SUM
- AVG
CheckpointAlignment:
type: object
properties:
buffered:
type: integer
format: int64
processed:
type: integer
format: int64
persisted:
type: integer
format: int64
duration:
type: integer
format: int64
SavepointInfo:
type: object
properties:
location:
type: string
failure-cause:
$ref: '#/components/schemas/SerializedThrowable'
AsynchronousOperationInfo:
type: object
properties:
failure-cause:
$ref: '#/components/schemas/SerializedThrowable'
TaskManagerMetricsInfo:
type: object
properties:
heapUsed:
type: integer
format: int64
heapCommitted:
type: integer
format: int64
heapMax:
type: integer
format: int64
nonHeapUsed:
type: integer
format: int64
nonHeapCommitted:
type: integer
format: int64
nonHeapMax:
type: integer
format: int64
directCount:
type: integer
format: int64
directUsed:
type: integer
format: int64
directMax:
type: integer
format: int64
mappedCount:
type: integer
format: int64
mappedUsed:
type: integer
format: int64
mappedMax:
type: integer
format: int64
memorySegmentsAvailable:
type: integer
format: int64
memorySegmentsTotal:
type: integer
format: int64
nettyShuffleMemorySegmentsAvailable:
type: integer
format: int64
nettyShuffleMemorySegmentsUsed:
type: integer
format: int64
nettyShuffleMemorySegmentsTotal:
type: integer
format: int64
nettyShuffleMemoryAvailable:
type: integer
format: int64
nettyShuffleMemoryUsed:
type: integer
format: int64
nettyShuffleMemoryTotal:
type: integer
format: int64
garbageCollectors:
type: array
items:
$ref: '#/components/schemas/GarbageCollectorInfo'
JarEntryInfo:
type: object
properties:
name:
type: string
description:
type: string
TriggerId:
pattern: "[0-9a-f]{32}"
type: string
JobVertexFlameGraph:
type: object
properties:
endTimestamp:
type: integer
format: int64
data:
$ref: '#/components/schemas/Node'
JobDetailsInfo:
type: object
properties:
jid:
$ref: '#/components/schemas/JobID'
name:
type: string
isStoppable:
type: boolean
state:
$ref: '#/components/schemas/JobStatus'
start-time:
type: integer
format: int64
end-time:
type: integer
format: int64
duration:
type: integer
format: int64
maxParallelism:
type: integer
format: int64
now:
type: integer
format: int64
timestamps:
type: object
additionalProperties:
type: integer
format: int64
vertices:
type: array
items:
$ref: '#/components/schemas/JobVertexDetailsInfo'
status-counts:
type: object
additionalProperties:
type: integer
format: int32
plan:
type: string
IOMetricsInfo:
type: object
properties:
read-bytes:
type: integer
format: int64
read-bytes-complete:
type: boolean
write-bytes:
type: integer
format: int64
write-bytes-complete:
type: boolean
read-records:
type: integer
format: int64
read-records-complete:
type: boolean
write-records:
type: integer
format: int64
write-records-complete:
type: boolean
SavepointFormatType:
type: string
enum:
- CANONICAL
- NATIVE
SerializedThrowable:
type: object
properties:
serialized-throwable:
type: string
format: binary
TaskManagersInfo:
type: object
properties:
taskmanagers:
type: array
items:
$ref: '#/components/schemas/TaskManagerInfo'
RestoreMode:
type: string
enum:
- CLAIM
- NO_CLAIM
- LEGACY
SubtaskExecutionAttemptDetailsInfo:
type: object
properties:
subtask:
type: integer
format: int32
status:
$ref: '#/components/schemas/ExecutionState'
attempt:
type: integer
format: int32
host:
type: string
start-time:
type: integer
format: int64
end-time:
type: integer
format: int64
duration:
type: integer
format: int64
metrics:
$ref: '#/components/schemas/IOMetricsInfo'
taskmanager-id:
type: string
JobResult:
type: object
properties:
jobId:
$ref: '#/components/schemas/JobID'
applicationStatus:
$ref: '#/components/schemas/ApplicationStatus'
accumulatorResults:
type: object
additionalProperties:
$ref: '#/components/schemas/SerializedValueOptionalFailureObject'
netRuntime:
type: integer
format: int64
serializedThrowable:
$ref: '#/components/schemas/SerializedThrowable'
success:
type: boolean
JobVertexDetailsInfo:
type: object
properties:
id:
$ref: '#/components/schemas/JobVertexID'
name:
type: string
parallelism:
type: integer
format: int32
maxParallelism:
type: integer
format: int32
now:
type: integer
format: int64
subtasks:
type: array
items:
$ref: '#/components/schemas/SubtaskExecutionAttemptDetailsInfo'
DistributedCacheFile:
type: object
properties:
entryName:
type: string
fileName:
type: string
RestoredCheckpointStatistics:
type: object
properties:
id:
type: integer
format: int64
restore_timestamp:
type: integer
format: int64
is_savepoint:
type: boolean
external_path:
type: string
SavepointTriggerRequestBody:
type: object
properties:
target-directory:
type: string
cancel-job:
type: boolean
formatType:
$ref: '#/components/schemas/SavepointFormatType'
triggerId:
$ref: '#/components/schemas/TriggerId'
ThreadDumpInfo:
type: object
properties:
threadInfos:
type: array
items:
$ref: '#/components/schemas/ThreadInfo'
AsynchronousOperationResult:
type: object
properties:
status:
$ref: '#/components/schemas/QueueStatus'
operation:
oneOf:
- $ref: '#/components/schemas/AsynchronousOperationInfo'
- $ref: '#/components/schemas/SavepointInfo'
CheckpointingStatistics:
type: object
properties:
counts:
$ref: '#/components/schemas/Counts'
summary:
$ref: '#/components/schemas/Summary'
latest:
$ref: '#/components/schemas/LatestCheckpoints'
history:
type: array
items:
$ref: '#/components/schemas/CheckpointStatistics'
HardwareDescription:
type: object
properties:
cpuCores:
type: integer
format: int32
physicalMemory:
type: integer
format: int64
freeMemory:
type: integer
format: int64
managedMemory:
type: integer
format: int64
TaskCheckpointStatistics:
type: object
properties:
id:
type: integer
format: int64
status:
$ref: '#/components/schemas/CheckpointStatsStatus'
latest_ack_timestamp:
type: integer
format: int64
checkpointed_size:
type: integer
format: int64
state_size:
type: integer
format: int64
end_to_end_duration:
type: integer
format: int64
alignment_buffered:
type: integer
format: int64
processed_data:
type: integer
format: int64
persisted_data:
type: integer
format: int64
num_subtasks:
type: integer
format: int32
num_acknowledged_subtasks:
type: integer
format: int32
JobStatusInfo:
type: object
properties:
status:
$ref: '#/components/schemas/JobStatus'
JobAccumulator:
type: object
Id:
type: string
enum:
- IN_PROGRESS
- COMPLETED
JobID:
pattern: "[0-9a-f]{32}"
type: string
CheckpointStatistics:
required:
- className
type: object
properties:
id:
type: integer
format: int64
status:
$ref: '#/components/schemas/CheckpointStatsStatus'
is_savepoint:
type: boolean
trigger_timestamp:
type: integer
format: int64
latest_ack_timestamp:
type: integer
format: int64
checkpointed_size:
type: integer
format: int64
state_size:
type: integer
format: int64
end_to_end_duration:
type: integer
format: int64
alignment_buffered:
type: integer
format: int64
processed_data:
type: integer
format: int64
persisted_data:
type: integer
format: int64
num_subtasks:
type: integer
format: int32
num_acknowledged_subtasks:
type: integer
format: int32
checkpoint_type:
$ref: '#/components/schemas/RestAPICheckpointType'
tasks:
type: object
additionalProperties:
$ref: '#/components/schemas/TaskCheckpointStatistics'
className:
type: string
discriminator:
propertyName: className
JobConfigInfo:
type: object
properties:
jobId:
$ref: '#/components/schemas/JobID'
jobName:
type: string
executionConfigInfo:
$ref: '#/components/schemas/ExecutionConfigInfo'
MetricCollectionResponseBody:
type: object
properties:
metrics:
type: array
items:
$ref: '#/components/schemas/Metric'
ClusterOverviewWithVersion:
type: object
properties:
taskmanagers:
type: integer
format: int32
slots-total:
type: integer
format: int32
slots-available:
type: integer
format: int32
jobs-running:
type: integer
format: int32
jobs-finished:
type: integer
format: int32
jobs-cancelled:
type: integer
format: int32
jobs-failed:
type: integer
format: int32
flink-version:
type: string
flink-commit:
type: string
AggregatedMetricsResponseBody:
type: object
JobStatus:
type: string
enum:
- INITIALIZING
- CREATED
- RUNNING
- FAILING
- FAILED
- CANCELLING
- CANCELED
- FINISHED
- RESTARTING
- SUSPENDED
- RECONCILING
SubtasksAllAccumulatorsInfo:
type: object
properties:
id:
$ref: '#/components/schemas/JobVertexID'
parallelism:
type: integer
format: int32
subtasks:
type: array
items:
$ref: '#/components/schemas/SubtaskAccumulatorsInfo'
ResourceID:
pattern: "[0-9a-f]{32}"
type: string
ClusterDataSetListResponseBody:
type: object
properties:
dataSets:
type: array
items:
$ref: '#/components/schemas/ClusterDataSetEntry'
UploadStatus:
type: string
enum:
- success
SavepointDisposalRequest:
type: object
properties:
savepoint-path:
type: string
PendingSubtaskCheckpointStatistics:
type: object
allOf:
- $ref: '#/components/schemas/SubtaskCheckpointStatistics'
LogInfo:
type: object
properties:
name:
type: string
size:
type: integer
format: int64
mtime:
type: integer
format: int64
CompletedCheckpointStatistics:
type: object
allOf:
- $ref: '#/components/schemas/CheckpointStatistics'
- type: object
properties:
external_path:
type: string
discarded:
type: boolean
JarRunRequestBody:
type: object
properties:
entryClass:
type: string
programArgs:
type: string
programArgsList:
type: array
items:
type: string
parallelism:
type: integer
format: int32
jobId:
$ref: '#/components/schemas/JobID'
allowNonRestoredState:
type: boolean
savepointPath:
type: string
restoreMode:
$ref: '#/components/schemas/RestoreMode'
SubtaskAccumulatorsInfo:
type: object
properties:
subtask:
type: integer
format: int32
attempt:
type: integer
format: int32
host:
type: string
user-accumulators:
type: array
items:
$ref: '#/components/schemas/UserAccumulator'
JobPlanInfo:
type: object
properties:
plan:
$ref: '#/components/schemas/RawJson'
TaskExecutorMemoryConfiguration:
type: object
properties:
frameworkHeap:
type: integer
format: int64
taskHeap:
type: integer
format: int64
frameworkOffHeap:
type: integer
format: int64
taskOffHeap:
type: integer
format: int64
networkMemory:
type: integer
format: int64
managedMemory:
type: integer
format: int64
jvmMetaspace:
type: integer
format: int64
jvmOverhead:
type: integer
format: int64
totalFlinkMemory:
type: integer
format: int64
totalProcessMemory:
type: integer
format: int64
FailedCheckpointStatistics:
type: object
allOf:
- $ref: '#/components/schemas/CheckpointStatistics'
- type: object
properties:
failure_timestamp:
type: integer
format: int64
failure_message:
type: string
JobVertexAccumulatorsInfo:
type: object
properties:
id:
type: string
user-accumulators:
type: array
items:
$ref: '#/components/schemas/UserAccumulator'
Type:
type: string
enum:
- FULL
- ON_CPU
- OFF_CPU
ClusterConfigurationInfo:
type: array
properties:
empty:
type: boolean
items:
$ref: '#/components/schemas/ClusterConfigurationInfoEntry'
UserAccumulator:
type: object
properties:
name:
type: string
type:
type: string
value:
type: string
VertexBackPressureLevel:
type: string
enum:
- ok
- low
- high
CheckpointDuration:
type: object
properties:
sync:
type: integer
format: int64
async:
type: integer
format: int64
ExceptionInfo:
type: object
properties:
exceptionName:
type: string
stacktrace:
type: string
timestamp:
type: integer
format: int64
taskName:
type: string
location:
type: string
SubtaskCheckpointStatistics:
required:
- className
type: object
properties:
index:
type: integer
format: int32
status:
type: string
className:
type: string
discriminator:
propertyName: className
TerminationMode:
type: string
enum:
- CANCEL
- STOP
CompletedSubtaskCheckpointStatistics:
type: object
allOf:
- $ref: '#/components/schemas/SubtaskCheckpointStatistics'
- type: object
properties:
ack_timestamp:
type: integer
format: int64
end_to_end_duration:
type: integer
format: int64
checkpointed_size:
type: integer
format: int64
state_size:
type: integer
format: int64
checkpoint:
$ref: '#/components/schemas/CheckpointDuration'
alignment:
$ref: '#/components/schemas/CheckpointAlignment'
start_delay:
type: integer
format: int64
unaligned_checkpoint:
type: boolean
aborted:
type: boolean
PendingCheckpointStatistics:
type: object
allOf:
- $ref: '#/components/schemas/CheckpointStatistics'
ExecutionState:
type: string
enum:
- CREATED
- SCHEDULED
- DEPLOYING
- RUNNING
- FINISHED
- CANCELING
- CANCELED
- FAILED
- RECONCILING
- INITIALIZING
ProcessingMode:
type: string
enum:
- AT_LEAST_ONCE
- EXACTLY_ONCE
JobSubmitResponseBody:
type: object
properties:
jobUrl:
type: string
UserTaskAccumulator:
type: object
properties:
name:
type: string
type:
type: string
value:
type: string
JobExceptionHistory:
type: object
properties:
entries:
type: array
items:
$ref: '#/components/schemas/RootExceptionInfo'
truncated:
type: boolean
SubtaskTimeInfo:
type: object
properties:
subtask:
type: integer
format: int32
host:
type: string
duration:
type: integer
format: int64
timestamps:
type: object
additionalProperties:
type: integer
format: int64
CheckpointStatsStatus:
type: string
enum:
- IN_PROGRESS
- COMPLETED
- FAILED
RestAPICheckpointType:
type: string
enum:
- CHECKPOINT
- SAVEPOINT
- SYNC_SAVEPOINT
VertexBackPressureStatus:
type: string
enum:
- deprecated
- ok
ExternalizedCheckpointInfo:
type: object
properties:
enabled:
type: boolean
delete_on_cancellation:
type: boolean
ResourceProfileInfo:
type: object
properties:
cpuCores:
type: number
format: double
taskHeapMemory:
type: integer
format: int32
taskOffHeapMemory:
type: integer
format: int32
managedMemory:
type: integer
format: int32
networkMemory:
type: integer
format: int32
extendedResources:
type: object
additionalProperties:
type: number
format: double
ClusterDataSetEntry:
type: object
properties:
id:
type: string
isComplete:
type: boolean
JobVertexBackPressureInfo:
type: object
properties:
status:
$ref: '#/components/schemas/VertexBackPressureStatus'
backpressure-level:
$ref: '#/components/schemas/VertexBackPressureLevel'
end-timestamp:
type: integer
format: int64
subtasks:
type: array
items:
$ref: '#/components/schemas/SubtaskBackPressureInfo'
JobIdWithStatus:
type: object
properties:
id:
$ref: '#/components/schemas/JobID'
status:
$ref: '#/components/schemas/JobStatus'
ClusterConfigurationInfoEntry:
type: object
properties:
key:
type: string
value:
type: string
QueueStatus:
required:
- id
type: object
properties:
id:
$ref: '#/components/schemas/Id'
LatestCheckpoints:
type: object
properties:
completed:
$ref: '#/components/schemas/CompletedCheckpointStatistics'
savepoint:
$ref: '#/components/schemas/CompletedCheckpointStatistics'
failed:
$ref: '#/components/schemas/FailedCheckpointStatistics'
restored:
$ref: '#/components/schemas/RestoredCheckpointStatistics'
JobSubmitRequestBody:
type: object
properties:
jobGraphFileName:
type: string
jobJarFileNames:
type: array
items:
type: string
jobArtifactFileNames:
type: array
items:
$ref: '#/components/schemas/DistributedCacheFile'
SubtaskExecutionAttemptAccumulatorsInfo:
type: object
properties:
subtask:
type: integer
format: int32
attempt:
type: integer
format: int32
id:
type: string
user-accumulators:
type: array
items:
$ref: '#/components/schemas/UserAccumulator'
SubtasksTimesInfo:
type: object
properties:
id:
type: string
name:
type: string
now:
type: integer
format: int64
subtasks:
type: array
items:
$ref: '#/components/schemas/SubtaskTimeInfo'
StopWithSavepointRequestBody:
type: object
properties:
targetDirectory:
type: string
drain:
type: boolean
formatType:
$ref: '#/components/schemas/SavepointFormatType'
triggerId:
$ref: '#/components/schemas/TriggerId'
DashboardConfiguration:
type: object
properties:
refresh-interval:
type: integer
format: int64
timezone-name:
type: string
timezone-offset:
type: integer
format: int32
flink-version:
type: string
flink-revision:
type: string
features:
$ref: '#/components/schemas/Features'
GarbageCollectorInfo:
type: object
properties:
name:
type: string
count:
type: integer
format: int64
time:
type: integer
format: int64
JobAccumulatorsInfo:
type: object
properties:
job-accumulators:
type: array
items:
$ref: '#/components/schemas/JobAccumulator'
user-task-accumulators:
type: array
items:
$ref: '#/components/schemas/UserTaskAccumulator'
serialized-user-task-accumulators:
type: object
additionalProperties:
$ref: '#/components/schemas/SerializedValueOptionalFailureObject'
StatsSummaryDto:
type: object
properties:
min:
type: integer
format: int64
max:
type: integer
format: int64
avg:
type: integer
format: int64
p50:
type: number
format: double
p90:
type: number
format: double
p95:
type: number
format: double
p99:
type: number
format: double
p999:
type: number
format: double
TaskManagerDetailsInfo:
type: object
properties:
id:
$ref: '#/components/schemas/ResourceID'
path:
type: string
dataPort:
type: integer
format: int32
jmxPort:
type: integer
format: int32
timeSinceLastHeartbeat:
type: integer
format: int64
slotsNumber:
type: integer
format: int32
freeSlots:
type: integer
format: int32
totalResource:
$ref: '#/components/schemas/ResourceProfileInfo'
freeResource:
$ref: '#/components/schemas/ResourceProfileInfo'
hardware:
$ref: '#/components/schemas/HardwareDescription'
memoryConfiguration:
$ref: '#/components/schemas/TaskExecutorMemoryConfiguration'
allocatedSlots:
type: array
items:
$ref: '#/components/schemas/SlotInfo'
metrics:
$ref: '#/components/schemas/TaskManagerMetricsInfo'
ExecutionConfigInfo:
type: object
properties:
execution-mode:
type: string
restart-strategy:
type: string
job-parallelism:
type: integer
format: int32
object-reuse-mode:
type: boolean
user-config:
type: object
additionalProperties:
type: string
Counts:
type: object
properties:
restored:
type: integer
format: int64
total:
type: integer
format: int64
in_progress:
type: integer
format: int32
completed:
type: integer
format: int64
failed:
type: integer
format: int64
JobExecutionResultResponseBody:
required:
- status
type: object
properties:
status:
$ref: '#/components/schemas/QueueStatus'
job-execution-result:
$ref: '#/components/schemas/JobResult'
JobVertexID:
pattern: "[0-9a-f]{32}"
type: string
JarRunResponseBody:
type: object
properties:
jobid:
$ref: '#/components/schemas/JobID'
MultipleJobsDetails:
type: object
properties:
jobs:
type: array
items:
$ref: '#/components/schemas/JobDetails'
JobDetails:
type: object
properties:
jobId:
$ref: '#/components/schemas/JobID'
jobName:
type: string
startTime:
type: integer
format: int64
endTime:
type: integer
format: int64
duration:
type: integer
format: int64
status:
$ref: '#/components/schemas/JobStatus'
lastUpdateTime:
type: integer
format: int64
tasksPerState:
type: array
items:
type: integer
format: int32
numTasks:
type: integer
format: int32
ThreadInfo:
type: object
properties:
threadName:
type: string
stringifiedThreadInfo:
type: string
JobIdsWithStatusOverview:
type: object
properties:
jobs:
type: array
items:
$ref: '#/components/schemas/JobIdWithStatus'
TaskCheckpointStatisticsWithSubtaskDetails:
type: object
properties:
id:
type: integer
format: int64
status:
$ref: '#/components/schemas/CheckpointStatsStatus'
latest_ack_timestamp:
type: integer
format: int64
checkpointed_size:
type: integer
format: int64
state_size:
type: integer
format: int64
end_to_end_duration:
type: integer
format: int64
alignment_buffered:
type: integer
format: int64
processed_data:
type: integer
format: int64
persisted_data:
type: integer
format: int64
num_subtasks:
type: integer
format: int32
num_acknowledged_subtasks:
type: integer
format: int32
summary:
$ref: '#/components/schemas/Summary'
subtasks:
type: array
items:
$ref: '#/components/schemas/SubtaskCheckpointStatistics'
Features:
type: object
properties:
web-submit:
type: boolean
web-cancel:
type: boolean
JobVertexTaskManagersInfo:
type: object
properties:
id:
$ref: '#/components/schemas/JobVertexID'
name:
type: string
now:
type: integer
format: int64
taskmanagers:
type: array
items:
$ref: '#/components/schemas/TaskManagersInfo'
CheckpointConfigInfo:
type: object
properties:
mode:
$ref: '#/components/schemas/ProcessingMode'
interval:
type: integer
format: int64
timeout:
type: integer
format: int64
min_pause:
type: integer
format: int64
max_concurrent:
type: integer
format: int64
externalization:
$ref: '#/components/schemas/ExternalizedCheckpointInfo'
state_backend:
type: string
checkpoint_storage:
type: string
unaligned_checkpoints:
type: boolean
tolerable_failed_checkpoints:
type: integer
format: int32
aligned_checkpoint_timeout:
type: integer
format: int64
checkpoints_after_tasks_finish:
type: boolean
changelog_periodic_materialization_interval:
type: integer
format: int64
changelog_storage:
type: string
JobExceptionsInfoWithHistory:
type: object
properties:
root-exception:
type: string
timestamp:
type: integer
format: int64
all-exceptions:
type: array
items:
$ref: '#/components/schemas/ExecutionExceptionInfo'
truncated:
type: boolean
exceptionHistory:
$ref: '#/components/schemas/JobExceptionHistory'
LogListInfo:
type: object
properties:
logs:
type: array
items:
$ref: '#/components/schemas/LogInfo'
ExecutionExceptionInfo:
type: object
properties:
exception:
type: string
task:
type: string
location:
type: string
timestamp:
type: integer
format: int64
JarPlanRequestBody:
type: object
properties:
entryClass:
type: string
programArgs:
type: string
programArgsList:
type: array
items:
type: string
parallelism:
type: integer
format: int32
jobId:
$ref: '#/components/schemas/JobID'
JarUploadResponseBody:
type: object
properties:
filename:
type: string
status:
$ref: '#/components/schemas/UploadStatus'
RawJson:
type: object
SerializedValueOptionalFailureObject:
type: object
properties:
byteArray:
type: array
items:
type: string
format: byte
JarListInfo:
type: object
properties:
address:
type: string
files:
type: array
items:
$ref: '#/components/schemas/JarFileInfo'
RootExceptionInfo:
type: object
properties:
exceptionName:
type: string
stacktrace:
type: string
timestamp:
type: integer
format: int64
taskName:
type: string
location:
type: string
concurrentExceptions:
type: array
items:
$ref: '#/components/schemas/ExceptionInfo'
TaskManagerInfo:
type: object
properties:
id:
$ref: '#/components/schemas/ResourceID'
path:
type: string
dataPort:
type: integer
format: int32
jmxPort:
type: integer
format: int32
timeSinceLastHeartbeat:
type: integer
format: int64
slotsNumber:
type: integer
format: int32
freeSlots:
type: integer
format: int32
totalResource:
$ref: '#/components/schemas/ResourceProfileInfo'
freeResource:
$ref: '#/components/schemas/ResourceProfileInfo'
hardware:
$ref: '#/components/schemas/HardwareDescription'
memoryConfiguration:
$ref: '#/components/schemas/TaskExecutorMemoryConfiguration'
ApplicationStatus:
type: string
enum:
- SUCCEEDED
- FAILED
- CANCELED
- UNKNOWN
Summary:
type: object
properties:
checkpointed_size:
$ref: '#/components/schemas/StatsSummaryDto'
state_size:
$ref: '#/components/schemas/StatsSummaryDto'
end_to_end_duration:
$ref: '#/components/schemas/StatsSummaryDto'
checkpoint_duration:
$ref: '#/components/schemas/CheckpointDuration'
alignment:
$ref: '#/components/schemas/CheckpointAlignment'
start_delay:
$ref: '#/components/schemas/StatsSummaryDto'
IntermediateDataSetID:
pattern: "[0-9a-f]{32}"
type: string
Metric:
required:
- id
type: object
properties:
id:
type: string
value:
type: string
TriggerResponse:
type: object
properties:
request-id:
$ref: '#/components/schemas/TriggerId'
SlotInfo:
type: object
properties:
jobId:
$ref: '#/components/schemas/JobID'
resource:
$ref: '#/components/schemas/ResourceProfileInfo'
SubtaskBackPressureInfo:
type: object
properties:
subtask:
type: integer
format: int32
backpressure-level:
$ref: '#/components/schemas/VertexBackPressureLevel'
ratio:
type: number
format: double
idleRatio:
type: number
format: double
busyRatio:
type: number
format: double