main_index¶
The OPTIMADE Index Meta-Database server
The server is based on MongoDB, using either pymongo or mongomock.
This is an example implementation with example data. To implement your own index meta-database server see the documentation at https://optimade.org/optimade-python-tools.
 add_major_version_base_url(app) ¶
 Add mandatory endpoints to /vMAJOR base URL.
Source code in optimade/server/main_index.py
 def add_major_version_base_url(app: FastAPI):
    """Add mandatory endpoints to `/vMAJOR` base URL."""
    for endpoint in (index_info, links):
        app.include_router(endpoint.router, prefix=BASE_URL_PREFIXES["major"])
 add_optional_versioned_base_urls(app) ¶
 Add the following OPTIONAL prefixes/base URLs to server:
    /vMajor.Minor
    /vMajor.Minor.Patch
Source code in optimade/server/main_index.py
 def add_optional_versioned_base_urls(app: FastAPI):
    """Add the following OPTIONAL prefixes/base URLs to server:
    ```
        /vMajor.Minor
        /vMajor.Minor.Patch
    ```
    """
    for version in ("minor", "patch"):
        app.include_router(index_info.router, prefix=BASE_URL_PREFIXES[version])
        app.include_router(links.router, prefix=BASE_URL_PREFIXES[version])