Core Platform
Discover and save an evidence-backed thematic universe from free text
POST
/investment/themes/discover
Contract
Maps the concept to non-overlapping branches of the current published Dynamic Industry Ontology, ranks source-backed IM5 company exposures and applies explicit profile/provenance investability filters. No live market-data call, LLM requirement, Financial Action or trade execution is introduced by this endpoint.
Authentication
Bearer credential required
Required scope
investment:run
Status
Published
Request body
application/json
·
required
{
"name": "string",
"concept": "string",
"exchanges": [
"string"
],
"countries": [
"string"
],
"currencies": [
"string"
],
"restricted_symbols": [
"string"
],
"require_company_profile": false,
"min_relevance": 0.01000000000000000020816681711721685132943093776702880859375,
"min_confidence": 0,
"min_verified_facts": 0,
"max_results": 50
}
Code examples
These examples compose a request only. Public reference pages never transmit your credential or execute the operation.
curl
curl -X POST \
-H "Authorization: Bearer $FINANCEGPT_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
--data '{
"name": "string",
"concept": "string",
"exchanges": [
"string"
],
"countries": [
"string"
],
"currencies": [
"string"
],
"restricted_symbols": [
"string"
],
"require_company_profile": false,
"min_relevance": 0.01000000000000000020816681711721685132943093776702880859375,
"min_confidence": 0,
"min_verified_facts": 0,
"max_results": 50
}' \
"https://financegpt.dev/api/v2/investment/themes/discover"
javascript
const response = await fetch("https:\/\/financegpt.dev\/api\/v2\/investment\/themes\/discover", {
method: "POST",
headers: {
Authorization: `Bearer ${FINANCEGPT_API_KEY}`,
Accept: 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"name": "string",
"concept": "string",
"exchanges": [
"string"
],
"countries": [
"string"
],
"currencies": [
"string"
],
"restricted_symbols": [
"string"
],
"require_company_profile": false,
"min_relevance": 0.01000000000000000020816681711721685132943093776702880859375,
"min_confidence": 0,
"min_verified_facts": 0,
"max_results": 50
}),
});
const data = await response.json();
python
import json
import os
import requests
response = requests.request(
'POST',
'https://financegpt.dev/api/v2/investment/themes/discover',
headers={
'Authorization': 'Bearer ' + os.environ['FINANCEGPT_API_KEY'],
'Accept': 'application/json',
},
json=json.loads('{"name":"string","concept":"string","exchanges":["string"],"countries":["string"],"currencies":["string"],"restricted_symbols":["string"],"require_company_profile":false,"min_relevance":0.01000000000000000020816681711721685132943093776702880859375,"min_confidence":0,"min_verified_facts":0,"max_results":50}'),
)
response.raise_for_status()
print(response.json())
php
<?php
$ch = curl_init('https://financegpt.dev/api/v2/investment/themes/discover');
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer '.getenv('FINANCEGPT_API_KEY'),
'Accept: application/json',
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode(array (
'name' => 'string',
'concept' => 'string',
'exchanges' =>
array (
0 => 'string',
),
'countries' =>
array (
0 => 'string',
),
'currencies' =>
array (
0 => 'string',
),
'restricted_symbols' =>
array (
0 => 'string',
),
'require_company_profile' => false,
'min_relevance' => 0.01000000000000000020816681711721685132943093776702880859375,
'min_confidence' => 0,
'min_verified_facts' => 0,
'max_results' => 50,
)),
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
Responses
| Status | Description |
|---|---|
201 |
Saved taxonomy-version-pinned thematic universe with decomposition and ranked members |
422 |
Invalid concept or investability-filter input |
503 |
Published ontology unavailable or concept cannot be mapped to the controlled taxonomy |
Authority boundary
A developer credential proves application identity and permits only its scopes. It does not grant model promotion, policy override, QLM rebinding, or Financial Actions execution authority unless those separate controls are satisfied.
investment:run