All sections

Enterprise notices

Unless stated otherwise, this page refers to Ukrainian companies and individual entrepreneurs and uses identifiers from Ukrainian public registries.

This section describes requests used to work with enterprise notices within a specific domain, together with related files.

Notice list

GET /api/v1/enterprises/{registry_id}/notices/{domain}

This request returns enterprise notices within a single domain together with the main publication and object data. The response includes publication dates, links to files, and, if access is allowed, coordinates.

The registry_id and domain parameters in the request path are required. registry_id is the enterprise identifier.

Available domain values can be retrieved from the Data domains request.

Example request

$ ESG_API_TOKEN="your_api_token"
$ curl "https://esg.saveecobot.com/api/v1/enterprises/00178353/notices/air?notice_type_id=1" \
  -H "Authorization: Bearer $ESG_API_TOKEN" \
  -H 'Accept: application/json'

Example response

{
  "results": {
    "enterprise": { "type": "company", "registry_id": "00178353" },
    "domain": { "slug": "air", "label": "Повітря" },
    "items": [
      {
        "id": 88,
        "type_id": 1,
        "type_name": "Заява про наміри отримати дозвіл на викиди",
        "authority_name": "Міндовкілля",
        "name": "Повідомлення про наміри",
        "description_lines": ["Оприлюднено для громадського обговорення"],
        "address": "Україна, Київська область, місто Київ",
        "object_name": "Промисловий майданчик",
        "emissions_list": "оксид вуглецю, діоксид азоту",
        "published_at": "2025-04-01",
        "expire_at": "2025-05-01",
        "publisher_name": "Офіційний вебсайт",
        "recognized_by": "Gemini",
        "files_count": 1,
        "links": {
          "details": "https://esg.saveecobot.com/api/v1/enterprises/00178353/notice-details/88",
          "files": "https://esg.saveecobot.com/api/v1/enterprises/00178353/notice-files/88"
        },
        "coordinates": null
      }
    ]
  },
  "stats": { "..." }
}

Pagination parameters

  • page: page number.

Filters

  • year: publication year or the year of actuality.
  • notice_type_id: notice type identifier. Available values can be retrieved from the Notice types request.

Response fields

results.items[]

  • id: notice identifier.
  • type_id: notice type identifier.
  • type_name: notice type name.
  • authority_name: authority or source of the notice.
  • name: notice name.
  • description_lines[]: short notice description split into lines.
  • address: object address.
  • object_name: object or site name.
  • emissions_list: list of substances or other entities, if present.
  • published_at: publication date.
  • expire_at: end date of validity or publication period.
  • publisher_name: publisher name.
  • recognized_by: recognition service name, if the notice was recognized automatically.
  • files_count: number of files.
  • links.details: link to notice details.
  • links.files: link to the file list.
  • coordinates: address coordinates, if allowed for the API key.
  • coordinates.latitude: latitude.
  • coordinates.longitude: longitude.

Notice details

GET /api/v1/enterprises/{registry_id}/notice-details/{notice_id}

This request returns full data for a specific notice. The response contains the same fields as the notice list, plus a links block for navigating to related files.

The registry_id and notice_id parameters in the request path are required. registry_id is the enterprise identifier. notice_id is the notice identifier.

Example request

$ ESG_API_TOKEN="your_api_token"
$ curl "https://esg.saveecobot.com/api/v1/enterprises/00178353/notice-details/88" \
  -H "Authorization: Bearer $ESG_API_TOKEN" \
  -H 'Accept: application/json'

Example response

{
  "results": {
    "enterprise": { "type": "company", "registry_id": "00178353" },
    "object": {
      "id": 88,
      "type_id": 1,
      "type_name": "Заява про наміри отримати дозвіл на викиди",
      "authority_name": "Міндовкілля",
      "name": "Повідомлення про наміри",
      "description_lines": ["Оприлюднено для громадського обговорення"],
      "address": "Україна, Київська область, місто Київ",
      "object_name": "Промисловий майданчик",
      "emissions_list": "оксид вуглецю, діоксид азоту",
      "published_at": "2025-04-01",
      "expire_at": "2025-05-01",
      "publisher_name": "Офіційний вебсайт",
      "recognized_by": "Gemini",
      "files_count": 1,
      "coordinates": null,
      "links": {
        "files": "https://esg.saveecobot.com/api/v1/enterprises/00178353/notice-files/88"
      }
    }
  },
  "stats": { "..." }
}

Response fields

results.object

The object fields are the same as in results.items[] in the notice list.

results.object.links

  • files: link to the separate notice files list, if files exist.

Notice files

GET /api/v1/enterprises/{registry_id}/notice-files/{notice_id}

This request returns files for a specific notice. Along with the file list in items, it also returns an object block with short information about the notice itself.

The registry_id and notice_id parameters in the request path are required. registry_id is the enterprise identifier. notice_id is the notice identifier.

Example request

$ ESG_API_TOKEN="your_api_token"
$ curl "https://esg.saveecobot.com/api/v1/enterprises/00178353/notice-files/88" \
  -H "Authorization: Bearer $ESG_API_TOKEN" \
  -H 'Accept: application/json'

Example response

{
  "results": {
    "enterprise": { "type": "company", "registry_id": "00178353" },
    "object": {
      "type": "notice",
      "id": 88,
      "type_id": 1,
      "type_name": "Заява про наміри отримати дозвіл на викиди",
      "name": "Повідомлення про наміри",
      "object_name": "Промисловий майданчик",
      "published_at": "2025-04-01"
    },
    "items": [
      {
        "id": 1,
        "name": "notice.pdf",
        "description": "Основний документ",
        "format": "pdf",
        "size": 55201,
        "uploaded_at": "2025-04-01T09:30:00+00:00",
        "downloaded_at": "2025-04-01T09:40:00+00:00",
        "links": {
          "download": "https://esg.saveecobot.com/api/v1/enterprises/00178353/notice-files/88/download/1"
        }
      }
    ]
  },
  "stats": { "..." }
}

Response fields

results.object

  • type: object type. For this request, the value is notice.
  • id: notice identifier.
  • type_id: notice type identifier.
  • type_name: notice type name.
  • name: notice name.
  • object_name: object name.
  • published_at: notice publication date.

results.items[]

  • id: notice file identifier.
  • name: file name.
  • description: short file description.
  • format: file format.
  • size: file size in bytes.
  • uploaded_at: date when the file was uploaded or published in the source.
  • downloaded_at: date when the file was downloaded into ESG SaveEcoBot.
  • links.download: file download link.

Notice file download

GET /api/v1/enterprises/{registry_id}/notice-files/{notice_id}/download/{file_id}

This request returns the binary notice file for download.

The registry_id, notice_id, and file_id parameters in the request path are required. registry_id is the enterprise identifier. notice_id is the notice identifier. file_id is the notice file identifier.

Example request

$ ESG_API_TOKEN="your_api_token"
$ curl -L "https://esg.saveecobot.com/api/v1/enterprises/00178353/notice-files/88/download/1" \
  -H "Authorization: Bearer $ESG_API_TOKEN"

Participate in testing the ESG company profile
in the SaveEcoBot system in Ukraine

Make your ESG analysis flawless!