# Connect Earth Compliance API > Sustainability and regulatory data for portfolios and instruments. - **Get started** - [Overview](https://docs.datia.app/docs/): What the Connect Earth Compliance API does and how it is organized. - [Quickstart](https://docs.datia.app/docs/quickstart/): Make your first request in a few minutes. - [Authentication](https://docs.datia.app/docs/authentication/): Send your API key in the x-api-key header. - [Errors and limits](https://docs.datia.app/docs/errors/): Error format, status codes, timeouts and request limits. - **Guides** - [Working with portfolios](https://docs.datia.app/docs/guides/portfolios/): Store holdings as dated snapshots and manage them. - [Requesting reports](https://docs.datia.app/docs/guides/reports/): Generate an ESG overview or MiFID II report as a PDF. - **API reference** - Reports: Generate a sustainability report as a PDF. - [Generate a sustainability report](https://docs.datia.app/docs/api-reference/reports/generate-a-sustainability-report/): Builds a PDF sustainability report for the holdings you send and returns a link to it. The report compares the portfolio with one benchmark: `benchmark_etf_mutual_fund` when you send it, otherwise `benchmark_index`, which defaults to `S&P 500`. A request without `identifier`, without `type` or with an empty `holdings` list fails with `400`. A `snapshot_at` in a future year fails with `400` and the message `Snapshot date cannot be higher than actual date`. A date that cannot be read fails with `400` and the message `You are not using a valid date as snapshot parameter`. - Portfolios: Upload portfolios as dated snapshots, then list, rename or delete them. - [List portfolios](https://docs.datia.app/docs/api-reference/portfolios/list-portfolios/): Lists every portfolio in your organization, including portfolios created in the Connect Earth app, and the snapshot dates each one has. Snapshots older than about five years are not listed. - [Create or replace a portfolio snapshot](https://docs.datia.app/docs/api-reference/portfolios/create-or-replace-a-portfolio-snapshot/): Uploads the holdings of a portfolio for one date. Sending the same `identifier` with a date in the same quarter replaces that snapshot. A date in another quarter adds a new snapshot. When the `identifier` already exists, only the holdings are replaced or added: `name` and `currency` are changed only with `PUT /portfolios/{identifier}`. Use the `identifier` in the response to update or delete the portfolio later. A `snapshot_at` in a future year fails with `400` and the message `Snapshot date cannot be higher than actual date`. A date that cannot be read fails with `400` and the message `You are not using a valid date as snapshot parameter`. - [Delete a portfolio snapshot](https://docs.datia.app/docs/api-reference/portfolios/delete-a-portfolio-snapshot/): Deletes one snapshot of a portfolio. It works on any portfolio in your organization, including portfolios created in the Connect Earth app. When you delete the last listed snapshot, the portfolio is deleted too. A portfolio with no listed snapshots, for example one whose snapshots are all older than about five years, is deleted entirely by a `DELETE`, whatever `snapshot_at` you send. If the snapshot is not listed, nothing is deleted and the message says so. `metadata.message` is one of `Fund snapshot deleted successfully`, `Fund deleted successfully with all snapshots`, `Fund deleted successfully` or `Fund snapshot not found`. - [Rename a portfolio or change its currency](https://docs.datia.app/docs/api-reference/portfolios/rename-a-portfolio-or-change-its-currency/): Updates the name or currency of a portfolio. Send only the fields you want to change. It works on any portfolio in your organization, including portfolios created in the Connect Earth app. An unknown currency code is ignored. - Instruments: SFDR classification, PAI indicators, ESG data and business involvements for a list of ISINs. - [Get SFDR classification](https://docs.datia.app/docs/api-reference/instruments/get-sfdr-classification/): Returns the SFDR article (6, 8 or 9) for each ISIN. Needs access to the SFDR framework. Up to 10,000 holdings per request. Entries without an `isin` are skipped. An empty `holdings` list fails with `400` and the message `Please provide at least one instrument`. When no entry has an `isin`, the response has an empty `data` list. - [Get business involvements](https://docs.datia.app/docs/api-reference/instruments/get-business-involvements/): Returns ESG scores and business involvements, such as thermal coal or tobacco, for each ISIN. Needs access to the ESG framework. Up to 10,000 holdings per request. Entries without an `isin` are skipped. An empty `holdings` list, or one where no entry has an `isin`, fails with `400` and the message `Please provide at least one instrument`. - [Get PAI indicators](https://docs.datia.app/docs/api-reference/instruments/get-pai-indicators/): Returns the mandatory SFDR principal adverse impact (PAI) indicators for each ISIN, with their units. Needs access to the SFDR framework. Up to 10,000 holdings per request. Entries without an `isin` are skipped. An empty `holdings` list, or one where no entry has an `isin`, fails with `400` and the message `Please provide at least one instrument`. - [Get ESG data](https://docs.datia.app/docs/api-reference/instruments/get-esg-data/): Returns ESG scores and environmental, social and governance metrics for each ISIN, with their units. Needs access to the ESG framework. Up to 10,000 holdings per request. Entries without an `isin` are skipped. An empty `holdings` list, or one where no entry has an `isin`, fails with `400` and the message `Please provide at least one instrument`. - Sustainable investments: Classify holdings as sustainable investments under a methodology. - [List methodologies](https://docs.datia.app/docs/api-reference/sustainable-investments/list-methodologies/): Lists the sustainable investments methodologies you can use. Needs access to the sustainable investments framework. - [Classify sustainable investments](https://docs.datia.app/docs/api-reference/sustainable-investments/classify-sustainable-investments/): Classifies each holding as sustainable, moderate, not sustainable or uncovered under a methodology. Needs access to the sustainable investments framework. Every holding needs a non-null `isin`, `name`, `instrument_type` and `market_value`, so remove cash rows; otherwise the request fails with `400`. - EU Taxonomy: EU Taxonomy alignment for a list of holdings. - [Get EU Taxonomy alignment](https://docs.datia.app/docs/api-reference/eu-taxonomy/get-eu-taxonomy-alignment/): Returns the EU Taxonomy eligibility and alignment of the holdings you send, taken together as one portfolio. Needs access to the EU Taxonomy framework. Every holding needs a non-null `isin`, `name`, `instrument_type` and `market_value`, so remove cash rows; otherwise the request fails with `400`. When neither taxonomy data nor a market value can be found for the holdings, the request fails with `400` and the message `No data found for the given parameters`. - Climate: Temperature scores for a list of holdings. - [Get temperature scores](https://docs.datia.app/docs/api-reference/climate/get-temperature-scores/): Not yet available on `https://eco.datia.app`. Contact customers@connect.earth for access. Returns a temperature score for each holding, using short-term targets across scopes 1, 2 and 3. Needs access to the temperature score framework. While scores are still being calculated, `portfolio.companies` lists your holdings without score fields and `job_metadata.is_lock` is `true`.