core

DataAPI

class msdss_data_api.core.DataAPI(users_api=None, database=None, data_router_settings={}, api=<fastapi.applications.FastAPI object>, *args, **kwargs)[source]

Class for creating Data APIs.

Parameters
data_api_database

Database object used for the data API.

Type

msdss_base_datbase:msdss_base_database.core.Database

Author

Richard Wen <rrwen.dev@gmail.com>

Example

Create Data API without users:

from msdss_base_database import Database
from msdss_data_api import DataAPI
from msdss_users_api import UsersAPI

# Create database object
database = Database(
    driver='postgresql',
    user='msdss',
    password='msdss123',
    host='localhost',
    port='5432',
    database='msdss'
)

# Create a data api without users
app = DataAPI(database=database)

Create Data API with users:

from msdss_base_database import Database
from msdss_data_api import DataAPI
from msdss_users_api import UsersAPI

# Create database object
database = Database(
    driver='postgresql',
    user='msdss',
    password='msdss123',
    host='localhost',
    port='5432',
    database='msdss'
)

# Create a data api with users
# CHANGE SECRETS TO STRONG PHRASES
users_api = UsersAPI(
    'cookie-secret',
    'jwt-secret',
    'reset-secret',
    'verification-secret',
    database=database
)
app = DataAPI(users_api, database=database)

# Add users routes
app.add_apps(users_api)

# Run the app with app.start()
# Try API at http://localhost:8000/docs
# app.start()