API Reference
=============

This section is autogenerated from in-line code documentation. It is mostly useful as a
reference for the various classes, methods, and other objects in the library, but is
not intended to function as a starting point for working with ``pystac_client``.

Client
------

Client is the base PySTAC-Client that inherits from :class:`Catalog <pystac.Catalog>`.
In addition to the PySTAC functionality, Client allows opening of API URLs,
understanding of conformance, and support for searching and paging through results.

.. autoclass:: pystac_client.Client
   :members:
   :undoc-members:
   :show-inheritance:

Collection Client
-----------------

Client is the a PySTAC-Client that inherits from
:class:`Collection <pystac.Collection>`. In addition to the PySTAC functionality,
CollectionClient allows opening of API URLs, and iterating through items at a search
endpoint, if supported.

.. autoclass:: pystac_client.CollectionClient
   :members:
   :undoc-members:

Collection Search
-----------------

The `CollectionSearch` class represents a search of collections in a STAC API.

.. autoclass:: pystac_client.CollectionSearch
   :members:
   :undoc-members:
   :member-order: bysource

Item Search
-----------

The `ItemSearch` class represents a search of a STAC API.

.. autoclass:: pystac_client.ItemSearch
   :members:
   :undoc-members:
   :member-order: bysource


STAC API IO
-----------

The StacApiIO class inherits from the :class:`Collection <pystac.DefaultStacIO>`
class and allows for reading over http, such as with REST APIs.

.. autoclass:: pystac_client.stac_api_io.StacApiIO
   :members:
   :undoc-members:
   :show-inheritance:


Conformance
-----------

.. automodule:: pystac_client.conformance
    :members:
    :undoc-members:
    :show-inheritance:


Exceptions
----------

.. automodule:: pystac_client.exceptions
    :members:
    :undoc-members:
    :show-inheritance:

Warnings
--------

.. automodule:: pystac_client.warnings
    :members:
    :undoc-members:
    :show-inheritance:
