Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/datia:datia-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.1.0
info:
title: Datia API
version: '2026-10-15'
description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-10-15: 10 operation(s) read from 13 public documentation page(s) (each
operation names its page in x-source). This is not the provider''s published contract; Datia has published no machine-readable contract that
the pipeline could find. Engine: local.'
x-evidence-tiers:
code-example: 12
documentation: -2
pages-with-code: 13
pages-read: 13
x-generated-from: documentation
x-provenance: generated
x-authored-by: API Evangelist
x-generated: '2026-10-15'
x-generator: generate-contract-from-docs.py
x-engine: local
x-sources:
- https://docs.datia.app/docs/api-reference/instruments/get-esg-data
- https://docs.datia.app/docs/api-reference/portfolios/list-portfolios
- https://docs.datia.app/docs/api-reference/climate/get-temperature-scores
- https://docs.datia.app/docs/api-reference/instruments/get-pai-indicators
- https://docs.datia.app/docs/api-reference/instruments/get-sfdr-classification
- https://docs.datia.app/docs/api-reference/eu-taxonomy/get-eu-taxonomy-alignment
- https://docs.datia.app/docs/api-reference/instruments/get-business-involvements
- https://docs.datia.app/docs/api-reference/portfolios/delete-a-portfolio-snapshot
- https://docs.datia.app/docs/api-reference/reports/generate-a-sustainability-report
- https://docs.datia.app/docs/api-reference/sustainable-investments/list-methodologies
- https://docs.datia.app/docs/api-reference/portfolios/create-or-replace-a-portfolio-snapshot
- https://docs.datia.app/docs/api-reference/portfolios/rename-a-portfolio-or-change-its-currency
- https://docs.datia.app/docs/api-reference/sustainable-investments/classify-sustainable-investments
servers:
- url: https://eco.datia.app
paths:
/instruments/{instrumentid}:
post:
operationId: post_instruments_instrumentid
tags:
- Instruments
summary: POST /instruments/business-involvements
x-source: https://docs.datia.app/docs/api-reference/instruments/get-business-involvements
parameters:
- name: instrumentid
in: path
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PostInstrumentsInstrumentidRequest'
responses:
'201':
description: Success (shape read from the example response on the page)
content:
application/json:
schema:
$ref: '#/components/schemas/PostInstrumentsInstrumentidResponse'
x-evidence:
kind: code-example
language: curl
snippet: 'curl Python JavaScript Copy Text curl -X POST "https://eco.datia.app/instruments/business-involvements" \ -H "x-api-key: $CE_API_KEY"
\ -H "Content-Type: application/json" \ -d ''{ "holdings": [ { "isin": "US0378331005" }, { "isin": "IE00B4L5Y983" } ], "minimum_threshold":
0 }'' 200 400 403 500 Copy Text { "data": [ { "sustainability_data": { "total_score": 212, "environment_score": 71, "social_scor'
collapsed_from: 4 example path(s) differing only at instrumentId
/portfolios:
get:
operationId: get_portfolios
tags:
- Portfolios
summary: GET /portfolios
x-source: https://docs.datia.app/docs/api-reference/portfolios/list-portfolios
responses:
'200':
description: Success (shape read from the example response on the page)
content:
application/json:
schema:
$ref: '#/components/schemas/GetPortfoliosResponse'
x-evidence:
kind: code-example
language: curl
snippet: 'curl Python JavaScript Copy Text curl -X GET "https://eco.datia.app/portfolios" \ -H "x-api-key: $CE_API_KEY" 200 400 403 500
Copy Text { "data": { "members": 4, "funds": [ { "identifier": "datia-portfolio:12345_pension-fund-a", "name": "Pension fund A", "snapshots":
[ "2026-03-31", "2026-06-30" ] } ] }, "metadata": { "message": "Organization metadata successfully retrieved" } } Generate a sustain'
post:
operationId: post_portfolios
tags:
- Portfolios
summary: Uploads the holdings of a portfolio for one date.
x-source: https://docs.datia.app/docs/api-reference/portfolios/delete-a-portfolio-snapshot
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PostPortfoliosRequest'
responses:
'200':
description: Success (status as documented)
content:
application/json:
schema:
$ref: '#/components/schemas/PostPortfoliosResponse'
x-evidence:
kind: documentation
/portfolios/{identifier}:
delete:
operationId: delete_portfolios_identifier
tags:
- Portfolios
summary: Deletes one snapshot of a portfolio.
x-source: https://docs.datia.app/docs/api-reference/portfolios/delete-a-portfolio-snapshot
parameters:
- name: identifier
in: path
required: true
schema:
type: string
responses:
'200':
description: Success (status as documented)
content:
application/json:
schema:
$ref: '#/components/schemas/DeletePortfoliosIdentifierResponse'
x-evidence:
kind: documentation
put:
operationId: put_portfolios_identifier
tags:
- Portfolios
summary: Rename a portfolio or change its currency
description: Updates the name and currency of an existing portfolio.
x-source: https://docs.datia.app/docs/api-reference/portfolios/list-portfolios
parameters:
- name: identifier
in: path
required: true
schema:
type: string
- name: x-api-key
in: header
required: true
schema:
type: string
description: Your Connect Earth API key.
responses:
'200':
description: Success (status as documented)
x-evidence:
kind: documentation
/reports:
post:
operationId: post_reports
tags:
- Reports
summary: POST /reports
x-source: https://docs.datia.app/docs/api-reference/reports/generate-a-sustainability-report
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PostReportsRequest'
responses:
'201':
description: Success (shape read from the example response on the page)
content:
application/json:
schema:
$ref: '#/components/schemas/PostReportsResponse'
x-evidence:
kind: code-example
language: curl
snippet: 'curl Python JavaScript Copy Text curl -X POST "https://eco.datia.app/reports" \ -H "x-api-key: $CE_API_KEY" \ -H "Content-Type:
application/json" \ -d ''{ "name": "Pension fund A", "identifier": "pension-fund-a", "type": "esg-overview", "snapshot_at": "2026-06-30",
"benchmark_etf_mutual_fund": "IE00B4L5Y983", "holdings": [ { "name": "Apple Inc.", "isin": "US0378331005", "instrument_type": "stock", '
/sustainable-investments/insights:
post:
operationId: post_sustainable_investments_insights
tags:
- Sustainable Investments
summary: POST /sustainable-investments/insights
x-source: https://docs.datia.app/docs/api-reference/sustainable-investments/classify-sustainable-investments
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PostSustainableInvestmentsInsightsRequest'
responses:
'201':
description: Success (shape read from the example response on the page)
content:
application/json:
schema:
$ref: '#/components/schemas/PostSustainableInvestmentsInsightsResponse'
x-evidence:
kind: code-example
language: curl
snippet: 'curl Python JavaScript Copy Text curl -X POST "https://eco.datia.app/sustainable-investments/insights" \ -H "x-api-key: $CE_API_KEY"
\ -H "Content-Type: application/json" \ -d ''{ "methodology_id": 230, "holdings": [ { "name": "Apple Inc.", "isin": "US0378331005",
"instrument_type": "stock", "currency": "USD", "weight": 40, "market_value": 4000000 }, { "name": "Microsoft Corp.", "isin": "US59491810'
/sustainable-investments/methodologies:
get:
operationId: get_sustainable_investments_methodologies
tags:
- Sustainable Investments
summary: GET /sustainable-investments/methodologies
x-source: https://docs.datia.app/docs/api-reference/sustainable-investments/list-methodologies
responses:
'200':
description: Success (shape read from the example response on the page)
content:
application/json:
schema:
$ref: '#/components/schemas/GetSustainableInvestmentsMethodologiesResponse'
x-evidence:
kind: code-example
language: curl
snippet: 'curl Python JavaScript Copy Text curl -X GET "https://eco.datia.app/sustainable-investments/methodologies" \ -H "x-api-key:
$CE_API_KEY" 200 400 403 500 Copy Text { "data": [ { "id": 1, "name": "Connect Earth''s Sample" }, { "id": 230, "name": "Custom methodology"
} ] } Get ESG data POST Returns ESG scores and environmental, social and governance metrics for each ISIN, with their units. Needs acces'
/taxonomy/insights:
post:
operationId: post_taxonomy_insights
tags:
- Taxonomy
summary: POST /taxonomy/insights
x-source: https://docs.datia.app/docs/api-reference/eu-taxonomy/get-eu-taxonomy-alignment
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PostTaxonomyInsightsRequest'
responses:
'201':
description: Success (shape read from the example response on the page)
content:
application/json:
schema:
$ref: '#/components/schemas/PostTaxonomyInsightsResponse'
x-evidence:
kind: code-example
language: curl
snippet: 'curl Python JavaScript Copy Text curl -X POST "https://eco.datia.app/taxonomy/insights" \ -H "x-api-key: $CE_API_KEY" \ -H "Content-Type:
application/json" \ -d ''{ "holdings": [ { "name": "Apple Inc.", "isin": "US0378331005", "instrument_type": "stock", "currency": "USD",
"weight": 40, "market_value": 4000000 }, { "name": "Microsoft Corp.", "isin": "US5949181045", "instrument_type": "stock", "curr'
/temperature-score/insights:
post:
operationId: post_temperature_score_insights
tags:
- Temperature Score
summary: POST /temperature-score/insights
x-source: https://docs.datia.app/docs/api-reference/climate/get-temperature-scores
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PostTemperatureScoreInsightsRequest'
responses:
'201':
description: Success (shape read from the example response on the page)
content:
application/json:
schema:
$ref: '#/components/schemas/PostTemperatureScoreInsightsResponse'
x-evidence:
kind: code-example
language: curl
snippet: 'curl Python JavaScript Copy Text curl -X POST "https://eco.datia.app/temperature-score/insights" \ -H "x-api-key: $CE_API_KEY"
\ -H "Content-Type: application/json" \ -d ''{ "holdings": [ { "name": "Apple Inc.", "isin": "US0378331005", "instrument_type": "stock",
"currency": "USD", "weight": 40, "market_value": 4000000 }, { "name": "Microsoft Corp.", "isin": "US5949181045", "instrument_type":
"stoc'
components:
schemas:
PostInstrumentsInstrumentidRequest:
type: object
properties:
holdings:
type: array
items:
type: object
properties:
isin:
type: string
minimum_threshold:
type: integer
PostInstrumentsInstrumentidResponse:
type: object
properties:
total_score:
type: integer
environment_score:
type: integer
social_score:
type: integer
governance_score:
type: integer
business_involvements:
type: object
properties:
thermal_coal:
type: object
properties:
weight:
type: integer
count:
type: integer
tobacco_distributor:
type: object
properties:
weight:
type: integer
count:
type: integer
nuclear_weapons:
type: object
properties:
weight:
type: integer
count:
type: integer
GetPortfoliosResponse:
type: object
properties:
data:
type: object
properties:
members:
type: integer
funds:
type: array
items:
type: object
properties:
identifier:
type: string
name:
type: string
snapshots:
type: array
items:
type: string
format: date
metadata:
type: object
properties:
message:
type: string
PostPortfoliosRequest:
type: object
properties:
snapshot_at:
type: string
description: Date of the snapshot (ISO 8601).
name:
type: string
currency:
type: string
holdings:
type: array
description: Holdings data for the portfolio.
required:
- snapshot_at
PostPortfoliosResponse:
type: object
properties:
identifier:
type: string
DeletePortfoliosIdentifierResponse:
type: object
properties:
identifier:
type: string
metadata.message:
type: string
description: One of Fund snapshot deleted successfully, Fund deleted successfully with all snapshots, Fund deleted successfully or Fund
snapshot not found.
PostReportsRequest:
type: object
properties:
name:
type: string
identifier:
type: string
type:
type: string
snapshot_at:
type: string
format: date
benchmark_etf_mutual_fund:
type: string
holdings:
type: array
items:
type: object
properties:
name:
type: string
isin:
type: string
instrument_type:
type: string
currency:
type: string
weight:
type: integer
market_value:
type: integer
PostReportsResponse:
type: object
properties:
document:
type: object
properties:
location_url:
type: string
request_id:
type: string
metadata:
type: object
properties:
snapshot_at:
type: string
format: date
type:
type: string
default_benchmark:
type: string
identifier:
type: string
PostSustainableInvestmentsInsightsRequest:
type: object
properties:
methodology_id:
type: integer
holdings:
type: array
items:
type: object
properties:
name:
type: string
isin:
type: string
instrument_type:
type: string
currency:
type: string
weight:
type: integer
market_value:
type: integer
PostSustainableInvestmentsInsightsResponse:
type: object
properties:
data:
type: array
items:
type: object
properties:
name:
type: string
isin:
type: string
weight:
type: integer
sustainability_profile:
type: object
properties:
classification:
type: integer
description:
type: string
metadata:
type:
- string
- 'null'
GetSustainableInvestmentsMethodologiesResponse:
type: object
properties:
data:
type: array
items:
type: object
properties:
id:
type: integer
name:
type: string
PostTaxonomyInsightsRequest:
type: object
properties:
holdings:
type: array
items:
type: object
properties:
name:
type: string
isin:
type: string
instrument_type:
type: string
currency:
type: string
weight:
type: integer
market_value:
type: integer
PostTaxonomyInsightsResponse:
type: object
properties:
data:
type: object
properties:
taxonomy_alignment_%:
type: number
taxonomy_eligible_turnover_%:
type: number
taxonomy_alignment_turnover_%:
type: number
taxonomy_alignment_enabling_turnover_%:
type: number
taxonomy_alignment_transitional_turnover_%:
type: number
taxonomy_eligible_capex_%:
type: number
taxonomy_alignment_capex_%:
type: number
taxonomy_alignment_enabling_capex_%:
type: number
taxonomy_alignment_transitional_capex_%:
type: number
taxonomy_eligible_opex_%:
type: number
taxonomy_alignment_opex_%:
type: number
taxonomy_alignment_enabling_opex_%:
type: number
taxonomy_alignment_transitional_opex_%:
type: integer
taxonomy_alignment_enabling_%:
type: number
taxonomy_alignment_transitional_%:
type: number
taxonomy_alignment_no_gas_and_nuclear_turnover_%:
type: number
taxonomy_alignment_no_gas_and_nuclear_capex_%:
type: number
taxonomy_alignment_no_gas_and_nuclear_opex_%:
type: number
taxonomy_alignment_fossil_gas_turnover_%:
type: number
taxonomy_alignment_fossil_gas_capex_%:
type: number
taxonomy_alignment_fossil_gas_opex_%:
type: number
taxonomy_alignment_nuclear_turnover_%:
type: number
taxonomy_alignment_nuclear_capex_%:
type: number
taxonomy_alignment_nuclear_opex_%:
type: number
taxonomy_alignment_no_gas_and_nuclear_turnover_excluding_sovereign_bonds_%:
type: number
taxonomy_alignment_no_gas_and_nuclear_capex_excluding_sovereign_bonds_%:
type: number
taxonomy_alignment_no_gas_and_nuclear_opex_excluding_sovereign_bonds_%:
type: number
taxonomy_alignment_fossil_gas_turnover_excluding_sovereign_bonds_%:
type: number
taxonomy_alignment_fossil_gas_capex_excluding_sovereign_bonds_%:
type: number
taxonomy_alignment_fossil_gas_opex_excluding_sovereign_bonds_%:
type: number
taxonomy_alignment_nuclear_turnover_excluding_sovereign_bonds_%:
type: number
taxonomy_alignment_nuclear_capex_excluding_sovereign_bonds_%:
type: number
PostTemperatureScoreInsightsRequest:
type: object
properties:
holdings:
type: array
items:
type: object
properties:
name:
type: string
isin:
type: string
instrument_type:
type: string
currency:
type: string
weight:
type: integer
market_value:
type: integer
PostTemperatureScoreInsightsResponse:
type: object
properties:
portfolio:
type: object
properties:
companies:
type: array
items:
type: object
properties:
isin:
type: string
name:
type: string
aum:
type: integer
market_value:
type: integer
temperature_score:
type: number
target:
type: number
base_year:
type: integer
industry:
type: string
funds:
type: array
items:
type: object
properties:
public_isin:
type: string
name:
type: string
aum:
type: integer
market_value:
type: integer
temperature_score:
type: number
target:
type: number
base_year:
type: integer
industries:
type: array
items:
type: object
properties:
id:
type: string
name:
type: string
job_metadata:
type: object
properties:
is_lock:
type: boolean
securitySchemes:
apiKey:
type: apiKey
in: header
name: x-api-key
security:
- apiKey: []
tags:
- name: Instruments
- name: Portfolios
- name: Reports
- name: Sustainable Investments
- name: Taxonomy
- name: Temperature Score