Fonctions SDK et valeurs renvoyées dans neuf langages
Consultez les fonctions publiques Launch, leurs paramètres, résultats et échecs par langage. Les paramètres facultatifs et valeurs par défaut suivent la version source correspondante.
Cette page décrit les adaptateurs de compte Launch. Consultez la référence SDK officielle pour les API Licentivo d’autorisation, de comptage et de fonctionnement hors ligne.
Licentivo SDK · Référence des fonctions
L’état de session décrit uniquement le compte ; protégez chaque exécution métier.
Le stockage mémoire est utilisé par défaut. Mémoriser une connexion nécessite un stockage persistant protégé, distinct du cache SDK.
La restauration exige une confirmation en ligne. Launch ne choisit jamais le mode hors ligne après panne réseau ; le SDK officiel vérifie les droits.
Go
Source correspondante · v0.1.6 · application.go · runtime.go · client.go · store.go
Erreurs et échecs: error != nil; errors.Is(err, launchclient.ErrNoSession); errors.As(err, &apiError)
Connect
Connect(merchantOrigin, productID, licentivoProductID string, trustedKeys map[string]string, options Config) → (*Application, error)- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
merchantOrigin / origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.productID / product_id: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.licentivoProductID / licentivo_product_id: Identifiant du produit de licence Licentivo, correspondant à la configuration de signature publique.trustedKeys / trusted_keys: Correspondance entre identifiants de clés et clés publiques pour vérifier les autorisations signées du SDK officiel.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.options / config: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
(*Application, error)Renvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Application.Login
Login(ctx context.Context, email, password string) → (State, error)- Rôle
- Connecte le compte client, obtient une attestation d’identité temporaire et démarre le SDK officiel d’autorisation.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.email, password: Adresse électronique et mot de passe du compte client de cette boutique ; mot de passe limité à cette connexion.
- Résultat
(State, error)Renvoie l’état du compte ; consultez le tableau des champs ci-dessous.
Application.Restore
Restore(ctx context.Context) → (State, error)- Rôle
- Lit la session mémorisée, confirme le compte en ligne, obtient une nouvelle attestation et démarre le SDK officiel.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
(State, error)Renvoie l’état du compte ; ErrNoSession ou NO_SESSION signifie aucune session. Traitez les autres erreurs séparément.
Application.RunFeature
RunFeature(feature string, action func() error) → error- Rôle
- Le SDK officiel vérifie chaque exécution. Le rappel ne s’exécute que si l’autorisation est accordée.
- Paramètres
feature / name, action / block: Le nom de fonction doit correspondre à la politique ; le rappel contient le travail réellement protégé.
- Résultat
errorAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Application.Logout
Logout(ctx context.Context) → error- Rôle
- Arrête l’autorisation locale, déconnecte le SDK officiel puis révoque la session Launch. Les tâches distantes inachevées restent à réessayer.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
errorAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Application.ReleaseDevice
ReleaseDevice(ctx context.Context) → error- Rôle
- Entrée compatible de déconnexion explicite, avec le même processus de déconnexion du compte et de l’appareil que Logout.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
errorAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Application.Close
Close() → void- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Résultat
voidAucune valeur métier ; fermer l’application ne confirme ni déconnexion du compte ni libération de l’appareil.
API avancées et de compatibilité
NewApplication
NewApplication(config Config) → (*Application, error)- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
options / config: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
(*Application, error)Renvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
NewApplicationFromFiles
NewApplicationFromFiles(launchPath, productPath string, options Config) → (*Application, error)- Rôle
- Lit deux configurations publiques existantes, vérifie la correspondance des produits et crée l’application. La connexion directe ne nécessite aucun fichier.
- Paramètres
launchPath, productPath: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.options / config: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
(*Application, error)Renvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
LoadPublicConfig
LoadPublicConfig(path string) → (PublicConfig, error)- Rôle
- Valide ou lit la configuration publique ; produits, environnement et clés de signature doivent correspondre.
- Paramètres
path: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.
- Résultat
(PublicConfig, error)Renvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
NewRuntime
NewRuntime(product ProductConfig, runtime RuntimeConfig) → (Runtime, error)- Rôle
- Crée l’adaptateur du SDK officiel pour les intégrations avancées ; l’attestation reste en mémoire.
- Paramètres
product, runtime: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.
- Résultat
(Runtime, error)Renvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
New
New(origin string, allowLocalHTTP bool) → (*Client, error)- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.allowLocalHTTP: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
(*Client, error)Renvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Client.WithToken
WithToken(token string) → *Client- Rôle
- Renvoie une copie du client avec le jeton fourni, réservée aux serveurs de confiance.
- Paramètres
token: Jeton de session Launch, accessible uniquement aux interfaces de session bas niveau ou de stockage chiffré.
- Résultat
*ClientRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Client.Login
Login(ctx context.Context, email, password string) → (User, error)- Rôle
- Authentifie le compte et renvoie ses informations ou sa session, sans démarrer le moteur d’autorisation.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.email, password: Adresse électronique et mot de passe du compte client de cette boutique ; mot de passe limité à cette connexion.
- Résultat
(User, error)Renvoie l’état du compte ; consultez le tableau des champs ci-dessous.
Client.LoginSession
LoginSession(ctx context.Context, email, password string) → (Session, error)- Rôle
- Authentifie le compte et renvoie ses informations ou sa session, sans démarrer le moteur d’autorisation.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.email, password: Adresse électronique et mot de passe du compte client de cette boutique ; mot de passe limité à cette connexion.
- Résultat
(Session, error)Renvoie l’état du compte ; consultez le tableau des champs ci-dessous.
Client.CurrentUser
CurrentUser(ctx context.Context) → (User, error)- Rôle
- Consulte le compte actuel ; le succès n’autorise pas les fonctions protégées.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
(User, error)Renvoie l’état du compte ; consultez le tableau des champs ci-dessous.
Client.Identity
Identity(ctx context.Context, product, environment string) → (Identity, error)- Rôle
- Obtient une attestation d’identité à usage unique et le routage public, sans licence ni droit de fonction.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.product: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.
- Résultat
(Identity, error)Renvoie l’état du compte ; consultez le tableau des champs ci-dessous.
Client.SignOut
SignOut(ctx context.Context) → error- Rôle
- Révoque la session Launch et efface le jeton du client, sans remplacer la déconnexion de l’appareil du SDK officiel.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
errorAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Client.Credential
Credential(ctx context.Context, product, environment string) → (Credential, error)- Rôle
- Ancienne API conservée : le protocole de licence permanente a été retiré, donc les appels échouent. Utilisez Application.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.product: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.
- Résultat
(Credential, error)Échoue toujours ; migrez vers l’échange d’identité de compte.
Client.CredentialWithRetry
CredentialWithRetry(ctx context.Context, product, environment string, policy RetryPolicy) → (Credential, error)- Rôle
- Ancienne API conservée : le protocole de licence permanente a été retiré, donc les appels échouent. Utilisez Application.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.product: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.policy: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
(Credential, error)Échoue toujours ; migrez vers l’échange d’identité de compte.
NewSystemSessionStore
NewSystemSessionStore(directory string) → (SessionStore, error)- Rôle
- Crée un stockage persistant protégé ; récupérez la clé dans le coffre d’identifiants du système.
- Paramètres
directory: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.
- Résultat
(SessionStore, error)Renvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
ProtectDirectory
ProtectDirectory(directory string) → error- Rôle
- Limite l’accès au dossier à l’utilisateur Windows actuel ou aux permissions privées des autres plateformes.
- Paramètres
directory: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.
- Résultat
errorAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
ServiceUnavailable
ServiceUnavailable(err error) → bool- Rôle
- Identifie une indisponibilité temporaire ; cela n’autorise jamais à travailler hors ligne.
- Paramètres
err: Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Résultat
boolRenvoie une classification booléenne, pas une autorisation.
APIError.Error / TransportError.Error
Error() → string- Rôle
- Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Résultat
stringRenvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
TransportError.Unwrap
Unwrap() → error- Rôle
- Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Résultat
errorRenvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
MemoryStore.Load / SessionStore.Load
Load(ctx context.Context, key string) → ([]byte, error)- Rôle
- Charge un compte par clé isolée ; les données secrètes sont réservées au SDK.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
([]byte, error)Renvoie le compte secret ; son absence donne une valeur vide ou ErrNoSession selon le langage.
MemoryStore.Save / SessionStore.Save
Save(ctx context.Context, key string, value []byte) → error- Rôle
- Enregistre atomiquement le compte sous sa clé isolée.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
errorAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
MemoryStore.Delete / SessionStore.Delete
Delete(ctx context.Context, key string) → error- Rôle
- Supprime le compte sans supprimer le cache d’autorisation ni le journal de déconnexion du SDK officiel.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
errorAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Runtime.Start
Start(ctx context.Context, onError func(error)) → error- Rôle
- Démarre la vérification et les tâches SDK officielles ; connexion et protection des fonctions restent séparées.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.onError: Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Résultat
errorAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Runtime.RunFeature
RunFeature(feature string, action func() error) → error- Rôle
- Le SDK officiel vérifie chaque exécution. Le rappel ne s’exécute que si l’autorisation est accordée.
- Paramètres
feature / name, action / block: Le nom de fonction doit correspondre à la politique ; le rappel contient le travail réellement protégé.
- Résultat
errorAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Runtime.Deactivate
Deactivate(ctx context.Context) → error- Rôle
- Déconnecte l’appareil via le SDK officiel ; l’application révoque séparément la session Launch.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
errorAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Runtime.Close
Close() → void- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Résultat
voidAucune valeur métier ; fermer l’application ne confirme ni déconnexion du compte ni libération de l’appareil.
Python
Source correspondante · v0.1.6 · client.py
Erreurs et échecs: APIError.code / .status / .retry_after / .retryable; ValueError; SDK exceptions
Application.connect
Application.connect(merchant_origin, product_id, licentivo_product_id, trusted_keys, environment="live", **kwargs) → Application- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
merchantOrigin / origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.productID / product_id: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.licentivoProductID / licentivo_product_id: Identifiant du produit de licence Licentivo, correspondant à la configuration de signature publique.trustedKeys / trusted_keys: Correspondance entre identifiants de clés et clés publiques pour vérifier les autorisations signées du SDK officiel.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.options / config: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
ApplicationRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Application.login
login(email, password, *, pending_attempts=3) → Application (self)- Rôle
- Connecte le compte client, obtient une attestation d’identité temporaire et démarre le SDK officiel d’autorisation.
- Paramètres
email, password: Adresse électronique et mot de passe du compte client de cette boutique ; mot de passe limité à cette connexion.pending_attempts: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
Application (self)Renvoie cette instance d’application, pas des informations de compte ni une autorisation.
Application.restore
restore() → bool- Rôle
- Lit la session mémorisée, confirme le compte en ligne, obtient une nouvelle attestation et démarre le SDK officiel.
- Résultat
booltrue indique une restauration réussie ; false indique aucune session restaurable. Refus, expiration et problèmes réseau produisent une erreur.
Application.run_feature
run_feature(name, action) → T- Rôle
- Le SDK officiel vérifie chaque exécution. Le rappel ne s’exécute que si l’autorisation est accordée.
- Paramètres
feature / name, action / block: Le nom de fonction doit correspondre à la politique ; le rappel contient le travail réellement protégé.
- Résultat
TRenvoie le résultat du rappel métier ; les refus et exceptions sont signalés comme erreurs.
Application.logout
logout() → bool- Rôle
- Arrête l’autorisation locale, déconnecte le SDK officiel puis révoque la session Launch. Les tâches distantes inachevées restent à réessayer.
- Résultat
booltrue confirme la déconnexion ; false indique une déconnexion distante ou révocation d’appareil en attente. Le stockage peut aussi produire une erreur.
Application.release_device
release_device() → bool- Rôle
- Entrée compatible de déconnexion explicite, avec le même processus de déconnexion du compte et de l’appareil que Logout.
- Résultat
booltrue confirme la déconnexion ; false indique une déconnexion distante ou révocation d’appareil en attente. Le stockage peut aussi produire une erreur.
Application.close
close() → None- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Résultat
NoneAucune valeur métier ; fermer l’application ne confirme ni déconnexion du compte ni libération de l’appareil.
Application.__enter__ / __exit__
with Application.connect(...) as app: ... → Application / None- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Résultat
Application / NoneAucune valeur métier ; fermer l’application ne confirme ni déconnexion du compte ni libération de l’appareil.
API avancées et de compatibilité
Application.__init__
Application(origin, product_id, product_config, environment="live", store=None, runtime_factory=None, cache_dir=None, sleep=time.sleep, opener=None) → Application- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.product_id: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.product_config: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.options / config: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
ApplicationRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Application.from_files
Application.from_files(launch_config, product_config, **kwargs) → Application- Rôle
- Lit deux configurations publiques existantes, vérifie la correspondance des produits et crée l’application. La connexion directe ne nécessite aucun fichier.
- Paramètres
launch_config, product_config: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.options / config: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
ApplicationRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
MemoryStore
MemoryStore() → MemoryStore- Rôle
- Crée un stockage de session limité au processus actuel.
- Résultat
MemoryStoreRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
WindowsDPAPIStore
WindowsDPAPIStore(directory=None) → WindowsDPAPIStore- Rôle
- Crée un stockage persistant protégé ; récupérez la clé dans le coffre d’identifiants du système.
- Paramètres
directory: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.
- Résultat
WindowsDPAPIStoreRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
APIError
APIError(code, status=0, retry_after=0) → APIError- Rôle
- Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Paramètres
code, status, retry_after: Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Résultat
APIErrorRenvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
MemoryStore.load / WindowsDPAPIStore.load
load(key) → bytes | None- Rôle
- Charge un compte par clé isolée ; les données secrètes sont réservées au SDK.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
bytes | NoneRenvoie le compte secret ; son absence donne une valeur vide ou ErrNoSession selon le langage.
MemoryStore.save / WindowsDPAPIStore.save
save(key, value) → None- Rôle
- Enregistre atomiquement le compte sous sa clé isolée.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
NoneAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
MemoryStore.delete / WindowsDPAPIStore.delete
delete(key) → None- Rôle
- Supprime le compte sans supprimer le cache d’autorisation ni le journal de déconnexion du SDK officiel.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
NoneAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
C#
Source correspondante · v0.1.6 · Application.cs · SessionStore.cs
Erreurs et échecs: await Task / ValueTask; LaunchException.Code / .Status / .RetryAfterSeconds / .Retryable
Application.Connect
Application.Connect(string merchantOrigin, string productId, string licentivoProductId, Dictionary<string,string> trustedKeys, string environment="live", ISessionStore? store=null, string? cacheDirectory=null) → Application- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
merchantOrigin / origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.productID / product_id: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.licentivoProductID / licentivo_product_id: Identifiant du produit de licence Licentivo, correspondant à la configuration de signature publique.trustedKeys / trusted_keys: Correspondance entre identifiants de clés et clés publiques pour vérifier les autorisations signées du SDK officiel.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.store, cacheDirectory: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
ApplicationRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Application.Login
Login(string email, string password, int pendingAttempts=3, CancellationToken ct=default) → Task- Rôle
- Connecte le compte client, obtient une attestation d’identité temporaire et démarre le SDK officiel d’autorisation.
- Paramètres
email, password: Adresse électronique et mot de passe du compte client de cette boutique ; mot de passe limité à cette connexion.pendingAttempts: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
TaskAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Application.Restore
Restore(CancellationToken ct=default) → Task<bool>- Rôle
- Lit la session mémorisée, confirme le compte en ligne, obtient une nouvelle attestation et démarre le SDK officiel.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
Task<bool>true indique une restauration réussie ; false indique aucune session restaurable. Refus, expiration et problèmes réseau produisent une erreur.
Application.RunFeature
RunFeature(string feature, Func<Task> action) → Task- Rôle
- Le SDK officiel vérifie chaque exécution. Le rappel ne s’exécute que si l’autorisation est accordée.
- Paramètres
feature / name, action / block: Le nom de fonction doit correspondre à la politique ; le rappel contient le travail réellement protégé.
- Résultat
TaskAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Application.Status
Status() → AuthorizationStatus? (null: runtime absent)- Rôle
- Lit l’état d’autorisation du SDK officiel, sans connecter le compte ni remplacer les vérifications des fonctions.
- Résultat
AuthorizationStatus? (null: runtime absent)Lit l’état d’autorisation du SDK officiel, sans connecter le compte ni remplacer les vérifications des fonctions.
Application.Logout
Logout(CancellationToken ct=default) → Task- Rôle
- Arrête l’autorisation locale, déconnecte le SDK officiel puis révoque la session Launch. Les tâches distantes inachevées restent à réessayer.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
TaskAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Application.ReleaseDevice
ReleaseDevice(CancellationToken ct=default) → Task- Rôle
- Entrée compatible de déconnexion explicite, avec le même processus de déconnexion du compte et de l’appareil que Logout.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
TaskAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Application.DisposeAsync
DisposeAsync() → ValueTask- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Résultat
ValueTaskAucune valeur métier ; fermer l’application ne confirme ni déconnexion du compte ni libération de l’appareil.
API avancées et de compatibilité
Application
Application(string origin, string productId, Config productConfig, string environment="live", ISessionStore? store=null, string? cacheDirectory=null, HttpMessageHandler? handler=null, Func<Config,IRuntime>? runtimeFactory=null) → Application- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.productId: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.productConfig: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.options / config: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
ApplicationRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Application.FromFiles
Application.FromFiles(string launchPath, string productPath, ISessionStore? store=null) → Application- Rôle
- Lit deux configurations publiques existantes, vérifie la correspondance des produits et crée l’application. La connexion directe ne nécessite aucun fichier.
- Paramètres
launchPath, productPath: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.store: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
ApplicationRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
MemoryStore
new MemoryStore() → MemoryStore- Rôle
- Crée un stockage de session limité au processus actuel.
- Résultat
MemoryStoreRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
WindowsDPAPIStore
new WindowsDPAPIStore(string? directory=null) → WindowsDPAPIStore- Rôle
- Crée un stockage persistant protégé ; récupérez la clé dans le coffre d’identifiants du système.
- Paramètres
directory: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.
- Résultat
WindowsDPAPIStoreRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
LaunchException
new LaunchException(string code, int status=0, int retryAfterSeconds=0) → LaunchException- Rôle
- Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Paramètres
code, status, retryAfterSeconds: Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Résultat
LaunchExceptionRenvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
ISessionStore.Load / MemoryStore.Load / WindowsDPAPIStore.Load
Load(string key) → byte[]?- Rôle
- Charge un compte par clé isolée ; les données secrètes sont réservées au SDK.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
byte[]?Renvoie le compte secret ; son absence donne une valeur vide ou ErrNoSession selon le langage.
ISessionStore.Save / MemoryStore.Save / WindowsDPAPIStore.Save
Save(string key, byte[] value) → void- Rôle
- Enregistre atomiquement le compte sous sa clé isolée.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
ISessionStore.Delete / MemoryStore.Delete / WindowsDPAPIStore.Delete
Delete(string key) → void- Rôle
- Supprime le compte sans supprimer le cache d’autorisation ni le journal de déconnexion du SDK officiel.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
IRuntime.Start
Start(CancellationToken ct) → Task- Rôle
- Démarre la vérification et les tâches SDK officielles ; connexion et protection des fonctions restent séparées.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
TaskAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
IRuntime.Status
Status() → AuthorizationStatus- Rôle
- Lit l’état d’autorisation du SDK officiel, sans connecter le compte ni remplacer les vérifications des fonctions.
- Résultat
AuthorizationStatusLit l’état d’autorisation du SDK officiel, sans connecter le compte ni remplacer les vérifications des fonctions.
IRuntime.RunFeature
RunFeature(string feature, Func<Task> action) → Task- Rôle
- Le SDK officiel vérifie chaque exécution. Le rappel ne s’exécute que si l’autorisation est accordée.
- Paramètres
feature / name, action / block: Le nom de fonction doit correspondre à la politique ; le rappel contient le travail réellement protégé.
- Résultat
TaskAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
IRuntime.Deactivate
Deactivate(CancellationToken ct) → Task- Rôle
- Déconnecte l’appareil via le SDK officiel ; l’application révoque séparément la session Launch.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
TaskAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
IRuntime.DisposeAsync
DisposeAsync() → ValueTask- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Résultat
ValueTaskAucune valeur métier ; fermer l’application ne confirme ni déconnexion du compte ni libération de l’appareil.
Java
Source correspondante · v0.1.6 · Launch.java · EncryptedFileStore.java
Erreurs et échecs: throws Exception; Launch.Failure.code / .status / .requestID / .retryAfterMillis / .transport; char[] password
Launch.connect
Launch.connect(String merchantOrigin, String productId, String licentivoProductId, Map<String,String> trustedKeys, String environment) → Launch- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
merchantOrigin / origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.productID / product_id: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.licentivoProductID / licentivo_product_id: Identifiant du produit de licence Licentivo, correspondant à la configuration de signature publique.trustedKeys / trusted_keys: Correspondance entre identifiants de clés et clés publiques pour vérifier les autorisations signées du SDK officiel.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.
- Résultat
LaunchRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Launch.login
login(String email, char[] password) → State- Rôle
- Connecte le compte client, obtient une attestation d’identité temporaire et démarre le SDK officiel d’autorisation.
- Paramètres
email, password: Adresse électronique et mot de passe du compte client de cette boutique ; mot de passe limité à cette connexion.
- Résultat
StateRenvoie l’état du compte ; consultez le tableau des champs ci-dessous.
Launch.restore
restore() → State- Rôle
- Lit la session mémorisée, confirme le compte en ligne, obtient une nouvelle attestation et démarre le SDK officiel.
- Résultat
StateRenvoie l’état du compte ; ErrNoSession ou NO_SESSION signifie aucune session. Traitez les autres erreurs séparément.
Launch.runFeature
runFeature(String feature, Client.FeatureAction action) → void- Rôle
- Le SDK officiel vérifie chaque exécution. Le rappel ne s’exécute que si l’autorisation est accordée.
- Paramètres
feature / name, action / block: Le nom de fonction doit correspondre à la politique ; le rappel contient le travail réellement protégé.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Launch.logout
logout() → void- Rôle
- Arrête l’autorisation locale, déconnecte le SDK officiel puis révoque la session Launch. Les tâches distantes inachevées restent à réessayer.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Launch.releaseDevice
releaseDevice() → void- Rôle
- Entrée compatible de déconnexion explicite, avec le même processus de déconnexion du compte et de l’appareil que Logout.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Launch.close
close() → void- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Résultat
voidAucune valeur métier ; fermer l’application ne confirme ni déconnexion du compte ni libération de l’appareil.
API avancées et de compatibilité
Launch
new Launch(Config config, Map<String,Object> product, Path cacheRoot [, Store store, Transport transport, RuntimeFactory factory, Sleeper sleeper]) → Launch- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
config, product: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.cacheRoot: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.store, transport, factory, sleeper: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
LaunchRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Launch.Config
new Launch.Config(String merchantOrigin, String launchProductID, String licentivoProductID, String environment) → Config- Rôle
- Valide ou lit la configuration publique ; produits, environnement et clés de signature doivent correspondre.
- Paramètres
merchantOrigin / origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.productID / product_id: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.licentivoProductID / licentivo_product_id: Identifiant du produit de licence Licentivo, correspondant à la configuration de signature publique.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.
- Résultat
ConfigRenvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
Launch.Config.load
Launch.Config.load(Path path) → Config- Rôle
- Valide ou lit la configuration publique ; produits, environnement et clés de signature doivent correspondre.
- Paramètres
path: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.
- Résultat
ConfigRenvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
Launch.readPublic
Launch.readPublic(Path path) → Map<String,Object>- Rôle
- Valide ou lit la configuration publique ; produits, environnement et clés de signature doivent correspondre.
- Paramètres
path: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.
- Résultat
Map<String,Object>Renvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
Launch.MemoryStore
new Launch.MemoryStore() → MemoryStore- Rôle
- Crée un stockage de session limité au processus actuel.
- Résultat
MemoryStoreRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
EncryptedFileStore
new EncryptedFileStore(Path directory, SecretKey vaultKey) → EncryptedFileStore- Rôle
- Crée un stockage persistant protégé ; récupérez la clé dans le coffre d’identifiants du système.
- Paramètres
directory: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.vaultKey: Clé de chiffrement issue du coffre système ; ne la stockez pas avec les données chiffrées.
- Résultat
EncryptedFileStoreRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Launch.HTTPTransport.request
request(String method, URI uri, String bearer, byte[] body) → Response- Rôle
- Envoie les requêtes HTTP du compte et renvoie statut, en-têtes ou corps brut, sans décider de l’autorisation.
- Paramètres
method, uri, bearer, body: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.
- Résultat
ResponseRenvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
Launch.Failure
new Launch.Failure(String code [, int status, String requestID, long retryAfterMillis, boolean transport]) → Failure- Rôle
- Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Paramètres
code, status, requestID, retryAfterMillis, transport: Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Résultat
FailureRenvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
Launch.Failure.unavailable
unavailable() → boolean- Rôle
- Identifie une indisponibilité temporaire ; cela n’autorise jamais à travailler hors ligne.
- Résultat
booleanRenvoie une classification booléenne, pas une autorisation.
Store.load / MemoryStore.load / EncryptedFileStore.load
load(String scope) → byte[] | null- Rôle
- Charge un compte par clé isolée ; les données secrètes sont réservées au SDK.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
byte[] | nullRenvoie le compte secret ; son absence donne une valeur vide ou ErrNoSession selon le langage.
Store.save / MemoryStore.save / EncryptedFileStore.save
save(String scope, byte[] secret) → void- Rôle
- Enregistre atomiquement le compte sous sa clé isolée.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Store.delete / MemoryStore.delete / EncryptedFileStore.delete
delete(String scope) → void- Rôle
- Supprime le compte sans supprimer le cache d’autorisation ni le journal de déconnexion du SDK officiel.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Runtime.canStartOffline
canStartOffline() → boolean- Rôle
- Lit l’état d’autorisation du SDK officiel, sans connecter le compte ni remplacer les vérifications des fonctions.
- Résultat
booleanRenvoie une classification booléenne, pas une autorisation.
Runtime.start
start() → void- Rôle
- Démarre la vérification et les tâches SDK officielles ; connexion et protection des fonctions restent séparées.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Runtime.runFeature
runFeature(String feature, Client.FeatureAction action) → void- Rôle
- Le SDK officiel vérifie chaque exécution. Le rappel ne s’exécute que si l’autorisation est accordée.
- Paramètres
feature / name, action / block: Le nom de fonction doit correspondre à la politique ; le rappel contient le travail réellement protégé.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Runtime.releaseDevice
releaseDevice() → void- Rôle
- Déconnecte l’appareil via le SDK officiel ; l’application révoque séparément la session Launch.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Runtime.close
close() → void- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Résultat
voidAucune valeur métier ; fermer l’application ne confirme ni déconnexion du compte ni libération de l’appareil.
RuntimeFactory.create
create(Map<String,Object> settings) → Runtime- Rôle
- Crée l’adaptateur du SDK officiel pour les intégrations avancées ; l’attestation reste en mémoire.
- Paramètres
settings: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.
- Résultat
RuntimeRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Sleeper.sleep
sleep(long milliseconds) → void- Rôle
- Attend la durée indiquée pour planifier les nouvelles tentatives avancées.
- Paramètres
milliseconds: Délai recommandé avant nouvelle tentative ; vérifiez les unités : secondes, millisecondes ou Duration.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
JavaScript / TypeScript
Source correspondante · v0.1.6 · index.d.ts · index.mjs
Erreurs et échecs: await Promise; catch (error); LaunchError(code, status, retryAfterSeconds)
Application.connect
Application.connect(merchantOrigin, productID, licentivoProductID, trustedKeys, options?) → Application- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
merchantOrigin / origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.productID / product_id: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.licentivoProductID / licentivo_product_id: Identifiant du produit de licence Licentivo, correspondant à la configuration de signature publique.trustedKeys / trusted_keys: Correspondance entre identifiants de clés et clés publiques pour vérifier les autorisations signées du SDK officiel.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.options / config: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
ApplicationRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Application.login
login(email: string, password: string, options?: {signal?: AbortSignal}) → Promise<SessionState>- Rôle
- Connecte le compte client, obtient une attestation d’identité temporaire et démarre le SDK officiel d’autorisation.
- Paramètres
email, password: Adresse électronique et mot de passe du compte client de cette boutique ; mot de passe limité à cette connexion.ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
Promise<SessionState>Renvoie l’état du compte ; consultez le tableau des champs ci-dessous.
Application.restore
restore(options?: {signal?: AbortSignal}) → Promise<SessionState | null>- Rôle
- Lit la session mémorisée, confirme le compte en ligne, obtient une nouvelle attestation et démarre le SDK officiel.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
Promise<SessionState | null>Renvoie l’état du compte ; null ou nil signifie aucune session restaurable. Les autres échecs produisent une erreur.
Application.runFeature
runFeature<T>(name: string, action: () => T | Promise<T>) → Promise<T>- Rôle
- Le SDK officiel vérifie chaque exécution. Le rappel ne s’exécute que si l’autorisation est accordée.
- Paramètres
feature / name, action / block: Le nom de fonction doit correspondre à la politique ; le rappel contient le travail réellement protégé.
- Résultat
Promise<T>Renvoie le résultat du rappel métier ; les refus et exceptions sont signalés comme erreurs.
Application.logout
logout(options?: {signal?: AbortSignal}) → Promise<boolean>- Rôle
- Arrête l’autorisation locale, déconnecte le SDK officiel puis révoque la session Launch. Les tâches distantes inachevées restent à réessayer.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
Promise<boolean>true confirme la déconnexion ; false indique une déconnexion distante ou révocation d’appareil en attente. Le stockage peut aussi produire une erreur.
Application.releaseDevice
releaseDevice(options?: {signal?: AbortSignal}) → Promise<void>- Rôle
- Entrée compatible de déconnexion explicite, avec le même processus de déconnexion du compte et de l’appareil que Logout.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
Promise<void>Aucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Application.close
close() → Promise<void>- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Résultat
Promise<void>Aucune valeur métier ; fermer l’application ne confirme ni déconnexion du compte ni libération de l’appareil.
API avancées et de compatibilité
Application
new Application(launch: LaunchConfig, product: PublicProductConfig, options?: Options) → Application- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
launch, product: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.options / config: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
ApplicationRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Application.fromFiles
Application.fromFiles(launchPath: string, productPath: string, options?: Options) → Promise<Application>- Rôle
- Lit deux configurations publiques existantes, vérifie la correspondance des produits et crée l’application. La connexion directe ne nécessite aucun fichier.
- Paramètres
launchPath, productPath: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.options / config: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
Promise<Application>Renvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
validateConfig
validateConfig(launch: LaunchConfig, product: PublicProductConfig) → {launch: LaunchConfig, product: PublicProductConfig}- Rôle
- Valide ou lit la configuration publique ; produits, environnement et clés de signature doivent correspondre.
- Paramètres
launch, product: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.
- Résultat
{launch: LaunchConfig, product: PublicProductConfig}Renvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
loadConfig
loadConfig(launchPath: string, productPath: string) → Promise<{launch: LaunchConfig, product: PublicProductConfig}>- Rôle
- Valide ou lit la configuration publique ; produits, environnement et clés de signature doivent correspondre.
- Paramètres
launchPath, productPath: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.
- Résultat
Promise<{launch: LaunchConfig, product: PublicProductConfig}>Renvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
defaultTransport
defaultTransport(request: Request) → Promise<Response>- Rôle
- Envoie les requêtes HTTP du compte et renvoie statut, en-têtes ou corps brut, sans décider de l’autorisation.
- Paramètres
request: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.
- Résultat
Promise<Response>Renvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
MemoryStore
new MemoryStore() → MemoryStore- Rôle
- Crée un stockage de session limité au processus actuel.
- Résultat
MemoryStoreRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
EncryptedFileStore
new EncryptedFileStore(directory: string, key: Uint8Array) → EncryptedFileStore- Rôle
- Crée un stockage persistant protégé ; récupérez la clé dans le coffre d’identifiants du système.
- Paramètres
directory: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.key: Clé de chiffrement issue du coffre système ; ne la stockez pas avec les données chiffrées.
- Résultat
EncryptedFileStoreRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
LaunchError
new LaunchError(code: string, status=0, retryAfterSeconds=0) → LaunchError- Rôle
- Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Paramètres
code, status, retryAfterSeconds: Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Résultat
LaunchErrorRenvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
SessionStore.load / MemoryStore.load / EncryptedFileStore.load
load(scope: string) → Promise<SavedSession | null>- Rôle
- Charge un compte par clé isolée ; les données secrètes sont réservées au SDK.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
Promise<SavedSession | null>Renvoie le compte secret ; son absence donne une valeur vide ou ErrNoSession selon le langage.
SessionStore.save / MemoryStore.save / EncryptedFileStore.save
save(scope: string, value: SavedSession) → Promise<void>- Rôle
- Enregistre atomiquement le compte sous sa clé isolée.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
Promise<void>Aucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
SessionStore.delete / MemoryStore.delete / EncryptedFileStore.delete
delete(scope: string) → Promise<void>- Rôle
- Supprime le compte sans supprimer le cache d’autorisation ni le journal de déconnexion du SDK officiel.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
Promise<void>Aucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Runtime.status
status() → {allowed:boolean,state:string} | Promise<{allowed:boolean,state:string}>- Rôle
- Lit l’état d’autorisation du SDK officiel, sans connecter le compte ni remplacer les vérifications des fonctions.
- Résultat
{allowed:boolean,state:string} | Promise<{allowed:boolean,state:string}>Lit l’état d’autorisation du SDK officiel, sans connecter le compte ni remplacer les vérifications des fonctions.
Runtime.start
start(onError?: (error: unknown) => void, signal?: AbortSignal) → Promise<unknown>- Rôle
- Démarre la vérification et les tâches SDK officielles ; connexion et protection des fonctions restent séparées.
- Paramètres
onError: Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
Promise<unknown>Aucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Runtime.runFeature
runFeature<T>(name: string, action: () => T | Promise<T>) → Promise<T>- Rôle
- Le SDK officiel vérifie chaque exécution. Le rappel ne s’exécute que si l’autorisation est accordée.
- Paramètres
feature / name, action / block: Le nom de fonction doit correspondre à la politique ; le rappel contient le travail réellement protégé.
- Résultat
Promise<T>Renvoie le résultat du rappel métier ; les refus et exceptions sont signalés comme erreurs.
Runtime.deactivate
deactivate(signal?: AbortSignal) → Promise<unknown>- Rôle
- Déconnecte l’appareil via le SDK officiel ; l’application révoque séparément la session Launch.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
Promise<unknown>Aucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Runtime.logout
logout?(signal?: AbortSignal) → Promise<{local_complete:boolean,revocation_pending:boolean,storage_error?:string}>- Rôle
- Déconnecte l’appareil via le SDK officiel ; l’application révoque séparément la session Launch.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
Promise<{local_complete:boolean,revocation_pending:boolean,storage_error?:string}>Déconnexion locale et révocation distante sont distinctes. Gérez les tâches en attente et erreurs de stockage ; conservez le journal SDK.
Runtime.close
close() → Promise<unknown>- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Résultat
Promise<unknown>Aucune valeur métier ; fermer l’application ne confirme ni déconnexion du compte ni libération de l’appareil.
Rust
Source correspondante · v0.1.6 · lib.rs · store.rs · transport.rs
Erreurs et échecs: Result<T, Failure>: Ok(value) / Err(Failure {code, status, request_id, retry_after, transport})
Application::connect
Application::connect(origin: &str, product_id: &str, licentivo_product_id: &str, trusted_keys: &[(&str,&str)], environment: &str) → Result<Application, Failure>- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
merchantOrigin / origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.productID / product_id: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.licentivoProductID / licentivo_product_id: Identifiant du produit de licence Licentivo, correspondant à la configuration de signature publique.trustedKeys / trusted_keys: Correspondance entre identifiants de clés et clés publiques pour vérifier les autorisations signées du SDK officiel.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.
- Résultat
Result<Application, Failure>Renvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Application::login
login(&mut self, email: &str, password: &str) → Result<State, Failure>- Rôle
- Connecte le compte client, obtient une attestation d’identité temporaire et démarre le SDK officiel d’autorisation.
- Paramètres
email, password: Adresse électronique et mot de passe du compte client de cette boutique ; mot de passe limité à cette connexion.
- Résultat
Result<State, Failure>Renvoie l’état du compte ; consultez le tableau des champs ci-dessous.
Application::restore
restore(&mut self) → Result<State, Failure>- Rôle
- Lit la session mémorisée, confirme le compte en ligne, obtient une nouvelle attestation et démarre le SDK officiel.
- Résultat
Result<State, Failure>Renvoie l’état du compte ; ErrNoSession ou NO_SESSION signifie aucune session. Traitez les autres erreurs séparément.
Application::run_feature
run_feature<T,F: FnOnce() -> Result<T,Failure>>(&mut self, feature: &str, action: F) → Result<T, Failure>- Rôle
- Le SDK officiel vérifie chaque exécution. Le rappel ne s’exécute que si l’autorisation est accordée.
- Paramètres
feature / name, action / block: Le nom de fonction doit correspondre à la politique ; le rappel contient le travail réellement protégé.
- Résultat
Result<T, Failure>Renvoie le résultat du rappel métier ; les refus et exceptions sont signalés comme erreurs.
Application::logout
logout(&mut self) → Result<(), Failure>- Rôle
- Arrête l’autorisation locale, déconnecte le SDK officiel puis révoque la session Launch. Les tâches distantes inachevées restent à réessayer.
- Résultat
Result<(), Failure>Aucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Application::release_device
release_device(&mut self) → Result<(), Failure>- Rôle
- Entrée compatible de déconnexion explicite, avec le même processus de déconnexion du compte et de l’appareil que Logout.
- Résultat
Result<(), Failure>Aucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Application::close / Drop
close(&mut self) / drop(&mut self) → ()- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Résultat
()Aucune valeur métier ; fermer l’application ne confirme ni déconnexion du compte ni libération de l’appareil.
API avancées et de compatibilité
Application::new
Application::new(config: Config, product: Value, cache_root: PathBuf) → Result<Application, Failure>- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
config, product: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.cache_root: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.
- Résultat
Result<Application, Failure>Renvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Application::with_components
Application::with_components(config: Config, product: Value, cache_root: PathBuf, store: Box<dyn Store>, transport: Box<dyn Transport>, factory: Box<dyn RuntimeFactory>, sleeper: Box<dyn Sleeper>) → Result<Application, Failure>- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
config, product: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.cache_root: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.store, transport, factory, sleeper: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
Result<Application, Failure>Renvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Config::new
Config::new(origin: &str, product: &str, runtime_product: &str, environment: &str) → Result<Config, Failure>- Rôle
- Valide ou lit la configuration publique ; produits, environnement et clés de signature doivent correspondre.
- Paramètres
merchantOrigin / origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.productID / product_id: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.licentivoProductID / licentivo_product_id: Identifiant du produit de licence Licentivo, correspondant à la configuration de signature publique.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.
- Résultat
Result<Config, Failure>Renvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
Config::load
Config::load(path: impl AsRef<Path>) → Result<Config, Failure>- Rôle
- Valide ou lit la configuration publique ; produits, environnement et clés de signature doivent correspondre.
- Paramètres
path: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.
- Résultat
Result<Config, Failure>Renvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
read_public
read_public(path: impl AsRef<Path>) → Result<Value, Failure>- Rôle
- Valide ou lit la configuration publique ; produits, environnement et clés de signature doivent correspondre.
- Paramètres
path: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.
- Résultat
Result<Value, Failure>Renvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
MemoryStore::default
MemoryStore::default() → MemoryStore- Rôle
- Crée un stockage de session limité au processus actuel.
- Résultat
MemoryStoreRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
EncryptedFileStore::new
EncryptedFileStore::new(root: PathBuf, vault_key: [u8;32]) → Result<EncryptedFileStore, Failure>- Rôle
- Crée un stockage persistant protégé ; récupérez la clé dans le coffre d’identifiants du système.
- Paramètres
root: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.vault_key: Clé de chiffrement issue du coffre système ; ne la stockez pas avec les données chiffrées.
- Résultat
Result<EncryptedFileStore, Failure>Renvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
CurlTransport::new
CurlTransport::new() → Result<CurlTransport, Failure>- Rôle
- Envoie les requêtes HTTP du compte et renvoie statut, en-têtes ou corps brut, sans décider de l’autorisation.
- Résultat
Result<CurlTransport, Failure>Renvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
CurlTransport::request
request(&mut self, method: &str, url: &str, bearer: &str, body: &[u8]) → Result<Response, Failure>- Rôle
- Envoie les requêtes HTTP du compte et renvoie statut, en-têtes ou corps brut, sans décider de l’autorisation.
- Paramètres
method, url, bearer, body: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.
- Résultat
Result<Response, Failure>Renvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
Failure::new
Failure::new(code: &str) → Failure- Rôle
- Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Paramètres
code: Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Résultat
FailureRenvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
ThreadSleeper::sleep
sleep(&mut self, duration: Duration) → Result<(), Failure>- Rôle
- Attend la durée indiquée pour planifier les nouvelles tentatives avancées.
- Paramètres
duration: Délai recommandé avant nouvelle tentative ; vérifiez les unités : secondes, millisecondes ou Duration.
- Résultat
Result<(), Failure>Aucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Store::load / MemoryStore::load / EncryptedFileStore::load
load(&mut self, scope: &str) → Result<Option<Vec<u8>>, Failure>- Rôle
- Charge un compte par clé isolée ; les données secrètes sont réservées au SDK.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
Result<Option<Vec<u8>>, Failure>Renvoie le compte secret ; son absence donne une valeur vide ou ErrNoSession selon le langage.
Store::save / MemoryStore::save / EncryptedFileStore::save
save(&mut self, scope: &str, value: &[u8]) → Result<(), Failure>- Rôle
- Enregistre atomiquement le compte sous sa clé isolée.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
Result<(), Failure>Aucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Store::delete / MemoryStore::delete / EncryptedFileStore::delete
delete(&mut self, scope: &str) → Result<(), Failure>- Rôle
- Supprime le compte sans supprimer le cache d’autorisation ni le journal de déconnexion du SDK officiel.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
Result<(), Failure>Aucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Runtime::run_feature
run_feature(&mut self, feature: &str, action: &mut dyn FnMut() -> Result<(),Failure>) → Result<(), Failure>- Rôle
- Le SDK officiel vérifie chaque exécution. Le rappel ne s’exécute que si l’autorisation est accordée.
- Paramètres
feature / name, action / block: Le nom de fonction doit correspondre à la politique ; le rappel contient le travail réellement protégé.
- Résultat
Result<(), Failure>Aucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Runtime::release_device
release_device(&mut self) → Result<(), Failure>- Rôle
- Déconnecte l’appareil via le SDK officiel ; l’application révoque séparément la session Launch.
- Résultat
Result<(), Failure>Aucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Runtime::close
close(&mut self) → ()- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Résultat
()Aucune valeur métier ; fermer l’application ne confirme ni déconnexion du compte ni libération de l’appareil.
RuntimeFactory::open / OfficialRuntimeFactory::open
open(&mut self, settings: &Value, cached_only: bool) → Result<Box<dyn Runtime>, Failure>- Rôle
- Crée l’adaptateur du SDK officiel pour les intégrations avancées ; l’attestation reste en mémoire.
- Paramètres
settings, cached_only: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.
- Résultat
Result<Box<dyn Runtime>, Failure>Renvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
RuntimeFactory::for_logout / OfficialRuntimeFactory::for_logout
for_logout(&mut self, settings: &Value) → Result<Box<dyn Runtime>, Failure>- Rôle
- Crée l’adaptateur du SDK officiel pour les intégrations avancées ; l’attestation reste en mémoire.
- Paramètres
settings: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.
- Résultat
Result<Box<dyn Runtime>, Failure>Renvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Sleeper::sleep
sleep(&mut self, duration: Duration) → Result<(), Failure>- Rôle
- Attend la durée indiquée pour planifier les nouvelles tentatives avancées.
- Paramètres
duration: Délai recommandé avant nouvelle tentative ; vérifiez les unités : secondes, millisecondes ou Duration.
- Résultat
Result<(), Failure>Aucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Ruby
Source correspondante · v0.1.6 · licentivo_launch.rb
Erreurs et échecs: rescue LicentivoLaunch::Error; code / status / retry_after_seconds; callback exceptions
Application.connect
LicentivoLaunch::Application.connect(merchant_origin, product_id, licentivo_product_id, trusted_keys, environment: "live", **options) → Application- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
merchantOrigin / origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.productID / product_id: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.licentivoProductID / licentivo_product_id: Identifiant du produit de licence Licentivo, correspondant à la configuration de signature publique.trustedKeys / trusted_keys: Correspondance entre identifiants de clés et clés publiques pour vérifier les autorisations signées du SDK officiel.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.options / config: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
ApplicationRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Application#login
login(email, password, cancellation: nil) → Hash- Rôle
- Connecte le compte client, obtient une attestation d’identité temporaire et démarre le SDK officiel d’autorisation.
- Paramètres
email, password: Adresse électronique et mot de passe du compte client de cette boutique ; mot de passe limité à cette connexion.ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
HashRenvoie l’état du compte ; consultez le tableau des champs ci-dessous.
Application#restore
restore(cancellation: nil) → Hash | nil- Rôle
- Lit la session mémorisée, confirme le compte en ligne, obtient une nouvelle attestation et démarre le SDK officiel.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
Hash | nilRenvoie l’état du compte ; null ou nil signifie aucune session restaurable. Les autres échecs produisent une erreur.
Application#run_feature
run_feature(feature) { ... } → T- Rôle
- Le SDK officiel vérifie chaque exécution. Le rappel ne s’exécute que si l’autorisation est accordée.
- Paramètres
feature / name, action / block: Le nom de fonction doit correspondre à la politique ; le rappel contient le travail réellement protégé.
- Résultat
TRenvoie le résultat du rappel métier ; les refus et exceptions sont signalés comme erreurs.
Application#logout
logout(cancellation: nil) → true | false- Rôle
- Arrête l’autorisation locale, déconnecte le SDK officiel puis révoque la session Launch. Les tâches distantes inachevées restent à réessayer.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
true | falsetrue confirme la déconnexion ; false indique une déconnexion distante ou révocation d’appareil en attente. Le stockage peut aussi produire une erreur.
Application#release_device
release_device(cancellation: nil) → true | false- Rôle
- Entrée compatible de déconnexion explicite, avec le même processus de déconnexion du compte et de l’appareil que Logout.
- Paramètres
ctx / ct / signal / cancellation: Contexte de requête ou signal d’annulation ; le contexte de cycle de vie Go contrôle aussi les tâches de fond.
- Résultat
true | falsetrue confirme la déconnexion ; false indique une déconnexion distante ou révocation d’appareil en attente. Le stockage peut aussi produire une erreur.
Application#close
close → nil- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Résultat
nilAucune valeur métier ; fermer l’application ne confirme ni déconnexion du compte ni libération de l’appareil.
API avancées et de compatibilité
Application.new
Application.new(launch, product, store: MemoryStore.new, transport: nil, runtime_factory: nil, cache_dir: nil, sleep: nil, pending_attempts: 5) → Application- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
launch, product: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.options / config: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
ApplicationRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Application.from_files
Application.from_files(launch_path, product_path, **options) → Application- Rôle
- Lit deux configurations publiques existantes, vérifie la correspondance des produits et crée l’application. La connexion directe ne nécessite aucun fichier.
- Paramètres
launchPath, productPath: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.options / config: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
ApplicationRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
LicentivoLaunch.origin
LicentivoLaunch.origin(value, environment) → String- Rôle
- Valide ou lit la configuration publique ; produits, environnement et clés de signature doivent correspondre.
- Paramètres
value: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.
- Résultat
StringRenvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
LicentivoLaunch.validate_config
LicentivoLaunch.validate_config(launch, product) → [Hash, Hash]- Rôle
- Valide ou lit la configuration publique ; produits, environnement et clés de signature doivent correspondre.
- Paramètres
launch, product: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.
- Résultat
[Hash, Hash]Renvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
LicentivoLaunch.load_config
LicentivoLaunch.load_config(launch_path, product_path) → [Hash, Hash]- Rôle
- Valide ou lit la configuration publique ; produits, environnement et clés de signature doivent correspondre.
- Paramètres
launchPath, productPath: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.
- Résultat
[Hash, Hash]Renvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
LicentivoLaunch.default_transport
LicentivoLaunch.default_transport(request) → Hash- Rôle
- Envoie les requêtes HTTP du compte et renvoie statut, en-têtes ou corps brut, sans décider de l’autorisation.
- Paramètres
request: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.
- Résultat
HashRenvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
MemoryStore.new
MemoryStore.new → MemoryStore- Rôle
- Crée un stockage de session limité au processus actuel.
- Résultat
MemoryStoreRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
EncryptedFileStore.new
EncryptedFileStore.new(directory, key) → EncryptedFileStore- Rôle
- Crée un stockage persistant protégé ; récupérez la clé dans le coffre d’identifiants du système.
- Paramètres
directory: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.key: Clé de chiffrement issue du coffre système ; ne la stockez pas avec les données chiffrées.
- Résultat
EncryptedFileStoreRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
MemoryStore#persistent? / EncryptedFileStore#persistent? / #secure?
persistent? / secure? → true | false- Rôle
- Valide ou lit la configuration publique ; produits, environnement et clés de signature doivent correspondre.
- Résultat
true | falseRenvoie une classification booléenne, pas une autorisation.
EncryptedFileStore#path
path(scope) → String- Rôle
- Valide ou lit la configuration publique ; produits, environnement et clés de signature doivent correspondre.
- Paramètres
scope: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
StringRenvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
CancellationToken#cancel / #check!
CancellationToken.new.cancel / check! → true / nil- Rôle
- Demande ou vérifie l’annulation coopérative ; une annulation n’est pas une autorisation réussie.
- Résultat
true / nilAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Error.new
Error.new(code, status: 0, retry_after_seconds: 0) → Error- Rôle
- Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Paramètres
code, status, retry_after_seconds: Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Résultat
ErrorRenvoie le type indiqué dans la signature ; le résultat n’accorde aucun droit de fonction.
MemoryStore#load / EncryptedFileStore#load
load(scope) → Hash | nil- Rôle
- Charge un compte par clé isolée ; les données secrètes sont réservées au SDK.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
Hash | nilRenvoie le compte secret ; son absence donne une valeur vide ou ErrNoSession selon le langage.
MemoryStore#save / EncryptedFileStore#save
save(scope, record) → Object- Rôle
- Enregistre atomiquement le compte sous sa clé isolée.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
ObjectAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
MemoryStore#delete / EncryptedFileStore#delete
delete(scope) → Object- Rôle
- Supprime le compte sans supprimer le cache d’autorisation ni le journal de déconnexion du SDK officiel.
- Paramètres
scope / key, value / record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
ObjectAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
C
Source correspondante · v0.1.6 · account.h · account.c
Erreurs et échecs: NULL / 0 / -1; launch_application_error(app); action(context): 1=success, 0=failure
launch_application_connect
launch_application_connect(origin, product_id, licentivo_product_id, trusted_keys_json, environment, remember, store) → launch_application *- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
merchantOrigin / origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.productID / product_id: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.licentivoProductID / licentivo_product_id: Identifiant du produit de licence Licentivo, correspondant à la configuration de signature publique.trustedKeys / trusted_keys: Correspondance entre identifiants de clés et clés publiques pour vérifier les autorisations signées du SDK officiel.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.remember, store: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
launch_application *Renvoie un pointeur possédé ; NULL indique un échec d’initialisation. Libérez-le avec close.
launch_application_login
launch_application_login(launch_application *app, const char *email, const char *password) → int- Rôle
- Connecte le compte client, obtient une attestation d’identité temporaire et démarre le SDK officiel d’autorisation.
- Paramètres
email, password: Adresse électronique et mot de passe du compte client de cette boutique ; mot de passe limité à cette connexion.
- Résultat
int1 indique le succès ; 0 indique l’échec. Lisez ensuite le code d’erreur.
launch_application_restore
launch_application_restore(launch_application *app) → int- Rôle
- Lit la session mémorisée, confirme le compte en ligne, obtient une nouvelle attestation et démarre le SDK officiel.
- Résultat
int1 : restauration réussie ; 0 : aucune session ; -1 : refus ou échec. Lisez le code d’erreur après échec.
launch_application_run_feature
launch_application_run_feature(app, feature, ln_feature_action action, void *context) → int- Rôle
- Le SDK officiel vérifie chaque exécution. Le rappel ne s’exécute que si l’autorisation est accordée.
- Paramètres
feature / name, action / block: Le nom de fonction doit correspondre à la politique ; le rappel contient le travail réellement protégé.context: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.
- Résultat
int1 indique le succès ; 0 indique l’échec. Lisez ensuite le code d’erreur.
launch_application_logout
launch_application_logout(launch_application *app) → int- Rôle
- Arrête l’autorisation locale, déconnecte le SDK officiel puis révoque la session Launch. Les tâches distantes inachevées restent à réessayer.
- Résultat
int1 indique le succès ; 0 indique l’échec. Lisez ensuite le code d’erreur.
launch_application_release_device
launch_application_release_device(launch_application *app) → int- Rôle
- Entrée compatible de déconnexion explicite, avec le même processus de déconnexion du compte et de l’appareil que Logout.
- Résultat
int1 indique le succès ; 0 indique l’échec. Lisez ensuite le code d’erreur.
launch_application_status
launch_application_status(launch_application *app) → char *- Rôle
- Lit l’état d’autorisation du SDK officiel, sans connecter le compte ni remplacer les vérifications des fonctions.
- Résultat
char *Renvoie un texte JSON possédé à libérer avec ln_free_string. Sans moteur : login_required et allowed=false.
launch_application_error
launch_application_error(const launch_application *app) → const char *- Rôle
- Crée ou lit une erreur structurée pour classification, temporisation et diagnostic.
- Résultat
const char *Renvoie une chaîne d’erreur empruntée. Ne la libérez pas et ne l’utilisez pas après destruction de l’application.
launch_application_close
launch_application_close(launch_application *app) → void- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Résultat
voidAucune valeur métier ; fermer l’application ne confirme ni déconnexion du compte ni libération de l’appareil.
API avancées et de compatibilité
launch_application_open
launch_application_open(origin, product_id, product_config_path, environment, remember, store) → launch_application *- Rôle
- Lit deux configurations publiques existantes, vérifie la correspondance des produits et crée l’application. La connexion directe ne nécessite aucun fichier.
- Paramètres
origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.product_id: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.product_config_path: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.remember, store: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
launch_application *Renvoie un pointeur possédé ; NULL indique un échec d’initialisation. Libérez-le avec close.
launch_application_from_files
launch_application_from_files(launch_config_path, product_config_path, remember, store) → launch_application *- Rôle
- Lit deux configurations publiques existantes, vérifie la correspondance des produits et crée l’application. La connexion directe ne nécessite aucun fichier.
- Paramètres
launchPath, productPath: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.remember, store: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
launch_application *Renvoie un pointeur possédé ; NULL indique un échec d’initialisation. Libérez-le avec close.
launch_application_cli
launch_application_cli(int argc, char **argv) → launch_application *- Rôle
- Lit deux configurations publiques existantes, vérifie la correspondance des produits et crée l’application. La connexion directe ne nécessite aucun fichier.
- Paramètres
argc, argv: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.
- Résultat
launch_application *Renvoie un pointeur possédé ; NULL indique un échec d’initialisation. Libérez-le avec close.
launch_login / launch_sign_in
launch_login(account, origin, product_id, config_path, environment, email, password) / launch_sign_in(account, argc, argv) → int- Rôle
- Ancienne API conservée : le protocole de licence permanente a été retiré, donc les appels échouent. Utilisez Application.
- Paramètres
account, origin, product_id, config_path, environment, email, password, argc, argv: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.
- Résultat
intÉchoue toujours ; migrez vers l’échange d’identité de compte.
launch_sign_out
launch_sign_out(launch_account *account, int clear_cache) → void- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Paramètres
account, clear_cache: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
ln_free_string
ln_free_string(char *value) → void- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Paramètres
value: Renvoie un texte JSON possédé à libérer avec ln_free_string. Sans moteur : login_required et allowed=false.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
launch_secret_store.load
load(void *context, const char *scope, char **record) → int- Rôle
- Charge un compte par clé isolée ; les données secrètes sont réservées au SDK.
- Paramètres
context: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.scope, record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
int1 : trouvé, 0 : absent, -1 : lecture échouée. load alloue record ; l’appelant le libère.
launch_secret_store.save
save(void *context, const char *scope, const char *record) → int (1: success, 0: failure)- Rôle
- Enregistre atomiquement le compte sous sa clé isolée.
- Paramètres
context: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.scope, record: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
int (1: success, 0: failure)Aucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
launch_secret_store.remove
remove(void *context, const char *scope) → int (1: success, 0: failure)- Rôle
- Supprime le compte sans supprimer le cache d’autorisation ni le journal de déconnexion du SDK officiel.
- Paramètres
context: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.scope: Clés d’isolation et données secrètes SDK ; le stockage personnalisé doit gérer plusieurs clés et le remplacement atomique.
- Résultat
int (1: success, 0: failure)Aucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
C++
Source correspondante · v0.1.6 · launch.hpp
Erreurs et échecs: std::runtime_error; callback exceptions propagate; RAII; Status(): std::string JSON
Application::Connect
Application::Connect(origin, product, licentivo_product, trusted_keys_json, environment="live", remember=false, store=nullptr) → Application- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
merchantOrigin / origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.productID / product_id: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.licentivoProductID / licentivo_product_id: Identifiant du produit de licence Licentivo, correspondant à la configuration de signature publique.trustedKeys / trusted_keys: Correspondance entre identifiants de clés et clés publiques pour vérifier les autorisations signées du SDK officiel.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.remember, store: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
ApplicationRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Application::Login
Login(const char *email, const char *password) → void- Rôle
- Connecte le compte client, obtient une attestation d’identité temporaire et démarre le SDK officiel d’autorisation.
- Paramètres
email, password: Adresse électronique et mot de passe du compte client de cette boutique ; mot de passe limité à cette connexion.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Application::Restore
Restore() → bool- Rôle
- Lit la session mémorisée, confirme le compte en ligne, obtient une nouvelle attestation et démarre le SDK officiel.
- Résultat
booltrue indique une restauration réussie ; false indique aucune session restaurable. Refus, expiration et problèmes réseau produisent une erreur.
Application::RunFeature
RunFeature(const char *feature, Action action) → void- Rôle
- Le SDK officiel vérifie chaque exécution. Le rappel ne s’exécute que si l’autorisation est accordée.
- Paramètres
feature / name, action / block: Le nom de fonction doit correspondre à la politique ; le rappel contient le travail réellement protégé.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Application::Logout
Logout() → void- Rôle
- Arrête l’autorisation locale, déconnecte le SDK officiel puis révoque la session Launch. Les tâches distantes inachevées restent à réessayer.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Application::ReleaseDevice
ReleaseDevice() → void- Rôle
- Entrée compatible de déconnexion explicite, avec le même processus de déconnexion du compte et de l’appareil que Logout.
- Résultat
voidAucune valeur métier ; un retour normal indique le succès, une erreur ou exception indique l’échec.
Application::Status
Status() → std::string (JSON)- Rôle
- Lit l’état d’autorisation du SDK officiel, sans connecter le compte ni remplacer les vérifications des fonctions.
- Résultat
std::string (JSON)Lit l’état d’autorisation du SDK officiel, sans connecter le compte ni remplacer les vérifications des fonctions.
Application::~Application
~Application() → void- Rôle
- Arrête cette instance et ses tâches tout en conservant la connexion mémorisée et l’association de l’appareil.
- Résultat
voidAucune valeur métier ; fermer l’application ne confirme ni déconnexion du compte ni libération de l’appareil.
API avancées et de compatibilité
Application
Application(origin, product, config, environment="live", remember=false, store=nullptr) → Application- Rôle
- Lit deux configurations publiques existantes, vérifie la correspondance des produits et crée l’application. La connexion directe ne nécessite aucun fichier.
- Paramètres
origin: Origine complète de la boutique, avec protocole et port nécessaire ; utilisez HTTPS en production.product: Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration.config: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.environment: sandbox ou live ; comptes, produits et caches doivent partager le même environnement.remember, store: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
ApplicationRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Application(launch_application *)
explicit Application(launch_application *app) → Application- Rôle
- Valide les paramètres publics et crée l’application, sans connexion au compte ni autorisation des fonctions protégées.
- Paramètres
app: Renvoie un pointeur possédé ; NULL indique un échec d’initialisation. Libérez-le avec close.
- Résultat
ApplicationRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Application::FromFiles
Application::FromFiles(launch, product, remember=false, store=nullptr) → Application- Rôle
- Lit deux configurations publiques existantes, vérifie la correspondance des produits et crée l’application. La connexion directe ne nécessite aucun fichier.
- Paramètres
launch, product: Chemins de configuration choisis ou dossier privé de cache et stockage de l’utilisateur actuel.remember, store: Options de stockage, cache privé, annulation, nouvelles tentatives ou composants avancés.
- Résultat
ApplicationRenvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Application(Application&&) / operator=
Application(Application&& other) / operator=(Application&& other) → Application / Application&- Rôle
- Transfère la propriété de l’application native. La copie est désactivée et l’objet d’origine ne possède plus le pointeur.
- Paramètres
other: Configuration, adaptateur, transport ou requête fournis uniquement pour les intégrations avancées.
- Résultat
Application / Application&Renvoie l’objet créé ; l’initialisation ne constitue pas une autorisation.
Champs renvoyés
Renvoie l’état du compte ; consultez le tableau des champs ci-dessous.
| Champ | Type de valeur | Rôle |
|---|---|---|
Go State.User.ID · JS user.id · Java userID · Rust user_id · Ruby user.id | string | Identifiant unique du compte boutique, distinct des identifiants de produit, licence ou appareil. |
Go User.Email · JS user.email · Java/Rust/Ruby email | string | Adresse électronique du compte ; certains états de langage ne contiennent que l’identifiant. |
Go User.Verified / user.verified | boolean | Indique si l’adresse de la boutique est vérifiée ; ce n’est pas une autorisation logicielle. |
JS user.display_name | string (optional) | Nom d’affichage du compte ; absent si le serveur ne le fournit pas. |
Go State/Session.ExpiresAt · JS expiresAt · Java expiresAt · Rust/Ruby expires_at | time.Time / ISO 8601 / Instant | Expiration de la session Launch, distincte de l’achat et du délai d’autorisation hors ligne. |
Java offlineFallback · Rust offline_fallback | boolean = false | Champ de compatibilité ; la restauration actuelle ne choisit aucun repli hors ligne, donc false. |
C / C++ status.allowed · C# Status().Allowed | boolean | Indique si le SDK officiel permet actuellement l’utilisation ; vérifiez chaque fonction séparément. |
C / C++ status.state · C# Status().State | string | Nom d’état du SDK officiel ; login_required peut apparaître avant connexion. |
C / C++ status.code · C# Status().Code | string | Code d’erreur machine stable pour les messages et branches de traitement. |
C / C++ status.request_id · C# Status().RequestID | string | Identifiant de corrélation serveur pour le diagnostic ; non exposé par tous les langages. |
C / C++ status.retryable · C# Status().Retryable | boolean | Indique si une nouvelle tentative est recommandée ; n’autorise pas le travail protégé. |
C / C++ status.lease_valid_until · C# Status().LeaseValidUntil | Unix seconds | Expiration de l’autorisation signée du SDK officiel en secondes Unix, distincte de la session du compte. |
Go Identity.ProductID / product_id | UUID | Identifiant produit Launch, rempli automatiquement par le code d’intégration de l’administration. |
Go Identity.LicentivoProductID / licentivo_product_id | UUID | Identifiant du produit de licence Licentivo, correspondant à la configuration de signature publique. |
Go Identity.LaunchConnectionID / launch_connection_id | UUID | Identifiant de connexion Launch fixé, correspondant au produit et à l’environnement. |
Go Identity.Environment / environment | sandbox | live | sandbox ou live ; comptes, produits et caches doivent partager le même environnement. |
Go Identity.IdentityToken / identity_token | string | Attestation temporaire à usage unique, transmise en mémoire au SDK officiel ; jamais un justificatif hors ligne. |
Go Identity.ExpiresAt / identity.expires_at | time.Time / ISO 8601 | Expiration de l’attestation d’identité, distincte de la session du compte et de l’achat. |
Go Session.AccessToken / access_token / token | string | Jeton de session Launch, accessible uniquement aux interfaces de session bas niveau ou de stockage chiffré. |
Jetons, attestations et comptes stockés sont secrets. Ne les exposez ni aux journaux ni au rendu du navigateur.
Erreurs et échecs
| Champ | Type de valeur | Rôle |
|---|---|---|
Go APIError.Code · Python APIError.code · C# Code · Java/Rust/Ruby code · JS code · C error() | string | Code d’erreur machine stable pour les messages et branches de traitement. |
Go APIError.Status · Python status · C# Status · Java/Rust/Ruby/JS status | integer | Statut HTTP ; 0 signifie qu’aucune réponse HTTP n’est disponible. |
Go RequestID · Java requestID · Rust request_id | string | Identifiant de corrélation serveur pour le diagnostic ; non exposé par tous les langages. |
Go RetryAfter · Python retry_after · C# RetryAfterSeconds · Java retryAfterMillis · JS/Ruby retryAfterSeconds / retry_after_seconds · Rust retry_after | Duration / s / ms | Délai recommandé avant nouvelle tentative ; vérifiez les unités : secondes, millisecondes ou Duration. |
Déconnexion locale et révocation distante sont distinctes. Gérez les tâches en attente et erreurs de stockage ; conservez le journal SDK.