Business Intelligence API
ICB Benchmark News API
ICB classifies companies into 11 industries, 20 supersectors, 45 sectors, and 173 subsectors. It is important for exchange data, sector research, portfolio construction, and cross-market comparison.
API Reference Version: 1.0.0 3 Endpoints Authentication
Base URL
https://api.pressmonitor.com/news-icb/v1 Authentication
All requests use Bearer token authentication. Add the Authorization header to every call.
Authorization: Bearer YOUR_TOKEN GET
/headlines Get News Headlines
News Headlines
Parameters
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| code | string | query | Yes | Entity code (e.g., ticker symbol, industry code) |
| lang_code | string | query | No | Filter by language code (ISO 639-1) |
| country_code | string | query | No | Filter by country code (ISO 3166-1 alpha-2) |
| count | integer | query | No | Number of results to return |
| cursor | string | query | No | Pagination cursor (alternative to search_after) |
Code Examples
curl --request GET --url 'https://api.pressmonitor.com/news-icb/v1/headlines?code=SOME_STRING_VALUE&lang_code=SOME_STRING_VALUE&country_code=SOME_STRING_VALUE&count=SOME_INTEGER_VALUE&cursor=SOME_STRING_VALUE' const http = require("https"); const options = { "method": "GET", "hostname": "api.pressmonitor.com", "port": null, "path": "/news-icb/v1/headlines?code=SOME_STRING_VALUE&lang_code=SOME_STRING_VALUE&country_code=SOME_STRING_VALUE&count=SOME_INTEGER_VALUE&cursor=SOME_STRING_VALUE", "headers": {} }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end(); import requests url = "https://api.pressmonitor.com/news-icb/v1/headlines" querystring = {"code":"SOME_STRING_VALUE","lang_code":"SOME_STRING_VALUE","country_code":"SOME_STRING_VALUE","count":"SOME_INTEGER_VALUE","cursor":"SOME_STRING_VALUE"} response = requests.request("GET", url, params=querystring) print(response.text) <?php $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://api.pressmonitor.com/news-icb/v1/headlines?code=SOME_STRING_VALUE&lang_code=SOME_STRING_VALUE&country_code=SOME_STRING_VALUE&count=SOME_INTEGER_VALUE&cursor=SOME_STRING_VALUE", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://api.pressmonitor.com/news-icb/v1/headlines?code=SOME_STRING_VALUE&lang_code=SOME_STRING_VALUE&country_code=SOME_STRING_VALUE&count=SOME_INTEGER_VALUE&cursor=SOME_STRING_VALUE") .get() .build(); Response response = client.newCall(request).execute(); Responses
200 Success
GET
/briefs Get News Briefs
News Briefs
Parameters
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| code | string | query | Yes | Entity code (e.g., ticker symbol, industry code) |
| lang_code | string | query | No | Filter by language code (ISO 639-1) |
| country_code | string | query | No | Filter by country code (ISO 3166-1 alpha-2) |
| count | integer | query | No | Number of results to return |
| cursor | string | query | No | Pagination cursor (alternative to search_after) |
Code Examples
curl --request GET --url 'https://api.pressmonitor.com/news-icb/v1/briefs?code=SOME_STRING_VALUE&lang_code=SOME_STRING_VALUE&country_code=SOME_STRING_VALUE&count=SOME_INTEGER_VALUE&cursor=SOME_STRING_VALUE' const http = require("https"); const options = { "method": "GET", "hostname": "api.pressmonitor.com", "port": null, "path": "/news-icb/v1/briefs?code=SOME_STRING_VALUE&lang_code=SOME_STRING_VALUE&country_code=SOME_STRING_VALUE&count=SOME_INTEGER_VALUE&cursor=SOME_STRING_VALUE", "headers": {} }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end(); import requests url = "https://api.pressmonitor.com/news-icb/v1/briefs" querystring = {"code":"SOME_STRING_VALUE","lang_code":"SOME_STRING_VALUE","country_code":"SOME_STRING_VALUE","count":"SOME_INTEGER_VALUE","cursor":"SOME_STRING_VALUE"} response = requests.request("GET", url, params=querystring) print(response.text) <?php $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://api.pressmonitor.com/news-icb/v1/briefs?code=SOME_STRING_VALUE&lang_code=SOME_STRING_VALUE&country_code=SOME_STRING_VALUE&count=SOME_INTEGER_VALUE&cursor=SOME_STRING_VALUE", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://api.pressmonitor.com/news-icb/v1/briefs?code=SOME_STRING_VALUE&lang_code=SOME_STRING_VALUE&country_code=SOME_STRING_VALUE&count=SOME_INTEGER_VALUE&cursor=SOME_STRING_VALUE") .get() .build(); Response response = client.newCall(request).execute(); Responses
200 Success
GET
/fulltext Get Full-Text News
News Fulltext
Parameters
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| code | string | query | Yes | Entity code (e.g., ticker symbol, industry code) |
| lang_code | string | query | No | Filter by language code (ISO 639-1) |
| country_code | string | query | No | Filter by country code (ISO 3166-1 alpha-2) |
| count | integer | query | No | Number of results to return |
| cursor | string | query | No | Pagination cursor (alternative to search_after) |
Code Examples
curl --request GET --url 'https://api.pressmonitor.com/news-icb/v1/fulltext?code=SOME_STRING_VALUE&lang_code=SOME_STRING_VALUE&country_code=SOME_STRING_VALUE&count=SOME_INTEGER_VALUE&cursor=SOME_STRING_VALUE' const http = require("https"); const options = { "method": "GET", "hostname": "api.pressmonitor.com", "port": null, "path": "/news-icb/v1/fulltext?code=SOME_STRING_VALUE&lang_code=SOME_STRING_VALUE&country_code=SOME_STRING_VALUE&count=SOME_INTEGER_VALUE&cursor=SOME_STRING_VALUE", "headers": {} }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end(); import requests url = "https://api.pressmonitor.com/news-icb/v1/fulltext" querystring = {"code":"SOME_STRING_VALUE","lang_code":"SOME_STRING_VALUE","country_code":"SOME_STRING_VALUE","count":"SOME_INTEGER_VALUE","cursor":"SOME_STRING_VALUE"} response = requests.request("GET", url, params=querystring) print(response.text) <?php $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://api.pressmonitor.com/news-icb/v1/fulltext?code=SOME_STRING_VALUE&lang_code=SOME_STRING_VALUE&country_code=SOME_STRING_VALUE&count=SOME_INTEGER_VALUE&cursor=SOME_STRING_VALUE", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://api.pressmonitor.com/news-icb/v1/fulltext?code=SOME_STRING_VALUE&lang_code=SOME_STRING_VALUE&country_code=SOME_STRING_VALUE&count=SOME_INTEGER_VALUE&cursor=SOME_STRING_VALUE") .get() .build(); Response response = client.newCall(request).execute(); Responses
200 Success