List portfolios
/portfoliosLists 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.
Authorization
apiKey Your Connect Earth API key.
In: header
Response Body
application/json
application/json
application/json
application/json
curl -X GET "https://eco.datia.app/portfolios" \ -H "x-api-key: $CE_API_KEY"{ "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 sustainability report POST
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.
Create or replace a portfolio snapshot POST
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.