class_docstr: A client to interact with Snowflake using SQL API and submit multiple SQL statements in a single request.
  
  In combination with aiohttp, make post request to submit SQL statements for execution,
  poll to check the status of the execution of a statement. Fetch query results asynchronously.
  
  This hook requires the snowflake_conn_id connection. This hooks mainly uses account, schema, database,
   warehouse, private_key_file or private_key_content field must be setup in the connection. Other inputs
    can be defined in the connection or hook instantiation.
  
  :param snowflake_conn_id: Reference to
      :ref:`Snowflake connection id<howto/connection:snowflake>`
  :param account: snowflake account name
  :param authenticator: authenticator for Snowflake.
      'snowflake' (default) to use the internal Snowflake authenticator
      'externalbrowser' to authenticate using your web browser and
      Okta, ADFS or any other SAML 2.0-compliant identify provider
      (IdP) that has been defined for your account
      'https://<your_okta_account_name>.okta.com' to authenticate
      through native Okta.
  :param warehouse: name of snowflake warehouse
  :param database: name of snowflake database
  :param region: name of snowflake region
  :param role: name of snowflake role
  :param schema: name of snowflake schema
  :param session_parameters: You can set session-level parameters at
      the time you connect to Snowflake
  :param token_life_time: lifetime of the JWT Token in timedelta
  :param token_renewal_delta: Renewal time of the JWT Token in timedelta
  :param deferrable: Run operator in the deferrable mode.
docstr: Based on the query id async HTTP request is made to snowflake SQL API and return response.
  
  :param query_id: statement handle id for the individual statements.
docstr_tok: ["Based","on","the","query","id","async","HTTP","request","is","made","to","snowflake","SQL","API","and","return","response",".",":","param","query_id",":","statement","handle","id","for","the","individual","statements","."]
code: def get_sql_api_query_status(
      self, query_id: str
  ) -> dict[str, str | list[str]]:
      """
      Based on the query id async HTTP request is made to snowflake SQL API and return response.
  
      :param query_id: statement handle id for the individual statements.
      """
      self.log.info("Retrieving status for query id %s", query_id)
      header, params, url = self.get_request_url_header_params(query_id)
      response = requests.get(url, params=params, headers=header)
      status_code = response.status_code
      resp = response.json()
      return self._process_response(status_code, resp)
  
imports: from __future__ import annotations
  import uuid
  from datetime import timedelta
  from pathlib import Path
  from typing import Any
  import aiohttp
  import requests
  from cryptography.hazmat.backends import default_backend
  from cryptography.hazmat.primitives import serialization
  from airflow.exceptions import AirflowException
  from airflow.providers.snowflake.hooks.snowflake import SnowflakeHook
  from airflow.providers.snowflake.utils.sql_api_generate_jwt import JWTGenerator
label_desc: Use image node_id 8 for calling the SnowflakeSqlApiHook obj's underlying member method code with example usage: obj.get_sql_api_query_status(query_id) and returns: self