ESG
Entities

Entities ESG Events Report

Trigger an asynchronous ESG Events PDF report for one entity

The generated task produces a PDF report listing the events of the entity. See Company ESG Report for the content of the report and a partial example.

UNGC sections are only present if your account has access to UNGC data. Contact your account manager if you want to enable UNGC access.

POST
https://api.textreveal.com/v3/entities/{entity_id}/esg/events/report

Request

Parameters

  • entity_id*uuid

    Permanent ID of the entity

    Example: "753c48d6-23c8-5fb0-9230-b099898452b5"

Request Body

  • start_datedate

    Start of the report period.

    Defaults to 12 months before last_activity.

    Example: "2025-10-06"
  • last_activitydate

    End of the report period.

    Defaults to today.

    Example: "2026-10-06"
  • periodstring (enum)

    Granularity of the exposure over time chart.

    Default: "month"Values: "day", "week", "month", "quarter", "year"
  • categorystring (enum)

    Filter by category.

    Values: "E", "S", "G"
  • contentstring[]
  • translatelanguage-code (enum)

    Language to translate the report content to (titles, summaries, company description, sectors and ESG labels).

    If empty, the content stays in its original language.

    Example: french

    Values: "af", "afr", "afrikaans", "albanian", "am", "amh", "amharic", "ar", "ara", "arabic", "armenian", "az", "aze", "azerbaijani", "ben", "bengali", "bg", "bn", "bos", "bosnian", "bs", "bul", "bulgarian", "ca", "cat", "catalan", "chinese"... 
  • localestring (enum)

    Language of the PDF labels and fonts, everything in the report that is not data.

    The data itself is not affected: use translate to translate it.

    Accepts a code or a language name: en/english, fr/french, ja/japanese.

    Default: "en"Values: "en", "english", "eng", "fr", "french", "fre", "ja", "japanese", "jpn"
Request
{
  "start_date": "2025-10-06",
  "last_activity": "2026-10-06",
  "period": "day",
  "category": "E",
  "content": [
    "string"
  ],
  "translate": "en",
  "locale": "en"
}

Response

Response - 200

Starts the report task

  • task_id*uuid

    Unique identifier of the task

    Example: "f47ac10b-58cc-4372-a567-0e02b2c3d479"
Response
{
  "task_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
}

Error

Error - 400

Bad request

  • message*string

    Error message.

    Example: "Check the errors field for more details"
  • code*number (enum)

    Error code.

    Values: 400
  • reason*string (enum)

    Error reason.

    Values: "invalid"
  • errorsobject[]

    Possible error causes.

Response
{
  "message": "Check the errors field for more details",
  "code": 400,
  "reason": "invalid",
  "errors": [
    {
      "message": "string",
      "field": "entity_id",
      "reason": "invalid_type"
    }
  ]
}

Error - 404

Not found

  • message*string

    Error message.

    Example: "The requested entity does not exist or is not visible to your company."
  • code*number (enum)

    Error code.

    Values: 404
  • reason*string (enum)

    Error reason.

    Values: "not_found"
Response
{
  "message": "The requested entity does not exist or is not visible to your company.",
  "code": 404,
  "reason": "not_found"
}

Error - 429

Too many requests

  • message*string

    Error message.

    Example: "You already have 5 company_esg_events_report tasks waiting in queue. Please wait for one to start before requesting a new one."
  • code*number (enum)

    Error code.

    Values: 429
  • reason*string (enum)

    Error reason.

    Values: "too_many_requests"
Response
{
  "message": "You already have 5 company_esg_events_report tasks waiting in queue. Please wait for one to start before requesting a new one.",
  "code": 429,
  "reason": "too_many_requests"
}

Generic errors are not shown, see Errors for more details.