Skip to content

jam.aio.jwt

jwt

Async JWT module.

Functions:

Name Description
create_instance

Create async-compatible JWT instance.

create_instance

create_instance(
    alg: str,
    secret: Optional[KeyLike] = None,
    secret_key: Optional[KeyLike] = None,
    password: Optional[Union[str, bytes]] = None,
    logger: BaseLogger = logger,
    serializer: Union[
        BaseEncoder, type[BaseEncoder]
    ] = JsonEncoder,
    **kwargs: Any,
) -> BaseJWT

Create async-compatible JWT instance.

Note: JWT encoding/decoding itself is synchronous, but this allows for async-compatible list checking if lists are configured.

Parameters:

Name Type Description Default
alg str

Algorithm (HS256, RS256, etc.)

required
secret Optional[KeyLike]

Secret key (or use secret_key for backward compatibility)

None
secret_key Optional[KeyLike]

Alias for secret (deprecated, use 'secret')

None
password Optional[Union[str, bytes]]

Password for encrypted keys

None
logger BaseLogger

Logger instance

logger
serializer Union[BaseEncoder, type[BaseEncoder]]

JSON encoder/decoder

JsonEncoder
**kwargs Any

Additional params (e.g., custom_module, list configuration)

{}

Returns:

Type Description
BaseJWT

JWT instance or custom module