curl --request POST \
--url https://api.bigdata.com/v1/esg-performance-score/query \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"identifier": {
"type": "rp_entity_id",
"value": "4A6F00"
}
}
'import requests
url = "https://api.bigdata.com/v1/esg-performance-score/query"
payload = { "identifier": {
"type": "rp_entity_id",
"value": "4A6F00"
} }
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({identifier: {type: 'rp_entity_id', value: '4A6F00'}})
};
fetch('https://api.bigdata.com/v1/esg-performance-score/query', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.bigdata.com/v1/esg-performance-score/query",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'identifier' => [
'type' => 'rp_entity_id',
'value' => '4A6F00'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-KEY: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.bigdata.com/v1/esg-performance-score/query"
payload := strings.NewReader("{\n \"identifier\": {\n \"type\": \"rp_entity_id\",\n \"value\": \"4A6F00\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.bigdata.com/v1/esg-performance-score/query")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"identifier\": {\n \"type\": \"rp_entity_id\",\n \"value\": \"4A6F00\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bigdata.com/v1/esg-performance-score/query")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"identifier\": {\n \"type\": \"rp_entity_id\",\n \"value\": \"4A6F00\"\n }\n}"
response = http.request(request)
puts response.read_body{
"results": {
"rp_entity_id": "E09E2B",
"name": "Nvidia Corp.",
"ticker": "NVDA-NAS",
"industry": "Semiconductors",
"economic_sector": "Electronic Technology",
"esg_scores": [
"YEAR",
"ESG_AVERAGE_SCORE",
"ENVIRONMENTAL_SCORE",
"SOCIAL_SCORE",
"GOVERNANCE_SCORE",
"PLUS_BMI_PICC_SCORE",
"PLUS_E_AQ_SCORE",
"PLUS_E_EI_SCORE",
"PLUS_E_GHGE_SCORE",
"PLUS_E_EM_SCORE",
"PLUS_E_WHMM_SCORE",
"PLUS_E_WWM_SCORE",
"PLUS_BMI_MSE_SCORE",
"PLUS_BMI_PDLM_SCORE",
"PLUS_SC_CP_SCORE",
"PLUS_SC_DS_SCORE",
"PLUS_SC_HRCR_SCORE",
"PLUS_SC_CW_SCORE",
"PLUS_SC_SPPL_SCORE",
"PLUS_HC_LP_SCORE",
"PLUS_HC_EHS_SCORE",
"PLUS_SC_AA_SCORE",
"PLUS_HC_EEDI_SCORE",
"PLUS_SC_PQS_SCORE",
"PLUS_BMI_BMR_SCORE",
"PLUS_LG_BE_SCORE",
"PLUS_LG_CB_SCORE",
"PLUS_BMI_SCM_SCORE",
"PLUS_LG_SRM_SCORE",
"PLUS_LG_CIRM_SCORE",
"PLUS_LG_MLRE_SCORE"
],
"values": [
"2025",
70.01,
78.52,
64.54,
55.22,
null,
44.26,
52.05,
83.63,
94.38,
77.8,
82.24,
58.72,
80.42,
90.98,
73.83,
53.67,
68.81,
44.32,
68.01,
64.39,
47.59,
55.64,
41.88,
100,
54.68,
51.74,
61.8,
37.82,
67.31,
77.03
]
},
"metadata": {
"request_id": "<string>",
"timestamp": "<string>"
},
"sources": [
{
"id": "CA9FA3",
"name": "Corporate Fundamentals"
}
],
"usage": {}
}{
"message": "Bad Request Error",
"statusCode": 400
}{
"message": "Too many requests. Please try again later.",
"statusCode": 429
}{
"message": "Internal Server Error",
"statusCode": 500
}ESG Scores
The ESG Performance Score API provides a comprehensive evaluation of a company’s environmental, social, and governance (ESG) practices. It aggregates various ESG metrics into a single performance score, allowing investors and stakeholders to assess the company’s commitment to sustainable and responsible business operations.
The ESG scores reflect companies’ sustainability performance relative to financially material ESG issues. Scores are derived from standardized company-reported data and peer-based relative scoring techniques, resulting in a 0–100 scale that indicates a company’s position versus its global peers, following a sector-specific, SASB (Sustainability Accounting Standards Board)-inspired materiality framework.
| Performance | Score Range |
|---|---|
| Laggard | < 42 |
| Below Average | 42 - 47 |
| Average | 48 - 53 |
| Above Average | 54 - 59 |
| Leader | ≥ 60 |
curl --request POST \
--url https://api.bigdata.com/v1/esg-performance-score/query \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"identifier": {
"type": "rp_entity_id",
"value": "4A6F00"
}
}
'import requests
url = "https://api.bigdata.com/v1/esg-performance-score/query"
payload = { "identifier": {
"type": "rp_entity_id",
"value": "4A6F00"
} }
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({identifier: {type: 'rp_entity_id', value: '4A6F00'}})
};
fetch('https://api.bigdata.com/v1/esg-performance-score/query', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.bigdata.com/v1/esg-performance-score/query",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'identifier' => [
'type' => 'rp_entity_id',
'value' => '4A6F00'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-KEY: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.bigdata.com/v1/esg-performance-score/query"
payload := strings.NewReader("{\n \"identifier\": {\n \"type\": \"rp_entity_id\",\n \"value\": \"4A6F00\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.bigdata.com/v1/esg-performance-score/query")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"identifier\": {\n \"type\": \"rp_entity_id\",\n \"value\": \"4A6F00\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bigdata.com/v1/esg-performance-score/query")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"identifier\": {\n \"type\": \"rp_entity_id\",\n \"value\": \"4A6F00\"\n }\n}"
response = http.request(request)
puts response.read_body{
"results": {
"rp_entity_id": "E09E2B",
"name": "Nvidia Corp.",
"ticker": "NVDA-NAS",
"industry": "Semiconductors",
"economic_sector": "Electronic Technology",
"esg_scores": [
"YEAR",
"ESG_AVERAGE_SCORE",
"ENVIRONMENTAL_SCORE",
"SOCIAL_SCORE",
"GOVERNANCE_SCORE",
"PLUS_BMI_PICC_SCORE",
"PLUS_E_AQ_SCORE",
"PLUS_E_EI_SCORE",
"PLUS_E_GHGE_SCORE",
"PLUS_E_EM_SCORE",
"PLUS_E_WHMM_SCORE",
"PLUS_E_WWM_SCORE",
"PLUS_BMI_MSE_SCORE",
"PLUS_BMI_PDLM_SCORE",
"PLUS_SC_CP_SCORE",
"PLUS_SC_DS_SCORE",
"PLUS_SC_HRCR_SCORE",
"PLUS_SC_CW_SCORE",
"PLUS_SC_SPPL_SCORE",
"PLUS_HC_LP_SCORE",
"PLUS_HC_EHS_SCORE",
"PLUS_SC_AA_SCORE",
"PLUS_HC_EEDI_SCORE",
"PLUS_SC_PQS_SCORE",
"PLUS_BMI_BMR_SCORE",
"PLUS_LG_BE_SCORE",
"PLUS_LG_CB_SCORE",
"PLUS_BMI_SCM_SCORE",
"PLUS_LG_SRM_SCORE",
"PLUS_LG_CIRM_SCORE",
"PLUS_LG_MLRE_SCORE"
],
"values": [
"2025",
70.01,
78.52,
64.54,
55.22,
null,
44.26,
52.05,
83.63,
94.38,
77.8,
82.24,
58.72,
80.42,
90.98,
73.83,
53.67,
68.81,
44.32,
68.01,
64.39,
47.59,
55.64,
41.88,
100,
54.68,
51.74,
61.8,
37.82,
67.31,
77.03
]
},
"metadata": {
"request_id": "<string>",
"timestamp": "<string>"
},
"sources": [
{
"id": "CA9FA3",
"name": "Corporate Fundamentals"
}
],
"usage": {}
}{
"message": "Bad Request Error",
"statusCode": 400
}{
"message": "Too many requests. Please try again later.",
"statusCode": 429
}{
"message": "Internal Server Error",
"statusCode": 500
}Authorizations
Body
Schema for the request to the public API.
Only contains the identifier:
- type: the identifier type (e.g., "rp_entity_id")
- value: a single RP Entity ID or a list of IDs
Object specifying which identifier you are using to request the company's environmental, social and governance (ESG) scores. You must supply one type and its corresponding value.
Show child attributes
Show child attributes
Response
Successful Response
- ESGPerformanceScore
- EmptyResponse
Show child attributes
Show child attributes
Show child attributes
Show child attributes
The content catalog sources the response was built from, one entry per source. Empty when no catalog source contributed.
Show child attributes
Show child attributes
Tokens the request consumed, per content tier. Present only for API keys billed in tokens.
Show child attributes
Show child attributes
Was this page helpful?