class_docstr: A client that is scoped to a specific job.
  
  .. versionadded:: 1.11.0
docstr: Returns the JobID that uniquely identifies the job this client is scoped to.
  
  :return: JobID, or null if the job has been executed on a runtime without JobIDs
           or if the execution failed.
  
  .. versionadded:: 1.11.0
docstr_tok: ["Returns","the","JobID","that","uniquely","identifies","the","job","this","client","is","scoped","to",".",":","return",":","JobID",",","or","null","if","the","job","has","been","executed","on","a","runtime","without","JobIDs","or","if","the","execution","failed",".","..","versionadded",":",":","1.11.0"]
code: def get_job_id(self) -> JobID:
      """
      Returns the JobID that uniquely identifies the job this client is scoped to.
  
      :return: JobID, or null if the job has been executed on a runtime without JobIDs
               or if the execution failed.
  
      .. versionadded:: 1.11.0
      """
      return JobID(self._j_job_client.getJobID())
  
file_path: flink/flink-python/pyflink/common/job_client.py
imports: from pyflink.common.completable_future import CompletableFuture
  from pyflink.common.job_execution_result import JobExecutionResult
  from pyflink.common.job_id import JobID
  from pyflink.common.job_status import JobStatus
label_desc: Use image node_id 2 for calling the JobClient obj's underlying member method code with example usage: obj.get_job_id() and returns: JobID