Coverage for src/henrri_connect/models/authentication.py: 100%
20 statements
« prev ^ index » next coverage.py v7.14.1, created at 2026-06-05 10:54 +0200
« prev ^ index » next coverage.py v7.14.1, created at 2026-06-05 10:54 +0200
1"""
2Modèles pour l'authentification avec l'API Henrri Connect.
4Attributs:
5- AuthenticateRequest: Représente une requête d'authentification pour obtenir un token d'accès.
6- TokenResponse: Représente la réponse d'une authentification réussie ou d'un rafraîchissement
7de token.
8- RefreshTokenRequest: Représente une requête de rafraîchissement du token d'accès.
9"""
11from __future__ import annotations
13from .base import CamelModel
15class AuthenticateRequest(CamelModel):
16 """
17 Représente une requête d'authentification pour obtenir un token d'accès.
19 Attributs:
20 - client_id: Identifiant du client.
21 - client_secret: Secret du client.
22 """
23 client_id: str
24 client_secret: str
27class TokenResponse(CamelModel):
28 """
29 Représente la réponse d'une authentification réussie ou d'un rafraîchissement de token.
31 Attributs:
32 - access_token: Token d'accès.
33 - identity_token: Token d'identité.
34 - scope: Portée du token.
35 - token_type: Type du token.
36 - refresh_token: Token de rafraîchissement.
37 - expires_in: Durée de validité du token en secondes.
38 - is_error: Indique si la réponse contient une erreur.
39 - error: Code de l'erreur (si applicable).
40 - error_description: Description de l'erreur (si applicable).
41 """
42 access_token: str | None = None
43 identity_token: str | None = None
44 scope: str | None = None
45 token_type: str | None = None
46 refresh_token: str | None = None
47 expires_in: int = 0
48 is_error: bool = False
49 error: str | None = None
50 error_description: str | None = None
53class RefreshTokenRequest(CamelModel):
54 """
55 Représente une requête de rafraîchissement du token d'accès.
57 Attributs:
58 - refresh_token: Token de rafraîchissement.
59 - client_id: Identifiant du client.
60 - client_secret: Secret du client.
61 - check_point: Point de contrôle (si applicable).
62 """
63 refresh_token: str
64 client_id: str | None = None
65 client_secret: str | None = None
66 check_point: str | None = None