class_docstr: Hook for Looker APIs.
class_docstr_tok: ["Hook","for","Looker","APIs","."]
docstr: Submits a PDT materialization job to Looker.
  
  :param model: Required. The model of the PDT to start building.
  :param view: Required. The view of the PDT to start building.
  :param query_params: Optional. Additional materialization parameters.
docstr_tok: ["Submits","a","PDT","materialization","job","to","Looker",".",":","param","model",":","Required",".","The","model","of","the","PDT","to","start","building",".",":","param","view",":","Required",".","The","view","of","the","PDT","to","start","building",".",":","param","query_params",":","Optional",".","Additional","materialization","parameters","."]
code: def start_pdt_build(
      self,
      model: str,
      view: str,
      query_params: dict | None = None,
  ):
      """
      Submits a PDT materialization job to Looker.
  
      :param model: Required. The model of the PDT to start building.
      :param view: Required. The view of the PDT to start building.
      :param query_params: Optional. Additional materialization parameters.
      """
      self.log.info(
          "Submitting PDT materialization job. Model: '%s', view: '%s'.",
          model,
          view,
      )
      self.log.debug(
          "PDT materialization job source: '%s'.", self.source
      )
  
      sdk = self.get_looker_sdk()
      looker_ver = sdk.versions().looker_release_version
      if parse_version(looker_ver) < parse_version("22.2.0"):
          raise AirflowException(
              f"This API requires Looker version 22.2+. Found: {looker_ver}."
          )
  
      # unpack query_params dict into kwargs (if not None)
      if query_params:
          resp = sdk.start_pdt_build(
              model_name=model,
              view_name=view,
              source=self.source,
              **query_params,
          )
      else:
          resp = sdk.start_pdt_build(
              model_name=model, view_name=view, source=self.source
          )
  
      self.log.info("Start PDT build response: '%s'.", resp)
  
      return resp
  
imports: from __future__ import annotations
  import json
  import time
  from enum import Enum
  from typing import TYPE_CHECKING
  from looker_sdk.rtl import api_settings, auth_session, requests_transport, serialize
  from looker_sdk.sdk.api40 import methods
  from packaging.version import parse
  from airflow.exceptions import AirflowException
  from airflow.hooks.base import BaseHook
  from airflow.version import version
label_desc: Use image node_id 2 for calling the LookerHook obj's underlying member method code with example usage: obj.start_pdt_build(model, view, query_params) and returns: resp