:py:mod:`ITR.data.trucost`
==========================

.. py:module:: ITR.data.trucost


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

Classes
~~~~~~~

.. autoapisummary::

   ITR.data.trucost.Trucost




.. py:class:: Trucost(**kwargs)

   Bases: :py:obj:`ITR.data.data_provider.DataProvider`

   Data provider skeleton for Trucost.

   .. py:method:: get_targets(self, company_ids: List[str]) -> List[ITR.interfaces.IDataProviderTarget]
      :abstractmethod:

      Get all relevant targets for a list of company ids (ISIN). This method should return a list of
      IDataProviderTarget instances.

      :param company_ids: A list of company IDs (ISINs)
      :return: A list containing the targets


   .. py:method:: get_company_data(self, company_ids: List[str]) -> List[ITR.interfaces.IDataProviderCompany]
      :abstractmethod:

      Get all relevant data for a list of company ids (ISIN). This method should return a list of IDataProviderCompany
      instances.

      :param company_ids: A list of company IDs (ISINs)
      :return: A list containing the company data


   .. py:method:: get_sbti_targets(self, companies: list) -> list
      :abstractmethod:

      For each of the companies, get the status of their target (Target set, Committed or No target) as it's known to
      the SBTi.

      :param companies: A list of companies. Each company should be a dict with a "company_name" and "company_id"
                          field.
      :return: The original list, enriched with a field called "sbti_target_status"