Skip to content

Latest commit

 

History

History

README.rst

Odoo Community Association

Fastapi Auth API Key

Beta License: AGPL-3 OCA/rest-framework Translate me on Weblate Try me on Runboat

Provides FastAPI dependencies for Api Key authentication.

Table of contents

If you need to get an odoo env based on the provided api key, you can use authenticated_env_by_auth_api_key.

@router.get("/example_with_authenticated_env")
def example_with_authenticated_env(
    env: Annotated[Environment, Depends(authenticated_env_by_auth_api_key)],
) -> None:
    # env.user is the user attached to the provided key
    pass

If want to get the partned related to the the provided api key, you can use authenticated_partner_by_api_key

@router.get("/example_with_authenticated_partner")
def example_with_authenticated_partner(
    partner: Annotated[Partner, Depends(authenticated_partner_by_api_key)],
) -> None:
    # partner is the partner related to the provided key key.user_id.partner_id
    pass

For this to work, the api key must be defined on the Endpoint. A new field auth_api_key_group_id has been added to the Endpoint model.

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

  • Camptocamp

The migration of this module from 17.0 to 18.0 was financially supported by Camptocamp

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

Current maintainer:

mmequignon

This module is part of the OCA/rest-framework project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.