OpenBB Platform API: Launch script and widgets builder for the OpenBB Platform API and Terminal Pro Connector.
Project description
OpenBB Platform API Meta Package
This is a meta package for installing a command line script to launch the OpenBB Platform API, and the OpenBB Terminal Pro data connector widgets build script.
Installation
Install this package within an existing OpenBB Platform Python environment.
pip install openbb-platform-api
Usage
The script is run from the command line, with the environment active, by entering:
openbb-api
This will launch a Fast API instance, via uvicorn
, at http://127.0.0.1:6900
Keyword Arguments
The behavior of the script can be configured with the use of arguments and keyword arguments.
Launcher specific arguments:
--build Build the widgets.json file.
--no-build Do not build the widgets.json file.
--login Login to the OpenBB Platform.
--no-filter Do not filter the widgets.json file.
All other arguments will be passed to uvicorn. Here are the most common ones:
--host TEXT Host IP address or hostname.
[default: 127.0.0.1]
--port INTEGER Port number.
[default: 6900]
--ssl-keyfile TEXT SSL key file.
--ssl-certfile TEXT SSL certificate file.
--ssl-keyfile-password TEXT SSL keyfile password.
--ssl-version INTEGER SSL version to use.
(see stdlib ssl module's)
[default: 17]
--ssl-cert-reqs INTEGER Whether client certificate is required.
(see stdlib ssl module's)
[default: 0]
--ssl-ca-certs TEXT CA certificates file.
--ssl-ciphers TEXT Ciphers to use.
(see stdlib ssl module's)
[default: TLSv1]
Run uvicorn --help
to get the full list of arguments.
API Over HTTPS
To run the API over the HTTPS protocol, you must first create a self-signed certificate and the associated key. After activating the environment, you can generate the files by entering this to the command line:
openssl req -x509 -days 3650 -out localhost.crt -keyout localhost.key -newkey rsa:4096 -nodes -sha256 -subj '/CN=localhost' -extensions EXT -config <( \
printf "[dn]\nCN=localhost\n[req]\ndistinguished_name = dn\n[EXT]\nsubjectAltName=DNS:localhost\nkeyUsage=digitalSignature\nextendedKeyUsage=serverAuth")
Two files will be created, in the current working directory, that are passed as keyword arguments to the openbb-api
entry point.
openbb-api --ssl_keyfile localhost.key --ssl_certfile localhost.crt
Note: Adjust the command to include the full path to the file if the current working directory is not where they are located.
The certificate - localhost.crt
- will need to be added to system's trust store. The process for this will depend on the operating system and the user account privilege.
A quick solution is to visit the server's URL, show the details of the warning, and choose to continue anyways.
Contact the system administrator if you are using a work device and require additional permissions to complete the configuration.
Location of widgets.json
An OpenBB Terminal Pro data connector requires a file, widgets.json
, to be served by the API. It contains the configuration for each widget available to be added to a dashboard. The file is stored, and served from, the environment's assets folder.
/Path/to/environments/envs/obb/assets/widgets.json
It can be manually edited and served without the build process by passing --no-build
to the API launch script.
openbb-api --no-build
If you would like to construct this file manually for a custom backend configuration, save the file in the path above.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file openbb_platform_api-1.0.3.tar.gz
.
File metadata
- Download URL: openbb_platform_api-1.0.3.tar.gz
- Upload date:
- Size: 13.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.12.7 Darwin/23.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c58316b98a90e890b05135d52310e0e6410517afb74b7cb47289cb8fcf5a2378 |
|
MD5 | 50378298ceab1dd4f7f9958a56681bae |
|
BLAKE2b-256 | e29b3b341caacb9acbbd1bc0cb375bff96ed5bc288ad997da642b0d257351e4e |
File details
Details for the file openbb_platform_api-1.0.3-py3-none-any.whl
.
File metadata
- Download URL: openbb_platform_api-1.0.3-py3-none-any.whl
- Upload date:
- Size: 14.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.12.7 Darwin/23.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | afd08c69482581b46cf5146f815616ff4b002a7915e7855c28b552581d1a2837 |
|
MD5 | e8956e4b88a44a71732d57954d11c819 |
|
BLAKE2b-256 | f91c3328514300fcfe29da59c4086622ac82efcfc7e113ae65da179b242f4c08 |