#############
API reference
#############

.. automodapi:: safir
   :include-all-objects:

.. automodapi:: safir.arq
   :include-all-objects:

.. automodapi:: safir.arq.uws
   :include-all-objects:

.. automodapi:: safir.asyncio
   :include-all-objects:
   :inherited-members:

.. automodapi:: safir.click
   :include-all-objects:

.. automodapi:: safir.database
   :include-all-objects:

.. automodapi:: safir.datetime
   :include-all-objects:

.. automodapi:: safir.dependencies.arq
   :include-all-objects:

.. automodapi:: safir.dependencies.db_session
   :include-all-objects:

.. automodapi:: safir.dependencies.gafaelfawr
   :include-all-objects:

.. automodapi:: safir.dependencies.http_client
   :include-all-objects:

.. automodapi:: safir.dependencies.logger
   :include-all-objects:

.. automodapi:: safir.dependencies.metrics
   :include-all-objects:

.. automodapi:: safir.fastapi
   :include-all-objects:

.. automodapi:: safir.gcs
   :include-all-objects:

.. automodapi:: safir.github
   :include-all-objects:

.. automodapi:: safir.github.models
   :include-all-objects:

.. automodapi:: safir.github.webhooks
   :include-all-objects:

.. automodapi:: safir.kafka
   :include-all-objects:

.. automodapi:: safir.kubernetes
   :include-all-objects:

.. automodapi:: safir.logging
   :include-all-objects:

.. automodapi:: safir.metadata
   :include-all-objects:

.. automodapi:: safir.metrics
   :include-all-objects:

.. automodapi:: safir.metrics.arq
   :include-all-objects:

.. automodapi:: safir.models
   :include-all-objects:

.. automodapi:: safir.middleware.ivoa
   :include-all-objects:

.. automodapi:: safir.middleware.x_forwarded
   :include-all-objects:

..
   If all objects from safir.pydantic are included, the pages for the
   Pydantic types are generated but not linked into any table of contents.
   This is probably a bug in automodapi and should be checked against later
   verisons to see if it's fixed. Once this is fixed, the nitpick exclusions
   in documenteer.yaml can also be removed.

.. automodapi:: safir.pydantic

.. automodapi:: safir.redis
   :include-all-objects:
   :inherited-members:

.. automodapi:: safir.sentry
   :include-all-objects:

.. automodapi:: safir.slack.blockkit
   :include-all-objects:

.. automodapi:: safir.slack.webhook
   :include-all-objects:

.. automodapi:: safir.testing.containers
   :include-all-objects:

.. automodapi:: safir.testing.gcs
   :include-all-objects:

.. automodapi:: safir.testing.kubernetes
   :include-all-objects:

.. automodapi:: safir.testing.logging
   :include-all-objects:

.. automodapi:: safir.testing.sentry
   :include-all-objects:

.. automodapi:: safir.testing.slack
   :include-all-objects:

.. automodapi:: safir.testing.uvicorn
   :include-all-objects:

.. automodapi:: safir.testing.uws
   :include-all-objects:

.. automodapi:: safir.uws
   :include-all-objects:
