:py:mod:`airflow.providers.github.hooks.github`
===============================================

.. py:module:: airflow.providers.github.hooks.github

.. autoapi-nested-parse::

   This module allows to connect to a Github.



Module Contents
---------------

Classes
~~~~~~~

.. autoapisummary::

   airflow.providers.github.hooks.github.GithubHook




.. py:class:: GithubHook(github_conn_id = default_conn_name, *args, **kwargs)

   Bases: :py:obj:`airflow.hooks.base.BaseHook`

   Interact with Github.

   Performs a connection to GitHub and retrieves client.

   :param github_conn_id: Reference to :ref:`GitHub connection id <howto/connection:github>`.

   .. py:attribute:: conn_name_attr
      :annotation: = github_conn_id

      

   .. py:attribute:: default_conn_name
      :annotation: = github_default

      

   .. py:attribute:: conn_type
      :annotation: = github

      

   .. py:attribute:: hook_name
      :annotation: = Github

      

   .. py:method:: get_conn(self)

      Function that initiates a new GitHub connection
      with token and hostname ( for GitHub Enterprise )


   .. py:method:: get_ui_field_behaviour()
      :staticmethod:

      Returns custom field behaviour



