Files
OpenBB/website/content/platform/development/contributing/deprecating_endpoints.md
Danglewood 9ae13079f3 [Docs] Refactor Contributing Section Of Docs (#6173)
* development index

* refactor development section of documentation

* codespell

* add template zip file

* fixing

* update changed syntax

* dependency thing

* fix sentence

* review edits, add_toolkit_extension

* Add ZIp file

* headtitle

* couple more things

* codespell

* fix sentence

* url fix

* review updates

* forgot one file in the commit

* syntax updates

* json file

* more syntax things

---------

Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
2024-03-16 14:50:34 +00:00

2.0 KiB
Vendored

title, sidebar_position, description, keywords
title sidebar_position description keywords
Deprecating Endpoints 4 This guide provides detailed instructions on how to deprecate an endpoint in the OpenBB Platform.
OpenBB community
OpenBB Platform
Custom commands
API
Python Interface
Deprecation
Deprecated

import HeadTitle from '@site/src/components/General/HeadTitle.tsx';

Deprecating commands is essential to maintaining the OpenBB Platform. This guide outlines the process for deprecating an endpoint.

Deprecating an endpoint

  1. Add the new endpoint that will replace the deprecated one.

  2. Add the deprecation warning

    Navigate to the router where the endpoint to be deprecated exists. Set the deprecated flag to True and add deprecation=OpenBBDeprecationWarning(…) argument to the decorator. Refer to the example below:

    
    from openbb_core.app.deprecation import OpenBBDeprecationWarning
    
        @router.command(
            model="MarketIndices",
            deprecated=True,
            deprecation=OpenBBDeprecationWarning(
                message="This endpoint is deprecated; use `/index/price/historical` instead.",
                since=(4, 1),
                expected_removal=(4, 5),
            ),
        )
        async def market(
            cc: CommandContext,
            provider_choices: ProviderChoices,
            standard_params: StandardParams,
            extra_params: ExtraParams,
        ) -> OBBject:
            """Historical Market Indices."""
        return await OBBject.from_query(Query(**locals()))
    
  3. Get approval from a OpenBB Platform maintainer: We will help you determine the appropriate version for the deprecation warning, and communicate the change(s) to the relevant personnel that might depend on the endpoint you are deprecating.

  4. Remove as we say - the endpoint will be removed in the version specified in the deprecation warning.