:py:mod:`airflow.providers.amazon.aws.hooks.rds`
================================================

.. py:module:: airflow.providers.amazon.aws.hooks.rds

.. autoapi-nested-parse::

   Interact with AWS RDS.



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

Classes
~~~~~~~

.. autoapisummary::

   airflow.providers.amazon.aws.hooks.rds.RdsHook




.. py:class:: RdsHook(*args, **kwargs)

   Bases: :py:obj:`airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook`

   Interact with AWS RDS using proper client from the boto3 library.

   Hook attribute `conn` has all methods that listed in documentation

   .. seealso::
       - https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/rds.html
       - https://docs.aws.amazon.com/rds/index.html

   Additional arguments (such as ``aws_conn_id`` or ``region_name``) may be specified and
   are passed down to the underlying AwsBaseHook.

   .. seealso::
       :class:`~airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook`

   :param aws_conn_id: The Airflow connection used for AWS credentials.

   .. py:method:: conn(self)
      :property:

      Get the underlying boto3 RDS client (cached)

      :return: boto3 RDS client
      :rtype: botocore.client.RDS



