Files
OpenBB/openbb_platform/extensions/commodity/openbb_commodity/commodity_router.py
montezdesousa 33d186f8ea [Feature] - Router descriptions (#6288)
* First try

* add routers to reference.json

* fix apploader

* add some router descriptions

* rebuild

* remove pydocstyle fixes

* minor fix

* docstring

* new descriptions

* undo sub routers

---------

Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com>
2024-04-05 11:21:35 +00:00

44 lines
1.3 KiB
Python

"""The Commodity router."""
from openbb_core.app.model.command_context import CommandContext
from openbb_core.app.model.example import APIEx
from openbb_core.app.model.obbject import OBBject
from openbb_core.app.provider_interface import (
ExtraParams,
ProviderChoices,
StandardParams,
)
from openbb_core.app.query import Query
from openbb_core.app.router import Router
from pydantic import BaseModel
router = Router(prefix="", description="Commodity market data.")
# pylint: disable=unused-argument
@router.command(
model="LbmaFixing",
examples=[
APIEx(parameters={"provider": "nasdaq"}),
APIEx(
description="Get the daily LBMA fixing prices for silver in 2023.",
parameters={
"asset": "silver",
"start_date": "2023-01-01",
"end_date": "2023-12-31",
"transform": "rdiff",
"collapse": "monthly",
"provider": "nasdaq",
},
),
],
)
async def lbma_fixing(
cc: CommandContext,
provider_choices: ProviderChoices,
standard_params: StandardParams,
extra_params: ExtraParams,
) -> OBBject[BaseModel]:
"""Daily LBMA Fixing Prices in USD/EUR/GBP."""
return await OBBject.from_query(Query(**locals()))