School project · Delayed data · Not financial adviceTerms
Skip to content
SINGULARITYTERMINALOpen the terminal
Optional credentials

API keys

Every screen in this terminal renders without a single key. These unlock the extra sources named beside them. Each one can be tested against the provider for real, and the result you see is the result that came back.

Providers

1 of 10 configured

Financial Modeling Prep

variable not set

Consensus estimates on the economic calendar.

Environment variable
FMP_API_KEY
Read by
app/services/phase6.py
Sent as
a query parameter — the provider accepts nothing else
Test endpoint
https://financialmodelingprep.com/api/v4/economic_calendar

Not configured: FMP_API_KEY is unset in the server environment. Set it where you start the server and restart — this build reads the environment once, at import.

not tested

Nothing has been measured, and nothing is being assumed.

FRED official API

variable set

The FRED JSON API instead of the keyless graph CSV endpoints.

Environment variable
SINGULARITY_FRED_API_KEY or FRED_API_KEY
Read by
app/services/macro_rates.py
Sent as
a query parameter — the provider accepts nothing else
Test endpoint
https://api.stlouisfed.org/fred/series/observations
not tested

The variable is set. Whether the key works is a different question, and this page will not answer it until you press the button.

Finnhub

variable not set

Finnhub as an additional company-news source.

Environment variable
FINNHUB_API_KEY
Read by
app/services/news.py
Sent as
the X-Finnhub-Token request header
Test endpoint
https://finnhub.io/api/v1/news

Not configured: FINNHUB_API_KEY is unset in the server environment. Set it where you start the server and restart — this build reads the environment once, at import.

not tested

Nothing has been measured, and nothing is being assumed.

Reddit OAuth

variable not set

Authenticated reads of the subreddits behind the chatter screens.

Environment variable
REDDIT_CLIENT_ID + REDDIT_CLIENT_SECRET
Read by
app/services/news.py
Sent as
HTTP Basic auth over TLS
Test endpoint
https://www.reddit.com/api/v1/access_token

Not configured: REDDIT_CLIENT_ID and REDDIT_CLIENT_SECRET is unset in the server environment. Set it where you start the server and restart — this build reads the environment once, at import.

not tested

Nothing has been measured, and nothing is being assumed.

X / Twitter

variable not set

X posts in the social feed.

Environment variable
X_BEARER_TOKEN or TWITTER_BEARER_TOKEN
Read by
app/services/news.py
Sent as
the Authorization request header
Test endpoint
https://api.twitter.com/2/tweets/search/recent

Not configured: X_BEARER_TOKEN or TWITTER_BEARER_TOKEN is unset in the server environment. Set it where you start the server and restart — this build reads the environment once, at import.

not tested

Nothing has been measured, and nothing is being assumed.

GovInfo

variable not set

The GPO authenticated corpus in business-intelligence research.

Environment variable
GOVINFO_API_KEY
Read by
app/services/phase8.py
Sent as
the X-Api-Key request header
Test endpoint
https://api.govinfo.gov/collections

Not configured: GOVINFO_API_KEY is unset in the server environment. Set it where you start the server and restart — this build reads the environment once, at import.

not tested

Nothing has been measured, and nothing is being assumed.

Regulations.gov

variable not set

Federal rulemaking dockets in business-intelligence research.

Environment variable
REGULATIONS_GOV_API_KEY
Read by
app/services/phase8.py
Sent as
the X-Api-Key request header
Test endpoint
https://api.regulations.gov/v4/documents

Not configured: REGULATIONS_GOV_API_KEY is unset in the server environment. Set it where you start the server and restart — this build reads the environment once, at import.

not tested

Nothing has been measured, and nothing is being assumed.

PatentsView search API

variable not set

The patent complexity scorer.

Environment variable
PATENTSVIEW_API_KEY
Read by
backend/patent_scorer.py
Sent as
the X-Api-Key request header
Test endpoint
https://search.patentsview.org/api/v1/patent/

Not configured: PATENTSVIEW_API_KEY is unset in the server environment. Set it where you start the server and restart — this build reads the environment once, at import.

not tested

Nothing has been measured, and nothing is being assumed.

Global AIS vessel feed

variable not set

Worldwide vessel positions on the global map.

Environment variable
AIS_API_KEY
Read by
app/services/geo.py
Sent as
not applicable
Test endpoint
None in this build.

Not configured: AIS_API_KEY is unset in the server environment. Set it where you start the server and restart — this build reads the environment once, at import.

app/services/geo.py names AIS_API_KEY as the gate for the vessel layer but this build commits no endpoint for it, so there is no request to make. Testing it would mean choosing an AIS vendor, which is a decision this page will not make on your behalf.

not tested

Nothing has been measured, and nothing is being assumed.

SMTP relay for alert email

variable not set

Email delivery for alerts. Pairs with SINGULARITY_SMTP_FROM.

Environment variable
SINGULARITY_SMTP_HOST
Read by
app/services/notifications.py
Sent as
not applicable
Test endpoint
None in this build.

Not configured: SINGULARITY_SMTP_HOST is unset in the server environment. Set it where you start the server and restart — this build reads the environment once, at import.

SMTP is not HTTP. A real test means opening a socket to the relay and speaking EHLO, which this HTTP route does not do. app/services/notifications.py reports the delivery outcome of an actual send, which is the honest place to learn whether the relay works.

not tested

Nothing has been measured, and nothing is being assumed.

Set, but with no connection test

1

These variables are read by the app and reported by GET /api/pages/environment, but this build has no endpoint it could honestly call to prove they work. They are listed so the page is a complete account rather than a convenient one.

  • SINGULARITY_SMTP_FROMnot set
    The sender address on alert email.
    Without it: Email delivery stays off; the alerts panel says so.

Why there is nowhere to type a key

Keys are read from the environment of the process running the server, and they stay there. A form on this page would mean the value crossing the network, landing in a file, and living in a document that every future response has to remember to scrub. So there is no field here, nothing is written to browser storage, and the server sends this page booleans only — set or not set, never the value, never its length, never a masked preview.

Where to set them
The environment of the shell or service that launches the server. /self-hosting lists every variable and what it unlocks.
When they take effect
At server start. Set the variable, restart, reload this page.
What a test sends
The credential, once, to the provider's own documented endpoint — and nothing else. No usage data leaves this machine.