Status
curl --request GET \
--url https://api.forestreet.com/markets/{marketId}/statusimport requests
url = "https://api.forestreet.com/markets/{marketId}/status"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.forestreet.com/markets/{marketId}/status', 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.forestreet.com/markets/{marketId}/status",
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;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.forestreet.com/markets/{marketId}/status"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.forestreet.com/markets/{marketId}/status")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.forestreet.com/markets/{marketId}/status")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"discover": {
"inProgress": false,
"endTime": "2025-06-02T11:27:29.017Z"
},
"companies": {
"inProgress": false,
"endTime": "2025-06-02T12:36:56.955Z"
},
"news": {
"inProgress": false,
"disabled": true
},
"esg": {
"inProgress": false,
"disabled": true
},
"momentum": {
"inProgress": true
},
"topics": {
"inProgress": true
},
"overall": {
"inProgress": true,
"status": "inProgress"
}
}
Discover
Status
This endpoint gets the status of a market.
GET
/
markets
/
{marketId}
/
status
Status
curl --request GET \
--url https://api.forestreet.com/markets/{marketId}/statusimport requests
url = "https://api.forestreet.com/markets/{marketId}/status"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.forestreet.com/markets/{marketId}/status', 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.forestreet.com/markets/{marketId}/status",
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;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.forestreet.com/markets/{marketId}/status"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.forestreet.com/markets/{marketId}/status")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.forestreet.com/markets/{marketId}/status")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"discover": {
"inProgress": false,
"endTime": "2025-06-02T11:27:29.017Z"
},
"companies": {
"inProgress": false,
"endTime": "2025-06-02T12:36:56.955Z"
},
"news": {
"inProgress": false,
"disabled": true
},
"esg": {
"inProgress": false,
"disabled": true
},
"momentum": {
"inProgress": true
},
"topics": {
"inProgress": true
},
"overall": {
"inProgress": true,
"status": "inProgress"
}
}
Path
string
The ID of the market you would like to get the status of.
Query Parameters
string
Only include jobs that were started after this time. The time should be UTC, in ISO 8601 format (e.g.,
2025-06-02T11:27:29.017Z).Cannot be in the future; if not provided, all jobs will be included.This is useful to ensure that any historical anomalies would not be included in the response.Response
Each of the response fields includes an object with the following properties:Show statusObject
Show statusObject
boolean
Indicates whether the job is currently in progress.
boolean
If the job is not yet registered, this field will be
true. It indicates that the
job is pending and has not yet started.string
The time when the job was completed, in ISO 8601 format (e.g.,
2025-06-02T11:27:29.017Z).
This field is only present if the job has completed.boolean
Indicates whether the job is disabled. If
true, the job will not run.
This field is only present if the job is disabled; if not present, the job is enabled.object
The status of initial companies discovery.
object
The status of companies metadata enquiry.
object
The status of momentum analysis.
object
The status of topics extractions and competitors analysis.
object
The overall status of the discovery.
{
"discover": {
"inProgress": false,
"endTime": "2025-06-02T11:27:29.017Z"
},
"companies": {
"inProgress": false,
"endTime": "2025-06-02T12:36:56.955Z"
},
"news": {
"inProgress": false,
"disabled": true
},
"esg": {
"inProgress": false,
"disabled": true
},
"momentum": {
"inProgress": true
},
"topics": {
"inProgress": true
},
"overall": {
"inProgress": true,
"status": "inProgress"
}
}
⌘I